* [PATCH net-next 01/15] igc: Clean up nvm_operations structure
2021-02-04 0:42 [PATCH net-next 00/15][pull request] 1GbE Intel Wired LAN Driver Updates 2021-02-03 Tony Nguyen
@ 2021-02-04 0:42 ` Tony Nguyen
2021-02-04 0:42 ` [PATCH net-next 02/15] igc: Remove igc_set_fw_version comment Tony Nguyen
` (14 subsequent siblings)
15 siblings, 0 replies; 17+ messages in thread
From: Tony Nguyen @ 2021-02-04 0:42 UTC (permalink / raw)
To: davem, kuba; +Cc: Sasha Neftin, netdev, sassmann, anthony.l.nguyen
From: Sasha Neftin <sasha.neftin@intel.com>
valid_led_default function pointer not in use and can
be removed from nvm_operations structure.
Signed-off-by: Sasha Neftin <sasha.neftin@intel.com>
Signed-off-by: Tony Nguyen <anthony.l.nguyen@intel.com>
---
drivers/net/ethernet/intel/igc/igc_hw.h | 1 -
1 file changed, 1 deletion(-)
diff --git a/drivers/net/ethernet/intel/igc/igc_hw.h b/drivers/net/ethernet/intel/igc/igc_hw.h
index 9da5f83ce456..4461f8b9a864 100644
--- a/drivers/net/ethernet/intel/igc/igc_hw.h
+++ b/drivers/net/ethernet/intel/igc/igc_hw.h
@@ -113,7 +113,6 @@ struct igc_nvm_operations {
s32 (*write)(struct igc_hw *hw, u16 offset, u16 i, u16 *data);
s32 (*update)(struct igc_hw *hw);
s32 (*validate)(struct igc_hw *hw);
- s32 (*valid_led_default)(struct igc_hw *hw, u16 *data);
};
struct igc_phy_operations {
--
2.26.2
^ permalink raw reply related [flat|nested] 17+ messages in thread* [PATCH net-next 02/15] igc: Remove igc_set_fw_version comment
2021-02-04 0:42 [PATCH net-next 00/15][pull request] 1GbE Intel Wired LAN Driver Updates 2021-02-03 Tony Nguyen
2021-02-04 0:42 ` [PATCH net-next 01/15] igc: Clean up nvm_operations structure Tony Nguyen
@ 2021-02-04 0:42 ` Tony Nguyen
2021-02-04 0:42 ` [PATCH net-next 03/15] igc: Remove MULR mask define Tony Nguyen
` (13 subsequent siblings)
15 siblings, 0 replies; 17+ messages in thread
From: Tony Nguyen @ 2021-02-04 0:42 UTC (permalink / raw)
To: davem, kuba; +Cc: Sasha Neftin, netdev, sassmann, anthony.l.nguyen
From: Sasha Neftin <sasha.neftin@intel.com>
i225 device not supported and do not plan to support
configuration of fw version string for ethtool
Signed-off-by: Sasha Neftin <sasha.neftin@intel.com>
Signed-off-by: Tony Nguyen <anthony.l.nguyen@intel.com>
---
drivers/net/ethernet/intel/igc/igc_ethtool.c | 1 -
1 file changed, 1 deletion(-)
diff --git a/drivers/net/ethernet/intel/igc/igc_ethtool.c b/drivers/net/ethernet/intel/igc/igc_ethtool.c
index ec8cd69d4992..29da2710b500 100644
--- a/drivers/net/ethernet/intel/igc/igc_ethtool.c
+++ b/drivers/net/ethernet/intel/igc/igc_ethtool.c
@@ -544,7 +544,6 @@ static int igc_ethtool_set_eeprom(struct net_device *netdev,
if (ret_val == 0)
hw->nvm.ops.update(hw);
- /* check if need: igc_set_fw_version(adapter); */
kfree(eeprom_buff);
return ret_val;
}
--
2.26.2
^ permalink raw reply related [flat|nested] 17+ messages in thread* [PATCH net-next 03/15] igc: Remove MULR mask define
2021-02-04 0:42 [PATCH net-next 00/15][pull request] 1GbE Intel Wired LAN Driver Updates 2021-02-03 Tony Nguyen
2021-02-04 0:42 ` [PATCH net-next 01/15] igc: Clean up nvm_operations structure Tony Nguyen
2021-02-04 0:42 ` [PATCH net-next 02/15] igc: Remove igc_set_fw_version comment Tony Nguyen
@ 2021-02-04 0:42 ` Tony Nguyen
2021-02-04 0:42 ` [PATCH net-next 04/15] igc: Add Host Good Packets Transmitted Count Tony Nguyen
` (12 subsequent siblings)
15 siblings, 0 replies; 17+ messages in thread
From: Tony Nguyen @ 2021-02-04 0:42 UTC (permalink / raw)
To: davem, kuba; +Cc: Sasha Neftin, netdev, sassmann, anthony.l.nguyen
From: Sasha Neftin <sasha.neftin@intel.com>
Multiple Tx Data Read Requests is hardware pipeline feature and
is not controlled by software
Signed-off-by: Sasha Neftin <sasha.neftin@intel.com>
Signed-off-by: Tony Nguyen <anthony.l.nguyen@intel.com>
---
drivers/net/ethernet/intel/igc/igc_defines.h | 1 -
1 file changed, 1 deletion(-)
diff --git a/drivers/net/ethernet/intel/igc/igc_defines.h b/drivers/net/ethernet/intel/igc/igc_defines.h
index 32f5fd684139..6cc958031fce 100644
--- a/drivers/net/ethernet/intel/igc/igc_defines.h
+++ b/drivers/net/ethernet/intel/igc/igc_defines.h
@@ -284,7 +284,6 @@
#define IGC_TCTL_CT 0x00000ff0 /* collision threshold */
#define IGC_TCTL_COLD 0x003ff000 /* collision distance */
#define IGC_TCTL_RTLC 0x01000000 /* Re-transmit on late collision */
-#define IGC_TCTL_MULR 0x10000000 /* Multiple request support */
/* Flow Control Constants */
#define FLOW_CONTROL_ADDRESS_LOW 0x00C28001
--
2.26.2
^ permalink raw reply related [flat|nested] 17+ messages in thread* [PATCH net-next 04/15] igc: Add Host Good Packets Transmitted Count
2021-02-04 0:42 [PATCH net-next 00/15][pull request] 1GbE Intel Wired LAN Driver Updates 2021-02-03 Tony Nguyen
` (2 preceding siblings ...)
2021-02-04 0:42 ` [PATCH net-next 03/15] igc: Remove MULR mask define Tony Nguyen
@ 2021-02-04 0:42 ` Tony Nguyen
2021-02-04 0:42 ` [PATCH net-next 05/15] igc: Expose the NVM version Tony Nguyen
` (11 subsequent siblings)
15 siblings, 0 replies; 17+ messages in thread
From: Tony Nguyen @ 2021-02-04 0:42 UTC (permalink / raw)
To: davem, kuba; +Cc: Sasha Neftin, netdev, sassmann, anthony.l.nguyen
From: Sasha Neftin <sasha.neftin@intel.com>
This counter counts the number of good (non-erred) packets
transmitted sent by the host.
A good transmit packet is considered one that is 64 or more bytes
in length (from <Destination Address> through <CRC>,
inclusively) in length
Signed-off-by: Sasha Neftin <sasha.neftin@intel.com>
Signed-off-by: Tony Nguyen <anthony.l.nguyen@intel.com>
---
drivers/net/ethernet/intel/igc/igc_main.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/drivers/net/ethernet/intel/igc/igc_main.c b/drivers/net/ethernet/intel/igc/igc_main.c
index 43aec42e6d9d..e26ec0c82271 100644
--- a/drivers/net/ethernet/intel/igc/igc_main.c
+++ b/drivers/net/ethernet/intel/igc/igc_main.c
@@ -3674,6 +3674,7 @@ void igc_update_stats(struct igc_adapter *adapter)
adapter->stats.prc1522 += rd32(IGC_PRC1522);
adapter->stats.tlpic += rd32(IGC_TLPIC);
adapter->stats.rlpic += rd32(IGC_RLPIC);
+ adapter->stats.hgptc += rd32(IGC_HGPTC);
mpc = rd32(IGC_MPC);
adapter->stats.mpc += mpc;
--
2.26.2
^ permalink raw reply related [flat|nested] 17+ messages in thread* [PATCH net-next 05/15] igc: Expose the NVM version
2021-02-04 0:42 [PATCH net-next 00/15][pull request] 1GbE Intel Wired LAN Driver Updates 2021-02-03 Tony Nguyen
` (3 preceding siblings ...)
2021-02-04 0:42 ` [PATCH net-next 04/15] igc: Add Host Good Packets Transmitted Count Tony Nguyen
@ 2021-02-04 0:42 ` Tony Nguyen
2021-02-04 0:42 ` [PATCH net-next 06/15] igc: Expose the gPHY firmware version Tony Nguyen
` (10 subsequent siblings)
15 siblings, 0 replies; 17+ messages in thread
From: Tony Nguyen @ 2021-02-04 0:42 UTC (permalink / raw)
To: davem, kuba; +Cc: Sasha Neftin, netdev, sassmann, anthony.l.nguyen
From: Sasha Neftin <sasha.neftin@intel.com>
Expose the NVM map version via drvinfo in ethtool
NVM image version is reported as firmware version for i225 device
Minor typo fix - remove space
Signed-off-by: Sasha Neftin <sasha.neftin@intel.com>
Signed-off-by: Tony Nguyen <anthony.l.nguyen@intel.com>
---
drivers/net/ethernet/intel/igc/igc.h | 2 ++
drivers/net/ethernet/intel/igc/igc_defines.h | 1 +
drivers/net/ethernet/intel/igc/igc_ethtool.c | 16 ++++++++++++++--
3 files changed, 17 insertions(+), 2 deletions(-)
diff --git a/drivers/net/ethernet/intel/igc/igc.h b/drivers/net/ethernet/intel/igc/igc.h
index 35baae900c1f..2d8b1716a20c 100644
--- a/drivers/net/ethernet/intel/igc/igc.h
+++ b/drivers/net/ethernet/intel/igc/igc.h
@@ -217,6 +217,8 @@ struct igc_adapter {
struct timecounter tc;
struct timespec64 prev_ptp_time; /* Pre-reset PTP clock */
ktime_t ptp_reset_start; /* Reset time in clock mono */
+
+ char fw_version[16];
};
void igc_up(struct igc_adapter *adapter);
diff --git a/drivers/net/ethernet/intel/igc/igc_defines.h b/drivers/net/ethernet/intel/igc/igc_defines.h
index 6cc958031fce..4b7251d0c4e1 100644
--- a/drivers/net/ethernet/intel/igc/igc_defines.h
+++ b/drivers/net/ethernet/intel/igc/igc_defines.h
@@ -160,6 +160,7 @@
#define IGC_NVM_RW_REG_START 1 /* Start operation */
#define IGC_NVM_RW_ADDR_SHIFT 2 /* Shift to the address bits */
#define IGC_NVM_POLL_READ 0 /* Flag for polling for read complete */
+#define IGC_NVM_DEV_STARTER 5 /* Dev_starter Version */
/* NVM Word Offsets */
#define NVM_CHECKSUM_REG 0x003F
diff --git a/drivers/net/ethernet/intel/igc/igc_ethtool.c b/drivers/net/ethernet/intel/igc/igc_ethtool.c
index 29da2710b500..7dd1ca7f3ed5 100644
--- a/drivers/net/ethernet/intel/igc/igc_ethtool.c
+++ b/drivers/net/ethernet/intel/igc/igc_ethtool.c
@@ -129,10 +129,22 @@ static void igc_ethtool_get_drvinfo(struct net_device *netdev,
struct ethtool_drvinfo *drvinfo)
{
struct igc_adapter *adapter = netdev_priv(netdev);
+ struct igc_hw *hw = &adapter->hw;
+ u16 nvm_version = 0;
+
+ strscpy(drvinfo->driver, igc_driver_name, sizeof(drvinfo->driver));
+
+ /* NVM image version is reported as firmware version for i225 device */
+ hw->nvm.ops.read(hw, IGC_NVM_DEV_STARTER, 1, &nvm_version);
+
+ scnprintf(adapter->fw_version,
+ sizeof(adapter->fw_version),
+ "%x",
+ nvm_version);
- strlcpy(drvinfo->driver, igc_driver_name, sizeof(drvinfo->driver));
+ strscpy(drvinfo->fw_version, adapter->fw_version,
+ sizeof(drvinfo->fw_version));
- /* add fw_version here */
strlcpy(drvinfo->bus_info, pci_name(adapter->pdev),
sizeof(drvinfo->bus_info));
--
2.26.2
^ permalink raw reply related [flat|nested] 17+ messages in thread* [PATCH net-next 06/15] igc: Expose the gPHY firmware version
2021-02-04 0:42 [PATCH net-next 00/15][pull request] 1GbE Intel Wired LAN Driver Updates 2021-02-03 Tony Nguyen
` (4 preceding siblings ...)
2021-02-04 0:42 ` [PATCH net-next 05/15] igc: Expose the NVM version Tony Nguyen
@ 2021-02-04 0:42 ` Tony Nguyen
2021-02-04 0:42 ` [PATCH net-next 07/15] igc: Prefer strscpy over strlcpy Tony Nguyen
` (9 subsequent siblings)
15 siblings, 0 replies; 17+ messages in thread
From: Tony Nguyen @ 2021-02-04 0:42 UTC (permalink / raw)
To: davem, kuba; +Cc: Sasha Neftin, netdev, sassmann, anthony.l.nguyen
From: Sasha Neftin <sasha.neftin@intel.com>
Extend reporting of NVM image version to include the gPHY (i225 PHY)
firmware version.
Signed-off-by: Sasha Neftin <sasha.neftin@intel.com>
Signed-off-by: Tony Nguyen <anthony.l.nguyen@intel.com>
---
drivers/net/ethernet/intel/igc/igc.h | 2 +-
drivers/net/ethernet/intel/igc/igc_ethtool.c | 9 +++++++--
drivers/net/ethernet/intel/igc/igc_phy.c | 18 ++++++++++++++++++
drivers/net/ethernet/intel/igc/igc_phy.h | 1 +
drivers/net/ethernet/intel/igc/igc_regs.h | 1 +
5 files changed, 28 insertions(+), 3 deletions(-)
diff --git a/drivers/net/ethernet/intel/igc/igc.h b/drivers/net/ethernet/intel/igc/igc.h
index 2d8b1716a20c..5d2809dfd06a 100644
--- a/drivers/net/ethernet/intel/igc/igc.h
+++ b/drivers/net/ethernet/intel/igc/igc.h
@@ -218,7 +218,7 @@ struct igc_adapter {
struct timespec64 prev_ptp_time; /* Pre-reset PTP clock */
ktime_t ptp_reset_start; /* Reset time in clock mono */
- char fw_version[16];
+ char fw_version[32];
};
void igc_up(struct igc_adapter *adapter);
diff --git a/drivers/net/ethernet/intel/igc/igc_ethtool.c b/drivers/net/ethernet/intel/igc/igc_ethtool.c
index 7dd1ca7f3ed5..a3811d7e59bc 100644
--- a/drivers/net/ethernet/intel/igc/igc_ethtool.c
+++ b/drivers/net/ethernet/intel/igc/igc_ethtool.c
@@ -131,16 +131,21 @@ static void igc_ethtool_get_drvinfo(struct net_device *netdev,
struct igc_adapter *adapter = netdev_priv(netdev);
struct igc_hw *hw = &adapter->hw;
u16 nvm_version = 0;
+ u16 gphy_version;
strscpy(drvinfo->driver, igc_driver_name, sizeof(drvinfo->driver));
/* NVM image version is reported as firmware version for i225 device */
hw->nvm.ops.read(hw, IGC_NVM_DEV_STARTER, 1, &nvm_version);
+ /* gPHY firmware version is reported as PHY FW version */
+ gphy_version = igc_read_phy_fw_version(hw);
+
scnprintf(adapter->fw_version,
sizeof(adapter->fw_version),
- "%x",
- nvm_version);
+ "%x:%x",
+ nvm_version,
+ gphy_version);
strscpy(drvinfo->fw_version, adapter->fw_version,
sizeof(drvinfo->fw_version));
diff --git a/drivers/net/ethernet/intel/igc/igc_phy.c b/drivers/net/ethernet/intel/igc/igc_phy.c
index 8e1799508edc..83aeb5e7076f 100644
--- a/drivers/net/ethernet/intel/igc/igc_phy.c
+++ b/drivers/net/ethernet/intel/igc/igc_phy.c
@@ -791,3 +791,21 @@ s32 igc_read_phy_reg_gpy(struct igc_hw *hw, u32 offset, u16 *data)
return ret_val;
}
+
+/**
+ * igc_read_phy_fw_version - Read gPHY firmware version
+ * @hw: pointer to the HW structure
+ */
+u16 igc_read_phy_fw_version(struct igc_hw *hw)
+{
+ struct igc_phy_info *phy = &hw->phy;
+ u16 gphy_version = 0;
+ u16 ret_val;
+
+ /* NVM image version is reported as firmware version for i225 device */
+ ret_val = phy->ops.read_reg(hw, IGC_GPHY_VERSION, &gphy_version);
+ if (ret_val)
+ hw_dbg("igc_phy: read wrong gphy version\n");
+
+ return gphy_version;
+}
diff --git a/drivers/net/ethernet/intel/igc/igc_phy.h b/drivers/net/ethernet/intel/igc/igc_phy.h
index 25cba33de7e2..1b031372d206 100644
--- a/drivers/net/ethernet/intel/igc/igc_phy.h
+++ b/drivers/net/ethernet/intel/igc/igc_phy.h
@@ -17,5 +17,6 @@ void igc_power_up_phy_copper(struct igc_hw *hw);
void igc_power_down_phy_copper(struct igc_hw *hw);
s32 igc_write_phy_reg_gpy(struct igc_hw *hw, u32 offset, u16 data);
s32 igc_read_phy_reg_gpy(struct igc_hw *hw, u32 offset, u16 *data);
+u16 igc_read_phy_fw_version(struct igc_hw *hw);
#endif
diff --git a/drivers/net/ethernet/intel/igc/igc_regs.h b/drivers/net/ethernet/intel/igc/igc_regs.h
index b52dd9d737e8..3e5cb7aef9da 100644
--- a/drivers/net/ethernet/intel/igc/igc_regs.h
+++ b/drivers/net/ethernet/intel/igc/igc_regs.h
@@ -13,6 +13,7 @@
#define IGC_MDICNFG 0x00E04 /* MDC/MDIO Configuration - RW */
#define IGC_CONNSW 0x00034 /* Copper/Fiber switch control - RW */
#define IGC_I225_PHPM 0x00E14 /* I225 PHY Power Management */
+#define IGC_GPHY_VERSION 0x0001E /* I225 gPHY Firmware Version */
/* Internal Packet Buffer Size Registers */
#define IGC_RXPBS 0x02404 /* Rx Packet Buffer Size - RW */
--
2.26.2
^ permalink raw reply related [flat|nested] 17+ messages in thread* [PATCH net-next 07/15] igc: Prefer strscpy over strlcpy
2021-02-04 0:42 [PATCH net-next 00/15][pull request] 1GbE Intel Wired LAN Driver Updates 2021-02-03 Tony Nguyen
` (5 preceding siblings ...)
2021-02-04 0:42 ` [PATCH net-next 06/15] igc: Expose the gPHY firmware version Tony Nguyen
@ 2021-02-04 0:42 ` Tony Nguyen
2021-02-04 0:42 ` [PATCH net-next 08/15] igc: Remove unused local receiver mask Tony Nguyen
` (8 subsequent siblings)
15 siblings, 0 replies; 17+ messages in thread
From: Tony Nguyen @ 2021-02-04 0:42 UTC (permalink / raw)
To: davem, kuba; +Cc: Sasha Neftin, netdev, sassmann, anthony.l.nguyen
From: Sasha Neftin <sasha.neftin@intel.com>
Use the strscpy method instead of strlcpy method.
See: https://lore.kernel.org/r/CAHk-=wgfRnXz0W3D37d01q3JFkr
_i_uTL=V6A6G1oUZcprmknw@mail.gmail.com/
Signed-off-by: Sasha Neftin <sasha.neftin@intel.com>
Signed-off-by: Tony Nguyen <anthony.l.nguyen@intel.com>
---
drivers/net/ethernet/intel/igc/igc_ethtool.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/net/ethernet/intel/igc/igc_ethtool.c b/drivers/net/ethernet/intel/igc/igc_ethtool.c
index a3811d7e59bc..824a6c454bca 100644
--- a/drivers/net/ethernet/intel/igc/igc_ethtool.c
+++ b/drivers/net/ethernet/intel/igc/igc_ethtool.c
@@ -150,7 +150,7 @@ static void igc_ethtool_get_drvinfo(struct net_device *netdev,
strscpy(drvinfo->fw_version, adapter->fw_version,
sizeof(drvinfo->fw_version));
- strlcpy(drvinfo->bus_info, pci_name(adapter->pdev),
+ strscpy(drvinfo->bus_info, pci_name(adapter->pdev),
sizeof(drvinfo->bus_info));
drvinfo->n_priv_flags = IGC_PRIV_FLAGS_STR_LEN;
--
2.26.2
^ permalink raw reply related [flat|nested] 17+ messages in thread* [PATCH net-next 08/15] igc: Remove unused local receiver mask
2021-02-04 0:42 [PATCH net-next 00/15][pull request] 1GbE Intel Wired LAN Driver Updates 2021-02-03 Tony Nguyen
` (6 preceding siblings ...)
2021-02-04 0:42 ` [PATCH net-next 07/15] igc: Prefer strscpy over strlcpy Tony Nguyen
@ 2021-02-04 0:42 ` Tony Nguyen
2021-02-04 0:42 ` [PATCH net-next 09/15] igc: Remove unused FUNC_1 mask Tony Nguyen
` (7 subsequent siblings)
15 siblings, 0 replies; 17+ messages in thread
From: Tony Nguyen @ 2021-02-04 0:42 UTC (permalink / raw)
To: davem, kuba; +Cc: Sasha Neftin, netdev, sassmann, anthony.l.nguyen
From: Sasha Neftin <sasha.neftin@intel.com>
Local receiver mask SR_1000T_LOCAL_RX_STATUS not in use in i225 device
and could be removed
Signed-off-by: Sasha Neftin <sasha.neftin@intel.com>
Signed-off-by: Tony Nguyen <anthony.l.nguyen@intel.com>
---
drivers/net/ethernet/intel/igc/igc_defines.h | 1 -
1 file changed, 1 deletion(-)
diff --git a/drivers/net/ethernet/intel/igc/igc_defines.h b/drivers/net/ethernet/intel/igc/igc_defines.h
index 4b7251d0c4e1..5286047ff914 100644
--- a/drivers/net/ethernet/intel/igc/igc_defines.h
+++ b/drivers/net/ethernet/intel/igc/igc_defines.h
@@ -129,7 +129,6 @@
/* 1000BASE-T Status Register */
#define SR_1000T_REMOTE_RX_STATUS 0x1000 /* Remote receiver OK */
-#define SR_1000T_LOCAL_RX_STATUS 0x2000 /* Local receiver OK */
/* PHY GPY 211 registers */
#define STANDARD_AN_REG_MASK 0x0007 /* MMD */
--
2.26.2
^ permalink raw reply related [flat|nested] 17+ messages in thread* [PATCH net-next 09/15] igc: Remove unused FUNC_1 mask
2021-02-04 0:42 [PATCH net-next 00/15][pull request] 1GbE Intel Wired LAN Driver Updates 2021-02-03 Tony Nguyen
` (7 preceding siblings ...)
2021-02-04 0:42 ` [PATCH net-next 08/15] igc: Remove unused local receiver mask Tony Nguyen
@ 2021-02-04 0:42 ` Tony Nguyen
2021-02-04 0:42 ` [PATCH net-next 10/15] igc: Fix TDBAL register show incorrect value Tony Nguyen
` (6 subsequent siblings)
15 siblings, 0 replies; 17+ messages in thread
From: Tony Nguyen @ 2021-02-04 0:42 UTC (permalink / raw)
To: davem, kuba; +Cc: Sasha Neftin, netdev, sassmann, anthony.l.nguyen
From: Sasha Neftin <sasha.neftin@intel.com>
FUNC_1 mask not in use in i225 device and could be removed
Signed-off-by: Sasha Neftin <sasha.neftin@intel.com>
Signed-off-by: Tony Nguyen <anthony.l.nguyen@intel.com>
---
drivers/net/ethernet/intel/igc/igc_defines.h | 1 -
1 file changed, 1 deletion(-)
diff --git a/drivers/net/ethernet/intel/igc/igc_defines.h b/drivers/net/ethernet/intel/igc/igc_defines.h
index 5286047ff914..b909f00a79e6 100644
--- a/drivers/net/ethernet/intel/igc/igc_defines.h
+++ b/drivers/net/ethernet/intel/igc/igc_defines.h
@@ -179,7 +179,6 @@
#define IGC_STATUS_LU 0x00000002 /* Link up.0=no,1=link */
#define IGC_STATUS_FUNC_MASK 0x0000000C /* PCI Function Mask */
#define IGC_STATUS_FUNC_SHIFT 2
-#define IGC_STATUS_FUNC_1 0x00000004 /* Function 1 */
#define IGC_STATUS_TXOFF 0x00000010 /* transmission paused */
#define IGC_STATUS_SPEED_100 0x00000040 /* Speed 100Mb/s */
#define IGC_STATUS_SPEED_1000 0x00000080 /* Speed 1000Mb/s */
--
2.26.2
^ permalink raw reply related [flat|nested] 17+ messages in thread* [PATCH net-next 10/15] igc: Fix TDBAL register show incorrect value
2021-02-04 0:42 [PATCH net-next 00/15][pull request] 1GbE Intel Wired LAN Driver Updates 2021-02-03 Tony Nguyen
` (8 preceding siblings ...)
2021-02-04 0:42 ` [PATCH net-next 09/15] igc: Remove unused FUNC_1 mask Tony Nguyen
@ 2021-02-04 0:42 ` Tony Nguyen
2021-02-04 0:42 ` [PATCH net-next 11/15] igb: fix " Tony Nguyen
` (5 subsequent siblings)
15 siblings, 0 replies; 17+ messages in thread
From: Tony Nguyen @ 2021-02-04 0:42 UTC (permalink / raw)
To: davem, kuba; +Cc: Sasha Neftin, netdev, sassmann, anthony.l.nguyen, Gal Hammer
From: Sasha Neftin <sasha.neftin@intel.com>
Fixed a typo which caused the registers dump function to read the
RDBAL register when printing TDBAL register values.
_reg_dump method has been partially derived from i210 and have
same typo.
Suggested-by: Gal Hammer <ghammer@redhat.com>
Signed-off-by: Sasha Neftin <sasha.neftin@intel.com>
Signed-off-by: Tony Nguyen <anthony.l.nguyen@intel.com>
---
drivers/net/ethernet/intel/igc/igc_dump.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/net/ethernet/intel/igc/igc_dump.c b/drivers/net/ethernet/intel/igc/igc_dump.c
index 4b9ec7d0b727..495bed47ed0a 100644
--- a/drivers/net/ethernet/intel/igc/igc_dump.c
+++ b/drivers/net/ethernet/intel/igc/igc_dump.c
@@ -75,7 +75,7 @@ static void igc_regdump(struct igc_hw *hw, struct igc_reg_info *reginfo)
break;
case IGC_TDBAL(0):
for (n = 0; n < 4; n++)
- regs[n] = rd32(IGC_RDBAL(n));
+ regs[n] = rd32(IGC_TDBAL(n));
break;
case IGC_TDBAH(0):
for (n = 0; n < 4; n++)
--
2.26.2
^ permalink raw reply related [flat|nested] 17+ messages in thread* [PATCH net-next 11/15] igb: fix TDBAL register show incorrect value
2021-02-04 0:42 [PATCH net-next 00/15][pull request] 1GbE Intel Wired LAN Driver Updates 2021-02-03 Tony Nguyen
` (9 preceding siblings ...)
2021-02-04 0:42 ` [PATCH net-next 10/15] igc: Fix TDBAL register show incorrect value Tony Nguyen
@ 2021-02-04 0:42 ` Tony Nguyen
2021-02-04 0:42 ` [PATCH net-next 12/15] igb: Enable RSS for Intel I211 Ethernet Controller Tony Nguyen
` (4 subsequent siblings)
15 siblings, 0 replies; 17+ messages in thread
From: Tony Nguyen @ 2021-02-04 0:42 UTC (permalink / raw)
To: davem, kuba; +Cc: Gal Hammer, netdev, sassmann, anthony.l.nguyen, David Switzer
From: Gal Hammer <ghammer@redhat.com>
Fixed a typo which caused the registers dump function to read the
RDBAL register when printing TDBAL register values.
Signed-off-by: Gal Hammer <ghammer@redhat.com>
Tested-by: David Switzer <david.switzer@intel.com>
Signed-off-by: Tony Nguyen <anthony.l.nguyen@intel.com>
---
drivers/net/ethernet/intel/igb/igb_main.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/net/ethernet/intel/igb/igb_main.c b/drivers/net/ethernet/intel/igb/igb_main.c
index 84d4284b8b32..d6090faaa41d 100644
--- a/drivers/net/ethernet/intel/igb/igb_main.c
+++ b/drivers/net/ethernet/intel/igb/igb_main.c
@@ -316,7 +316,7 @@ static void igb_regdump(struct e1000_hw *hw, struct igb_reg_info *reginfo)
break;
case E1000_TDBAL(0):
for (n = 0; n < 4; n++)
- regs[n] = rd32(E1000_RDBAL(n));
+ regs[n] = rd32(E1000_TDBAL(n));
break;
case E1000_TDBAH(0):
for (n = 0; n < 4; n++)
--
2.26.2
^ permalink raw reply related [flat|nested] 17+ messages in thread* [PATCH net-next 12/15] igb: Enable RSS for Intel I211 Ethernet Controller
2021-02-04 0:42 [PATCH net-next 00/15][pull request] 1GbE Intel Wired LAN Driver Updates 2021-02-03 Tony Nguyen
` (10 preceding siblings ...)
2021-02-04 0:42 ` [PATCH net-next 11/15] igb: fix " Tony Nguyen
@ 2021-02-04 0:42 ` Tony Nguyen
2021-02-04 0:42 ` [PATCH net-next 13/15] igb: remove h from printk format specifier Tony Nguyen
` (3 subsequent siblings)
15 siblings, 0 replies; 17+ messages in thread
From: Tony Nguyen @ 2021-02-04 0:42 UTC (permalink / raw)
To: davem, kuba; +Cc: Nick Lowe, netdev, sassmann, anthony.l.nguyen, David Switzer
From: Nick Lowe <nick.lowe@gmail.com>
The Intel I211 Ethernet Controller supports 2 Receive Side Scaling (RSS)
queues. It should not be excluded from having this feature enabled.
Via commit c883de9fd787 ("igb: rename igb define to be more generic")
E1000_MRQC_ENABLE_RSS_4Q was renamed to E1000_MRQC_ENABLE_RSS_MQ to
indicate that this is a generic bit flag to enable queues and not
a flag that is specific to devices that support 4 queues
The bit flag enables 2, 4 or 8 queues appropriately depending on the part.
Tested with a multicore CPU and frames were then distributed as expected.
This issue appears to have been introduced because of confusion caused
by the prior name.
Signed-off-by: Nick Lowe <nick.lowe@gmail.com>
Tested-by: David Switzer <david.switzer@intel.com>
Signed-off-by: Tony Nguyen <anthony.l.nguyen@intel.com>
---
drivers/net/ethernet/intel/igb/igb_main.c | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/drivers/net/ethernet/intel/igb/igb_main.c b/drivers/net/ethernet/intel/igb/igb_main.c
index d6090faaa41d..23e50de94474 100644
--- a/drivers/net/ethernet/intel/igb/igb_main.c
+++ b/drivers/net/ethernet/intel/igb/igb_main.c
@@ -4482,8 +4482,7 @@ static void igb_setup_mrqc(struct igb_adapter *adapter)
else
mrqc |= E1000_MRQC_ENABLE_VMDQ;
} else {
- if (hw->mac.type != e1000_i211)
- mrqc |= E1000_MRQC_ENABLE_RSS_MQ;
+ mrqc |= E1000_MRQC_ENABLE_RSS_MQ;
}
igb_vmm_control(adapter);
--
2.26.2
^ permalink raw reply related [flat|nested] 17+ messages in thread* [PATCH net-next 13/15] igb: remove h from printk format specifier
2021-02-04 0:42 [PATCH net-next 00/15][pull request] 1GbE Intel Wired LAN Driver Updates 2021-02-03 Tony Nguyen
` (11 preceding siblings ...)
2021-02-04 0:42 ` [PATCH net-next 12/15] igb: Enable RSS for Intel I211 Ethernet Controller Tony Nguyen
@ 2021-02-04 0:42 ` Tony Nguyen
2021-02-04 0:42 ` [PATCH net-next 14/15] e1000e: remove the redundant value assignment in e1000_update_nvm_checksum_spt Tony Nguyen
` (2 subsequent siblings)
15 siblings, 0 replies; 17+ messages in thread
From: Tony Nguyen @ 2021-02-04 0:42 UTC (permalink / raw)
To: davem, kuba; +Cc: Tom Rix, netdev, sassmann, anthony.l.nguyen
From: Tom Rix <trix@redhat.com>
This change fixes the checkpatch warning described in this
commit cbacb5ab0aa0 ("docs: printk-formats: Stop encouraging use of
unnecessary %h[xudi] and %hh[xudi]")
Standard integer promotion is already done and %hx and %hhx is useless
so do not encourage the use of %hh[xudi] or %h[xudi].
Signed-off-by: Tom Rix <trix@redhat.com>
Signed-off-by: Tony Nguyen <anthony.l.nguyen@intel.com>
---
drivers/net/ethernet/intel/igb/igb_main.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/net/ethernet/intel/igb/igb_main.c b/drivers/net/ethernet/intel/igb/igb_main.c
index 23e50de94474..bd0594ac3ae7 100644
--- a/drivers/net/ethernet/intel/igb/igb_main.c
+++ b/drivers/net/ethernet/intel/igb/igb_main.c
@@ -3156,7 +3156,7 @@ static int igb_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
* the PCIe SR-IOV capability.
*/
if (pdev->is_virtfn) {
- WARN(1, KERN_ERR "%s (%hx:%hx) should not be a VF!\n",
+ WARN(1, KERN_ERR "%s (%x:%x) should not be a VF!\n",
pci_name(pdev), pdev->vendor, pdev->device);
return -EINVAL;
}
--
2.26.2
^ permalink raw reply related [flat|nested] 17+ messages in thread* [PATCH net-next 14/15] e1000e: remove the redundant value assignment in e1000_update_nvm_checksum_spt
2021-02-04 0:42 [PATCH net-next 00/15][pull request] 1GbE Intel Wired LAN Driver Updates 2021-02-03 Tony Nguyen
` (12 preceding siblings ...)
2021-02-04 0:42 ` [PATCH net-next 13/15] igb: remove h from printk format specifier Tony Nguyen
@ 2021-02-04 0:42 ` Tony Nguyen
2021-02-04 0:42 ` [PATCH net-next 15/15] e1000: drop unneeded assignment in e1000_set_itr() Tony Nguyen
2021-02-05 5:40 ` [PATCH net-next 00/15][pull request] 1GbE Intel Wired LAN Driver Updates 2021-02-03 patchwork-bot+netdevbpf
15 siblings, 0 replies; 17+ messages in thread
From: Tony Nguyen @ 2021-02-04 0:42 UTC (permalink / raw)
To: davem, kuba; +Cc: Kaixu Xia, netdev, sassmann, anthony.l.nguyen, Tosk Robot
From: Kaixu Xia <kaixuxia@tencent.com>
Both of the statements are value assignment of the variable act_offset.
The first value assignment is overwritten by the second and is useless.
Remove it.
Reported-by: Tosk Robot <tencent_os_robot@tencent.com>
Signed-off-by: Kaixu Xia <kaixuxia@tencent.com>
Signed-off-by: Tony Nguyen <anthony.l.nguyen@intel.com>
---
drivers/net/ethernet/intel/e1000e/ich8lan.c | 7 -------
1 file changed, 7 deletions(-)
diff --git a/drivers/net/ethernet/intel/e1000e/ich8lan.c b/drivers/net/ethernet/intel/e1000e/ich8lan.c
index 6fb46682b058..0ac8d79a7987 100644
--- a/drivers/net/ethernet/intel/e1000e/ich8lan.c
+++ b/drivers/net/ethernet/intel/e1000e/ich8lan.c
@@ -3886,13 +3886,6 @@ static s32 e1000_update_nvm_checksum_spt(struct e1000_hw *hw)
if (ret_val)
goto release;
- /* And invalidate the previously valid segment by setting
- * its signature word (0x13) high_byte to 0b. This can be
- * done without an erase because flash erase sets all bits
- * to 1's. We can write 1's to 0's without an erase
- */
- act_offset = (old_bank_offset + E1000_ICH_NVM_SIG_WORD) * 2 + 1;
-
/* offset in words but we read dword */
act_offset = old_bank_offset + E1000_ICH_NVM_SIG_WORD - 1;
ret_val = e1000_read_flash_dword_ich8lan(hw, act_offset, &dword);
--
2.26.2
^ permalink raw reply related [flat|nested] 17+ messages in thread* [PATCH net-next 15/15] e1000: drop unneeded assignment in e1000_set_itr()
2021-02-04 0:42 [PATCH net-next 00/15][pull request] 1GbE Intel Wired LAN Driver Updates 2021-02-03 Tony Nguyen
` (13 preceding siblings ...)
2021-02-04 0:42 ` [PATCH net-next 14/15] e1000e: remove the redundant value assignment in e1000_update_nvm_checksum_spt Tony Nguyen
@ 2021-02-04 0:42 ` Tony Nguyen
2021-02-05 5:40 ` [PATCH net-next 00/15][pull request] 1GbE Intel Wired LAN Driver Updates 2021-02-03 patchwork-bot+netdevbpf
15 siblings, 0 replies; 17+ messages in thread
From: Tony Nguyen @ 2021-02-04 0:42 UTC (permalink / raw)
To: davem, kuba
Cc: Sudip Mukherjee, netdev, sassmann, anthony.l.nguyen,
Lukas Bulwahn
From: Sudip Mukherjee <sudipm.mukherjee@gmail.com>
The variable 'current_itr' is assigned to 0 before jumping to
'set_itr_now' but it has not been used after the jump. So, remove the
unneeded assignment.
Signed-off-by: Sudip Mukherjee <sudipm.mukherjee@gmail.com>
Reviewed-by: Lukas Bulwahn <lukas.bulwahn@gmail.com>
Signed-off-by: Tony Nguyen <anthony.l.nguyen@intel.com>
---
drivers/net/ethernet/intel/e1000/e1000_main.c | 1 -
1 file changed, 1 deletion(-)
diff --git a/drivers/net/ethernet/intel/e1000/e1000_main.c b/drivers/net/ethernet/intel/e1000/e1000_main.c
index 5e28cf4fa2cd..042de276e632 100644
--- a/drivers/net/ethernet/intel/e1000/e1000_main.c
+++ b/drivers/net/ethernet/intel/e1000/e1000_main.c
@@ -2632,7 +2632,6 @@ static void e1000_set_itr(struct e1000_adapter *adapter)
/* for non-gigabit speeds, just fix the interrupt rate at 4000 */
if (unlikely(adapter->link_speed != SPEED_1000)) {
- current_itr = 0;
new_itr = 4000;
goto set_itr_now;
}
--
2.26.2
^ permalink raw reply related [flat|nested] 17+ messages in thread* Re: [PATCH net-next 00/15][pull request] 1GbE Intel Wired LAN Driver Updates 2021-02-03
2021-02-04 0:42 [PATCH net-next 00/15][pull request] 1GbE Intel Wired LAN Driver Updates 2021-02-03 Tony Nguyen
` (14 preceding siblings ...)
2021-02-04 0:42 ` [PATCH net-next 15/15] e1000: drop unneeded assignment in e1000_set_itr() Tony Nguyen
@ 2021-02-05 5:40 ` patchwork-bot+netdevbpf
15 siblings, 0 replies; 17+ messages in thread
From: patchwork-bot+netdevbpf @ 2021-02-05 5:40 UTC (permalink / raw)
To: Tony Nguyen; +Cc: davem, kuba, netdev, sassmann
Hello:
This series was applied to netdev/net-next.git (refs/heads/master):
On Wed, 3 Feb 2021 16:42:44 -0800 you wrote:
> This series contains updates to igc, igb, e1000e, and e1000 drivers.
>
> Sasha adds counting of good transmit packets and reporting of NVM version
> and gPHY version in ethtool firmware version. Replaces the use of strlcpy
> to the preferred strscpy. Fixes a typo that caused the wrong register to be
> output. He also removes an unused function pointer, some unneeded defines,
> and a non-applicable comment. All changes for igc.
>
> [...]
Here is the summary with links:
- [net-next,01/15] igc: Clean up nvm_operations structure
https://git.kernel.org/netdev/net-next/c/63532ced0777
- [net-next,02/15] igc: Remove igc_set_fw_version comment
https://git.kernel.org/netdev/net-next/c/4d59f52ba770
- [net-next,03/15] igc: Remove MULR mask define
https://git.kernel.org/netdev/net-next/c/e96c5b46bdf1
- [net-next,04/15] igc: Add Host Good Packets Transmitted Count
https://git.kernel.org/netdev/net-next/c/e65299444e3c
- [net-next,05/15] igc: Expose the NVM version
https://git.kernel.org/netdev/net-next/c/01bb6129c641
- [net-next,06/15] igc: Expose the gPHY firmware version
https://git.kernel.org/netdev/net-next/c/94f794d15a5e
- [net-next,07/15] igc: Prefer strscpy over strlcpy
https://git.kernel.org/netdev/net-next/c/ed443cdf67b5
- [net-next,08/15] igc: Remove unused local receiver mask
https://git.kernel.org/netdev/net-next/c/9c99482e45b0
- [net-next,09/15] igc: Remove unused FUNC_1 mask
https://git.kernel.org/netdev/net-next/c/4917fc8eb640
- [net-next,10/15] igc: Fix TDBAL register show incorrect value
https://git.kernel.org/netdev/net-next/c/9660ef25e958
- [net-next,11/15] igb: fix TDBAL register show incorrect value
https://git.kernel.org/netdev/net-next/c/abb9efc70988
- [net-next,12/15] igb: Enable RSS for Intel I211 Ethernet Controller
https://git.kernel.org/netdev/net-next/c/6e6026f2dd20
- [net-next,13/15] igb: remove h from printk format specifier
https://git.kernel.org/netdev/net-next/c/2f7c1fd23d9f
- [net-next,14/15] e1000e: remove the redundant value assignment in e1000_update_nvm_checksum_spt
https://git.kernel.org/netdev/net-next/c/99eb3943ab9b
- [net-next,15/15] e1000: drop unneeded assignment in e1000_set_itr()
https://git.kernel.org/netdev/net-next/c/5a04b958ad39
You are awesome, thank you!
--
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/patchwork/pwbot.html
^ permalink raw reply [flat|nested] 17+ messages in thread