On Wed, 13 Sep 2023 15:27:47 +0300 Ilpo Järvinen <ilpo.jarvinen@xxxxxxxxxxxxxxx> wrote: > e1000e has own copy of PCI Negotiated Link Width field defines. Use the > one from include/uapi/linux/pci_regs.h instead of the custom ones and > remove the custom ones. Also convert to use FIELD_GET(). > > Suggested-by: Jonathan Cameron <Jonathan.Cameron@xxxxxxxxxx> > Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@xxxxxxxxxxxxxxx> Reviewed-by: Jonathan Cameron <Jonathan.Cameron@xxxxxxxxxx> > --- > drivers/net/ethernet/intel/e1000e/defines.h | 2 -- > drivers/net/ethernet/intel/e1000e/mac.c | 7 ++++--- > 2 files changed, 4 insertions(+), 5 deletions(-) > > diff --git a/drivers/net/ethernet/intel/e1000e/defines.h b/drivers/net/ethernet/intel/e1000e/defines.h > index 63c3c79380a1..a4d29c9e03a6 100644 > --- a/drivers/net/ethernet/intel/e1000e/defines.h > +++ b/drivers/net/ethernet/intel/e1000e/defines.h > @@ -681,8 +681,6 @@ > #define PCIE_LINK_STATUS 0x12 > > #define PCI_HEADER_TYPE_MULTIFUNC 0x80 > -#define PCIE_LINK_WIDTH_MASK 0x3F0 > -#define PCIE_LINK_WIDTH_SHIFT 4 > > #define PHY_REVISION_MASK 0xFFFFFFF0 > #define MAX_PHY_REG_ADDRESS 0x1F /* 5 bit address bus (0-0x1F) */ > diff --git a/drivers/net/ethernet/intel/e1000e/mac.c b/drivers/net/ethernet/intel/e1000e/mac.c > index 5df7ad93f3d7..5340cf73778d 100644 > --- a/drivers/net/ethernet/intel/e1000e/mac.c > +++ b/drivers/net/ethernet/intel/e1000e/mac.c > @@ -1,6 +1,8 @@ > // SPDX-License-Identifier: GPL-2.0 > /* Copyright(c) 1999 - 2018 Intel Corporation. */ > > +#include <linux/bitfield.h> > + > #include "e1000.h" > > /** > @@ -25,9 +27,8 @@ s32 e1000e_get_bus_info_pcie(struct e1000_hw *hw) > pci_read_config_word(adapter->pdev, > cap_offset + PCIE_LINK_STATUS, > &pcie_link_status); > - bus->width = (enum e1000_bus_width)((pcie_link_status & > - PCIE_LINK_WIDTH_MASK) >> > - PCIE_LINK_WIDTH_SHIFT); > + bus->width = (enum e1000_bus_width)FIELD_GET(PCI_EXP_LNKSTA_NLW, > + pcie_link_status); > } > > mac->ops.set_lan_id(hw);