diff options
author | Mike Mason <mmlnx@us.ibm.com> | 2009-07-30 18:42:39 -0400 |
---|---|---|
committer | Jesse Barnes <jbarnes@virtuousgeek.org> | 2009-09-09 16:29:41 -0400 |
commit | 6e19314cc98ab9ccc22c30d1c414984ac6de5ce2 (patch) | |
tree | 2e83662e5e8cc1a0c30bba06008fe1b955c94cd5 /arch/powerpc/kernel | |
parent | fe14acd4e7c8178dfb172c1e7a88356657378128 (diff) |
PCI/powerpc: support PCIe fundamental reset
By default, the EEH framework on powerpc does what's known as a "hot
reset" during recovery of a PCI Express device. We've found a case
where the device needs a "fundamental reset" to recover properly. The
current PCI error recovery and EEH frameworks do not support this
distinction.
The attached patch makes changes to EEH to utilize the new bit field.
Signed-off-by: Mike Mason <mmlnx@us.ibm.com>
Signed-off-by: Richard Lary <rlary@us.ibm.com>
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
Diffstat (limited to 'arch/powerpc/kernel')
-rw-r--r-- | arch/powerpc/kernel/pci_64.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/arch/powerpc/kernel/pci_64.c b/arch/powerpc/kernel/pci_64.c index 9e8902fa14c7..b6e9ea45a719 100644 --- a/arch/powerpc/kernel/pci_64.c +++ b/arch/powerpc/kernel/pci_64.c | |||
@@ -143,6 +143,7 @@ struct pci_dev *of_create_pci_dev(struct device_node *node, | |||
143 | dev->dev.bus = &pci_bus_type; | 143 | dev->dev.bus = &pci_bus_type; |
144 | dev->devfn = devfn; | 144 | dev->devfn = devfn; |
145 | dev->multifunction = 0; /* maybe a lie? */ | 145 | dev->multifunction = 0; /* maybe a lie? */ |
146 | dev->needs_freset = 0; /* pcie fundamental reset required */ | ||
146 | 147 | ||
147 | dev->vendor = get_int_prop(node, "vendor-id", 0xffff); | 148 | dev->vendor = get_int_prop(node, "vendor-id", 0xffff); |
148 | dev->device = get_int_prop(node, "device-id", 0xffff); | 149 | dev->device = get_int_prop(node, "device-id", 0xffff); |