summaryrefslogtreecommitdiffstats
path: root/arch/m68k
diff options
context:
space:
mode:
authorGreg Ungerer <gerg@uclinux.org>2011-10-18 08:07:25 +0200
committerGreg Ungerer <gerg@uclinux.org>2011-12-30 01:20:36 +0100
commit60610192559d430dd24d9b508ae9d8d249709af9 (patch)
tree7bfb3e56e92534afd21a8fdc8446fa5a4e9fbfe4 /arch/m68k
parentm68k: use tracehook_report_syscall_entry/exit for ColdFire MMU ptrace path (diff)
downloadlinux-60610192559d430dd24d9b508ae9d8d249709af9.tar.xz
linux-60610192559d430dd24d9b508ae9d8d249709af9.zip
m68k: modify cache push and clear code for ColdFire with MMU enable
The cache push and clear code only need to flush the branch cache on the write-through cache setup of the ColdFire V4e with MMU enabled. Signed-off-by: Greg Ungerer <gerg@uclinux.org> Acked-by: Geert Uytterhoeven <geert@linux-m68k.org> Acked-by: Matt Waddel <mwaddel@yahoo.com> Acked-by: Kurt Mahan <kmahan@xmission.com>
Diffstat (limited to 'arch/m68k')
-rw-r--r--arch/m68k/mm/memory.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/arch/m68k/mm/memory.c b/arch/m68k/mm/memory.c
index 34c77ce24fba..a5dbb74fe1de 100644
--- a/arch/m68k/mm/memory.c
+++ b/arch/m68k/mm/memory.c
@@ -203,7 +203,9 @@ static inline void pushcl040(unsigned long paddr)
void cache_clear (unsigned long paddr, int len)
{
- if (CPU_IS_040_OR_060) {
+ if (CPU_IS_COLDFIRE) {
+ flush_cf_bcache(0, DCACHE_MAX_ADDR);
+ } else if (CPU_IS_040_OR_060) {
int tmp;
/*
@@ -250,7 +252,9 @@ EXPORT_SYMBOL(cache_clear);
void cache_push (unsigned long paddr, int len)
{
- if (CPU_IS_040_OR_060) {
+ if (CPU_IS_COLDFIRE) {
+ flush_cf_bcache(0, DCACHE_MAX_ADDR);
+ } else if (CPU_IS_040_OR_060) {
int tmp = PAGE_SIZE;
/*