diff options
Diffstat (limited to 'arch/powerpc/kernel/head_32.S')
-rw-r--r-- | arch/powerpc/kernel/head_32.S | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/arch/powerpc/kernel/head_32.S b/arch/powerpc/kernel/head_32.S index a1c4cfd25ded..f8c2e6b6f457 100644 --- a/arch/powerpc/kernel/head_32.S +++ b/arch/powerpc/kernel/head_32.S | |||
@@ -108,18 +108,21 @@ __start: | |||
108 | * because OF may have I/O devices mapped into that area | 108 | * because OF may have I/O devices mapped into that area |
109 | * (particularly on CHRP). | 109 | * (particularly on CHRP). |
110 | */ | 110 | */ |
111 | #ifdef CONFIG_PPC_MULTIPLATFORM | ||
112 | cmpwi 0,r5,0 | 111 | cmpwi 0,r5,0 |
113 | beq 1f | 112 | beq 1f |
114 | 113 | ||
114 | #ifdef CONFIG_PPC_OF_BOOT_TRAMPOLINE | ||
115 | /* find out where we are now */ | 115 | /* find out where we are now */ |
116 | bcl 20,31,$+4 | 116 | bcl 20,31,$+4 |
117 | 0: mflr r8 /* r8 = runtime addr here */ | 117 | 0: mflr r8 /* r8 = runtime addr here */ |
118 | addis r8,r8,(_stext - 0b)@ha | 118 | addis r8,r8,(_stext - 0b)@ha |
119 | addi r8,r8,(_stext - 0b)@l /* current runtime base addr */ | 119 | addi r8,r8,(_stext - 0b)@l /* current runtime base addr */ |
120 | bl prom_init | 120 | bl prom_init |
121 | #endif /* CONFIG_PPC_OF_BOOT_TRAMPOLINE */ | ||
122 | |||
123 | /* We never return. We also hit that trap if trying to boot | ||
124 | * from OF while CONFIG_PPC_OF_BOOT_TRAMPOLINE isn't selected */ | ||
121 | trap | 125 | trap |
122 | #endif | ||
123 | 126 | ||
124 | /* | 127 | /* |
125 | * Check for BootX signature when supporting PowerMac and branch to | 128 | * Check for BootX signature when supporting PowerMac and branch to |