aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arc/Kconfig
diff options
context:
space:
mode:
authorVineet Gupta <vgupta@synopsys.com>2013-05-09 12:24:51 -0400
committerVineet Gupta <vgupta@synopsys.com>2013-05-09 12:29:46 -0400
commit4102b53392d6397d80b6e09b516517efacf7ea77 (patch)
treeb79aa87af1b3a1ff39b4a00b889cb806dfe32ae7 /arch/arc/Kconfig
parent6ec18a81b22ab2b40df8424f2b5fc6be20ccad87 (diff)
ARC: [mm] Aliasing VIPT dcache support 2/4
This is the meat of the series which prevents any dcache alias creation by always keeping the U and K mapping of a page congruent. If a mapping already exists, and other tries to access the page, prev one is flushed to physical page (wback+inv) Essentially flush_dcache_page()/copy_user_highpage() create K-mapping of a page, but try to defer flushing, unless U-mapping exist. When page is actually mapped to userspace, update_mmu_cache() flushes the K-mapping (in certain cases this can be optimised out) Additonally flush_cache_mm(), flush_cache_range(), flush_cache_page() handle the puring of stale userspace mappings on exit/munmap... flush_anon_page() handles the existing U-mapping for anon page before kernel reads it via the GUP path. Note that while not complete, this is enough to boot a simple dynamically linked Busybox based rootfs Signed-off-by: Vineet Gupta <vgupta@synopsys.com>
Diffstat (limited to 'arch/arc/Kconfig')
-rw-r--r--arch/arc/Kconfig4
1 files changed, 4 insertions, 0 deletions
diff --git a/arch/arc/Kconfig b/arch/arc/Kconfig
index 491ae7923b10..5917099470ea 100644
--- a/arch/arc/Kconfig
+++ b/arch/arc/Kconfig
@@ -182,6 +182,10 @@ config ARC_CACHE_PAGES
182 Note that Global I/D ENABLE + Per Page DISABLE works but corollary 182 Note that Global I/D ENABLE + Per Page DISABLE works but corollary
183 Global DISABLE + Per Page ENABLE won't work 183 Global DISABLE + Per Page ENABLE won't work
184 184
185config ARC_CACHE_VIPT_ALIASING
186 bool "Support VIPT Aliasing D$"
187 default n
188
185endif #ARC_CACHE 189endif #ARC_CACHE
186 190
187config ARC_HAS_ICCM 191config ARC_HAS_ICCM