[ARM] 4298/1: fix memory barriers for DMA coherent and SMP platforms
authorLennert Buytenhek <buytenh@wantstofly.org>
Sat, 31 Mar 2007 11:03:20 +0000 (12:03 +0100)
committerRussell King <rmk+kernel@arm.linux.org.uk>
Sun, 1 Apr 2007 21:38:36 +0000 (22:38 +0100)
commit398e692fd5cecdd25d311b47bbae69f7bac3a3cb
treef1852c28d9f9c47c4763607630ac3db1c91930d6
parent9a4d93d49d140c196020a1bae339efcf211cac03
[ARM] 4298/1: fix memory barriers for DMA coherent and SMP platforms

This patch:
- Switches mb/rmb/wmb back to being full-blown DMBs on ARM SMP systems,
  since mb/rmb/wmb are required to order Normal memory accesses as well.
- Enables the use of DMB and ISB on XSC3 (which is an ARMv5TE ISA core
  but conforms to the ARMv6 memory ordering model and supports the
  various ARMv6 barriers.)
- Makes DMA coherent platforms (only ixp23xx at the moment) map
  mb/rmb/wmb to dmb(), as on DMA coherent platforms, DMA consistent
  mappings are done as Normal mappings, which are weakly ordered.

Signed-off-by: Lennert Buytenhek <buytenh@wantstofly.org>
Acked-by: David Howells <dhowells@redhat.com>
Acked-by: Catalin Marinas <catalin.marinas@arm.com>
Acked-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
Acked-by: Dan Williams <dan.j.williams@intel.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
include/asm-arm/system.h