android_kernel_xiaomi_sm8350/arch/arm/mm
Lennert Buytenhek 23759dc643 [ARM] 3439/2: xsc3: add I/O coherency support
Patch from Lennert Buytenhek

This patch adds support for the I/O coherent cache available on the
xsc3.  The approach is to provide a simple API to determine whether the
chipset supports coherency by calling arch_is_coherent() and then
setting the appropriate system memory PTE and PMD bits.  In addition,
we call this API on dma_alloc_coherent() and dma_map_single() calls.
A generic version exists that will compile out all the coherency-related
code that is not needed on the majority of ARM systems.

Note that we do not check for coherency in the dma_alloc_writecombine()
function as that still requires a special PTE setting.  We also don't
touch dma_mmap_coherent() as that is a special ARM-only API that is by
definition only used on non-coherent system.

Signed-off-by: Deepak Saxena <dsaxena@plexity.net>
Signed-off-by: Lennert Buytenhek <buytenh@wantstofly.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2006-04-02 00:07:39 +01:00
..
abort-ev4.S
abort-ev4t.S
abort-ev5t.S
abort-ev5tj.S
abort-ev6.S [ARM] CONFIG_CPU_MPCORE -> CONFIG_CPU_32v6K 2006-02-22 21:13:28 +00:00
abort-lv4t.S
abort-macro.S
alignment.c
cache-v3.S
cache-v4.S
cache-v4wb.S
cache-v4wt.S
cache-v6.S [ARM] 3356/1: Workaround for the ARM1136 I-cache invalidation problem 2006-03-10 22:26:47 +00:00
consistent.c [ARM] 3439/2: xsc3: add I/O coherency support 2006-04-02 00:07:39 +01:00
copypage-v3.S
copypage-v4mc.c
copypage-v4wb.S
copypage-v4wt.S
copypage-v6.c
copypage-xsc3.S [ARM] 3377/2: add support for intel xsc3 core 2006-03-28 21:00:40 +01:00
copypage-xscale.c
discontig.c [ARM] Cleanup ARM includes 2006-01-03 17:39:34 +00:00
extable.c
fault-armv.c
fault.c
fault.h
flush.c [ARM] 3356/1: Workaround for the ARM1136 I-cache invalidation problem 2006-03-10 22:26:47 +00:00
init.c Merge master.kernel.org:/home/rmk/linux-2.6-arm 2006-03-22 17:32:09 -08:00
ioremap.c [ARM] Remove unnecessary asm/hardware.h includes 2006-03-21 22:05:50 +00:00
Kconfig [ARM] 3377/2: add support for intel xsc3 core 2006-03-28 21:00:40 +01:00
Makefile [ARM] 3377/2: add support for intel xsc3 core 2006-03-28 21:00:40 +01:00
mm-armv.c [ARM] 3439/2: xsc3: add I/O coherency support 2006-04-02 00:07:39 +01:00
mmap.c
mmu.c
proc-arm6_7.S [ARM] nommu: Move hardware page table definitions to pgtable-hwdef.h 2006-03-21 22:03:25 +00:00
proc-arm720.S Merge nommu tree 2006-03-25 22:08:55 +00:00
proc-arm920.S Merge nommu tree 2006-03-25 22:08:55 +00:00
proc-arm922.S Merge nommu tree 2006-03-25 22:08:55 +00:00
proc-arm925.S Merge nommu tree 2006-03-25 22:08:55 +00:00
proc-arm926.S Merge nommu tree 2006-03-25 22:08:55 +00:00
proc-arm1020.S Merge nommu tree 2006-03-25 22:08:55 +00:00
proc-arm1020e.S Merge nommu tree 2006-03-25 22:08:55 +00:00
proc-arm1022.S [ARM] nommu: Move hardware page table definitions to pgtable-hwdef.h 2006-03-21 22:03:25 +00:00
proc-arm1026.S [ARM] nommu: Move hardware page table definitions to pgtable-hwdef.h 2006-03-21 22:03:25 +00:00
proc-macros.S
proc-sa110.S [ARM] nommu: Move hardware page table definitions to pgtable-hwdef.h 2006-03-21 22:03:25 +00:00
proc-sa1100.S [ARM] nommu: Move hardware page table definitions to pgtable-hwdef.h 2006-03-21 22:03:25 +00:00
proc-syms.c
proc-v6.S [ARM] proc-v6: mark page table walks outer-cacheable, shared. Enable NX. 2006-03-27 16:59:07 +01:00
proc-xsc3.S [ARM] 3439/2: xsc3: add I/O coherency support 2006-04-02 00:07:39 +01:00
proc-xscale.S Merge nommu tree 2006-03-25 22:08:55 +00:00
tlb-v3.S
tlb-v4.S
tlb-v4wb.S
tlb-v4wbi.S
tlb-v6.S [ARM] 3352/1: DSB required for the completion of a TLB maintenance operation 2006-03-07 14:42:27 +00:00