aboutsummaryrefslogtreecommitdiffstats
path: root/arch/powerpc/include/asm/eeh.h
diff options
context:
space:
mode:
authorGavin Shan <shangw@linux.vnet.ibm.com>2012-02-27 15:03:57 -0500
committerBenjamin Herrenschmidt <benh@kernel.crashing.org>2012-03-08 19:10:26 -0500
commiteb594a4754e71e41c048e0f1559bb6f13dab7070 (patch)
treee2e186325de762bfae5af77da8cf9ac6e8f1cdc3 /arch/powerpc/include/asm/eeh.h
parentc8c29b38fbb9448f2a25484348dd5aec9a2a9671 (diff)
powerpc/eeh: pseries platform PE state retrieval
On pSeries platform, there're 2 dedicated RTAS calls introduced to retrieve the corresponding PE's state: ibm,read-slot-reset-state and ibm,read-slot-reset-state2. The patch implements the retrieval of PE's state according to the given PE address. Besides, the implementation has been abstracted by struct eeh_ops::get_state so that EEH core components could support multiple platforms in future. Signed-off-by: Gavin Shan <shangw@linux.vnet.ibm.com> Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Diffstat (limited to 'arch/powerpc/include/asm/eeh.h')
-rw-r--r--arch/powerpc/include/asm/eeh.h8
1 files changed, 8 insertions, 0 deletions
diff --git a/arch/powerpc/include/asm/eeh.h b/arch/powerpc/include/asm/eeh.h
index 76f7b3f739c..1d3c9e5fa08 100644
--- a/arch/powerpc/include/asm/eeh.h
+++ b/arch/powerpc/include/asm/eeh.h
@@ -42,6 +42,14 @@ struct device_node;
42#define EEH_OPT_ENABLE 1 /* EEH enable */ 42#define EEH_OPT_ENABLE 1 /* EEH enable */
43#define EEH_OPT_THAW_MMIO 2 /* MMIO enable */ 43#define EEH_OPT_THAW_MMIO 2 /* MMIO enable */
44#define EEH_OPT_THAW_DMA 3 /* DMA enable */ 44#define EEH_OPT_THAW_DMA 3 /* DMA enable */
45#define EEH_STATE_UNAVAILABLE (1 << 0) /* State unavailable */
46#define EEH_STATE_NOT_SUPPORT (1 << 1) /* EEH not supported */
47#define EEH_STATE_RESET_ACTIVE (1 << 2) /* Active reset */
48#define EEH_STATE_MMIO_ACTIVE (1 << 3) /* Active MMIO */
49#define EEH_STATE_DMA_ACTIVE (1 << 4) /* Active DMA */
50#define EEH_STATE_MMIO_ENABLED (1 << 5) /* MMIO enabled */
51#define EEH_STATE_DMA_ENABLED (1 << 6) /* DMA enabled */
52
45struct eeh_ops { 53struct eeh_ops {
46 char *name; 54 char *name;
47 int (*init)(void); 55 int (*init)(void);