[POWERPC] EEH: handle reset state high
Some firmware versions will return a slot reset state of "1" when a slot is EEH frozen. Recognize this as a state that can be handled. Signed-off-by: Linas Vepstas <linas@austin.ibm.com> Signed-off-by: Paul Mackerras <paulus@samba.org>
This commit is contained in:
parent
5794dbcbab
commit
90375f5396
|
@ -386,7 +386,7 @@ int eeh_dn_check_failure(struct device_node *dn, struct pci_dev *dev)
|
||||||
}
|
}
|
||||||
|
|
||||||
/* If not the kind of error we know about, punt. */
|
/* If not the kind of error we know about, punt. */
|
||||||
if (rets[0] != 2 && rets[0] != 4 && rets[0] != 5) {
|
if (rets[0] != 1 && rets[0] != 2 && rets[0] != 4 && rets[0] != 5) {
|
||||||
false_positives++;
|
false_positives++;
|
||||||
rc = 0;
|
rc = 0;
|
||||||
goto dn_unlock;
|
goto dn_unlock;
|
||||||
|
@ -401,7 +401,7 @@ int eeh_dn_check_failure(struct device_node *dn, struct pci_dev *dev)
|
||||||
spin_unlock_irqrestore(&confirm_error_lock, flags);
|
spin_unlock_irqrestore(&confirm_error_lock, flags);
|
||||||
|
|
||||||
state = pci_channel_io_normal;
|
state = pci_channel_io_normal;
|
||||||
if ((rets[0] == 2) || (rets[0] == 4))
|
if ((rets[0] == 1) || (rets[0] == 2) || (rets[0] == 4))
|
||||||
state = pci_channel_io_frozen;
|
state = pci_channel_io_frozen;
|
||||||
if (rets[0] == 5)
|
if (rets[0] == 5)
|
||||||
state = pci_channel_io_perm_failure;
|
state = pci_channel_io_perm_failure;
|
||||||
|
@ -410,7 +410,7 @@ int eeh_dn_check_failure(struct device_node *dn, struct pci_dev *dev)
|
||||||
/* Most EEH events are due to device driver bugs. Having
|
/* Most EEH events are due to device driver bugs. Having
|
||||||
* a stack trace will help the device-driver authors figure
|
* a stack trace will help the device-driver authors figure
|
||||||
* out what happened. So print that out. */
|
* out what happened. So print that out. */
|
||||||
if (rets[0] != 5) dump_stack();
|
dump_stack();
|
||||||
return 1;
|
return 1;
|
||||||
|
|
||||||
dn_unlock:
|
dn_unlock:
|
||||||
|
|
Loading…
Reference in a new issue