diff options
Diffstat (limited to 'arch/sparc64/lib/clear_page.S')
-rw-r--r-- | arch/sparc64/lib/clear_page.S | 8 |
1 files changed, 2 insertions, 6 deletions
diff --git a/arch/sparc64/lib/clear_page.S b/arch/sparc64/lib/clear_page.S index cdc634bceba0..77e531f6c2a7 100644 --- a/arch/sparc64/lib/clear_page.S +++ b/arch/sparc64/lib/clear_page.S | |||
@@ -23,9 +23,6 @@ | |||
23 | * disable preemption during the clear. | 23 | * disable preemption during the clear. |
24 | */ | 24 | */ |
25 | 25 | ||
26 | #define TTE_BITS_TOP (_PAGE_VALID | _PAGE_SZBITS) | ||
27 | #define TTE_BITS_BOTTOM (_PAGE_CP | _PAGE_CV | _PAGE_P | _PAGE_L | _PAGE_W) | ||
28 | |||
29 | .text | 26 | .text |
30 | 27 | ||
31 | .globl _clear_page | 28 | .globl _clear_page |
@@ -44,12 +41,11 @@ clear_user_page: /* %o0=dest, %o1=vaddr */ | |||
44 | sethi %hi(PAGE_SIZE), %o4 | 41 | sethi %hi(PAGE_SIZE), %o4 |
45 | 42 | ||
46 | sllx %g2, 32, %g2 | 43 | sllx %g2, 32, %g2 |
47 | sethi %uhi(TTE_BITS_TOP), %g3 | 44 | sethi %hi(PAGE_KERNEL_LOCKED), %g3 |
48 | 45 | ||
49 | sllx %g3, 32, %g3 | 46 | ldx [%g3 + %lo(PAGE_KERNEL_LOCKED)], %g3 |
50 | sub %o0, %g2, %g1 ! paddr | 47 | sub %o0, %g2, %g1 ! paddr |
51 | 48 | ||
52 | or %g3, TTE_BITS_BOTTOM, %g3 | ||
53 | and %o1, %o4, %o0 ! vaddr D-cache alias bit | 49 | and %o1, %o4, %o0 ! vaddr D-cache alias bit |
54 | 50 | ||
55 | or %g1, %g3, %g1 ! TTE data | 51 | or %g1, %g3, %g1 ! TTE data |