summaryrefslogtreecommitdiffstats
path: root/arch/mips64/kernel/head.S
diff options
context:
space:
mode:
authorKanoj Sarcar <kanoj@engr.sgi.com>2000-06-06 18:55:02 +0000
committerKanoj Sarcar <kanoj@engr.sgi.com>2000-06-06 18:55:02 +0000
commit0c37cbd74b2e4421ebb93a8498fdc1119f69dcfd (patch)
tree720eb50dbe0787446a991c797ac1c085719a17c5 /arch/mips64/kernel/head.S
parent9fb403ee99d7c6b74459b888315929f47e31b013 (diff)
Entrylo1 must at least be marked global for the tlb entry mapping the
mapped kernel text/data for tlb translation to work properly.
Diffstat (limited to 'arch/mips64/kernel/head.S')
-rw-r--r--arch/mips64/kernel/head.S3
1 files changed, 2 insertions, 1 deletions
diff --git a/arch/mips64/kernel/head.S b/arch/mips64/kernel/head.S
index 3e736acf7..85e99faae 100644
--- a/arch/mips64/kernel/head.S
+++ b/arch/mips64/kernel/head.S
@@ -86,7 +86,8 @@ NESTED(mapped_kernel_setup_tlb, 16, sp)
dmtc0 t0, CP0_ENTRYHI
li t0, ((_PAGE_GLOBAL|_PAGE_VALID| _PAGE_DIRTY|_CACHE_CACHABLE_COW) >> 6)
mtc0 t0, CP0_ENTRYLO0 # physaddr 0, DVG, cach exlwr
- mtc0 zero, CP0_ENTRYLO1 # 16M should be enough for text+data
+ li t0, (_PAGE_GLOBAL >> 6) # allow global access to kernel
+ mtc0 t0, CP0_ENTRYLO1 # 16M should be enough for text+data
li t0, 0x1ffe000 # MAPPED_KERN_TLBMASK, TLBPGMASK_16M
mtc0 t0, CP0_PAGEMASK
li t0, 0 # KMAP_INX