summaryrefslogtreecommitdiffstats
path: root/arch/openrisc/Kconfig
diff options
context:
space:
mode:
authorJan Henrik Weinstock <jan.weinstock@ice.rwth-aachen.de>2015-11-04 17:26:10 +0100
committerStafford Horne <shorne@gmail.com>2017-11-03 14:01:15 +0900
commit4ee93d80ad73980826d582c7c37caa9597822001 (patch)
treeaae34814c80135a8a385269e9a9e07892e36ac61 /arch/openrisc/Kconfig
parentc056718464512da06d7f65a27d5e4f1707b24c80 (diff)
downloadop-kernel-dev-4ee93d80ad73980826d582c7c37caa9597822001.zip
op-kernel-dev-4ee93d80ad73980826d582c7c37caa9597822001.tar.gz
openrisc: add cacheflush support to fix icache aliasing
On OpenRISC the icache does not snoop data stores. This can cause aliasing as reported by Jan. This patch fixes the issue to ensure icache is properly synchronized when code is written to memory. It supports both SMP and UP flushing. This supports dcache flush as well for architectures that do not support write-through caches; most OpenRISC implementations do implement write-through cache however. Dcache flushes are done only on a single core as OpenRISC dcaches all support snooping of bus stores. Signed-off-by: Jan Henrik Weinstock <jan.weinstock@ice.rwth-aachen.de> [shorne@gmail.com: Squashed patches and wrote commit message] Signed-off-by: Stafford Horne <shorne@gmail.com>
Diffstat (limited to 'arch/openrisc/Kconfig')
-rw-r--r--arch/openrisc/Kconfig11
1 files changed, 11 insertions, 0 deletions
diff --git a/arch/openrisc/Kconfig b/arch/openrisc/Kconfig
index 2b3898e..bfff04a 100644
--- a/arch/openrisc/Kconfig
+++ b/arch/openrisc/Kconfig
@@ -77,6 +77,17 @@ config OR1K_1200
endchoice
+config DCACHE_WRITETHROUGH
+ bool "Have write through data caches"
+ default n
+ help
+ Select this if your implementation features write through data caches.
+ Selecting 'N' here will allow the kernel to force flushing of data
+ caches at relevant times. Most OpenRISC implementations support write-
+ through data caches.
+
+ If unsure say N here
+
config OPENRISC_BUILTIN_DTB
string "Builtin DTB"
default ""
OpenPOWER on IntegriCloud