*/
        lis     r12,reenable_mmu@h
        ori     r12,r12,reenable_mmu@l
-       LOAD_MSR_KERNEL(r0, MSR_KERNEL)
+       LOAD_REG_IMMEDIATE(r0, MSR_KERNEL)
        mtspr   SPRN_SRR0,r12
        mtspr   SPRN_SRR1,r0
        SYNC
        addi    r1,r1,THREAD_SIZE-STACK_FRAME_OVERHEAD
        lis     r9,StackOverflow@ha
        addi    r9,r9,StackOverflow@l
-       LOAD_MSR_KERNEL(r10,MSR_KERNEL)
+       LOAD_REG_IMMEDIATE(r10,MSR_KERNEL)
 #if defined(CONFIG_PPC_8xx) && defined(CONFIG_PERF_EVENTS)
        mtspr   SPRN_NRI, r0
 #endif
        bl      trace_hardirqs_on
 
        /* Now enable for real */
-       LOAD_MSR_KERNEL(r10, MSR_KERNEL | MSR_EE)
+       LOAD_REG_IMMEDIATE(r10, MSR_KERNEL | MSR_EE)
        mtmsr   r10
 
        REST_GPR(0, r1)
 #endif
        mr      r6,r3
        /* disable interrupts so current_thread_info()->flags can't change */
-       LOAD_MSR_KERNEL(r10,MSR_KERNEL) /* doesn't include MSR_EE */
+       LOAD_REG_IMMEDIATE(r10,MSR_KERNEL)      /* doesn't include MSR_EE */
        /* Note: We don't bother telling lockdep about it */
        SYNC
        MTMSRD(r10)
         * can't change between when we test it and when we return
         * from the interrupt. */
        /* Note: We don't bother telling lockdep about it */
-       LOAD_MSR_KERNEL(r10,MSR_KERNEL)
+       LOAD_REG_IMMEDIATE(r10,MSR_KERNEL)
        SYNC                    /* Some chip revs have problems here... */
        MTMSRD(r10)             /* disable interrupts */
 
         * can restart the exception exit path at the label
         * exc_exit_restart below.  -- paulus
         */
-       LOAD_MSR_KERNEL(r10,MSR_KERNEL & ~MSR_RI)
+       LOAD_REG_IMMEDIATE(r10,MSR_KERNEL & ~MSR_RI)
        SYNC
        MTMSRD(r10)             /* clear the RI bit */
        .globl exc_exit_restart
        REST_NVGPRS(r1);                                                \
        lwz     r3,_MSR(r1);                                            \
        andi.   r3,r3,MSR_PR;                                           \
-       LOAD_MSR_KERNEL(r10,MSR_KERNEL);                                \
+       LOAD_REG_IMMEDIATE(r10,MSR_KERNEL);                             \
        bne     user_exc_return;                                        \
        lwz     r0,GPR0(r1);                                            \
        lwz     r2,GPR2(r1);                                            \
         * neither. Those disable/enable cycles used to peek at
         * TI_FLAGS aren't advertised.
         */
-       LOAD_MSR_KERNEL(r10,MSR_KERNEL)
+       LOAD_REG_IMMEDIATE(r10,MSR_KERNEL)
        SYNC
        MTMSRD(r10)             /* disable interrupts */
        lwz     r9,TI_FLAGS(r2)
        lwz     r4,RTASBASE(r4)
        mfmsr   r9
        stw     r9,8(r1)
-       LOAD_MSR_KERNEL(r0,MSR_KERNEL)
+       LOAD_REG_IMMEDIATE(r0,MSR_KERNEL)
        SYNC                    /* disable interrupts so SRR0/1 */
        MTMSRD(r0)              /* don't get trashed */
        li      r9,MSR_KERNEL & ~(MSR_IR|MSR_DR)
 
 
 #include <asm/ptrace.h>        /* for STACK_FRAME_REGS_MARKER */
 
-/*
- * MSR_KERNEL is > 0x8000 on 4xx/Book-E since it include MSR_CE.
- */
-.macro __LOAD_MSR_KERNEL r, x
-.if \x >= 0x8000
-       lis \r, (\x)@h
-       ori \r, \r, (\x)@l
-.else
-       li \r, (\x)
-.endif
-.endm
-#define LOAD_MSR_KERNEL(r, x) __LOAD_MSR_KERNEL r, x
-
 /*
  * Exception entry code.  This code runs with address translation
  * turned off, i.e. using physical addresses.
 #ifdef CONFIG_40x
        rlwinm  r9,r9,0,14,12           /* clear MSR_WE (necessary?) */
 #else
-       LOAD_MSR_KERNEL(r10, MSR_KERNEL & ~(MSR_IR|MSR_DR)) /* can take exceptions */
+       LOAD_REG_IMMEDIATE(r10, MSR_KERNEL & ~(MSR_IR|MSR_DR)) /* can take exceptions */
        MTMSRD(r10)                     /* (except for mach check in rtas) */
 #endif
        lis     r10,STACK_FRAME_REGS_MARKER@ha /* exception frame marker */
         * otherwise we might risk taking an interrupt before we tell lockdep
         * they are enabled.
         */
-       LOAD_MSR_KERNEL(r10, MSR_KERNEL)
+       LOAD_REG_IMMEDIATE(r10, MSR_KERNEL)
        rlwimi  r10, r9, 0, MSR_EE
 #else
-       LOAD_MSR_KERNEL(r10, MSR_KERNEL | MSR_EE)
+       LOAD_REG_IMMEDIATE(r10, MSR_KERNEL | MSR_EE)
 #endif
 #if defined(CONFIG_PPC_8xx) && defined(CONFIG_PERF_EVENTS)
        mtspr   SPRN_NRI, r0
 #define EXC_XFER_TEMPLATE(hdlr, trap, msr, tfer, ret)          \
        li      r10,trap;                                       \
        stw     r10,_TRAP(r11);                                 \
-       LOAD_MSR_KERNEL(r10, msr);                              \
+       LOAD_REG_IMMEDIATE(r10, msr);                           \
        bl      tfer;                                           \
        .long   hdlr;                                           \
        .long   ret