assembler.h (9c3a985f88fa4de82bf4bda906095ce6444e9039) assembler.h (dda5f312bb09e56e7a1c3e3851f2000eb2e9c879)
1/* SPDX-License-Identifier: GPL-2.0-only */
2/*
3 * arch/arm/include/asm/assembler.h
4 *
5 * Copyright (C) 1996-2000 Russell King
6 *
7 * This file contains arm architecture specific defines
8 * for the different processors.

--- 380 unchanged lines hidden (view full) ---

389 .ifeqs "\mode","arm"
390 ALT_UP(nop)
391 .else
392 ALT_UP(W(nop))
393 .endif
394#endif
395 .endm
396
1/* SPDX-License-Identifier: GPL-2.0-only */
2/*
3 * arch/arm/include/asm/assembler.h
4 *
5 * Copyright (C) 1996-2000 Russell King
6 *
7 * This file contains arm architecture specific defines
8 * for the different processors.

--- 380 unchanged lines hidden (view full) ---

389 .ifeqs "\mode","arm"
390 ALT_UP(nop)
391 .else
392 ALT_UP(W(nop))
393 .endif
394#endif
395 .endm
396
397/*
398 * Raw SMP data memory barrier
399 */
400 .macro __smp_dmb mode
401#if __LINUX_ARM_ARCH__ >= 7
402 .ifeqs "\mode","arm"
403 dmb ish
404 .else
405 W(dmb) ish
406 .endif
407#elif __LINUX_ARM_ARCH__ == 6
408 mcr p15, 0, r0, c7, c10, 5 @ dmb
409#else
410 .error "Incompatible SMP platform"
411#endif
412 .endm
413
397#if defined(CONFIG_CPU_V7M)
398 /*
399 * setmode is used to assert to be in svc mode during boot. For v7-M
400 * this is done in __v7m_setup, so setmode can be empty here.
401 */
402 .macro setmode, mode, reg
403 .endm
404#elif defined(CONFIG_THUMB2_KERNEL)

--- 373 unchanged lines hidden ---
414#if defined(CONFIG_CPU_V7M)
415 /*
416 * setmode is used to assert to be in svc mode during boot. For v7-M
417 * this is done in __v7m_setup, so setmode can be empty here.
418 */
419 .macro setmode, mode, reg
420 .endm
421#elif defined(CONFIG_THUMB2_KERNEL)

--- 373 unchanged lines hidden ---