aboutsummaryrefslogtreecommitdiffstats
path: root/arch/powerpc/include/asm/paca.h
diff options
context:
space:
mode:
authorBenjamin Herrenschmidt <benh@kernel.crashing.org>2011-09-19 17:45:04 +0000
committerBenjamin Herrenschmidt <benh@kernel.crashing.org>2011-09-20 16:10:03 +1000
commited79ba9e15f84cef05aba5cbfe6e93f9b43c31f4 (patch)
tree7df9a2dc61e5c43e426562adc4367cb7e32380a0 /arch/powerpc/include/asm/paca.h
parenta125e0928c736bc50cdd9a13151d4f4ee7821266 (diff)
downloadkernel_samsung_smdk4412-ed79ba9e15f84cef05aba5cbfe6e93f9b43c31f4.zip
kernel_samsung_smdk4412-ed79ba9e15f84cef05aba5cbfe6e93f9b43c31f4.tar.gz
kernel_samsung_smdk4412-ed79ba9e15f84cef05aba5cbfe6e93f9b43c31f4.tar.bz2
powerpc/powernv: Machine check and other system interrupts
OPAL can handle various interrupt for us such as Machine Checks (it performs all sorts of recovery tasks and passes back control to us with informations about the error), Hardware Management Interrupts and Softpatch interrupts. This wires up the mechanisms and prints out specific informations returned by HAL when a machine check occurs. Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Diffstat (limited to 'arch/powerpc/include/asm/paca.h')
-rw-r--r--arch/powerpc/include/asm/paca.h8
1 files changed, 8 insertions, 0 deletions
diff --git a/arch/powerpc/include/asm/paca.h b/arch/powerpc/include/asm/paca.h
index 516bfb3..17722c7 100644
--- a/arch/powerpc/include/asm/paca.h
+++ b/arch/powerpc/include/asm/paca.h
@@ -43,6 +43,7 @@ extern unsigned int debug_smp_processor_id(void); /* from linux/smp.h */
#define get_slb_shadow() (get_paca()->slb_shadow_ptr)
struct task_struct;
+struct opal_machine_check_event;
/*
* Defines the layout of the paca.
@@ -135,6 +136,13 @@ struct paca_struct {
u8 io_sync; /* writel() needs spin_unlock sync */
u8 irq_work_pending; /* IRQ_WORK interrupt while soft-disable */
+#ifdef CONFIG_PPC_POWERNV
+ /* Pointer to OPAL machine check event structure set by the
+ * early exception handler for use by high level C handler
+ */
+ struct opal_machine_check_event *opal_mc_evt;
+#endif
+
/* Stuff for accurate time accounting */
u64 user_time; /* accumulated usermode TB ticks */
u64 system_time; /* accumulated system TB ticks */