diff options
Diffstat (limited to 'arch/blackfin/mach-common/head.S')
-rw-r--r-- | arch/blackfin/mach-common/head.S | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/arch/blackfin/mach-common/head.S b/arch/blackfin/mach-common/head.S index f826f6b9f917..66910121fa6f 100644 --- a/arch/blackfin/mach-common/head.S +++ b/arch/blackfin/mach-common/head.S | |||
@@ -153,6 +153,8 @@ ENTRY(__start) | |||
153 | 153 | ||
154 | #ifdef CONFIG_EARLY_PRINTK | 154 | #ifdef CONFIG_EARLY_PRINTK |
155 | call _init_early_exception_vectors; | 155 | call _init_early_exception_vectors; |
156 | r0 = (EVT_IVHW | EVT_IRPTEN | EVT_EVX | EVT_NMI | EVT_RST | EVT_EMU); | ||
157 | sti r0; | ||
156 | #endif | 158 | #endif |
157 | 159 | ||
158 | r0 = 0 (x); | 160 | r0 = 0 (x); |
@@ -212,12 +214,21 @@ ENTRY(__start) | |||
212 | [p0] = p1; | 214 | [p0] = p1; |
213 | csync; | 215 | csync; |
214 | 216 | ||
217 | #ifdef CONFIG_EARLY_PRINTK | ||
218 | r0 = (EVT_IVG15 | EVT_IVHW | EVT_IRPTEN | EVT_EVX | EVT_NMI | EVT_RST | EVT_EMU) (z); | ||
219 | #else | ||
215 | r0 = EVT_IVG15 (z); | 220 | r0 = EVT_IVG15 (z); |
221 | #endif | ||
216 | sti r0; | 222 | sti r0; |
217 | 223 | ||
218 | raise 15; | 224 | raise 15; |
225 | #ifdef CONFIG_EARLY_PRINTK | ||
226 | p0.l = _early_trap; | ||
227 | p0.h = _early_trap; | ||
228 | #else | ||
219 | p0.l = .LWAIT_HERE; | 229 | p0.l = .LWAIT_HERE; |
220 | p0.h = .LWAIT_HERE; | 230 | p0.h = .LWAIT_HERE; |
231 | #endif | ||
221 | reti = p0; | 232 | reti = p0; |
222 | #if ANOMALY_05000281 | 233 | #if ANOMALY_05000281 |
223 | nop; nop; nop; | 234 | nop; nop; nop; |