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

-- 
Best regards,
grygorii
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>