aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/ethernet/intel/igc
diff options
context:
space:
mode:
authorFaizal Rahim <[email protected]>2025-03-18 03:07:35 +0000
committerTony Nguyen <[email protected]>2025-04-18 15:43:10 +0000
commit0d58cdc902dace2298406b3972def04f55e3d775 (patch)
treec0e59897762808ecaa999ec0ca8f87ab301aee94 /drivers/net/ethernet/intel/igc
parentigc: use FIELD_PREP and GENMASK for existing TX packet buffer size (diff)
downloadkernel-0d58cdc902dace2298406b3972def04f55e3d775.tar.gz
kernel-0d58cdc902dace2298406b3972def04f55e3d775.zip
igc: optimize TX packet buffer utilization for TSN mode
In preparation for upcoming frame preemption patches, optimize the TX packet buffer size. The total packet buffer size (RX + TX) is 64KB, with a maximum of 34KB for either RX or TX. Split the buffer evenly, allocating 32KB to each. For TX, assign 7KB to each of the four TX packet buffers (total 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 <[email protected]> Signed-off-by: Vinicius Costa Gomes <[email protected]> Signed-off-by: Faizal Rahim <[email protected]> Tested-by: Mor Bar-Gabay <[email protected]> Signed-off-by: Tony Nguyen <[email protected]>
Diffstat (limited to 'drivers/net/ethernet/intel/igc')
-rw-r--r--drivers/net/ethernet/intel/igc/igc_defines.h4
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/net/ethernet/intel/igc/igc_defines.h b/drivers/net/ethernet/intel/igc/igc_defines.h
index ec8f926362eb..5502edd6261f 100644
--- a/drivers/net/ethernet/intel/igc/igc_defines.h
+++ b/drivers/net/ethernet/intel/igc/igc_defines.h
@@ -419,8 +419,8 @@
IGC_TXPB0SIZE(20) | IGC_TXPB1SIZE(0) | IGC_TXPB2SIZE(0) | \
IGC_TXPB3SIZE(0) | IGC_OS2BMCPBSIZE(4))
#define IGC_TXPBSIZE_TSN ( \
- IGC_TXPB0SIZE(5) | IGC_TXPB1SIZE(5) | IGC_TXPB2SIZE(5) | \
- IGC_TXPB3SIZE(5) | IGC_OS2BMCPBSIZE(4))
+ IGC_TXPB0SIZE(7) | IGC_TXPB1SIZE(7) | IGC_TXPB2SIZE(7) | \
+ IGC_TXPB3SIZE(7) | IGC_OS2BMCPBSIZE(4))
#define IGC_DTXMXPKTSZ_TSN 0x19 /* 1600 bytes of max TX DMA packet size */
#define IGC_DTXMXPKTSZ_DEFAULT 0x98 /* 9728-byte Jumbo frames */