diff options
-rw-r--r-- | asm/head.S | 9 | ||||
-rw-r--r-- | hw/slw.c | 4 |
2 files changed, 4 insertions, 9 deletions
@@ -623,15 +623,6 @@ rvwinkle_restore: /* Get PIR */ mfspr %r31,SPR_PIR - /* Initialize per-core SPRs - * - * XXX We do it on each thread ... oh well, improve that later - */ - bl init_shared_sprs - - /* Initialize thread SPRs */ - bl init_replicated_sprs - /* Get that CPU stack base and use it to restore r13 */ GET_STACK(%r1,%r31) GET_CPU() @@ -87,6 +87,10 @@ static void slw_do_rvwinkle(void *data) enter_pm_state(1); + /* Restore SPRs */ + init_shared_sprs(); + init_replicated_sprs(); + /* Ok, it's ours again */ cpu->state = cpu_state_active; |