summaryrefslogtreecommitdiff
path: root/arch/mn10300/mm/Kconfig.cache
diff options
context:
space:
mode:
authorAkira Takeuchi <takeuchi.akr@jp.panasonic.com>2010-10-27 17:28:45 +0100
committerDavid Howells <dhowells@redhat.com>2010-10-27 17:28:45 +0100
commit9731d23710736b96786d68c2e63148ff3f22e6eb (patch)
treeb3804df43f25ba8c8aaf1de94a98c0cb22f69d7e /arch/mn10300/mm/Kconfig.cache
parent0bd3eb6ca772775da6125ea5b044d4257473d18d (diff)
MN10300: AM34: Add cacheflushing by using the AM34 purge registers
The AM34 CPU core provides an automated way of purging the cache rather than manually iterating over all the tags in the cache. Make it possible to use these. Signed-off-by: Akira Takeuchi <takeuchi.akr@jp.panasonic.com> Signed-off-by: Kiyoshi Owada <owada.kiyoshi@jp.panasonic.com> Signed-off-by: David Howells <dhowells@redhat.com>
Diffstat (limited to 'arch/mn10300/mm/Kconfig.cache')
-rw-r--r--arch/mn10300/mm/Kconfig.cache13
1 files changed, 12 insertions, 1 deletions
diff --git a/arch/mn10300/mm/Kconfig.cache b/arch/mn10300/mm/Kconfig.cache
index aa6ff0791138..97adc06e7128 100644
--- a/arch/mn10300/mm/Kconfig.cache
+++ b/arch/mn10300/mm/Kconfig.cache
@@ -37,7 +37,8 @@ config MN10300_CACHE_ENABLED
choice
prompt "CPU cache flush/invalidate method"
- default MN10300_CACHE_MANAGE_BY_TAG
+ default MN10300_CACHE_MANAGE_BY_TAG if !AM34_2
+ default MN10300_CACHE_MANAGE_BY_REG if AM34_2
depends on MN10300_CACHE_ENABLED
help
This determines the method by which CPU cache flushing and
@@ -46,10 +47,20 @@ choice
config MN10300_CACHE_MANAGE_BY_TAG
bool "Use the cache tag registers directly"
+config MN10300_CACHE_MANAGE_BY_REG
+ bool "Flush areas by way of automatic purge registers (AM34 only)"
+ depends on AM34_2
+
endchoice
config MN10300_CACHE_INV_BY_TAG
def_bool y if MN10300_CACHE_MANAGE_BY_TAG && MN10300_CACHE_ENABLED
+config MN10300_CACHE_INV_BY_REG
+ def_bool y if MN10300_CACHE_MANAGE_BY_REG && MN10300_CACHE_ENABLED
+
config MN10300_CACHE_FLUSH_BY_TAG
def_bool y if MN10300_CACHE_MANAGE_BY_TAG && MN10300_CACHE_WBACK
+
+config MN10300_CACHE_FLUSH_BY_REG
+ def_bool y if MN10300_CACHE_MANAGE_BY_REG && MN10300_CACHE_WBACK