summaryrefslogtreecommitdiff
path: root/arch/sh/lib
diff options
context:
space:
mode:
authorPaul Mundt <lethal@linux-sh.org>2009-07-27 20:53:22 +0900
committerPaul Mundt <lethal@linux-sh.org>2009-07-27 20:53:22 +0900
commitdfff0fa65ab15db45acd64b3189787d37ab163cd (patch)
treec888641a25f83fb75a4886f6c1e63c44d889fed4 /arch/sh/lib
parent2277ab4a1df50e05bc732fe9488d4e902bb8399a (diff)
downloadlinux-3.10-dfff0fa65ab15db45acd64b3189787d37ab163cd.tar.gz
linux-3.10-dfff0fa65ab15db45acd64b3189787d37ab163cd.tar.bz2
linux-3.10-dfff0fa65ab15db45acd64b3189787d37ab163cd.zip
sh: wire up clear_user_highpage() for sh4, convert sh7705.
This wires up clear_user_highpage() on SH-4 and subsequently converts the SH7705 32kB cache mode over to using it. Now that the SH-4 implementation handles all of the dcache purging directly in the aliasing case, there is no need to do this in the default clear_page() implementation. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Diffstat (limited to 'arch/sh/lib')
-rw-r--r--arch/sh/lib/clear_page.S46
1 files changed, 0 insertions, 46 deletions
diff --git a/arch/sh/lib/clear_page.S b/arch/sh/lib/clear_page.S
index 8342bfbde64..bee9817e055 100644
--- a/arch/sh/lib/clear_page.S
+++ b/arch/sh/lib/clear_page.S
@@ -8,52 +8,6 @@
#include <linux/linkage.h>
#include <asm/page.h>
-/*
- * clear_page
- * @to: P1 address
- *
- * void clear_page(void *to)
- */
-
-/*
- * r0 --- scratch
- * r4 --- to
- * r5 --- to + PAGE_SIZE
- */
-ENTRY(clear_page)
- mov r4,r5
- mov.l .Llimit,r0
- add r0,r5
- mov #0,r0
- !
-1:
-#if defined(CONFIG_CPU_SH4)
- movca.l r0,@r4
- mov r4,r1
-#else
- mov.l r0,@r4
-#endif
- add #32,r4
- mov.l r0,@-r4
- mov.l r0,@-r4
- mov.l r0,@-r4
- mov.l r0,@-r4
- mov.l r0,@-r4
- mov.l r0,@-r4
- mov.l r0,@-r4
-#if defined(CONFIG_CPU_SH4)
- ocbwb @r1
-#endif
- cmp/eq r5,r4
- bf/s 1b
- add #28,r4
- !
- rts
- nop
-
- .balign 4
-.Llimit: .long (PAGE_SIZE-28)
-
ENTRY(__clear_user)
!
mov #0, r0