diff options
-rw-r--r-- | arch/powerpc/include/asm/exception-64s.h | 1 | ||||
-rw-r--r-- | arch/powerpc/kernel/exceptions-64s.S | 9 |
2 files changed, 8 insertions, 2 deletions
diff --git a/arch/powerpc/include/asm/exception-64s.h b/arch/powerpc/include/asm/exception-64s.h index 9d5367e7e19b..b1edd801d314 100644 --- a/arch/powerpc/include/asm/exception-64s.h +++ b/arch/powerpc/include/asm/exception-64s.h | |||
@@ -305,6 +305,7 @@ label##_relon_hv: \ | |||
305 | #define SOFTEN_VALUE_0x502 PACA_IRQ_EE | 305 | #define SOFTEN_VALUE_0x502 PACA_IRQ_EE |
306 | #define SOFTEN_VALUE_0x900 PACA_IRQ_DEC | 306 | #define SOFTEN_VALUE_0x900 PACA_IRQ_DEC |
307 | #define SOFTEN_VALUE_0x982 PACA_IRQ_DEC | 307 | #define SOFTEN_VALUE_0x982 PACA_IRQ_DEC |
308 | #define SOFTEN_VALUE_0xa00 PACA_IRQ_DBELL | ||
308 | #define SOFTEN_VALUE_0xe80 PACA_IRQ_DBELL | 309 | #define SOFTEN_VALUE_0xe80 PACA_IRQ_DBELL |
309 | #define SOFTEN_VALUE_0xe82 PACA_IRQ_DBELL | 310 | #define SOFTEN_VALUE_0xe82 PACA_IRQ_DBELL |
310 | 311 | ||
diff --git a/arch/powerpc/kernel/exceptions-64s.S b/arch/powerpc/kernel/exceptions-64s.S index d08a3cdb7cbe..176bf99e01c6 100644 --- a/arch/powerpc/kernel/exceptions-64s.S +++ b/arch/powerpc/kernel/exceptions-64s.S | |||
@@ -252,7 +252,7 @@ hardware_interrupt_hv: | |||
252 | MASKABLE_EXCEPTION_PSERIES(0x900, 0x900, decrementer) | 252 | MASKABLE_EXCEPTION_PSERIES(0x900, 0x900, decrementer) |
253 | STD_EXCEPTION_HV(0x980, 0x982, hdecrementer) | 253 | STD_EXCEPTION_HV(0x980, 0x982, hdecrementer) |
254 | 254 | ||
255 | STD_EXCEPTION_PSERIES(0xa00, 0xa00, trap_0a) | 255 | MASKABLE_EXCEPTION_PSERIES(0xa00, 0xa00, doorbell_super) |
256 | KVM_HANDLER_PR(PACA_EXGEN, EXC_STD, 0xa00) | 256 | KVM_HANDLER_PR(PACA_EXGEN, EXC_STD, 0xa00) |
257 | 257 | ||
258 | STD_EXCEPTION_PSERIES(0xb00, 0xb00, trap_0b) | 258 | STD_EXCEPTION_PSERIES(0xb00, 0xb00, trap_0b) |
@@ -655,7 +655,11 @@ machine_check_common: | |||
655 | STD_EXCEPTION_COMMON_ASYNC(0x500, hardware_interrupt, do_IRQ) | 655 | STD_EXCEPTION_COMMON_ASYNC(0x500, hardware_interrupt, do_IRQ) |
656 | STD_EXCEPTION_COMMON_ASYNC(0x900, decrementer, .timer_interrupt) | 656 | STD_EXCEPTION_COMMON_ASYNC(0x900, decrementer, .timer_interrupt) |
657 | STD_EXCEPTION_COMMON(0x980, hdecrementer, .hdec_interrupt) | 657 | STD_EXCEPTION_COMMON(0x980, hdecrementer, .hdec_interrupt) |
658 | STD_EXCEPTION_COMMON(0xa00, trap_0a, .unknown_exception) | 658 | #ifdef CONFIG_PPC_DOORBELL |
659 | STD_EXCEPTION_COMMON_ASYNC(0xa00, doorbell_super, .doorbell_exception) | ||
660 | #else | ||
661 | STD_EXCEPTION_COMMON_ASYNC(0xa00, doorbell_super, .unknown_exception) | ||
662 | #endif | ||
659 | STD_EXCEPTION_COMMON(0xb00, trap_0b, .unknown_exception) | 663 | STD_EXCEPTION_COMMON(0xb00, trap_0b, .unknown_exception) |
660 | STD_EXCEPTION_COMMON(0xd00, single_step, .single_step_exception) | 664 | STD_EXCEPTION_COMMON(0xd00, single_step, .single_step_exception) |
661 | STD_EXCEPTION_COMMON(0xe00, trap_0e, .unknown_exception) | 665 | STD_EXCEPTION_COMMON(0xe00, trap_0e, .unknown_exception) |
@@ -755,6 +759,7 @@ hardware_interrupt_relon_hv: | |||
755 | STD_RELON_EXCEPTION_PSERIES(0x4800, 0x800, fp_unavailable) | 759 | STD_RELON_EXCEPTION_PSERIES(0x4800, 0x800, fp_unavailable) |
756 | MASKABLE_RELON_EXCEPTION_PSERIES(0x4900, 0x900, decrementer) | 760 | MASKABLE_RELON_EXCEPTION_PSERIES(0x4900, 0x900, decrementer) |
757 | STD_RELON_EXCEPTION_HV(0x4980, 0x982, hdecrementer) | 761 | STD_RELON_EXCEPTION_HV(0x4980, 0x982, hdecrementer) |
762 | MASKABLE_RELON_EXCEPTION_PSERIES(0x4a00, 0xa00, doorbell_super) | ||
758 | STD_RELON_EXCEPTION_PSERIES(0x4b00, 0xb00, trap_0b) | 763 | STD_RELON_EXCEPTION_PSERIES(0x4b00, 0xb00, trap_0b) |
759 | 764 | ||
760 | . = 0x4c00 | 765 | . = 0x4c00 |