diff options
author | Bjorn Helgaas <bhelgaas@google.com> | 2022-08-04 11:41:52 -0500 |
---|---|---|
committer | Bjorn Helgaas <bhelgaas@google.com> | 2022-08-04 11:41:52 -0500 |
commit | 5a20930f27c4502ee595017787769ddb4465e795 (patch) | |
tree | 0215c98fb3ab1b648af9d91d65f8a661dc7c1d50 /drivers/pci/probe.c | |
parent | dc5253117a237478f6ea03906ff7041d5db322ed (diff) | |
parent | 5e6ae050955b566484f3cc6a66e3925eae87a0ed (diff) | |
download | linux-5a20930f27c4502ee595017787769ddb4465e795.tar.gz linux-5a20930f27c4502ee595017787769ddb4465e795.tar.bz2 linux-5a20930f27c4502ee595017787769ddb4465e795.zip |
Merge branch 'pci/err'
- Recognize disconnected devices so we don't bother trying to set them to
"frozen" or "normal" state (Christoph Hellwig)
- Clear PCI Status register during enumeration in case firmware left errors
logged (Kai-Heng Feng)
- Configure ECRC for every device, including hot-added ones (Stefan Roese)
- Keep AER error reporting enabled for switches (Stefan Roese)
- Enable error reporting for all devices that support AER (Stefan Roese)
- Iterate over error counters instead of error strings to avoid printing
junk in AER sysfs counters (Mohamed Khalfella)
* pci/err:
PCI/AER: Iterate over error counters instead of error strings
PCI/AER: Enable error reporting when AER is native
PCI/portdrv: Don't disable AER reporting in get_port_device_capability()
PCI/AER: Configure ECRC for every device
PCI: Clear PCI_STATUS when setting up device
PCI/ERR: Recognize disconnected devices in report_error_detected()
Diffstat (limited to 'drivers/pci/probe.c')
-rw-r--r-- | drivers/pci/probe.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/pci/probe.c b/drivers/pci/probe.c index 4948531481d1..9884d8b29d3b 100644 --- a/drivers/pci/probe.c +++ b/drivers/pci/probe.c @@ -1890,6 +1890,9 @@ int pci_setup_device(struct pci_dev *dev) dev->broken_intx_masking = pci_intx_mask_broken(dev); + /* Clear errors left from system firmware */ + pci_write_config_word(dev, PCI_STATUS, 0xffff); + switch (dev->hdr_type) { /* header type */ case PCI_HEADER_TYPE_NORMAL: /* standard header */ if (class == PCI_CLASS_BRIDGE_PCI) |