]> git.itanic.dy.fi Git - linux-stable/commitdiff
e1000e: Use PCI_EXP_LNKSTA_NLW & FIELD_GET() instead of custom defines/code
authorIlpo Järvinen <ilpo.jarvinen@linux.intel.com>
Tue, 21 Nov 2023 12:34:27 +0000 (14:34 +0200)
committerTony Nguyen <anthony.l.nguyen@intel.com>
Tue, 12 Dec 2023 18:55:22 +0000 (10:55 -0800)
e1000e has own copy of PCI Negotiated Link Width field defines. Use the
ones from include/uapi/linux/pci_regs.h instead of the custom ones and
remove the custom ones and convert to FIELD_GET().

Suggested-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
Reviewed-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Reviewed-by: Simon Horman <horms@kernel.org>
Tested-by: Naama Meir <naamax.meir@linux.intel.com>
Signed-off-by: Tony Nguyen <anthony.l.nguyen@intel.com>
drivers/net/ethernet/intel/e1000e/defines.h
drivers/net/ethernet/intel/e1000e/mac.c

index 63c3c79380a1b6975f789c7d65410a0537ba752e..a4d29c9e03a6b18a19cd01498e4cfceeefae5992 100644 (file)
 #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) */
index 5df7ad93f3d77c18edb627f09c08705e5f258551..5340cf73778d25398181e459f44c779783f6c3b1 100644 (file)
@@ -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);