diff options
author | Joachim Foerster <joachim.foerster@missinglinkelectronics.com> | 2011-10-20 10:28:10 +0200 |
---|---|---|
committer | Thomas Chou <thomas@wytron.com.tw> | 2011-10-28 09:50:13 +0800 |
commit | f956ad98b2ba10901b6ea04983e679bc5ddc4d7a (patch) | |
tree | b1912eaed3ca0908856ab21c913fb05875854081 | |
parent | ce5207e191c59b3135303fd03b98dd2ac3701ba2 (diff) | |
download | u-boot-f956ad98b2ba10901b6ea04983e679bc5ddc4d7a.tar.gz |
nios2: Pseudo implement dcache_status/enable/disable()
AFAIK the NIOS2 architecture does not have any possibility to
dynamically switch off the data cache. So _status() always reports 1 and
_enable/_disable() just issue a flush of everything.
For example, common/cmd_elf.c depends on these symbols.
Signed-off-by: Joachim Foerster <joachim.foerster@missinglinkelectronics.com>
Signed-off-by: Thomas Chou <thomas@wytron.com.tw>
-rw-r--r-- | arch/nios2/cpu/cpu.c | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/arch/nios2/cpu/cpu.c b/arch/nios2/cpu/cpu.c index ef360eecbb..edf256017a 100644 --- a/arch/nios2/cpu/cpu.c +++ b/arch/nios2/cpu/cpu.c @@ -24,6 +24,7 @@ #include <common.h> #include <nios2.h> #include <nios2-io.h> +#include <asm/cache.h> #if defined (CONFIG_SYS_NIOS_SYSID_BASE) extern void display_sysid (void); @@ -47,3 +48,18 @@ int do_reset(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) nios2_callr(CONFIG_SYS_RESET_ADDR); return 0; } + +int dcache_status(void) +{ + return 1; +} + +void dcache_enable(void) +{ + flush_dcache(CONFIG_SYS_DCACHE_SIZE, CONFIG_SYS_DCACHELINE_SIZE); +} + +void dcache_disable(void) +{ + flush_dcache(CONFIG_SYS_DCACHE_SIZE, CONFIG_SYS_DCACHELINE_SIZE); +} |