Skip to content

Commit 47dd7a5

Browse files
cavagiudavem330
authored andcommitted
net: add support for STMicroelectronics Ethernet controllers.
This is the driver for the ST MAC 10/100/1000 on-chip Ethernet controllers (Synopsys IP blocks). Driver documentation: o http://stlinux.com/drupal/kernel/network/stmmac Revisions: o http://stlinux.com/drupal/kernel/network/stmmac-driver-revisions Performances: o http://stlinux.com/drupal/benchmarks/networking/stmmac Signed-off-by: Giuseppe Cavallaro <[email protected]> Signed-off-by: David S. Miller <[email protected]>
1 parent 47a01a0 commit 47dd7a5

File tree

16 files changed

+5178
-0
lines changed

16 files changed

+5178
-0
lines changed

drivers/net/Kconfig

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2483,6 +2483,8 @@ config S6GMAC
24832483
To compile this driver as a module, choose M here. The module
24842484
will be called s6gmac.
24852485

2486+
source "drivers/net/stmmac/Kconfig"
2487+
24862488
endif # NETDEV_1000
24872489

24882490
#

drivers/net/Makefile

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -100,6 +100,7 @@ obj-$(CONFIG_VIA_VELOCITY) += via-velocity.o
100100
obj-$(CONFIG_ADAPTEC_STARFIRE) += starfire.o
101101
obj-$(CONFIG_RIONET) += rionet.o
102102
obj-$(CONFIG_SH_ETH) += sh_eth.o
103+
obj-$(CONFIG_STMMAC_ETH) += stmmac/
103104

104105
#
105106
# end link order section

drivers/net/stmmac/Kconfig

Lines changed: 53 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,53 @@
1+
config STMMAC_ETH
2+
tristate "STMicroelectronics 10/100/1000 Ethernet driver"
3+
select MII
4+
select PHYLIB
5+
depends on NETDEVICES && CPU_SUBTYPE_ST40
6+
help
7+
This is the driver for the ST MAC 10/100/1000 on-chip Ethernet
8+
controllers. ST Ethernet IPs are built around a Synopsys IP Core.
9+
10+
if STMMAC_ETH
11+
12+
config STMMAC_DA
13+
bool "STMMAC DMA arbitration scheme"
14+
default n
15+
help
16+
Selecting this option, rx has priority over Tx (only for Giga
17+
Ethernet device).
18+
By default, the DMA arbitration scheme is based on Round-robin
19+
(rx:tx priority is 1:1).
20+
21+
config STMMAC_DUAL_MAC
22+
bool "STMMAC: dual mac support (EXPERIMENTAL)"
23+
default n
24+
depends on EXPERIMENTAL && STMMAC_ETH && !STMMAC_TIMER
25+
help
26+
Some ST SoCs (for example the stx7141 and stx7200c2) have two
27+
Ethernet Controllers. This option turns on the second Ethernet
28+
device on this kind of platforms.
29+
30+
config STMMAC_TIMER
31+
bool "STMMAC Timer optimisation"
32+
default n
33+
help
34+
Use an external timer for mitigating the number of network
35+
interrupts.
36+
37+
choice
38+
prompt "Select Timer device"
39+
depends on STMMAC_TIMER
40+
41+
config STMMAC_TMU_TIMER
42+
bool "TMU channel 2"
43+
depends on CPU_SH4
44+
help
45+
46+
config STMMAC_RTC_TIMER
47+
bool "Real time clock"
48+
depends on RTC_CLASS
49+
help
50+
51+
endchoice
52+
53+
endif

drivers/net/stmmac/Makefile

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
obj-$(CONFIG_STMMAC_ETH) += stmmac.o
2+
stmmac-$(CONFIG_STMMAC_TIMER) += stmmac_timer.o
3+
stmmac-objs:= stmmac_main.o stmmac_ethtool.o stmmac_mdio.o \
4+
mac100.o gmac.o $(stmmac-y)

0 commit comments

Comments
 (0)