aboutsummaryrefslogtreecommitdiffstats
path: root/kernel/Kconfig.locks
diff options
context:
space:
mode:
authorWill Deacon <will.deacon@arm.com>2019-02-22 12:48:44 +0000
committerWill Deacon <will.deacon@arm.com>2019-04-08 11:59:39 +0100
commitd1be6a28b13ce6d1bc42bf9b6a9454c65839225b (patch)
tree320fd6244998529491991e7012ebfc5dd9709d4a /kernel/Kconfig.locks
parentdocs/memory-barriers.txt: Rewrite "KERNEL I/O BARRIER EFFECTS" section (diff)
downloadlinux-dev-d1be6a28b13ce6d1bc42bf9b6a9454c65839225b.tar.xz
linux-dev-d1be6a28b13ce6d1bc42bf9b6a9454c65839225b.zip
asm-generic/mmiowb: Add generic implementation of mmiowb() tracking
In preparation for removing all explicit mmiowb() calls from driver code, implement a tracking system in asm-generic based loosely on the PowerPC implementation. This allows architectures with a non-empty mmiowb() definition to have the barrier automatically inserted in spin_unlock() following a critical section containing an I/O write. Acked-by: Linus Torvalds <torvalds@linux-foundation.org> Signed-off-by: Will Deacon <will.deacon@arm.com>
Diffstat (limited to 'kernel/Kconfig.locks')
-rw-r--r--kernel/Kconfig.locks7
1 files changed, 7 insertions, 0 deletions
diff --git a/kernel/Kconfig.locks b/kernel/Kconfig.locks
index fbba478ae522..6ba2570eddad 100644
--- a/kernel/Kconfig.locks
+++ b/kernel/Kconfig.locks
@@ -251,3 +251,10 @@ config ARCH_USE_QUEUED_RWLOCKS
config QUEUED_RWLOCKS
def_bool y if ARCH_USE_QUEUED_RWLOCKS
depends on SMP
+
+config ARCH_HAS_MMIOWB
+ bool
+
+config MMIOWB
+ def_bool y if ARCH_HAS_MMIOWB
+ depends on SMP