Thread (2 messages) 2 messages, 2 authors, 2026-02-28

Re: [PATCH net] net: ti: icssg-prueth: Fix ping failure after offload mode setup when link speed is not 1G

From: patchwork-bot+netdevbpf@kernel.org
Date: 2026-02-28 22:24:33
Also in: linux-arm-kernel, lkml

Hello:

This patch was applied to netdev/net.git (main)
by Jakub Kicinski [off-list ref]:

On Thu, 26 Feb 2026 15:53:56 +0530 you wrote:
When both eth interfaces with links up are added to a bridge or hsr
interface, ping fails if the link speed is not 1Gbps (e.g., 100Mbps).

The issue is seen because when switching to offload (bridge/hsr) mode,
prueth_emac_restart() restarts the firmware and clears DRAM with
memset_io(), setting all memory to 0. This includes PORT_LINK_SPEED_OFFSET
which firmware reads for link speed. The value 0 corresponds to
FW_LINK_SPEED_1G (0x00), so for 1Gbps links the default value is correct
and ping works. For 100Mbps links, the firmware needs FW_LINK_SPEED_100M
(0x01) but gets 0 instead, causing ping to fail. The function
emac_adjust_link() is called to reconfigure, but it detects no state change
(emac->link is still 1, speed/duplex match PHY) so new_state remains false
and icssg_config_set_speed() is never called to correct the firmware speed
value.

[...]
Here is the summary with links:
  - [net] net: ti: icssg-prueth: Fix ping failure after offload mode setup when link speed is not 1G
    https://git.kernel.org/netdev/net/c/147792c395db

You are awesome, thank you!
-- 
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/patchwork/pwbot.html

Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help