diff options
author | Gavin Shan <shangw@linux.vnet.ibm.com> | 2012-02-27 15:03:55 -0500 |
---|---|---|
committer | Benjamin Herrenschmidt <benh@kernel.crashing.org> | 2012-03-08 19:09:49 -0500 |
commit | 8fb8f709025c13ae72968a66a1ade24431a342b2 (patch) | |
tree | 0eec5feabb4a673a58f036aa940c96f11bfe0c23 /arch/powerpc/include/asm/ppc-pci.h | |
parent | e2af155c2aea0e705ed4ef33aedc25e50a788be1 (diff) |
powerpc/eeh: pseries platform EEH operations
There're 4 EEH operations that are covered by the dedicated RTAS
call <ibm,set-eeh-option>: enable or disable EEH, enable MMIO and
enable DMA. At early stage of system boot, the EEH would be tried
to enable on PCI device related device node. MMIO and DMA for
particular PE should be enabled when doing recovery on EEH errors
so that the PE could function properly again.
The patch implements it and abstract that through struct
eeh_ops::set_eeh. It would be help for EEH to 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/ppc-pci.h')
-rw-r--r-- | arch/powerpc/include/asm/ppc-pci.h | 2 |
1 files changed, 0 insertions, 2 deletions
diff --git a/arch/powerpc/include/asm/ppc-pci.h b/arch/powerpc/include/asm/ppc-pci.h index 605a97000fcf..6150349ca9cb 100644 --- a/arch/powerpc/include/asm/ppc-pci.h +++ b/arch/powerpc/include/asm/ppc-pci.h | |||
@@ -56,8 +56,6 @@ struct pci_dev *pci_get_device_by_addr(unsigned long addr); | |||
56 | #define EEH_LOG_TEMP_FAILURE 1 | 56 | #define EEH_LOG_TEMP_FAILURE 1 |
57 | #define EEH_LOG_PERM_FAILURE 2 | 57 | #define EEH_LOG_PERM_FAILURE 2 |
58 | void eeh_slot_error_detail (struct pci_dn *pdn, int severity); | 58 | void eeh_slot_error_detail (struct pci_dn *pdn, int severity); |
59 | #define EEH_THAW_MMIO 2 | ||
60 | #define EEH_THAW_DMA 3 | ||
61 | int eeh_pci_enable(struct pci_dn *pdn, int function); | 59 | int eeh_pci_enable(struct pci_dn *pdn, int function); |
62 | int eeh_reset_pe(struct pci_dn *); | 60 | int eeh_reset_pe(struct pci_dn *); |
63 | int eeh_wait_for_slot_status(struct pci_dn *pdn, int max_wait_msecs); | 61 | int eeh_wait_for_slot_status(struct pci_dn *pdn, int max_wait_msecs); |