]> git.ipfire.org Git - thirdparty/linux.git/commit
net: macb: add TX stall timeout callback to recover from lost TSTART write
authorLukasz Raczylo <lukasz@raczylo.com>
Tue, 16 Jun 2026 13:23:03 +0000 (15:23 +0200)
committerJakub Kicinski <kuba@kernel.org>
Fri, 19 Jun 2026 01:05:11 +0000 (18:05 -0700)
commite438ec3e9e95cd3f49a8120e5f63ae3f9606e6fa
treee4f3603d00f37d7c1a5c6307b2915d18da6c9933
parent5c121ee635680c93d7074becf14cfbaac140f80d
net: macb: add TX stall timeout callback to recover from lost TSTART write

The MACB found in the Raspberry Pi RP1 suffers from sporadic stalls on
the TX queue.
While the exact root cause is not yet fully understood, it is likely
related to a hardware issue where a TSTART write to the NCR register
is missed, preventing the transmission from being kicked off.

Implement a timeout callback to handle TX queue stalls, triggering the
existing restart mechanism to recover.

Link: https://lore.kernel.org/all/20260514215459.36109-1-lukasz@raczylo.com/
Fixes: dc110d1b23564 ("net: cadence: macb: Add support for Raspberry Pi RP1 ethernet controller")
Signed-off-by: Lukasz Raczylo <lukasz@raczylo.com>
Co-developed-by: Steffen Jaeckel <sjaeckel@suse.de>
Signed-off-by: Steffen Jaeckel <sjaeckel@suse.de>
Co-developed-by: Andrea della Porta <andrea.porta@suse.com>
Signed-off-by: Andrea della Porta <andrea.porta@suse.com>
Reviewed-by: Nicolai Buchwitz <nb@tipi-net.de>
Reviewed-by: Théo Lebrun <theo.lebrun@bootlin.com>
Link: https://patch.msgid.link/468f480454a314303bac6a54780b153f689f2267.1781598350.git.andrea.porta@suse.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/net/ethernet/cadence/macb_main.c