ARM: barrier: allow options to be passed to memory barrier instructions
authorWill Deacon <will.deacon@arm.com>
Fri, 10 May 2013 17:07:19 +0000 (18:07 +0100)
committerWill Deacon <will.deacon@arm.com>
Mon, 12 Aug 2013 11:25:44 +0000 (12:25 +0100)
commit3ea128065ed20d33bd02ff6dab689f88e38000be
treec32b9ec35578f84705af2339941f41ecdfd4d4e0
parent2c813980c6113ac2c407fbed99f53242088c3038
ARM: barrier: allow options to be passed to memory barrier instructions

On ARMv7, the memory barrier instructions take an optional `option'
field which can be used to constrain the effects of a memory barrier
based on shareability and access type.

This patch allows the caller to pass these options if required, and
updates the smp_*() barriers to request inner-shareable barriers,
affecting only stores for the _wmb variant. wmb() is also changed to
use the -st version of dsb.

Reported-by: Albin Tonnerre <albin.tonnerre@arm.com>
Reviewed-by: Catalin Marinas <catalin.marinas@arm.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
arch/arm/include/asm/assembler.h
arch/arm/include/asm/barrier.h