[PATCH net-next v3 00/10] net: ethernet: ti: am65-cpsw: add multi port support in mac-only mode

From: Grygorii Strashko
Date: Fri Oct 30 2020 - 16:07:10 EST


Hi

This series adds multi-port support in mac-only mode (multi MAC mode) to TI
AM65x CPSW driver in preparation for enabling support for multi-port devices,
like Main CPSW0 on K3 J721E SoC or future CPSW3g on K3 AM64x SoC.

The multi MAC mode is implemented by configuring every enabled port in "mac-only"
mode (all ingress packets are sent only to the Host port and egress packets
directed to target Ext. Port) and creating separate net_device for
every enabled Ext. port.

This series does not affect on existing CPSW2g one Ext. Port devices and xmit
path changes are done only for multi-port devices by splitting xmit path for
one-port and multi-port devices.

Patches 1-3: Preparation patches to improve K3 CPSW configuration depending on DT
Patches 4-5: Fix VLAN offload for multi MAC mode
Patch 6: Fixes CPTS context lose issue during PM runtime transition
Patch 7: Fixes TX csum offload for multi MAC mode
Patches 8-9: add multi-port support to TI AM65x CPSW
Patch 10: handle deferred probe with new dev_err_probe() API

changes in v3:
- rebased
- added Reviewed-by: Jesse Brandeburg <jesse.brandeburg@xxxxxxxxx>
- added Patch 10 which is minor optimization

changes in v2:
- patch 8: xmit path split for one-port and multi-port devices to avoid
performance losses
- patch 9: fixed the case when Port 1 is disabled
- Patch 7: added fix for TX csum offload

v2: https://lore.kernel.org/patchwork/cover/1321608/
v1: https://lore.kernel.org/patchwork/cover/1315766/

Grygorii Strashko (10):
net: ethernet: ti: am65-cpsw: move ale selection in pdata
net: ethernet: ti: am65-cpsw: move free desc queue mode selection in
pdata
net: ethernet: ti: am65-cpsw: use cppi5_desc_is_tdcm()
net: ethernet: ti: cpsw_ale: add cpsw_ale_vlan_del_modify()
net: ethernet: ti: am65-cpsw: fix vlan offload for multi mac mode
net: ethernet: ti: am65-cpsw: keep active if cpts enabled
net: ethernet: ti: am65-cpsw: fix tx csum offload for multi mac mode
net: ethernet: ti: am65-cpsw: prepare xmit/rx path for multi-port
devices in mac-only mode
net: ethernet: ti: am65-cpsw: add multi port support in mac-only mode
net: ethernet: ti: am65-cpsw: handle deferred probe with
dev_err_probe()

drivers/net/ethernet/ti/am65-cpsw-nuss.c | 355 ++++++++++++++---------
drivers/net/ethernet/ti/am65-cpsw-nuss.h | 5 +
drivers/net/ethernet/ti/cpsw_ale.c | 41 ++-
drivers/net/ethernet/ti/cpsw_ale.h | 1 +
drivers/net/ethernet/ti/cpsw_switchdev.c | 2 +-
5 files changed, 261 insertions(+), 143 deletions(-)

--
2.17.1