kernel-ark/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
a.out-core.h
a.out.h
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
bitops.h ARM: 6621/1: bitops: remove condition code clobber for CLZ 2011-01-12 14:22:25 +00:00
bitsperlong.h
bug.h
bugs.h
byteorder.h
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
clkdev.h ARM: 6483/1: arm & sh: factorised duplicated clkdev.c 2010-11-26 10:51:04 +00:00
cpu-multi32.h
cpu-single.h
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
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
delay.h
device.h
div64.h
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
elf.h ARM: 6486/1: provide zero vmcore_elf64_check_arch() 2010-11-30 13:40:01 +00:00
emergency-restart.h
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
fb.h
fcntl.h
fiq.h
fixmap.h
flat.h
floppy.h
fpstate.h
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
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
io.h ARM: io: ensure inb/outb() et.al. are properly ordered on ARMv6+ 2011-01-31 10:53:42 +00:00
ioctl.h
ioctls.h ioctl: Use asm-generic/ioctls.h on arm (enables termiox) 2010-10-22 10:19:59 -07:00
ipcbuf.h
irq_regs.h
irq.h ARM: 6197/2: preliminary support for sparse IRQ 2010-07-09 14:41:33 +01:00
irqflags.h Fix IRQ flag handling naming 2010-10-07 14:08:55 +01:00
Kbuild archs: replace unifdef-y with header-y 2010-08-14 22:26:51 +02:00
kdebug.h
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
leds.h
limits.h
linkage.h
local64.h arch: Implement local64_t 2010-06-09 11:12:36 +02:00
local.h
localtimer.h ARM: localtimer: clean up local timer on hot unplug 2010-12-20 15:09:16 +00:00
locks.h
mach-types.h arm: move mach-types to include/generated 2009-12-12 13:08:14 +01:00
mc146818rtc.h
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_context.h ARM: add a vma entry for the user accessible vector page 2010-10-01 22:35:19 -04:00
mmu.h ARM: 6490/1: MM: bugfix: initialize spinlock for init_mm.context 2010-11-23 22:46:12 +00:00
module.h ARM: module: clean up handling of ELF unwind tables 2010-12-01 10:23:04 +00:00
msgbuf.h
mtd-xip.h
mutex.h
nwflash.h
outercache.h arm: Disable outer (L2) cache in kexec 2010-10-26 11:39:56 +05:30
page-nommu.h
page.h ARM: pgtable: introduce pteval_t to represent a pte value 2010-11-26 20:45:47 +00:00
param.h
parport.h
pci.h ARM: 6058/1: Add support for PCI domains 2010-04-22 21:38:11 +01:00
percpu.h
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
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
posix_types.h
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
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
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
segment.h
sembuf.h
serial.h
setup.h ARM: Remove DISCONTIGMEM support 2010-07-16 10:57:35 +01:00
shmbuf.h
shmparam.h
sigcontext.h
siginfo.h
signal.h
sizes.h ARM: 6536/1: Add missing SZ_{32,64,128} 2010-12-24 09:37:58 +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
smp_twd.h ARM: localtimer: clean up local timer on hot unplug 2010-12-20 15:09:16 +00:00
smp.h ARM: SMP: consolidate the common parts of smp_prepare_cpus() 2010-12-20 15:09:08 +00:00
socket.h net: Generalize socket rx gap / receive queue overflow cmsg 2009-10-12 13:26:31 -07:00
sockios.h
sparsemem.h
spinlock_types.h locking: Convert raw_rwlock to arch_rwlock 2009-12-14 23:55:32 +01:00
spinlock.h ARM: 5897/1: spinlock: don't use deprecated barriers on ARMv7 2010-02-15 21:39:50 +00:00
stackprotector.h ARM: initial stack protector (-fstack-protector) support 2010-06-14 21:31:00 -04:00
stacktrace.h
stat.h
statfs.h
string.h
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
therm.h
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
tlb.h
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
traps.h Merge branch 'misc' into devel 2011-01-06 22:32:52 +00:00
types.h
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
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
user.h ARM: 6051/1: VFP: preserve the HW context when calling signal handlers 2010-04-14 11:11:30 +01:00
vfp.h
vfpmacros.h ARM: 6203/1: Make VFPv3 usable on ARMv6 2010-07-09 14:41:34 +01:00
vga.h
xor.h