OpenCloudOS-Kernel/arch/arm/include/asm
Srinidhi Kasagar 885028e4ba ARM: 6741/1: errata: pl310 cache sync operation may be faulty
The effect of cache sync operation is to drain the store buffer and
wait for all internal buffers to be empty. In normal conditions, store
buffer is able to merge the normal memory writes within its 32-byte
data buffers.  Due to this erratum present in r3p0, the effect of cache
sync operation on the store buffer still remains when the operation
completes. This means that the store buffer is always asked to drain
and this prevents it from merging any further writes.

This can severely affect performance on the write traffic esp. on
Normal memory NC one.

The proposed workaround is to replace the normal offset of cache sync
operation(0x730) by another offset targeting an unmapped PL310
register 0x740.

Signed-off-by: srinidhi kasagar <srinidhi.kasagar@stericsson.com>
Acked-by: Linus Walleij <linus.walleij@stericsson.com>
Acked-by: Catalin Marinas <catalin.marinas@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2011-02-19 11:23:21 +00:00
..
hardware ARM: 6741/1: errata: pl310 cache sync operation may be faulty 2011-02-19 11:23:21 +00:00
mach Merge branch 'smp' into misc 2011-01-06 22:32:03 +00:00
Kbuild archs: replace unifdef-y with header-y 2010-08-14 22:26:51 +02:00
a.out-core.h [ARM] move include/asm-arm to arch/arm/include/asm 2008-08-02 21:32:35 +01:00
a.out.h headers_check fix: arm, a.out.h 2009-02-01 11:01:22 +05:30
asm-offsets.h kbuild: move asm-offsets.h to include/generated 2009-12-12 13:08:14 +01:00
assembler.h Merge branch 'smp' into misc 2011-01-06 22:32:03 +00:00
atomic.h ARM: 6212/1: atomic ops: add memory constraints to inline asm 2010-07-09 11:29:35 +01:00
auxvec.h [ARM] move include/asm-arm to arch/arm/include/asm 2008-08-02 21:32:35 +01:00
bitops.h ARM: 6621/1: bitops: remove condition code clobber for CLZ 2011-01-12 14:22:25 +00:00
bitsperlong.h asm-generic: introduce asm/bitsperlong.h 2009-06-11 21:02:14 +02:00
bug.h [ARM] 5211/2: fix a couple warnings from BUG() usage 2008-09-01 12:06:27 +01:00
bugs.h [ARM] move include/asm-arm to arch/arm/include/asm 2008-08-02 21:32:35 +01:00
byteorder.h byteorder: make swab.h include asm/swab.h like a regular header 2009-01-14 19:56:50 -08:00
cache.h ARM: implement support for read-mostly sections 2010-12-05 08:39:36 +00:00
cacheflush.h Merge branches 'at91', 'dcache', 'ftrace', 'hwbpt', 'misc', 'mmci', 's3c', 'st-ux' and 'unwind' into devel 2010-10-18 22:34:25 +01:00
cachetype.h ARM: 6385/1: setup: detect aliasing I-cache when D-cache is non-aliasing 2010-10-04 20:57:09 +01:00
checksum.h [ARM] move include/asm-arm to arch/arm/include/asm 2008-08-02 21:32:35 +01:00
clkdev.h ARM: 6483/1: arm & sh: factorised duplicated clkdev.c 2010-11-26 10:51:04 +00:00
cpu-multi32.h [ARM] move include/asm-arm to arch/arm/include/asm 2008-08-02 21:32:35 +01:00
cpu-single.h [ARM] move include/asm-arm to arch/arm/include/asm 2008-08-02 21:32:35 +01:00
cpu.h ARM: 5872/1: ARM: include needed linux/cpu.h in asm/cpu.h 2010-01-10 13:03:52 +00:00
cputime.h [ARM] move include/asm-arm to arch/arm/include/asm 2008-08-02 21:32:35 +01:00
cputype.h Merge branch 'devel' of git://git.kernel.org/pub/scm/linux/kernel/git/ycmiao/pxa-linux-2.6 into devel 2009-09-21 16:02:30 +01:00
current.h [ARM] move include/asm-arm to arch/arm/include/asm 2008-08-02 21:32:35 +01:00
delay.h [ARM] move include/asm-arm to arch/arm/include/asm 2008-08-02 21:32:35 +01:00
device.h Driver Core: Add platform device arch data V3 2009-07-22 00:28:38 +02:00
div64.h [ARM] 5320/1: fix assembly constraints in implementation of do_div() 2008-10-23 12:53:32 +01:00
dma-mapping.h ARM: DMA: add support for DMA debugging 2011-01-06 22:31:11 +00:00
dma.h ARM: 5870/1: arch/arm: Fix build failure for defconfigs without CONFIG_ISA_DMA_API set 2010-01-10 00:08:03 +00:00
domain.h ARM: 6384/1: Remove the domain switching on ARMv6k/v7 CPUs 2010-11-04 15:44:31 +00:00
ecard.h [ARM] move include/asm-arm to arch/arm/include/asm 2008-08-02 21:32:35 +01:00
elf.h ARM: 6486/1: provide zero vmcore_elf64_check_arch() 2010-11-30 13:40:01 +00:00
emergency-restart.h [ARM] move include/asm-arm to arch/arm/include/asm 2008-08-02 21:32:35 +01:00
entry-macro-multi.S Merge branch 'smp' into misc 2011-01-06 22:32:03 +00:00
entry-macro-vic2.S ARM: Add common entry code for system with two VICs 2010-01-15 17:10:14 +09:00
errno.h [ARM] move include/asm-arm to arch/arm/include/asm 2008-08-02 21:32:35 +01:00
fb.h [ARM] move include/asm-arm to arch/arm/include/asm 2008-08-02 21:32:35 +01:00
fcntl.h [ARM] move include/asm-arm to arch/arm/include/asm 2008-08-02 21:32:35 +01:00
fiq.h [ARM] move include/asm-arm to arch/arm/include/asm 2008-08-02 21:32:35 +01:00
fixmap.h [ARM] fixmap support 2009-03-15 21:01:20 -04:00
flat.h flat: fix data sections alignment 2009-05-29 08:40:02 -07:00
floppy.h [ARM] Move include/asm-arm/arch-* to arch/arm/*/include/mach 2008-08-07 09:55:48 +01:00
fpstate.h [ARM] move include/asm-arm to arch/arm/include/asm 2008-08-02 21:32:35 +01:00
ftrace.h ARM: 6319/1: ftrace: add Thumb-2 support to dynamic ftrace 2010-09-02 15:28:43 +01:00
futex.h ARM: 6384/1: Remove the domain switching on ARMv6k/v7 CPUs 2010-11-04 15:44:31 +00:00
glue.h ARM: 5727/1: Pass IFSR register to do_PrefetchAbort() 2009-10-02 22:34:32 +01:00
gpio.h [ARM] Move include/asm-arm/arch-* to arch/arm/*/include/mach 2008-08-07 09:55:48 +01:00
hardirq.h ARM: SMP: collect IPI and local timer IRQs for /proc/stat 2010-12-20 15:08:01 +00:00
highmem.h ARM: get rid of kmap_high_l1_vipt() 2010-12-19 12:56:46 -05:00
hw_breakpoint.h ARM: hw_breakpoint: unify single-stepping code for watchpoints and breakpoints 2010-12-06 11:55:57 +00:00
hw_irq.h arm: Use ARCH_IRQ_INIT_FLAGS 2010-10-16 22:57:38 +02:00
hwcap.h ARM: 6207/1: Replace CONFIG_HAS_TLS_REG with HWCAP_TLS and check for it on V6 2010-07-09 14:41:35 +01:00
ide.h [ARM] move include/asm-arm to arch/arm/include/asm 2008-08-02 21:32:35 +01:00
io.h ARM: io: ensure inb/outb() et.al. are properly ordered on ARMv6+ 2011-01-31 10:53:42 +00:00
ioctl.h [ARM] move include/asm-arm to arch/arm/include/asm 2008-08-02 21:32:35 +01:00
ioctls.h ioctl: Use asm-generic/ioctls.h on arm (enables termiox) 2010-10-22 10:19:59 -07:00
ipcbuf.h [ARM] move include/asm-arm to arch/arm/include/asm 2008-08-02 21:32:35 +01:00
irq.h ARM: 6197/2: preliminary support for sparse IRQ 2010-07-09 14:41:33 +01:00
irq_regs.h [ARM] move include/asm-arm to arch/arm/include/asm 2008-08-02 21:32:35 +01:00
irqflags.h Fix IRQ flag handling naming 2010-10-07 14:08:55 +01:00
kdebug.h [ARM] move include/asm-arm to arch/arm/include/asm 2008-08-02 21:32:35 +01:00
kexec.h ARM: 6518/1: kexec: Fix crash_setup_regs() for ARMv7 and CONFIG_THUMB2_KERNEL 2010-12-04 11:00:53 +00:00
kgdb.h kgdb,arm: fix register dump 2010-10-29 13:14:40 -05:00
kmap_types.h kdb: core for kgdb back end (2 of 2) 2010-05-20 21:04:21 -05:00
kprobes.h [ARM] 5206/1: remove kprobe_trap_handler() hack 2008-09-01 12:06:26 +01:00
leds.h [ARM] move include/asm-arm to arch/arm/include/asm 2008-08-02 21:32:35 +01:00
limits.h [ARM] move include/asm-arm to arch/arm/include/asm 2008-08-02 21:32:35 +01:00
linkage.h [ARM] move include/asm-arm to arch/arm/include/asm 2008-08-02 21:32:35 +01:00
local.h [ARM] move include/asm-arm to arch/arm/include/asm 2008-08-02 21:32:35 +01:00
local64.h arch: Implement local64_t 2010-06-09 11:12:36 +02:00
localtimer.h ARM: localtimer: clean up local timer on hot unplug 2010-12-20 15:09:16 +00:00
locks.h [ARM] move include/asm-arm to arch/arm/include/asm 2008-08-02 21:32:35 +01:00
mach-types.h arm: move mach-types to include/generated 2009-12-12 13:08:14 +01:00
mc146818rtc.h [ARM] Convert asm/io.h to linux/io.h 2008-09-06 12:10:45 +01:00
memblock.h ARM: fix memblock breakage 2010-10-27 21:41:39 +01:00
memory.h ARM: 6637/1: Make the argument to virt_to_phys() "const volatile" 2011-01-25 21:18:03 +00:00
mman.h arm: add arch_mmap_check(), get rid of sys_arm_mremap() 2009-12-11 06:34:09 -05:00
mmu.h ARM: 6490/1: MM: bugfix: initialize spinlock for init_mm.context 2010-11-23 22:46:12 +00:00
mmu_context.h ARM: add a vma entry for the user accessible vector page 2010-10-01 22:35:19 -04:00
module.h ARM: module: clean up handling of ELF unwind tables 2010-12-01 10:23:04 +00:00
msgbuf.h [ARM] move include/asm-arm to arch/arm/include/asm 2008-08-02 21:32:35 +01:00
mtd-xip.h [ARM] move asm/xip.h's mach/hardware.h include to mach/xip.h 2008-12-14 13:22:51 +00:00
mutex.h [ARM] move include/asm-arm to arch/arm/include/asm 2008-08-02 21:32:35 +01:00
nwflash.h [ARM] move include/asm-arm to arch/arm/include/asm 2008-08-02 21:32:35 +01:00
outercache.h arm: Disable outer (L2) cache in kexec 2010-10-26 11:39:56 +05:30
page-nommu.h nommu: Remove the memory_start/end variables from ARM page-nommu.h 2009-07-24 12:35:01 +01:00
page.h ARM: pgtable: introduce pteval_t to represent a pte value 2010-11-26 20:45:47 +00:00
param.h [ARM] move include/asm-arm to arch/arm/include/asm 2008-08-02 21:32:35 +01:00
parport.h [ARM] move include/asm-arm to arch/arm/include/asm 2008-08-02 21:32:35 +01:00
pci.h ARM: 6058/1: Add support for PCI domains 2010-04-22 21:38:11 +01:00
percpu.h [ARM] move include/asm-arm to arch/arm/include/asm 2008-08-02 21:32:35 +01:00
perf_event.h irq_work: Add generic hardirq context callbacks 2010-10-18 19:58:50 +02:00
pgalloc.h ARM: pgtable: switch order of Linux vs hardware page tables 2010-12-22 11:05:32 +00:00
pgtable-hwdef.h [ARM] move include/asm-arm to arch/arm/include/asm 2008-08-02 21:32:35 +01:00
pgtable-nommu.h ARM: 5988/1: pgprot_dmacoherent() for non-mmu builds 2010-03-13 10:48:22 +00:00
pgtable.h ARM: pgtable: provide RDONLY page table bit rather than WRITE bit 2010-12-22 11:05:35 +00:00
pmu.h ARM: 6064/1: pmu: register IRQs at runtime 2010-05-17 11:53:57 +01:00
poll.h [ARM] move include/asm-arm to arch/arm/include/asm 2008-08-02 21:32:35 +01:00
posix_types.h [ARM] move include/asm-arm to arch/arm/include/asm 2008-08-02 21:32:35 +01:00
proc-fns.h ARM: Kill CONFIG_CPU_32 2009-12-18 16:07:53 +00:00
processor.h ARM: 6357/1: hw-breakpoint: add new ptrace requests for hw-breakpoint interaction 2010-09-08 10:05:00 +01:00
procinfo.h [ARM] move include/asm-arm to arch/arm/include/asm 2008-08-02 21:32:35 +01:00
ptrace.h ARM: 6357/1: hw-breakpoint: add new ptrace requests for hw-breakpoint interaction 2010-09-08 10:05:00 +01:00
resource.h [ARM] move include/asm-arm to arch/arm/include/asm 2008-08-02 21:32:35 +01:00
scatterlist.h asm-generic: remove ARCH_HAS_SG_CHAIN in scatterlist.h 2010-05-27 09:12:54 -07:00
sched_clock.h ARM: sched_clock: allow init_sched_clock() to be called early 2011-01-11 16:23:04 +00:00
seccomp.h ARM: SECCOMP support 2010-10-01 22:32:18 -04:00
sections.h [ARM] move include/asm-arm to arch/arm/include/asm 2008-08-02 21:32:35 +01:00
segment.h [ARM] move include/asm-arm to arch/arm/include/asm 2008-08-02 21:32:35 +01:00
sembuf.h [ARM] move include/asm-arm to arch/arm/include/asm 2008-08-02 21:32:35 +01:00
serial.h [ARM] move include/asm-arm to arch/arm/include/asm 2008-08-02 21:32:35 +01:00
setup.h ARM: Remove DISCONTIGMEM support 2010-07-16 10:57:35 +01:00
shmbuf.h [ARM] move include/asm-arm to arch/arm/include/asm 2008-08-02 21:32:35 +01:00
shmparam.h [ARM] move include/asm-arm to arch/arm/include/asm 2008-08-02 21:32:35 +01:00
sigcontext.h [ARM] move include/asm-arm to arch/arm/include/asm 2008-08-02 21:32:35 +01:00
siginfo.h [ARM] move include/asm-arm to arch/arm/include/asm 2008-08-02 21:32:35 +01:00
signal.h asm-generic: rename termios.h, signal.h and mman.h 2009-06-11 21:01:52 +02:00
sizes.h ARM: 6536/1: Add missing SZ_{32,64,128} 2010-12-24 09:37:58 +00:00
smp.h ARM: SMP: consolidate the common parts of smp_prepare_cpus() 2010-12-20 15:09:08 +00:00
smp_plat.h Merge branches 'at91', 'dcache', 'ftrace', 'hwbpt', 'misc', 'mmci', 's3c', 'st-ux' and 'unwind' into devel 2010-10-18 22:34:25 +01:00
smp_scu.h [ARM] smp: separate SCU support code from realview 2009-05-17 19:00:37 +01:00
smp_twd.h ARM: localtimer: clean up local timer on hot unplug 2010-12-20 15:09:16 +00:00
socket.h net: Generalize socket rx gap / receive queue overflow cmsg 2009-10-12 13:26:31 -07:00
sockios.h [ARM] move include/asm-arm to arch/arm/include/asm 2008-08-02 21:32:35 +01:00
sparsemem.h [ARM] mm: enable sparsemem on clps7500 and RiscPC 2008-10-01 17:24:04 +01:00
spinlock.h ARM: 5897/1: spinlock: don't use deprecated barriers on ARMv7 2010-02-15 21:39:50 +00:00
spinlock_types.h locking: Convert raw_rwlock to arch_rwlock 2009-12-14 23:55:32 +01:00
stackprotector.h ARM: initial stack protector (-fstack-protector) support 2010-06-14 21:31:00 -04:00
stacktrace.h [ARM] 5382/1: unwind: Reorganise the stacktrace support 2009-02-12 13:21:17 +00:00
stat.h [ARM] move include/asm-arm to arch/arm/include/asm 2008-08-02 21:32:35 +01:00
statfs.h ARM: Use <asm-generic/statfs.h> 2008-09-04 09:46:11 +01:00
string.h [ARM] remove memzero() 2008-11-27 12:37:59 +00:00
swab.h ARM: 5772/1: Use REV and REV16 for byte swapping on ARMv6+ 2009-10-25 15:59:53 +00:00
system.h Merge branch 'misc' into devel 2011-01-06 22:32:52 +00:00
tcm.h ARM: 5580/2: ARM TCM (Tightly-Coupled Memory) support v3 2009-09-15 22:11:05 +01:00
termbits.h tty: Add EXTPROC support for LINEMODE 2010-08-10 13:47:39 -07:00
termios.h [ARM] move include/asm-arm to arch/arm/include/asm 2008-08-02 21:32:35 +01:00
therm.h [ARM] move include/asm-arm to arch/arm/include/asm 2008-08-02 21:32:35 +01:00
thread_info.h ARM: SECCOMP support 2010-10-01 22:32:18 -04:00
thread_notify.h ARM: Convert VFP/Crunch/XscaleCP thread_release() to exit_thread() 2009-12-18 14:53:41 +00:00
timex.h [ARM] Move include/asm-arm/arch-* to arch/arm/*/include/mach 2008-08-07 09:55:48 +01:00
tlb.h mm: Pass virtual address to [__]p{te,ud,md}_free_tlb() 2009-07-27 12:10:38 -07:00
tlbflush.h Merge branches 'at91', 'dcache', 'ftrace', 'hwbpt', 'misc', 'mmci', 's3c', 'st-ux' and 'unwind' into devel 2010-10-18 22:34:25 +01:00
tls.h ARM: 6207/1: Replace CONFIG_HAS_TLS_REG with HWCAP_TLS and check for it on V6 2010-07-09 14:41:35 +01:00
topology.h [ARM] move include/asm-arm to arch/arm/include/asm 2008-08-02 21:32:35 +01:00
traps.h Merge branch 'misc' into devel 2011-01-06 22:32:52 +00:00
types.h [ARM] move include/asm-arm to arch/arm/include/asm 2008-08-02 21:32:35 +01:00
uaccess.h ARM: 6384/1: Remove the domain switching on ARMv6k/v7 CPUs 2010-11-04 15:44:31 +00:00
ucontext.h ARM: 6051/1: VFP: preserve the HW context when calling signal handlers 2010-04-14 11:11:30 +01:00
unaligned.h [ARM] move include/asm-arm to arch/arm/include/asm 2008-08-02 21:32:35 +01:00
unified.h Fix "W" macro in arch/arm/include/asm/unified.h 2009-09-18 23:30:11 +01:00
unistd.h ARM: 6343/1: wire up fanotify and prlimit64 syscalls on ARM 2010-09-01 10:06:08 +01:00
unwind.h [ARM] 5383/2: unwind: Add core support for ARM stack unwinding 2009-02-19 11:26:24 +00:00
user.h ARM: 6051/1: VFP: preserve the HW context when calling signal handlers 2010-04-14 11:11:30 +01:00
vfp.h [ARM] move include/asm-arm to arch/arm/include/asm 2008-08-02 21:32:35 +01:00
vfpmacros.h ARM: 6203/1: Make VFPv3 usable on ARMv6 2010-07-09 14:41:34 +01:00
vga.h [ARM] Convert asm/io.h to linux/io.h 2008-09-06 12:10:45 +01:00
xor.h [ARM] move include/asm-arm to arch/arm/include/asm 2008-08-02 21:32:35 +01:00