This is a belated follow-up to Zefir Kurtisi's report:
https://lore.kernel.org/netdev/20260220132930.2521155-1-zefir.kurtisi@gmail.com/
which is that the ENETC misbehaves when transmitting packets smaller
than 16 octets sans FCS: it sends them but does not update the completed
index in the transmit BD ring. I did find a sentence in the reference
manual explicitly stating these short frames are not supported.
The original series (patches 5, 6) were focused on handling the invalid
frame geometries. However, review pointed out further issues in annex
code. Patches 1-4 handle those.
The main patch is 2/3, which Zefir already tested (in a simpler form)
and confirmed working in the thread from February. The code path should
be identical for his issue, so I've preserved the tag despite the
additions.
v1 at:
https://lore.kernel.org/netdev/20260401172246.1075883-1-vladimir.oltean@nxp.com/
Vladimir Oltean (6):
net: enetc: increment error counter in enetc_xdp_xmit() on DMA mapping
errors
net: enetc: linearize PTP event packets with one-step TX timestamping
net: enetc: ensure enetc_xdp_xmit() calls enetc_update_tx_ring_tail()
net: enetc: fix bogus TX ring consumer index after reinitialization
net: enetc: pad short frames in software
net: enetc: pad short XDP frames coming from devmap
drivers/net/ethernet/freescale/enetc/enetc.c | 38 +++++++++++++++++---
drivers/net/ethernet/freescale/enetc/enetc.h | 2 ++
include/net/xdp.h | 23 ++++++++++++
3 files changed, 59 insertions(+), 4 deletions(-)
--
2.43.0