aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorScott Wood <scottwood@freescale.com>2014-01-23 23:43:55 -0500
committerScott Wood <scottwood@freescale.com>2014-03-19 20:57:12 -0400
commitc4787d1ecfefce86971c1360ed5cef36af6182db (patch)
tree4510a736d20aef2dadc7258ae93e73bf3c5e763d
parent19007b340d4ee2957938b29d63c2077ce1368ec8 (diff)
powerpc/booke64: Fix exception numbers
altivec_unavailable was commented as 0xf20 but the code uses 0x200. Note that 0xf20 is also used by ap_unavailable. altivec_assist was commented as 0x1700 but the code uses 0x220. critical_input was commented as 0x580 but the code uses 0x100. machine_check was commented and implemented as 0x200, which conflicts with altivec_assist (it only builds because MC_EXCEPTION_PROLOG is commented out). Changed to the fixed IVOR value of 0x000. Signed-off-by: Scott Wood <scottwood@freescale.com>
-rw-r--r--arch/powerpc/kernel/exceptions-64e.S12
1 files changed, 6 insertions, 6 deletions
diff --git a/arch/powerpc/kernel/exceptions-64e.S b/arch/powerpc/kernel/exceptions-64e.S
index 6772512bd0bd..41380a424108 100644
--- a/arch/powerpc/kernel/exceptions-64e.S
+++ b/arch/powerpc/kernel/exceptions-64e.S
@@ -299,8 +299,8 @@ exception_marker:
299 .balign 0x1000 299 .balign 0x1000
300 .globl interrupt_base_book3e 300 .globl interrupt_base_book3e
301interrupt_base_book3e: /* fake trap */ 301interrupt_base_book3e: /* fake trap */
302 EXCEPTION_STUB(0x000, machine_check) /* 0x0200 */ 302 EXCEPTION_STUB(0x000, machine_check)
303 EXCEPTION_STUB(0x020, critical_input) /* 0x0580 */ 303 EXCEPTION_STUB(0x020, critical_input) /* 0x0100 */
304 EXCEPTION_STUB(0x040, debug_crit) /* 0x0d00 */ 304 EXCEPTION_STUB(0x040, debug_crit) /* 0x0d00 */
305 EXCEPTION_STUB(0x060, data_storage) /* 0x0300 */ 305 EXCEPTION_STUB(0x060, data_storage) /* 0x0300 */
306 EXCEPTION_STUB(0x080, instruction_storage) /* 0x0400 */ 306 EXCEPTION_STUB(0x080, instruction_storage) /* 0x0400 */
@@ -315,8 +315,8 @@ interrupt_base_book3e: /* fake trap */
315 EXCEPTION_STUB(0x1a0, watchdog) /* 0x09f0 */ 315 EXCEPTION_STUB(0x1a0, watchdog) /* 0x09f0 */
316 EXCEPTION_STUB(0x1c0, data_tlb_miss) 316 EXCEPTION_STUB(0x1c0, data_tlb_miss)
317 EXCEPTION_STUB(0x1e0, instruction_tlb_miss) 317 EXCEPTION_STUB(0x1e0, instruction_tlb_miss)
318 EXCEPTION_STUB(0x200, altivec_unavailable) /* 0x0f20 */ 318 EXCEPTION_STUB(0x200, altivec_unavailable)
319 EXCEPTION_STUB(0x220, altivec_assist) /* 0x1700 */ 319 EXCEPTION_STUB(0x220, altivec_assist)
320 EXCEPTION_STUB(0x260, perfmon) 320 EXCEPTION_STUB(0x260, perfmon)
321 EXCEPTION_STUB(0x280, doorbell) 321 EXCEPTION_STUB(0x280, doorbell)
322 EXCEPTION_STUB(0x2a0, doorbell_crit) 322 EXCEPTION_STUB(0x2a0, doorbell_crit)
@@ -343,9 +343,9 @@ interrupt_end_book3e:
343 343
344/* Machine Check Interrupt */ 344/* Machine Check Interrupt */
345 START_EXCEPTION(machine_check); 345 START_EXCEPTION(machine_check);
346 MC_EXCEPTION_PROLOG(0x200, BOOKE_INTERRUPT_MACHINE_CHECK, 346 MC_EXCEPTION_PROLOG(0x000, BOOKE_INTERRUPT_MACHINE_CHECK,
347 PROLOG_ADDITION_NONE) 347 PROLOG_ADDITION_NONE)
348// EXCEPTION_COMMON(0x200, PACA_EXMC, INTS_DISABLE) 348// EXCEPTION_COMMON(0x000, PACA_EXMC, INTS_DISABLE)
349// bl special_reg_save_mc 349// bl special_reg_save_mc
350// addi r3,r1,STACK_FRAME_OVERHEAD 350// addi r3,r1,STACK_FRAME_OVERHEAD
351// CHECK_NAPPING(); 351// CHECK_NAPPING();