linux/include
Paul Mundt 298476220d sh: Add control register barriers.
Currently when making changes to control registers, we
typically need some time for changes to take effect (8
nops, generally).  However, for sh4a we simply need to
do an icbi..

This is a simple patch for implementing a general purpose
ctrl_barrier() which functions as a control register write
barrier. There's some additional documentation in the patch
itself, but it's pretty self explanatory.

There were also some places where we were not doing the
barrier, which didn't seem to have any adverse effects on
legacy parts, but certainly did on sh4a. It's safer to have
the barrier in place for legacy parts as well in these cases,
though this does make flush_tlb_all() more expensive (by an
order of 8 nops).  We can ifdef around the flush_tlb_all()
case for now if it's clear that all legacy parts won't have
a problem with this.

Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2006-09-27 14:57:44 +09:00
..
acpi
asm-alpha [PATCH] Standardize pxx_page macros 2006-09-26 08:48:51 -07:00
asm-arm [PATCH] Standardize pxx_page macros 2006-09-26 08:48:51 -07:00
asm-arm26 [PATCH] Standardize pxx_page macros 2006-09-26 08:48:51 -07:00
asm-avr32 [PATCH] AVR32 MTD: Static Memory Controller driver 2006-09-26 08:48:54 -07:00
asm-cris [PATCH] Standardize pxx_page macros 2006-09-26 08:48:51 -07:00
asm-frv [PATCH] FRV: Optimise ffs() 2006-09-26 08:48:54 -07:00
asm-generic [PATCH] x86: trivial pgtable.h __ASSEMBLY__ move 2006-09-26 08:48:56 -07:00
asm-h8300 Fix H8300 exported headers. 2006-09-21 08:51:43 +01:00
asm-i386 Merge branch 'for-linus' of git://one.firstfloor.org/home/andi/git/linux-2.6 2006-09-26 13:07:55 -07:00
asm-ia64 Merge branch 'for-linus' of git://one.firstfloor.org/home/andi/git/linux-2.6 2006-09-26 13:07:55 -07:00
asm-m32r [PATCH] Standardize pxx_page macros 2006-09-26 08:48:51 -07:00
asm-m68k [PATCH] Standardize pxx_page macros 2006-09-26 08:48:51 -07:00
asm-m68knommu Fix m68knommu exported headers 2006-09-21 08:50:36 +01:00
asm-mips [PATCH] Alchemy: Delete unused pt_regs * argument from au1xxx_dbdma_chan_alloc 2006-09-26 08:48:54 -07:00
asm-parisc [PATCH] Standardize pxx_page macros 2006-09-26 08:48:51 -07:00
asm-powerpc [PATCH] Standardize pxx_page macros 2006-09-26 08:48:51 -07:00
asm-ppc [PATCH] Standardize pxx_page macros 2006-09-26 08:48:51 -07:00
asm-s390 [PATCH] Standardize pxx_page macros 2006-09-26 08:48:51 -07:00
asm-sh sh: Add control register barriers. 2006-09-27 14:57:44 +09:00
asm-sh64 [PATCH] Standardize pxx_page macros 2006-09-26 08:48:51 -07:00
asm-sparc [PATCH] Standardize pxx_page macros 2006-09-26 08:48:51 -07:00
asm-sparc64 [PATCH] Standardize pxx_page macros 2006-09-26 08:48:51 -07:00
asm-um Merge branch 'for-linus' of git://one.firstfloor.org/home/andi/git/linux-2.6 2006-09-26 13:07:55 -07:00
asm-v850 Fix v850 exported headers 2006-09-21 09:05:25 +01:00
asm-x86_64 Merge branch 'for-linus' of git://one.firstfloor.org/home/andi/git/linux-2.6 2006-09-26 13:07:55 -07:00
asm-xtensa [PATCH] Standardize pxx_page macros 2006-09-26 08:48:51 -07:00
crypto [CRYPTO] digest: Added user API for new hash type 2006-09-21 11:46:17 +10:00
keys
linux Merge branch 'for-linus' of git://one.firstfloor.org/home/andi/git/linux-2.6 2006-09-26 13:07:55 -07:00
math-emu
media v4l-dev2: handle __must_check 2006-09-25 21:08:39 -07:00
mtd Merge git://git.infradead.org/~dwmw2/hdroneline 2006-09-22 12:56:22 -07:00
net [NetLabel]: rework the Netlink attribute handling (part 1) 2006-09-25 15:56:09 -07:00
pcmcia
rdma IB/sa: fix ib_sa_selector names 2006-09-22 15:22:55 -07:00
rxrpc
scsi [PATCH] SCSI gfp_t annotations 2006-09-24 20:07:49 -07:00
sound [ALSA] ak4xxx - Remove bogus IPGA controls 2006-09-23 10:46:55 +02:00
video [HEADERS] One line per header in Kbuild files to reduce conflicts 2006-09-19 12:43:58 +01:00
Kbuild [HEADERS] One line per header in Kbuild files to reduce conflicts 2006-09-19 12:43:58 +01:00