diff options
author | benno <benno@FreeBSD.org> | 2002-02-14 01:39:11 +0000 |
---|---|---|
committer | benno <benno@FreeBSD.org> | 2002-02-14 01:39:11 +0000 |
commit | 8c67ca76f79f837ceff85f7b9beb68cb784aaadd (patch) | |
tree | ea22ffca9020aeeb7d70a0afc75a11a1200af23b /sys/powerpc/aim/locore.S | |
parent | c745bc3937461deb0149ef098ea50897e1e5c0a1 (diff) | |
download | FreeBSD-src-8c67ca76f79f837ceff85f7b9beb68cb784aaadd.zip FreeBSD-src-8c67ca76f79f837ceff85f7b9beb68cb784aaadd.tar.gz |
Complete rework of the PowerPC pmap and a number of other bits in the early
boot sequence.
The new pmap.c is based on NetBSD's newer pmap.c (for the mpc6xx processors)
which is 70% faster than the older code that the original pmap.c was based
on. It has also been based on the framework established by jake's initial
sparc64 pmap.c.
There is no change to how far the kernel gets (it makes it to the mountroot
prompt in psim) but the new pmap code is a lot cleaner.
Obtained from: NetBSD (pmap code)
Diffstat (limited to 'sys/powerpc/aim/locore.S')
-rw-r--r-- | sys/powerpc/aim/locore.S | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/sys/powerpc/aim/locore.S b/sys/powerpc/aim/locore.S index 43e5e79..76fc3aa 100644 --- a/sys/powerpc/aim/locore.S +++ b/sys/powerpc/aim/locore.S @@ -64,7 +64,7 @@ #include <machine/trap.h> #include <machine/param.h> -#include <machine/pmap.h> +#include <machine/sr.h> #include <machine/psl.h> #include <machine/asm.h> @@ -984,7 +984,7 @@ s_dsitrap: mfctr 31 /* & CTR */ mfdar 3 s_pte_spill: - bl pte_spill /* try a spill */ + bl pmap_pte_spill /* try a spill */ or. 3,3,3 mtctr 31 /* restore CTR */ mtlr 30 /* and trap type */ @@ -1071,8 +1071,8 @@ s_isitrap: stw 4,12(1); \ stw 3,8(1); \ /* interrupts are recoverable here, and enable translation */ \ - lis 3,(KERNEL_SEGMENT|SR_SUKEY|SR_PRKEY)@h; \ - ori 3,3,(KERNEL_SEGMENT|SR_SUKEY|SR_PRKEY)@l; \ + lis 3,(KERNEL_SEGMENT|SR_KS|SR_KP)@h; \ + ori 3,3,(KERNEL_SEGMENT|SR_KS|SR_KP)@l; \ mtsr KERNEL_SR,3; \ mfmsr 5; \ ori 5,5,(PSL_IR|PSL_DR|PSL_RI); \ |