[PATCH 1/4] ARM: Change the mandatory barriers implementation

Russell King - ARM Linux linux at arm.linux.org.uk
Tue Feb 23 07:31:35 EST 2010


On Tue, Feb 23, 2010 at 12:21:56PM +0000, Catalin Marinas wrote:
> diff --git a/arch/arm/include/asm/system.h b/arch/arm/include/asm/system.h
> index 058e7e9..0db8b06 100644
> --- a/arch/arm/include/asm/system.h
> +++ b/arch/arm/include/asm/system.h
> @@ -138,10 +138,12 @@ extern unsigned int user_debug;
>  #define dmb() __asm__ __volatile__ ("" : : : "memory")
>  #endif
>  
> -#if __LINUX_ARM_ARCH__ >= 7 || defined(CONFIG_SMP)
> -#define mb()		dmb()
> +#ifdef CONFIG_ARCH_HAS_BARRIERS
> +#include <mach/barriers.h>
> +#elif __LINUX_ARM_ARCH__ >= 5
> +#define mb()		dsb()
>  #define rmb()		dmb()
> -#define wmb()		dmb()
> +#define wmb()		dsb()

Why do we need these to be anything more than compiler barriers on PXA?



More information about the linux-arm-kernel mailing list