diff options
Diffstat (limited to 'arch/powerpc/kernel/head_44x.S')
-rw-r--r-- | arch/powerpc/kernel/head_44x.S | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/arch/powerpc/kernel/head_44x.S b/arch/powerpc/kernel/head_44x.S index 56aba84c1f6e..ad071a146a8d 100644 --- a/arch/powerpc/kernel/head_44x.S +++ b/arch/powerpc/kernel/head_44x.S | |||
@@ -289,11 +289,8 @@ interrupt_base: | |||
289 | CRITICAL_EXCEPTION(0x0100, CriticalInput, unknown_exception) | 289 | CRITICAL_EXCEPTION(0x0100, CriticalInput, unknown_exception) |
290 | 290 | ||
291 | /* Machine Check Interrupt */ | 291 | /* Machine Check Interrupt */ |
292 | #ifdef CONFIG_440A | ||
293 | MCHECK_EXCEPTION(0x0200, MachineCheck, machine_check_exception) | ||
294 | #else | ||
295 | CRITICAL_EXCEPTION(0x0200, MachineCheck, machine_check_exception) | 292 | CRITICAL_EXCEPTION(0x0200, MachineCheck, machine_check_exception) |
296 | #endif | 293 | MCHECK_EXCEPTION(0x0210, MachineCheckA, machine_check_exception) |
297 | 294 | ||
298 | /* Data Storage Interrupt */ | 295 | /* Data Storage Interrupt */ |
299 | START_EXCEPTION(DataStorage) | 296 | START_EXCEPTION(DataStorage) |
@@ -674,6 +671,15 @@ finish_tlb_load: | |||
674 | */ | 671 | */ |
675 | 672 | ||
676 | /* | 673 | /* |
674 | * Adjust the machine check IVOR on 440A cores | ||
675 | */ | ||
676 | _GLOBAL(__fixup_440A_mcheck) | ||
677 | li r3,MachineCheckA@l | ||
678 | mtspr SPRN_IVOR1,r3 | ||
679 | sync | ||
680 | blr | ||
681 | |||
682 | /* | ||
677 | * extern void giveup_altivec(struct task_struct *prev) | 683 | * extern void giveup_altivec(struct task_struct *prev) |
678 | * | 684 | * |
679 | * The 44x core does not have an AltiVec unit. | 685 | * The 44x core does not have an AltiVec unit. |