Message ID | 20231010204436.1000644-11-helgaas@kernel.org (mailing list archive) |
---|---|
State | Accepted |
Delegated to: | Bjorn Helgaas |
Headers | show |
Series | PCI: Use FIELD_GET() and FIELD_PREP() | expand |
On Tue, 10 Oct 2023 15:44:36 -0500 Bjorn Helgaas <helgaas@kernel.org> wrote: > From: Bjorn Helgaas <bhelgaas@google.com> > > Use FIELD_GET() to remove dependences on the field position, i.e., the > shift value. No functional change intended. > > Signed-off-by: Bjorn Helgaas <bhelgaas@google.com> Reviewed-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
On Tue, 10 Oct 2023, Bjorn Helgaas wrote: > From: Bjorn Helgaas <bhelgaas@google.com> > > Use FIELD_GET() to remove dependences on the field position, i.e., the > shift value. No functional change intended. > > Signed-off-by: Bjorn Helgaas <bhelgaas@google.com> > --- > drivers/pci/pcie/portdrv.c | 7 ++++--- > 1 file changed, 4 insertions(+), 3 deletions(-) > > diff --git a/drivers/pci/pcie/portdrv.c b/drivers/pci/pcie/portdrv.c > index 46fad0d813b2..14a4b89a3b83 100644 > --- a/drivers/pci/pcie/portdrv.c > +++ b/drivers/pci/pcie/portdrv.c > @@ -6,6 +6,7 @@ > * Copyright (C) Tom Long Nguyen (tom.l.nguyen@intel.com) > */ > > +#include <linux/bitfield.h> > #include <linux/dmi.h> > #include <linux/init.h> > #include <linux/module.h> > @@ -69,7 +70,7 @@ static int pcie_message_numbers(struct pci_dev *dev, int mask, > if (mask & (PCIE_PORT_SERVICE_PME | PCIE_PORT_SERVICE_HP | > PCIE_PORT_SERVICE_BWNOTIF)) { > pcie_capability_read_word(dev, PCI_EXP_FLAGS, ®16); > - *pme = (reg16 & PCI_EXP_FLAGS_IRQ) >> 9; > + *pme = FIELD_GET(PCI_EXP_FLAGS_IRQ, reg16); > nvec = *pme + 1; > } > > @@ -81,7 +82,7 @@ static int pcie_message_numbers(struct pci_dev *dev, int mask, > if (pos) { > pci_read_config_dword(dev, pos + PCI_ERR_ROOT_STATUS, > ®32); > - *aer = (reg32 & PCI_ERR_ROOT_AER_IRQ) >> 27; > + *aer = FIELD_GET(PCI_ERR_ROOT_AER_IRQ, reg32); > nvec = max(nvec, *aer + 1); > } > } > @@ -92,7 +93,7 @@ static int pcie_message_numbers(struct pci_dev *dev, int mask, > if (pos) { > pci_read_config_word(dev, pos + PCI_EXP_DPC_CAP, > ®16); > - *dpc = reg16 & PCI_EXP_DPC_IRQ; > + *dpc = FIELD_GET(PCI_EXP_DPC_IRQ, reg16); > nvec = max(nvec, *dpc + 1); Reviewed-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
diff --git a/drivers/pci/pcie/portdrv.c b/drivers/pci/pcie/portdrv.c index 46fad0d813b2..14a4b89a3b83 100644 --- a/drivers/pci/pcie/portdrv.c +++ b/drivers/pci/pcie/portdrv.c @@ -6,6 +6,7 @@ * Copyright (C) Tom Long Nguyen (tom.l.nguyen@intel.com) */ +#include <linux/bitfield.h> #include <linux/dmi.h> #include <linux/init.h> #include <linux/module.h> @@ -69,7 +70,7 @@ static int pcie_message_numbers(struct pci_dev *dev, int mask, if (mask & (PCIE_PORT_SERVICE_PME | PCIE_PORT_SERVICE_HP | PCIE_PORT_SERVICE_BWNOTIF)) { pcie_capability_read_word(dev, PCI_EXP_FLAGS, ®16); - *pme = (reg16 & PCI_EXP_FLAGS_IRQ) >> 9; + *pme = FIELD_GET(PCI_EXP_FLAGS_IRQ, reg16); nvec = *pme + 1; } @@ -81,7 +82,7 @@ static int pcie_message_numbers(struct pci_dev *dev, int mask, if (pos) { pci_read_config_dword(dev, pos + PCI_ERR_ROOT_STATUS, ®32); - *aer = (reg32 & PCI_ERR_ROOT_AER_IRQ) >> 27; + *aer = FIELD_GET(PCI_ERR_ROOT_AER_IRQ, reg32); nvec = max(nvec, *aer + 1); } } @@ -92,7 +93,7 @@ static int pcie_message_numbers(struct pci_dev *dev, int mask, if (pos) { pci_read_config_word(dev, pos + PCI_EXP_DPC_CAP, ®16); - *dpc = reg16 & PCI_EXP_DPC_IRQ; + *dpc = FIELD_GET(PCI_EXP_DPC_IRQ, reg16); nvec = max(nvec, *dpc + 1); } }