Commit eb12e14a authored by Grygorii Strashko's avatar Grygorii Strashko Committed by Sekhar Nori
Browse files

net: ethernet: ti: introduce j721e virt cpsw-nuss mac driver



This patch introduces virtual CPSW MAC driver which implements standard
Linux netdev interface and uses RPC services provided by rpmsg-kdrv Eth
switch device which provides RPC interface to the Eth switch firmware
running on the one of R5F cores and fully controls J721E CPSW9G hardware
module.

Once probed the virtual CPSW MAC driver attaches itself to the Eth switch
FW and requests:
- TX and RX UDMA resources;
- set supported fetures;
- MAC address.

After this the virtual CPSW MAC driver allows to receive and send regular
nework traffic using dedicated UDMA TX channel and RX flow allocated for
Linux Host by Eth switch FW through the standard Linux netdev intf. Hence,
CPSW9G HW does not support redirection of broadcast traffic to muliple CPU
cores - it's required that Eth switch FW should implemnt ARP support for
cases when remote network hosts send ARP request to obtain MAC address of
the virtual CPSW MAC device. For such purposes the virtual CPSW MAC driver
registers itself for IPv4 address assignment notifications and passes pairs
of <IP>:<MAC> to the Eth switch FW.

Supported features:
- ifconfig dev up/down
- ifconfig dev <IP>
- ifconfig dev hw ether <MAC> -- only when intf is down
- ethtool -k dev

Signed-off-by: default avatarGrygorii Strashko <grygorii.strashko@ti.com>
Signed-off-by: default avatarSekhar Nori <nsekhar@ti.com>
parent c80eca5f
Loading
Loading
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please to comment