mirror of
https://github.com/torvalds/linux.git
synced 2026-05-27 00:22:00 +02:00
net: ti: icssg-prueth: Add ICSSG Ethernet driver for AM65x SR1.0 platforms
Add the PRUeth driver for the ICSSG subsystem found in AM65x SR1.0 devices. The main differences that set SR1.0 and SR2.0 apart are the missing TXPRU core in SR1.0, two extra DMA channels for management purposes and different firmware that needs to be configured accordingly. Based on the work of Roger Quadros, Vignesh Raghavendra and Grygorii Strashko in TI's 5.10 SDK [1]. [1]: https://git.ti.com/cgit/ti-linux-kernel/ti-linux-kernel/tree/?h=ti-linux-5.10.y Co-developed-by: Jan Kiszka <jan.kiszka@siemens.com> Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com> Signed-off-by: Diogo Ivo <diogo.ivo@siemens.com> Reviewed-by: MD Danish Anwar <danishanwar@ti.com> Signed-off-by: Paolo Abeni <pabeni@redhat.com>
This commit is contained in:
parent
ce95cb4c8d
commit
e654b85a69
|
|
@ -198,6 +198,21 @@ config TI_ICSSG_PRUETH
|
|||
to support the Ethernet operation. Currently, it supports Ethernet
|
||||
with 1G and 100M link speed.
|
||||
|
||||
config TI_ICSSG_PRUETH_SR1
|
||||
tristate "TI Gigabit PRU SR1.0 Ethernet driver"
|
||||
select PHYLIB
|
||||
select TI_ICSS_IEP
|
||||
select TI_K3_CPPI_DESC_POOL
|
||||
depends on PRU_REMOTEPROC
|
||||
depends on ARCH_K3 && OF && TI_K3_UDMA_GLUE_LAYER
|
||||
help
|
||||
Support dual Gigabit Ethernet ports over the ICSSG PRU Subsystem.
|
||||
This subsystem is available on the AM65 SR1.0 platform.
|
||||
|
||||
This driver requires firmware binaries which will run on the PRUs
|
||||
to support the Ethernet operation. Currently, it supports Ethernet
|
||||
with 1G, 100M and 10M link speed.
|
||||
|
||||
config TI_ICSS_IEP
|
||||
tristate "TI PRU ICSS IEP driver"
|
||||
depends on PTP_1588_CLOCK_OPTIONAL
|
||||
|
|
|
|||
|
|
@ -40,4 +40,12 @@ icssg-prueth-y := icssg/icssg_prueth.o \
|
|||
icssg/icssg_mii_cfg.o \
|
||||
icssg/icssg_stats.o \
|
||||
icssg/icssg_ethtool.o
|
||||
obj-$(CONFIG_TI_ICSSG_PRUETH_SR1) += icssg-prueth-sr1.o
|
||||
icssg-prueth-sr1-y := icssg/icssg_prueth_sr1.o \
|
||||
icssg/icssg_common.o \
|
||||
icssg/icssg_classifier.o \
|
||||
icssg/icssg_config.o \
|
||||
icssg/icssg_mii_cfg.o \
|
||||
icssg/icssg_stats.o \
|
||||
icssg/icssg_ethtool.o
|
||||
obj-$(CONFIG_TI_ICSS_IEP) += icssg/icss_iep.o
|
||||
|
|
|
|||
1181
drivers/net/ethernet/ti/icssg/icssg_prueth_sr1.c
Normal file
1181
drivers/net/ethernet/ti/icssg/icssg_prueth_sr1.c
Normal file
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue
Block a user