From: Wei Fang <[email protected]> This series adds bridge mode support to the NETC DSA switch driver, covering both VLAN-aware and VLAN-unaware operation.
The NETC switch manages forwarding through a set of hardware tables accessed via NTMP: the FDB table (FDBT), VLAN filter table (VFT), egress treatment table (ETT), and egress count table (ECT). The series extends the NTMP layer with the operations required for bridging, then builds the DSA bridge callbacks on top. Since all switch ports share the VFT, so only one VLAN-aware bridge is supported. FDB aging is managed in software. A periodic delayed work sweeps the table using the hardware activity element mechanism, with a default aging time of 300 seconds matching the IEEE 802.1Q standard. Per-port entries are also flushed immediately on bridge leave and link-down events. Wei Fang (9): net: enetc: add interfaces to manage FDB entries net: enetc: add "Update" and "Delete" operations to VLAN filter table net: enetc: add interfaces to manage egress treatment table net: enetc: add "Update" operation to the egress count table net: dsa: netc: initialize the group bitmap of ETT and ECT net: enetc: add helpers to set/clear table bitmap net: dsa: netc: add VLAN filter table and egress treatment management net: dsa: netc: add bridge mode support net: dsa: netc: implement dynamic FDB entry aging drivers/net/dsa/netc/netc_main.c | 882 +++++++++++++++++- drivers/net/dsa/netc/netc_switch.h | 34 + drivers/net/dsa/netc/netc_switch_hw.h | 6 + drivers/net/ethernet/freescale/enetc/ntmp.c | 431 +++++++++ .../ethernet/freescale/enetc/ntmp_private.h | 14 + include/linux/fsl/ntmp.h | 60 ++ 6 files changed, 1413 insertions(+), 14 deletions(-) -- 2.34.1
