mbox series

[net-next,v2,0/9] net: ethernet: ti: am65-cpsw: add multi port support in mac-only mode

Message ID 20201015231913.30280-1-grygorii.strashko@ti.com (mailing list archive)
Headers show
Series net: ethernet: ti: am65-cpsw: add multi port support in mac-only mode | expand

Message

Grygorii Strashko Oct. 15, 2020, 11:19 p.m. UTC
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

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 

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

Grygorii Strashko (9):
  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

 drivers/net/ethernet/ti/am65-cpsw-nuss.c | 327 +++++++++++++++--------
 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, 251 insertions(+), 125 deletions(-)

Comments

Grygorii Strashko Oct. 15, 2020, 11:59 p.m. UTC | #1
On 16/10/2020 02:19, Grygorii Strashko wrote:
> 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
> 
> 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
> 
> v1: https://lore.kernel.org/patchwork/cover/1315766/
> 
> Grygorii Strashko (9):
>    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
> 
>   drivers/net/ethernet/ti/am65-cpsw-nuss.c | 327 +++++++++++++++--------
>   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, 251 insertions(+), 125 deletions(-)
> 

Sorry, missed "net-next is CLOSED" announcement
Jesse Brandeburg Oct. 16, 2020, 9:25 p.m. UTC | #2
Grygorii Strashko wrote:

> 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.

For the series
Reviewed-by: Jesse Brandeburg <jesse.brandeburg@intel.com>