]> git.ipfire.org Git - thirdparty/kernel/linux.git/commit
net: ti: icssm-prueth: Add support for ICSSM RSTP switch
authorRoger Quadros <rogerq@ti.com>
Fri, 30 Jan 2026 12:43:45 +0000 (18:13 +0530)
committerJakub Kicinski <kuba@kernel.org>
Thu, 5 Feb 2026 02:12:00 +0000 (18:12 -0800)
commiteca327ae9aa6ce0b13449d0f07b62f16f8444065
treea87cc960dc1e3dae57dc08dbbfb4ea275dd76a1b
parenteea65b87493e1fcf9397e0f1d8cecb7d379e051b
net: ti: icssm-prueth: Add support for ICSSM RSTP switch

Add support for RSTP switch mode by enhancing the existing ICSSM dual EMAC
driver with switchdev support.

Enable the PRU-ICSSM to operate in switch mode, with the 2 PRU ports acting
as external ports and the host acting as an internal port. Packets received
from the PRU ports will be forwarded to the host (store and forward mode)
and also to the other PRU port (either using store and forward mode or via
cut-through mode). Packets coming from the host will be transmitted either
from one or both of the PRU ports (depending on the FDB decision).

By default, the dual EMAC firmware will be loaded in the PRU-ICSS
subsystem. To configure the PRU-ICSS to operate as a switch, a different
firmware must to be loaded.

Signed-off-by: Roger Quadros <rogerq@ti.com>
Signed-off-by: Andrew F. Davis <afd@ti.com>
Signed-off-by: Basharath Hussain Khaja <basharath@couthit.com>
Signed-off-by: Parvathi Pudi <parvathi@couthit.com>
Reviewed-by: Simon Horman <horms@kernel.org>
Link: https://patch.msgid.link/20260130124559.1182780-4-parvathi@couthit.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/net/ethernet/ti/icssm/icssm_prueth.c
drivers/net/ethernet/ti/icssm/icssm_prueth.h
drivers/net/ethernet/ti/icssm/icssm_prueth_switch.c
drivers/net/ethernet/ti/icssm/icssm_prueth_switch.h
drivers/net/ethernet/ti/icssm/icssm_switch.h