diff options
author | Gavin Shan <shangw@linux.vnet.ibm.com> | 2013-06-27 01:46:45 -0400 |
---|---|---|
committer | Benjamin Herrenschmidt <benh@kernel.crashing.org> | 2013-06-30 21:10:32 -0400 |
commit | 88b6d14b2bb48ea4f66fedfe671f98544395b305 (patch) | |
tree | 9a535b752d29d95e06699da8fe6002472cda4f70 | |
parent | 0b9e267d71d2e74d1108785928fd8c8c9dbf441e (diff) |
powerpc/eeh: Fix address catch for PowerNV
On the PowerNV platform, the EEH address cache isn't built correctly
because we skipped the EEH devices without binding PE. The patch
fixes that.
Signed-off-by: Gavin Shan <shangw@linux.vnet.ibm.com>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
-rw-r--r-- | arch/powerpc/kernel/eeh_cache.c | 2 | ||||
-rw-r--r-- | arch/powerpc/platforms/powernv/pci-ioda.c | 1 |
2 files changed, 2 insertions, 1 deletions
diff --git a/arch/powerpc/kernel/eeh_cache.c b/arch/powerpc/kernel/eeh_cache.c index 1d5d9a6ba740..858ebeaa2bac 100644 --- a/arch/powerpc/kernel/eeh_cache.c +++ b/arch/powerpc/kernel/eeh_cache.c | |||
@@ -194,7 +194,7 @@ static void __eeh_addr_cache_insert_dev(struct pci_dev *dev) | |||
194 | } | 194 | } |
195 | 195 | ||
196 | /* Skip any devices for which EEH is not enabled. */ | 196 | /* Skip any devices for which EEH is not enabled. */ |
197 | if (!edev->pe) { | 197 | if (!eeh_probe_mode_dev() && !edev->pe) { |
198 | #ifdef DEBUG | 198 | #ifdef DEBUG |
199 | pr_info("PCI: skip building address cache for=%s - %s\n", | 199 | pr_info("PCI: skip building address cache for=%s - %s\n", |
200 | pci_name(dev), dn->full_name); | 200 | pci_name(dev), dn->full_name); |
diff --git a/arch/powerpc/platforms/powernv/pci-ioda.c b/arch/powerpc/platforms/powernv/pci-ioda.c index dc4ec7956967..c393bf59f113 100644 --- a/arch/powerpc/platforms/powernv/pci-ioda.c +++ b/arch/powerpc/platforms/powernv/pci-ioda.c | |||
@@ -999,6 +999,7 @@ static void pnv_pci_ioda_fixup(void) | |||
999 | pnv_pci_ioda_create_dbgfs(); | 999 | pnv_pci_ioda_create_dbgfs(); |
1000 | 1000 | ||
1001 | #ifdef CONFIG_EEH | 1001 | #ifdef CONFIG_EEH |
1002 | eeh_probe_mode_set(EEH_PROBE_MODE_DEV); | ||
1002 | eeh_addr_cache_build(); | 1003 | eeh_addr_cache_build(); |
1003 | eeh_init(); | 1004 | eeh_init(); |
1004 | #endif | 1005 | #endif |