oad_apply().
Fixes: d3750076d464 ("igc: Add TransmissionOverrun counter")
Signed-off-by: Faizal Rahim
---
drivers/net/ethernet/intel/igc/igc_main.c | 33 ---
1 file changed, 17 insertions(+), 16 deletions(-)
diff --git a/drivers/net/ethernet/intel/igc/igc_main.c
k log on Board B
- Observed that the total time from the first to the last packet
received during one cycle for TC3 does not exceed 500us
Signed-off-by: Faizal Rahim
---
drivers/net/ethernet/intel/igc/igc_defines.h | 6
drivers/net/ethernet/intel/igc/igc_tsn.c | 34 ++
using the qbv_count field.
2. The patch "igc: Fix qbv tx latency by setting gtxoffset" reuse the
function igc_tsn_will_tx_mode_change() created in the patch:
"igc: Fix reset adapter logics when tx mode change"
Faizal Rahim (4):
igc: Fix qbv_config_change_errors l
g_change_errors counter")
Signed-off-by: Faizal Rahim
---
drivers/net/ethernet/intel/igc/igc_main.c | 8 ++--
drivers/net/ethernet/intel/igc/igc_tsn.c | 19 +++
drivers/net/ethernet/intel/igc/igc_tsn.h | 1 +
3 files changed, 18 insertions(+), 10 deletions(-)
diff
rved (tx mode change tsn->legacy)
2. Tested scenario from "igc: Fix TX Hang issue when QBV Gate is closed"
to confirm it remains resolved.
Fixes: 175c241288c0 ("igc: Fix TX Hang issue when QBV Gate is closed")
Signed-off-by: Faizal Rahim
---
drivers/net/ethernet/intel/igc/
T_MODE_TSN). This is due to its
unconditional increment within igc_tsn_enable_offload(), which both runs
Taprio and sets the tx mode to TSN.
Signed-off-by: Faizal Rahim
---
drivers/net/ethernet/intel/igc/igc.h | 1 -
drivers/net/ethernet/intel/igc/igc_main.c | 1 -
drivers/net/ethernet/inte
n talker to send packets to listener
4. Check the timestamp on listener via wireshark
Test Result:
100 Mbps: 113 ~193 ns
1000 Mbps: 52 ~ 84 ns
2500 Mbps: 95 ~ 223 ns
Note that the test result is similar to the patch "igc: Correct the
launchtime offset".
Fixes: 790835fcc0cb ("
le
for TC3 does not exceed 500us.
Signed-off-by: Faizal Rahim
---
v1:
https://patchwork.kernel.org/project/netdevbpf/patch/20240701100058.3301229-1-faizal.abdul.ra...@linux.intel.com/
Changelog:
v1 -> v2
- Update commit description (Paul).
- Rename qbvfullth -> qbvfullthreshold (Paul).
rom this series which is targeting
to iwl-net. This patch will be sent to iwl-next. (Simon)
Faizal Rahim (3):
igc: Fix qbv_config_change_errors logics
igc: Fix reset adapter logics when tx mode change
igc: Fix qbv tx latency by setting gtxoffset
drivers/net/ethernet/intel/igc/igc_main.c
g_change_errors counter")
Signed-off-by: Faizal Rahim
Reviewed-by: Simon Horman
---
drivers/net/ethernet/intel/igc/igc_main.c | 8 ++--
drivers/net/ethernet/intel/igc/igc_tsn.c | 16
drivers/net/ethernet/intel/igc/igc_tsn.h | 1 +
3 files changed, 15 insertions(+), 1
rved (tx mode change tsn->legacy)
2. Tested scenario from "igc: Fix TX Hang issue when QBV Gate is closed"
to confirm it remains resolved.
Fixes: 175c241288c0 ("igc: Fix TX Hang issue when QBV Gate is closed")
Signed-off-by: Faizal Rahim
Reviewed-by: Simon Hor
n talker to send packets to listener
4. Check the timestamp on listener via wireshark
Test Result:
100 Mbps: 113 ~193 ns
1000 Mbps: 52 ~ 84 ns
2500 Mbps: 95 ~ 223 ns
Note that the test result is similar to the patch "igc: Correct the
launchtime offset".
Fixes: 790835fcc0cb ("igc: Corr
Packet buffers (RX + TX) total 64KB. Neither RX or TX buffers can be
larger than 34KB. So divide the buffer equally, 32KB for each.
Co-developed-by: Vinicius Costa Gomes
Signed-off-by: Vinicius Costa Gomes
Signed-off-by: Faizal Rahim
---
drivers/net/ethernet/intel/igc/igc_defines.h | 3 ++-
1
Renamed xdp_get_tx_ring() function to a more generic name for use in
upcoming frame preemption patches.
Signed-off-by: Faizal Rahim
---
drivers/net/ethernet/intel/igc/igc.h | 2 +-
drivers/net/ethernet/intel/igc/igc_main.c | 10 +-
2 files changed, 6 insertions(+), 6 deletions
Co-developed-by: Choong Yong Liang
Signed-off-by: Choong Yong Liang
Co-developed-by: Faizal Rahim
Signed-off-by: Faizal Rahim
Tested-by: Choong Yong Liang
---
drivers/net/ethernet/stmicro/stmmac/stmmac.h | 16 +-
.../ethernet/stmicro/stmmac/stmmac_ethtool.c | 41 +---
.../net/ethernet/st
(Vladimir)
v1:
https://patchwork.kernel.org/project/netdevbpf/cover/20241216064720.931522-1-faizal.abdul.ra...@linux.intel.com/
Faizal Rahim (8):
igc: Rename xdp_get_tx_ring() for non-xdp usage
igc: Optimize the TX packet buffer utilization
igc: Set the RX packet buffer size for TSN mode
igc: Add suppo
128
Max verify time: 128
Verification status: SUCCEEDED
Verified that the fields value are retrieved correctly.
Signed-off-by: Faizal Rahim
---
drivers/net/ethernet/intel/igc/igc_ethtool.c | 14 ++
drivers/net/ethernet/intel/igc/igc_tsn.h | 1 +
2 files changed, 15 insertion
veloped-by: Choong Yong Liang
Signed-off-by: Choong Yong Liang
Signed-off-by: Faizal Rahim
---
drivers/net/ethernet/intel/igc/igc.h | 12 +-
drivers/net/ethernet/intel/igc/igc_defines.h | 10 +-
drivers/net/ethernet/intel/igc/igc_ethtool.c | 19 +++
drivers/net/ethernet/intel/igc/
Add support to set tx-min-frag-size via set_mm callback in igc.
Increase the max limit of tx-ming-frag-size in ethtool from 252 to 256
since i225/6 value range is 64, 128, 192 and 256.
Co-developed-by: Vinicius Costa Gomes
Signed-off-by: Vinicius Costa Gomes
Signed-off-by: Faizal Rahim
Gomes
Signed-off-by: Faizal Rahim
---
drivers/net/ethernet/intel/igc/igc_defines.h | 3 +++
drivers/net/ethernet/intel/igc/igc_tsn.c | 13 +++--
2 files changed, 14 insertions(+), 2 deletions(-)
diff --git a/drivers/net/ethernet/intel/igc/igc_defines.h
b/drivers/net/ethernet/intel/igc
orCount: 0
MACMergeFrameSmdErrorCount: 0
MACMergeFrameAssOkCount: 511
MACMergeFragCountRx: 764
MACMergeFragCountTx: 0
MACMergeHoldCount: 0
Co-developed-by: Vinicius Costa Gomes
Signed-off-by: Vinicius Costa Gomes
Signed-off-by: Faizal Rahim
---
drivers/net/ethernet/intel/igc/igc
2
queues 2@0 1@2 1@3
fp E E P
Co-developed-by: Vinicius Costa Gomes
Signed-off-by: Vinicius Costa Gomes
Signed-off-by: Faizal Rahim
---
drivers/net/ethernet/intel/igc/igc.h | 2 +-
drivers/net/ethernet/intel/igc/igc_defines.h | 1 +
drivers/net/ethernet/intel/igc/igc_main.c
Co-developed-by: Choong Yong Liang
Signed-off-by: Choong Yong Liang
Co-developed-by: Faizal Rahim
Signed-off-by: Faizal Rahim
Tested-by: Choong Yong Liang
---
drivers/net/ethernet/stmicro/stmmac/stmmac.h | 16 +-
.../ethernet/stmicro/stmmac/stmmac_ethtool.c | 41 +---
.../net/ethernet/st
rnel.org/project/netdevbpf/cover/20250207165649.2245320-1-faizal.abdul.ra...@linux.intel.com/
Faizal Rahim (8):
igc: Rename xdp_get_tx_ring() for non-xdp usage
igc: Optimize the TX packet buffer utilization
igc: Set the RX packet buffer size for TSN mode
igc: Add support for frame preemption ve
msv.pmac_enabled to track whether FPE is enabled or disabled.
Co-developed-by: Vinicius Costa Gomes
Signed-off-by: Vinicius Costa Gomes
Co-developed-by: Choong Yong Liang
Signed-off-by: Choong Yong Liang
Signed-off-by: Faizal Rahim
---
drivers/net/ethernet/intel/igc/igc.h | 12
128
Max verify time: 128
Verification status: SUCCEEDED
Verified that the fields value are retrieved correctly.
Signed-off-by: Faizal Rahim
---
drivers/net/ethernet/intel/igc/igc_ethtool.c | 14 ++
drivers/net/ethernet/intel/igc/igc_tsn.h | 1 +
2 files changed, 15 insertion
orCount: 0
MACMergeFrameSmdErrorCount: 0
MACMergeFrameAssOkCount: 511
MACMergeFragCountRx: 764
MACMergeFragCountTx: 0
MACMergeHoldCount: 0
Co-developed-by: Vinicius Costa Gomes
Signed-off-by: Vinicius Costa Gomes
Signed-off-by: Faizal Rahim
---
drivers/net/ethernet/intel/igc/igc
Add support to set tx-min-frag-size via set_mm callback in igc.
Increase the max limit of tx-ming-frag-size in ethtool from 252 to 256
since i225/6 value range is 64, 128, 192 and 256.
Co-developed-by: Vinicius Costa Gomes
Signed-off-by: Vinicius Costa Gomes
Signed-off-by: Faizal Rahim
2 2 2 2 2 2 2 2 2 2
queues 2@0 1@2 1@3
fp E E P
Co-developed-by: Vinicius Costa Gomes
Signed-off-by: Vinicius Costa Gomes
Signed-off-by: Faizal Rahim
---
drivers/net/ethernet/intel/igc/igc.h | 3 +-
drivers/net/ethernet/intel/igc/igc_defines.h | 1 +
drivers/net/ethernet
Gomes
Signed-off-by: Faizal Rahim
---
drivers/net/ethernet/intel/igc/igc_defines.h | 3 +++
drivers/net/ethernet/intel/igc/igc_tsn.c | 13 +++--
2 files changed, 14 insertions(+), 2 deletions(-)
diff --git a/drivers/net/ethernet/intel/igc/igc_defines.h
b/drivers/net/ethernet/intel/igc
Renamed xdp_get_tx_ring() function to a more generic name for use in
upcoming frame preemption patches.
Signed-off-by: Faizal Rahim
---
drivers/net/ethernet/intel/igc/igc.h | 2 +-
drivers/net/ethernet/intel/igc/igc_main.c | 10 +-
2 files changed, 6 insertions(+), 6 deletions
Packet buffers (RX + TX) total 64KB. Neither RX or TX buffers can be
larger than 34KB. So divide the buffer equally, 32KB for each.
Co-developed-by: Vinicius Costa Gomes
Signed-off-by: Vinicius Costa Gomes
Signed-off-by: Faizal Rahim
---
drivers/net/ethernet/intel/igc/igc_defines.h | 3 ++-
1
Renamed xdp_get_tx_ring() function to a more generic name for use in
upcoming frame preemption patches.
Signed-off-by: Faizal Rahim
---
drivers/net/ethernet/intel/igc/igc.h | 2 +-
drivers/net/ethernet/intel/igc/igc_main.c | 10 +-
2 files changed, 6 insertions(+), 6 deletions
Co-developed-by: Choong Yong Liang
Signed-off-by: Choong Yong Liang
Co-developed-by: Faizal Rahim
Signed-off-by: Faizal Rahim
Tested-by: Choong Yong Liang
---
drivers/net/ethernet/stmicro/stmmac/stmmac.h | 16 +-
.../ethernet/stmicro/stmmac/stmmac_ethtool.c | 41 +---
.../net/ethernet/st
msv.pmac_enabled to track whether FPE is enabled or disabled.
Co-developed-by: Vinicius Costa Gomes
Signed-off-by: Vinicius Costa Gomes
Co-developed-by: Choong Yong Liang
Signed-off-by: Choong Yong Liang
Signed-off-by: Faizal Rahim
---
drivers/net/ethernet/intel/igc/igc.h | 12
Packet buffers (RX + TX) total 64KB. Neither RX or TX buffers can be
larger than 34KB. So divide the buffer equally, 32KB for each.
Co-developed-by: Vinicius Costa Gomes
Signed-off-by: Vinicius Costa Gomes
Signed-off-by: Faizal Rahim
---
drivers/net/ethernet/intel/igc/igc_defines.h | 3 ++-
1
Gomes
Signed-off-by: Faizal Rahim
---
drivers/net/ethernet/intel/igc/igc_defines.h | 3 +++
drivers/net/ethernet/intel/igc/igc_tsn.c | 13 +++--
2 files changed, 14 insertions(+), 2 deletions(-)
diff --git a/drivers/net/ethernet/intel/igc/igc_defines.h
b/drivers/net/ethernet/intel/igc
l.org/project/netdevbpf/cover/20241216064720.931522-1-faizal.abdul.ra...@linux.intel.com/
v2:
https://patchwork.kernel.org/project/netdevbpf/cover/20250205100524.1138523-1-faizal.abdul.ra...@linux.intel.com/
Faizal Rahim (8):
igc: Rename xdp_get_tx_ring() for non-xdp usage
igc: Optimize the TX packet buff
2 2 2 2 2 2 2 2 2 2
queues 2@0 1@2 1@3
fp E E P
Co-developed-by: Vinicius Costa Gomes
Signed-off-by: Vinicius Costa Gomes
Signed-off-by: Faizal Rahim
---
drivers/net/ethernet/intel/igc/igc.h | 3 +-
drivers/net/ethernet/intel/igc/igc_defines.h | 1 +
drivers/net/ethernet
Add support to set tx-min-frag-size via set_mm callback in igc.
Increase the max limit of tx-ming-frag-size in ethtool from 252 to 256
since i225/6 value range is 64, 128, 192 and 256.
Co-developed-by: Vinicius Costa Gomes
Signed-off-by: Vinicius Costa Gomes
Signed-off-by: Faizal Rahim
128
Max verify time: 128
Verification status: SUCCEEDED
Verified that the fields value are retrieved correctly.
Signed-off-by: Faizal Rahim
---
drivers/net/ethernet/intel/igc/igc_ethtool.c | 14 ++
drivers/net/ethernet/intel/igc/igc_tsn.h | 1 +
2 files changed, 15 insertion
orCount: 0
MACMergeFrameSmdErrorCount: 0
MACMergeFrameAssOkCount: 511
MACMergeFragCountRx: 764
MACMergeFragCountTx: 0
MACMergeHoldCount: 0
Co-developed-by: Vinicius Costa Gomes
Signed-off-by: Vinicius Costa Gomes
Signed-off-by: Faizal Rahim
---
drivers/net/ethernet/intel/igc/igc
@0 1@2 1@3
fp E P P
Co-developed-by: Vinicius Costa Gomes
Signed-off-by: Vinicius Costa Gomes
Signed-off-by: Faizal Rahim
---
drivers/net/ethernet/intel/igc/igc.h | 2 +-
drivers/net/ethernet/intel/igc/igc_defines.h | 1 +
drivers/net/ethernet/intel/igc/igc_main
128
Max verify time: 128
Verification status: SUCCEEDED
Verified that the fields value are retrieved correctly.
Signed-off-by: Faizal Rahim
---
drivers/net/ethernet/intel/igc/igc.h | 2 +-
drivers/net/ethernet/intel/igc/igc_ethtool.c | 20
drivers/net/ethernet/intel/igc
Signed-off-by: Vinicius Costa Gomes
Signed-off-by: Faizal Rahim
---
drivers/net/ethernet/intel/igc/igc.h | 1 +
drivers/net/ethernet/intel/igc/igc_main.c | 17 +
drivers/net/ethernet/intel/igc/igc_tsn.c | 2 ++
3 files changed, 20 insertions(+)
diff --git a/drivers/ne
procedure and
managing preemption capability in transmit direction.
At this point, verify response handshake is not enabled yet.
Co-developed-by: Vinicius Costa Gomes
Signed-off-by: Vinicius Costa Gomes
Signed-off-by: Faizal Rahim
---
drivers/net/ethernet/intel/igc/igc.h | 24 +
loped-by: Vinicius Costa Gomes
Signed-off-by: Vinicius Costa Gomes
Signed-off-by: Faizal Rahim
---
drivers/net/ethernet/intel/igc/igc.h | 16 ++
drivers/net/ethernet/intel/igc/igc_defines.h | 6 +
drivers/net/ethernet/intel/igc/igc_ethtool.c | 8 +-
drivers/net/ethernet/intel/igc
fload.
Faizal Rahim (6):
igc: Rename xdp_get_tx_ring() for non-xdp usage
igc: Add support to set MAC Merge data via ethtool
igc: Add support for frame preemption verification
igc: Add support for preemptible traffic class in taprio
igc: Add support to get MAC Merge data via ethtool
igc: Add su
Renamed xdp_get_tx_ring() function to a more generic name for use in
upcoming frame preemption patches.
Signed-off-by: Faizal Rahim
---
drivers/net/ethernet/intel/igc/igc.h | 2 +-
drivers/net/ethernet/intel/igc/igc_main.c | 10 +-
2 files changed, 6 insertions(+), 6 deletions
From: Vinicius Costa Gomes
Packet buffers (RX + TX) total 64KB. Neither RX or TX buffers can be
larger than 34KB. So divide the buffer equally, 32KB for each.
Signed-off-by: Vinicius Costa Gomes
Signed-off-by: Faizal Rahim
---
drivers/net/ethernet/intel/igc/igc_defines.h | 2 +-
1 file
-off-by: Faizal Rahim
---
drivers/net/ethernet/intel/igc/igc_defines.h | 3 +++
drivers/net/ethernet/intel/igc/igc_tsn.c | 13 +++--
2 files changed, 14 insertions(+), 2 deletions(-)
diff --git a/drivers/net/ethernet/intel/igc/igc_defines.h
b/drivers/net/ethernet/intel/igc
orCount: 0
MACMergeFrameSmdErrorCount: 0
MACMergeFrameAssOkCount: 511
MACMergeFragCountRx: 764
MACMergeFragCountTx: 0
MACMergeHoldCount: 0
Co-developed-by: Vinicius Costa Gomes
Signed-off-by: Vinicius Costa Gomes
Signed-off-by: Faizal Rahim
---
drivers/net/ethernet/intel/igc/igc
v8:
https://patchwork.kernel.org/project/netdevbpf/cover/20250305130026.642219-1-faizal.abdul.ra...@linux.intel.com/
v9:
https://patchwork.kernel.org/project/netdevbpf/cover/20250309104648.3895551-1-faizal.abdul.ra...@linux.intel.com/
Faizal Rahim (13):
net: stmmac: move frag_size handling out of s
Renamed xdp_get_tx_ring() function to a more generic name for use in
upcoming frame preemption patches.
Signed-off-by: Faizal Rahim
---
drivers/net/ethernet/intel/igc/igc.h | 2 +-
drivers/net/ethernet/intel/igc/igc_main.c | 9 -
2 files changed, 5 insertions(+), 6 deletions
Since preemptible tc implementation is not ready yet, block it from being
set in taprio. The existing code already blocks it in mqprio.
Reviewed-by: Vladimir Oltean
Signed-off-by: Faizal Rahim
---
drivers/net/ethernet/intel/igc/igc_main.c | 4
1 file changed, 4 insertions(+)
diff --git a
conventions.
Signed-off-by: Faizal Rahim
---
drivers/net/ethernet/intel/igc/igc_defines.h | 7 ---
drivers/net/ethernet/intel/igc/igc_main.c| 4 ++--
drivers/net/ethernet/intel/igc/igc_tsn.c | 2 +-
3 files changed, 7 insertions(+), 6 deletions(-)
diff --git a/drivers/net/ethernet
IGC_RXPBSIZE_EXP_BMC_DEFAULT.
The newly introduced macros follow the naming from the i226 SW User Manual
for easy reference.
I've tested IGC_RXPBSIZE_EXP_BMC_DEFAULT and IGC_RXPBS_CFG_TS_EN before
and after the refactoring, and their values remain unchanged.
Reviewed-by: Vladimir Oltean
Signed-off-by: F
Gomes
Reviewed-by: Vladimir Oltean
Signed-off-by: Faizal Rahim
---
drivers/net/ethernet/intel/igc/igc.h | 1 +
drivers/net/ethernet/intel/igc/igc_defines.h | 1 +
drivers/net/ethernet/intel/igc/igc_ethtool.c | 5 +++
drivers/net/ethernet/intel/igc/igc_tsn.c | 38
: Vladimir Oltean
Signed-off-by: Faizal Rahim
---
drivers/net/ethernet/intel/igc/igc_ethtool.c | 40
drivers/net/ethernet/intel/igc/igc_regs.h| 16
2 files changed, 56 insertions(+)
diff --git a/drivers/net/ethernet/intel/igc/igc_ethtool.c
b/drivers/net/ethernet
isting rtnl_lock()
is sufficient. Move frag_size handling out of spin_lock_irq_save() to keep
the upcoming patch a pure refactoring without behavior changes.
Signed-off-by: Faizal Rahim
Reviewed-by: Vladimir Oltean
Reviewed-by: Furong Xu <0x1...@gmail.com>
---
drivers/net/ethernet/st
viewed-by: Vladimir Oltean
Signed-off-by: Faizal Rahim
---
net/ethtool/mm.c | 4
1 file changed, 4 insertions(+)
diff --git a/net/ethtool/mm.c b/net/ethtool/mm.c
index bfd988464d7d..ad9b40034003 100644
--- a/net/ethtool/mm.c
+++ b/net/ethtool/mm.c
@@ -415,6 +415,10 @@ void ethtool_mms
easy reference.
I've tested IGC_TXPBSIZE_TSN and IGC_TXPBSIZE_DEFAULT before and after the
refactoring, and their values remain unchanged.
Reviewed-by: Vladimir Oltean
Signed-off-by: Faizal Rahim
---
drivers/net/ethernet/intel/igc/igc_defines.h | 23 ++--
1 file change
128
Max verify time: 128
Verification status: SUCCEEDED
Verified that the fields value are retrieved correctly.
Reviewed-by: Vladimir Oltean
Signed-off-by: Faizal Rahim
---
drivers/net/ethernet/intel/igc/igc_ethtool.c | 14 ++
drivers/net/ethernet/intel/igc/igc_tsn.h | 1
-by: Choong Yong Liang
Signed-off-by: Choong Yong Liang
Co-developed-by: Chwee-Lin Choong
Signed-off-by: Chwee-Lin Choong
Reviewed-by: Vladimir Oltean
Signed-off-by: Faizal Rahim
---
drivers/net/ethernet/intel/Kconfig | 1 +
drivers/net/ethernet/intel/igc/igc.h | 12
Co-developed-by: Choong Yong Liang
Signed-off-by: Choong Yong Liang
Tested-by: Choong Yong Liang
Tested-by: Furong Xu <0x1...@gmail.com>
Reviewed-by: Vladimir Oltean
Signed-off-by: Faizal Rahim
---
drivers/net/ethernet/stmicro/stmmac/Kconfig | 1 +
drivers/net/ethernet
follow the naming from the i226 SW User Manual
for easy reference.
Co-developed-by: Vinicius Costa Gomes
Signed-off-by: Vinicius Costa Gomes
Signed-off-by: Faizal Rahim
---
drivers/net/ethernet/intel/igc/igc_defines.h | 5
drivers/net/ethernet/intel/igc/igc_tsn.c | 25
28KB)
and reserve 4KB for BMC.
References:
I225/I226 SW User Manual Section 4.7.9, Section 8.3.2
Co-developed-by: Vinicius Costa Gomes
Signed-off-by: Vinicius Costa Gomes
Signed-off-by: Faizal Rahim
---
drivers/net/ethernet/intel/igc/igc_defines.h | 4 ++--
1 file changed, 2 insertions(+), 2
Tx mode for MQPRIO offloading
- igc: Limit netdev_tc calls to MQPRIO
Chwee-Lin Choong (1):
igc: SW pad preemptible frames for correct mCRC calculation
Faizal Rahim (7):
igc: move IGC_TXDCTL_QUEUE_ENABLE and IGC_TXDCTL_SWFLUSH
igc: add TXDCTL prefix to related macros
igc: refactor TXDCTL
Refactor TXDCTL macro handling to use FIELD_PREP and GENMASK macros.
This prepares the code for adding a new TXDCTL priority field in an
upcoming patch.
Signed-off-by: Faizal Rahim
---
drivers/net/ethernet/intel/igc/igc.h | 16 +++-
drivers/net/ethernet/intel/igc/igc_main.c
Consolidate TXDCTL-related macros for better organization and readability.
Signed-off-by: Faizal Rahim
---
drivers/net/ethernet/intel/igc/igc.h | 6 ++
drivers/net/ethernet/intel/igc/igc_base.h | 4
2 files changed, 6 insertions(+), 4 deletions(-)
diff --git a/drivers/net
2 3 0 0 0 0 0 0 0 0 0 0 0 0 \
queues 1@0 1@1 1@2 1@3 \
fp P P P E
Signed-off-by: Faizal Rahim
---
drivers/net/ethernet/intel/igc/igc_main.c | 9 ++---
drivers/net/ethernet/intel/igc/igc_tsn.c | 9 +
drivers/net/ethernet/intel/igc/igc_tsn.h | 1 +
3 files changed, 12 insertions
0 0 \
queues 1@0 1@1 1@2 1@3 \
fp P P P E
Signed-off-by: Faizal Rahim
---
drivers/net/ethernet/intel/igc/igc.h | 5 ++
drivers/net/ethernet/intel/igc/igc_defines.h | 1 +
drivers/net/ethernet/intel/igc/igc_main.c| 12 +++-
drivers/net/ethernet/intel/igc/igc_tsn.c | 71
-off-by: Faizal Rahim
---
drivers/net/ethernet/intel/igc/igc_main.c | 19
drivers/net/ethernet/intel/igc/igc_tsn.c | 35 ++-
2 files changed, 41 insertions(+), 13 deletions(-)
diff --git a/drivers/net/ethernet/intel/igc/igc_main.c
b/drivers/net/ethernet/intel
eue determines that there is no frame
available for transmission."
Signed-off-by: Faizal Rahim
---
drivers/net/ethernet/intel/igc/igc.h | 1 +
drivers/net/ethernet/intel/igc/igc_ethtool.c | 12 ++--
drivers/net/ethernet/intel/igc/igc_main.c| 3 ++-
drivers/net/ethernet/intel/i
using skb_padto() before transmission.
This ensures that the hardware includes the padding bytes in the
mCRC computation, producing a correct mCRC value.
Signed-off-by: Chwee-Lin Choong
Signed-off-by: Faizal Rahim
---
drivers/net/ethernet/intel/igc/igc_main.c | 9 +
1 file changed, 9
Rename macros to include the TXDCTL_ prefix for consistency and clarity.
This aligns naming with the register they configure and improves code
readability.
Signed-off-by: Faizal Rahim
---
drivers/net/ethernet/intel/igc/igc.h | 6 +++---
drivers/net/ethernet/intel/igc/igc_main.c | 6
d-off-by: Choong Yong Liang
Signed-off-by: Faizal Rahim
---
drivers/net/ethernet/intel/igc/igc.h | 12 +-
drivers/net/ethernet/intel/igc/igc_base.h| 1 +
drivers/net/ethernet/intel/igc/igc_defines.h | 8 +-
drivers/net/ethernet/intel/igc/igc_ethtool.c | 21 +++
drivers/net/et
Renamed xdp_get_tx_ring() function to a more generic name for use in
upcoming frame preemption patches.
Signed-off-by: Faizal Rahim
---
drivers/net/ethernet/intel/igc/igc.h | 2 +-
drivers/net/ethernet/intel/igc/igc_main.c | 9 -
2 files changed, 5 insertions(+), 6 deletions
ux.intel.com/
v4:
https://patchwork.kernel.org/project/netdevbpf/cover/20250210070207.2615418-1-faizal.abdul.ra...@linux.intel.com/
v5:
https://patchwork.kernel.org/project/netdevbpf/cover/20250220025349.3007793-1-faizal.abdul.ra...@linux.intel.com/
v6:
https://patchwork.kernel.org/project/netdevb
Packet buffers (RX + TX) total 64KB. Neither RX or TX buffers can be
larger than 34KB. So divide the buffer equally, 32KB for each.
Co-developed-by: Vinicius Costa Gomes
Signed-off-by: Vinicius Costa Gomes
Signed-off-by: Faizal Rahim
---
drivers/net/ethernet/intel/igc/igc_defines.h | 3 ++-
1
Add support to set tx-min-frag-size via set_mm callback in igc.
Increase the max limit of tx-ming-frag-size in ethtool from 252 to 256
since i225/6 value range is 64, 128, 192 and 256.
Co-developed-by: Vinicius Costa Gomes
Signed-off-by: Vinicius Costa Gomes
Signed-off-by: Faizal Rahim
128
Max verify time: 128
Verification status: SUCCEEDED
Verified that the fields value are retrieved correctly.
Signed-off-by: Faizal Rahim
---
drivers/net/ethernet/intel/igc/igc_ethtool.c | 14 ++
drivers/net/ethernet/intel/igc/igc_tsn.h | 1 +
2 files changed, 15 insertion
Gomes
Signed-off-by: Faizal Rahim
---
drivers/net/ethernet/intel/igc/igc_defines.h | 3 +++
drivers/net/ethernet/intel/igc/igc_tsn.c | 13 +++--
2 files changed, 14 insertions(+), 2 deletions(-)
diff --git a/drivers/net/ethernet/intel/igc/igc_defines.h
b/drivers/net/ethernet/intel/igc
orCount: 0
MACMergeFrameSmdErrorCount: 0
MACMergeFrameAssOkCount: 511
MACMergeFragCountRx: 764
MACMergeFragCountTx: 0
MACMergeHoldCount: 0
Co-developed-by: Vinicius Costa Gomes
Signed-off-by: Vinicius Costa Gomes
Signed-off-by: Faizal Rahim
---
drivers/net/ethernet/intel/igc/igc_etht
Since preemptible tc implementation is not ready yet, block it from being
set in taprio. The existing code already blocks it in mqprio.
Signed-off-by: Faizal Rahim
---
drivers/net/ethernet/intel/igc/igc_main.c | 4
1 file changed, 4 insertions(+)
diff --git a/drivers/net/ethernet/intel
Co-developed-by: Choong Yong Liang
Signed-off-by: Choong Yong Liang
Co-developed-by: Faizal Rahim
Signed-off-by: Faizal Rahim
Tested-by: Choong Yong Liang
Tested-by: Furong Xu <0x1...@gmail.com>
---
drivers/net/ethernet/stmicro/stmmac/stmmac.h | 16 +-
.../ethernet/stmicro/stmmac/stmma
orCount: 0
MACMergeFrameSmdErrorCount: 0
MACMergeFrameAssOkCount: 511
MACMergeFragCountRx: 764
MACMergeFragCountTx: 0
MACMergeHoldCount: 0
Co-developed-by: Vinicius Costa Gomes
Signed-off-by: Vinicius Costa Gomes
Co-developed-by: Chwee-Lin Choong
Signed-off-by: Chwee-Lin Choong
Signed-off-
easy reference.
I've tested IGC_TXPBSIZE_TSN and IGC_TXPBSIZE_DEFAULT before and after the
refactoring, and their values remain unchanged.
Signed-off-by: Faizal Rahim
---
drivers/net/ethernet/intel/igc/igc_defines.h | 23 ++--
1 file changed, 21 insertions(+), 2 dele
When the link partner goes down, "ethtool --show-mm" still displays
"Verification status: SUCCEEDED," reflecting a previous state that is
no longer valid.
Reset the verification status to ensure it reflects the current state.
Signed-off-by: Faizal Rahim
---
net/ethtool/m
Since preemptible tc implementation is not ready yet, block it from being
set in taprio. The existing code already blocks it in mqprio.
Signed-off-by: Faizal Rahim
---
drivers/net/ethernet/intel/igc/igc_main.c | 4
1 file changed, 4 insertions(+)
diff --git a/drivers/net/ethernet/intel
conventions.
Signed-off-by: Faizal Rahim
---
drivers/net/ethernet/intel/igc/igc_defines.h | 7 ---
drivers/net/ethernet/intel/igc/igc_main.c| 4 ++--
drivers/net/ethernet/intel/igc/igc_tsn.c | 2 +-
3 files changed, 7 insertions(+), 6 deletions(-)
diff --git a/drivers/net/ethernet
From: Vladimir Oltean
It appears that stmmac is not the only hardware which requires a
software-driven verification state machine for the MAC Merge layer.
While on the one hand it's good to encourage hardware implementations,
on the other hand it's quite difficult to tolerate multiple drivers
im
-by: Choong Yong Liang
Signed-off-by: Choong Yong Liang
Co-developed-by: Chwee-Lin Choong
Signed-off-by: Chwee-Lin Choong
Signed-off-by: Faizal Rahim
---
drivers/net/ethernet/intel/igc/igc.h | 12 +-
drivers/net/ethernet/intel/igc/igc_base.h| 1 +
drivers/net/ethernet/intel/i
k.kernel.org/project/netdevbpf/cover/20250227140158.2129988-1-faizal.abdul.ra...@linux.intel.com/
v7:
https://patchwork.kernel.org/project/netdevbpf/cover/20250303102658.3580232-1-faizal.abdul.ra...@linux.intel.com/
v8:
https://patchwork.kernel.org/project/netdevbpf/cover/20250305130026.642219-1-f
isting rtnl_lock()
is sufficient. Move frag_size handling out of spin_lock_irq_save() to keep
the upcoming patch a pure refactoring without behavior changes.
Signed-off-by: Faizal Rahim
Reviewed-by: Vladimir Oltean
Reviewed-by: Furong Xu <0x1...@gmail.com>
---
drivers/net/ethernet/st
Gomes
Signed-off-by: Faizal Rahim
---
drivers/net/ethernet/intel/igc/igc.h | 1 +
drivers/net/ethernet/intel/igc/igc_defines.h | 1 +
drivers/net/ethernet/intel/igc/igc_ethtool.c | 5 +++
drivers/net/ethernet/intel/igc/igc_tsn.c | 38 ++--
drivers/net/ethernet/intel
IGC_RXPBSIZE_EXP_BMC_DEFAULT.
The newly introduced macros follow the naming from the i226 SW User Manual
for easy reference.
I've tested IGC_RXPBSIZE_EXP_BMC_DEFAULT and IGC_RXPBS_CFG_TS_EN before
and after the refactoring, and their values remain unchanged.
Signed-off-by: Faizal Rahim
---
driver
Renamed xdp_get_tx_ring() function to a more generic name for use in
upcoming frame preemption patches.
Signed-off-by: Faizal Rahim
---
drivers/net/ethernet/intel/igc/igc.h | 2 +-
drivers/net/ethernet/intel/igc/igc_main.c | 9 -
2 files changed, 5 insertions(+), 6 deletions
128
Max verify time: 128
Verification status: SUCCEEDED
Verified that the fields value are retrieved correctly.
Signed-off-by: Faizal Rahim
---
drivers/net/ethernet/intel/igc/igc_ethtool.c | 14 ++
drivers/net/ethernet/intel/igc/igc_tsn.h | 1 +
2 files changed, 15 insertion
28KB)
and reserve 4KB for BMC.
References:
I225/I226 SW User Manual Section 4.7.9, Section 8.3.2
Co-developed-by: Vinicius Costa Gomes
Signed-off-by: Vinicius Costa Gomes
Signed-off-by: Faizal Rahim
---
drivers/net/ethernet/intel/igc/igc_defines.h | 4 ++--
1 file changed, 2 insertions(+), 2
1 - 100 of 142 matches
Mail list logo