aboutsummaryrefslogtreecommitdiff
path: root/pk/pk.c
diff options
context:
space:
mode:
authorAndrew Waterman <waterman@eecs.berkeley.edu>2012-03-24 12:58:30 -0700
committerAndrew Waterman <waterman@eecs.berkeley.edu>2012-03-24 12:58:30 -0700
commit15f31b54049fda09b60dc8e0b74dd5f65c7c8318 (patch)
treeed2d4594a7917086985584f5fc01c6ff80e7998f /pk/pk.c
parent1ee491bbc51e6b7e59d99332cb9359c84b749f8a (diff)
downloadpk-15f31b54049fda09b60dc8e0b74dd5f65c7c8318.zip
pk-15f31b54049fda09b60dc8e0b74dd5f65c7c8318.tar.gz
pk-15f31b54049fda09b60dc8e0b74dd5f65c7c8318.tar.bz2
new supervisor mode
Diffstat (limited to 'pk/pk.c')
-rw-r--r--pk/pk.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/pk/pk.c b/pk/pk.c
index 33b0bda..2f516b9 100644
--- a/pk/pk.c
+++ b/pk/pk.c
@@ -127,9 +127,9 @@ void init_tf(trapframe_t* tf, long pc, long sp, int user64)
memset(tf,0,sizeof(*tf));
if(sizeof(void*) != 8)
kassert(!user64);
- tf->sr = (mfpcr(PCR_SR) & (SR_IM | SR_SX)) | SR_S | SR_EC;
+ tf->sr = (mfpcr(PCR_SR) & (SR_IM | SR_S64)) | SR_S | SR_EC;
if(user64)
- tf->sr |= SR_UX;
+ tf->sr |= SR_U64;
tf->gpr[30] = sp;
tf->epc = pc;
}