[PATCH 0/9] PCI: add and use constant PCI_STATUS_ERROR_BITS and helper pci_status_get_and_clear_errors

From: Heiner Kallweit
Date: Mon Feb 24 2020 - 16:20:40 EST


Few drivers have own definitions for this constant, so move it to the
PCI core. In addition there are several places where the following
code sequence is used:
1. Read PCI_STATUS
2. Mask out non-error bits
3. Action based on set error bits
4. Write back set error bits to clear them

As this is a repeated pattern, add a helper to the PCI core.

Most affected drivers are network drivers. But as it's about core
PCI functionality, I suppose the series should go through the PCI
tree.

Heiner Kallweit (8):
PCI: add constant PCI_STATUS_ERROR_BITS
PCI: add pci_status_get_and_clear_errors
r8169: use pci_status_get_and_clear_errors
net: cassini: use pci_status_get_and_clear_errors
net: sungem: use pci_status_get_and_clear_errors
net: skfp: use PCI_STATUS_ERROR_BITS
PCI: pci-bridge-emul: use PCI_STATUS_ERROR_BITS
sound: bt87x: use pci_status_get_and_clear_errors

drivers/net/ethernet/marvell/skge.h | 6 -----
drivers/net/ethernet/marvell/sky2.h | 6 -----
drivers/net/ethernet/realtek/r8169_main.c | 15 +++++-------
drivers/net/ethernet/sun/cassini.c | 28 ++++++++-------------
drivers/net/ethernet/sun/sungem.c | 30 +++++++----------------
drivers/net/fddi/skfp/drvfbi.c | 2 +-
drivers/net/fddi/skfp/h/skfbi.h | 5 ----
drivers/pci/pci-bridge-emul.c | 14 ++---------
drivers/pci/pci.c | 23 +++++++++++++++++
include/linux/pci.h | 1 +
include/uapi/linux/pci_regs.h | 7 ++++++
sound/pci/bt87x.c | 7 +-----
12 files changed, 60 insertions(+), 84 deletions(-)

--
2.25.1