]> git.baikalelectronics.ru Git - kernel.git/commit
net: ethernet: ti: introduce cpsw switchdev based driver part 1 - dual-emac
authorIlias Apalodimas <ilias.apalodimas@linaro.org>
Tue, 19 Nov 2019 22:19:19 +0000 (00:19 +0200)
committerDavid S. Miller <davem@davemloft.net>
Wed, 20 Nov 2019 19:25:23 +0000 (11:25 -0800)
commitbaf8efc03bda5e8216d8be54f88312d3f1aadb3b
treed2c5784a77c2a08827061e3d7fc5008ffb7f3bff
parentb6a90ad6092166806dac1df7b4e612ecaa414143
net: ethernet: ti: introduce cpsw switchdev based driver part 1 - dual-emac

Part 1:
 Introduce basic CPSW dual_mac driver (cpsw_new.c) which is operating in
dual-emac mode by default, thus working as 2 individual network interfaces.
Main differences from legacy CPSW driver are:

 - optimized promiscuous mode: The P0_UNI_FLOOD (both ports) is enabled in
addition to ALLMULTI (current port) instead of ALE_BYPASS. So, Ports in
promiscuous mode will keep possibility of mcast and vlan filtering, which
is provides significant benefits when ports are joined to the same bridge,
but without enabling "switch" mode, or to different bridges.
 - learning disabled on ports as it make not too much sense for
   segregated ports - no forwarding in HW.
 - enabled basic support for devlink.

devlink dev show
platform/48484000.switch

devlink dev param show
 platform/48484000.switch:
name ale_bypass type driver-specific
 values:
cmode runtime value false

 - "ale_bypass" devlink driver parameter allows to enable
ALE_CONTROL(4).BYPASS mode for debug purposes.
 - updated DT bindings.

Signed-off-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
Signed-off-by: Murali Karicheri <m-karicheri2@ti.com>
Signed-off-by: Grygorii Strashko <grygorii.strashko@ti.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/ti/Kconfig
drivers/net/ethernet/ti/Makefile
drivers/net/ethernet/ti/cpsw_new.c [new file with mode: 0644]
drivers/net/ethernet/ti/cpsw_priv.c
drivers/net/ethernet/ti/cpsw_priv.h