summaryrefslogtreecommitdiffstats
path: root/sys/powerpc/booke/machdep.c
diff options
context:
space:
mode:
Diffstat (limited to 'sys/powerpc/booke/machdep.c')
-rw-r--r--sys/powerpc/booke/machdep.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/sys/powerpc/booke/machdep.c b/sys/powerpc/booke/machdep.c
index 9318012..69a9ef6 100644
--- a/sys/powerpc/booke/machdep.c
+++ b/sys/powerpc/booke/machdep.c
@@ -409,6 +409,11 @@ booke_init(uint32_t arg1, uint32_t arg2)
pc = &__pcpu[0];
pcpu_init(pc, 0, sizeof(struct pcpu));
pc->pc_curthread = &thread0;
+#ifdef __powerpc64__
+ __asm __volatile("mr 13,%0" :: "r"(pc->pc_curthread));
+#else
+ __asm __volatile("mr 2,%0" :: "r"(pc->pc_curthread));
+#endif
__asm __volatile("mtsprg 0, %0" :: "r"(pc));
/* Initialize system mutexes. */
OpenPOWER on IntegriCloud