ARM: 6201/1: RealView: Do not use outer_sync() on ARM11MPCore boards with L220
commit275f9ba5b720b1055de9166e2f88ef08ba98bf9d
authorCatalin Marinas <catalin.marinas@arm.com>
Thu, 1 Jul 2010 12:21:47 +0000 (1 13:21 +0100)
committerGreg Kroah-Hartman <gregkh@suse.de>
Mon, 2 Aug 2010 17:21:01 +0000 (2 10:21 -0700)
tree7edfb0f53f7c34811bd03f037d9204126b5a0cb3
parent7f9079606b66c6c477406108fba53bdd4f58b10b
ARM: 6201/1: RealView: Do not use outer_sync() on ARM11MPCore boards with L220

commit 2503a5ecd86c002506001eba432c524ea009fe7f upstream.

RealView boards with certain revisions of the L220 cache controller (ARM11*
processors only) may have issues (hardware deadlock) with the recent changes to
the mb() barrier implementation (DSB followed by an L2 cache sync). The patch
redefines the RealView ARM11MPCore mandatory barriers without the outer_sync()
call.

Tested-by: Linus Walleij <linus.walleij@stericsson.com>
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
arch/arm/mach-realview/Kconfig
arch/arm/mach-realview/include/mach/barriers.h [new file with mode: 0644]