summaryrefslogtreecommitdiff
path: root/arch/s390/pci/pci_event.c
diff options
context:
space:
mode:
authorJiri Kosina <jkosina@suse.com>2024-11-18 21:31:09 +0100
committerJiri Kosina <jkosina@suse.com>2024-11-18 21:31:09 +0100
commit873c578324c7082677303e2921b71fe0f5737ccc (patch)
tree40ffb8ce94497874ff7af9af8ff7ada6f7048c1e /arch/s390/pci/pci_event.c
parentf33e46a0c6bddd341d0989484a2546bba7ac4a3c (diff)
parent8ee0f23e2672f004e217b38d4fac956cee251c7f (diff)
downloadlwn-873c578324c7082677303e2921b71fe0f5737ccc.tar.gz
lwn-873c578324c7082677303e2921b71fe0f5737ccc.zip
Merge branch 'for-6.13/steelseries' into for-linus
- bugfixes for Steelseries Arctis 1 battery level handling (Bastien Nocera)
Diffstat (limited to 'arch/s390/pci/pci_event.c')
-rw-r--r--arch/s390/pci/pci_event.c17
1 files changed, 9 insertions, 8 deletions
diff --git a/arch/s390/pci/pci_event.c b/arch/s390/pci/pci_event.c
index dbe95ec5917e..d4f19d33914c 100644
--- a/arch/s390/pci/pci_event.c
+++ b/arch/s390/pci/pci_event.c
@@ -280,18 +280,19 @@ static void __zpci_event_error(struct zpci_ccdf_err *ccdf)
goto no_pdev;
switch (ccdf->pec) {
- case 0x003a: /* Service Action or Error Recovery Successful */
+ case 0x002a: /* Error event concerns FMB */
+ case 0x002b:
+ case 0x002c:
+ break;
+ case 0x0040: /* Service Action or Error Recovery Failed */
+ case 0x003b:
+ zpci_event_io_failure(pdev, pci_channel_io_perm_failure);
+ break;
+ default: /* PCI function left in the error state attempt to recover */
ers_res = zpci_event_attempt_error_recovery(pdev);
if (ers_res != PCI_ERS_RESULT_RECOVERED)
zpci_event_io_failure(pdev, pci_channel_io_perm_failure);
break;
- default:
- /*
- * Mark as frozen not permanently failed because the device
- * could be subsequently recovered by the platform.
- */
- zpci_event_io_failure(pdev, pci_channel_io_frozen);
- break;
}
pci_dev_put(pdev);
no_pdev: