From 343c185b7d7383b1f5b5144e837045af28afc42b Mon Sep 17 00:00:00 2001 From: kaloz Date: Tue, 23 Jun 2009 21:04:37 +0000 Subject: use broken-out patches for the coldfire to make it easier to follow differences against the bsp git-svn-id: svn://svn.openwrt.org/openwrt/trunk@16547 3c298f89-4303-0410-b956-a3cf2f4a3e73 --- .../patches/053-mcfv4e_brcache_inval.patch | 42 ++++++++++++++++++++++ 1 file changed, 42 insertions(+) create mode 100644 target/linux/coldfire/patches/053-mcfv4e_brcache_inval.patch (limited to 'target/linux/coldfire/patches/053-mcfv4e_brcache_inval.patch') diff --git a/target/linux/coldfire/patches/053-mcfv4e_brcache_inval.patch b/target/linux/coldfire/patches/053-mcfv4e_brcache_inval.patch new file mode 100644 index 000000000..dc551babf --- /dev/null +++ b/target/linux/coldfire/patches/053-mcfv4e_brcache_inval.patch @@ -0,0 +1,42 @@ +From eba69831e8f35174e2e15e373a66f40dc0be8929 Mon Sep 17 00:00:00 2001 +From: Kurt Mahan +Date: Wed, 14 May 2008 12:23:12 -0600 +Subject: [PATCH] Force branch-cache invalidate on task switch. + +When finishing a task switch make sure the branch cache +gets invalidated to ensure no stale entries exist for +the next user space. + +LTIBName: mcfv4e-brcache-inval +Signed-off-by: Kurt Mahan +--- + include/asm-m68k/system.h | 15 +++++++++++++++ + 1 files changed, 15 insertions(+), 0 deletions(-) + +--- a/include/asm-m68k/system.h ++++ b/include/asm-m68k/system.h +@@ -5,9 +5,24 @@ + #include + #include + #include ++#include + + #ifdef __KERNEL__ + ++#ifdef CONFIG_COLDFIRE ++#define FLUSH_BC (0x00040000) ++ ++#define finish_arch_switch(prev) do { \ ++ unsigned long tmpreg; \ ++ asm volatile ( "move.l %2,%0\n" \ ++ "orl %1,%0\n" \ ++ "movec %0,%%cacr" \ ++ : "=&d" (tmpreg) \ ++ : "id" (FLUSH_BC), "m" (shadow_cacr)); \ ++ } while(0) ++ ++#endif ++ + /* + * switch_to(n) should switch tasks to task ptr, first checking that + * ptr isn't the current task, in which case it does nothing. This -- cgit v1.2.3