kernel: package Broadcom BNX2X driver
[oweals/openwrt.git] / package / kernel / linux / modules / netdevices.mk
1 #
2 # Copyright (C) 2006-2011 OpenWrt.org
3 #
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
6 #
7
8 NETWORK_DEVICES_MENU:=Network Devices
9
10 define KernelPackage/sis190
11   SUBMENU:=$(NETWORK_DEVICES_MENU)
12   TITLE:=SiS 190 Fast/Gigabit Ethernet support
13   DEPENDS:=@PCI_SUPPORT +kmod-mii
14   KCONFIG:=CONFIG_SIS190
15   FILES:=$(LINUX_DIR)/drivers/net/ethernet/sis/sis190.ko
16   AUTOLOAD:=$(call AutoProbe,sis190)
17 endef
18
19 $(eval $(call KernelPackage,sis190))
20
21
22 define KernelPackage/skge
23   SUBMENU:=$(NETWORK_DEVICES_MENU)
24   TITLE:=SysKonnect Yukon support
25   DEPENDS:=@PCI_SUPPORT
26   KCONFIG:=CONFIG_SKGE \
27         CONFIG_SKGE_DEBUG=n \
28         CONFIG_SKGE_GENESIS=n
29   FILES:=$(LINUX_DIR)/drivers/net/ethernet/marvell/skge.ko
30   AUTOLOAD:=$(call AutoProbe,skge)
31 endef
32
33 $(eval $(call KernelPackage,skge))
34
35
36 define KernelPackage/atl2
37   SUBMENU:=$(NETWORK_DEVICES_MENU)
38   TITLE:=Atheros L2 Fast Ethernet support
39   DEPENDS:=@PCI_SUPPORT
40   KCONFIG:=CONFIG_ATL2
41   FILES:=$(LINUX_DIR)/drivers/net/ethernet/atheros/atlx/atl2.ko
42   AUTOLOAD:=$(call AutoProbe,atl2)
43 endef
44
45 $(eval $(call KernelPackage,atl2))
46
47
48 define KernelPackage/atl1
49   SUBMENU:=$(NETWORK_DEVICES_MENU)
50   TITLE:=Atheros L1 Gigabit Ethernet support
51   DEPENDS:=@PCI_SUPPORT +kmod-mii
52   KCONFIG:=CONFIG_ATL1
53   FILES:=$(LINUX_DIR)/drivers/net/ethernet/atheros/atlx/atl1.ko
54   AUTOLOAD:=$(call AutoProbe,atl1)
55 endef
56
57 $(eval $(call KernelPackage,atl1))
58
59
60 define KernelPackage/atl1c
61   SUBMENU:=$(NETWORK_DEVICES_MENU)
62   TITLE:=Atheros L1C
63   DEPENDS:=@PCI_SUPPORT
64   KCONFIG:=CONFIG_ATL1C
65   FILES:=$(LINUX_DIR)/drivers/net/ethernet/atheros/atl1c/atl1c.ko
66   AUTOLOAD:=$(call AutoProbe,atl1c)
67 endef
68
69 $(eval $(call KernelPackage,atl1c))
70
71
72 define KernelPackage/atl1e
73   SUBMENU:=$(NETWORK_DEVICES_MENU)
74   TITLE:=Atheros L1E
75   DEPENDS:=@PCI_SUPPORT
76   KCONFIG:=CONFIG_ATL1E
77   FILES:=$(LINUX_DIR)/drivers/net/ethernet/atheros/atl1e/atl1e.ko
78   AUTOLOAD:=$(call AutoProbe,atl1e)
79 endef
80
81 $(eval $(call KernelPackage,atl1e))
82
83
84 define KernelPackage/libphy
85   SUBMENU:=$(NETWORK_DEVICES_MENU)
86   TITLE:=PHY library
87   KCONFIG:=CONFIG_PHYLIB
88   FILES:=$(LINUX_DIR)/drivers/net/phy/libphy.ko
89   AUTOLOAD:=$(call AutoLoad,15,libphy,1)
90 endef
91
92 define KernelPackage/libphy/description
93  PHY library
94 endef
95
96 $(eval $(call KernelPackage,libphy))
97
98 define KernelPackage/mii
99   SUBMENU:=$(NETWORK_DEVICES_MENU)
100   TITLE:=MII library
101   KCONFIG:=CONFIG_MII
102   FILES:=$(LINUX_DIR)/drivers/net/mii.ko
103   AUTOLOAD:=$(call AutoLoad,15,mii,1)
104 endef
105
106 define KernelPackage/mii/description
107   MII library
108 endef
109
110 $(eval $(call KernelPackage,mii))
111
112
113 define KernelPackage/mdio-gpio
114   SUBMENU:=$(NETWORK_DEVICES_MENU)
115   TITLE:= Supports GPIO lib-based MDIO busses
116   DEPENDS:=+kmod-libphy @GPIO_SUPPORT +(TARGET_armvirt||TARGET_brcm2708_bcm2708||TARGET_samsung||TARGET_tegra):kmod-of-mdio
117   KCONFIG:= \
118         CONFIG_MDIO_BITBANG \
119         CONFIG_MDIO_GPIO
120   FILES:= \
121         $(LINUX_DIR)/drivers/net/phy/mdio-gpio.ko \
122         $(LINUX_DIR)/drivers/net/phy/mdio-bitbang.ko
123   AUTOLOAD:=$(call AutoProbe,mdio-gpio)
124 endef
125
126 define KernelPackage/mdio-gpio/description
127  Supports GPIO lib-based MDIO busses
128 endef
129
130 $(eval $(call KernelPackage,mdio-gpio))
131
132
133 define KernelPackage/et131x
134   SUBMENU:=$(NETWORK_DEVICES_MENU)
135   TITLE:=Agere ET131x Gigabit Ethernet driver
136   URL:=http://sourceforge.net/projects/et131x
137   FILES:= \
138         $(LINUX_DIR)/drivers/net/ethernet/agere/et131x.ko
139   KCONFIG:= \
140         CONFIG_ET131X \
141         CONFIG_ET131X_DEBUG=n
142   DEPENDS:=@PCI_SUPPORT +kmod-libphy
143   AUTOLOAD:=$(call AutoProbe,et131x)
144 endef
145
146 define KernelPackage/et131x/description
147  This package contains the et131x kernel module
148 endef
149
150 $(eval $(call KernelPackage,et131x))
151
152
153 define KernelPackage/phylib-broadcom
154    SUBMENU:=$(NETWORK_DEVICES_MENU)
155    TITLE:=Broadcom Ethernet PHY library
156    KCONFIG:=CONFIG_BCM_NET_PHYLIB
157    HIDDEN:=1
158    DEPENDS:=+kmod-libphy
159    FILES:=$(LINUX_DIR)/drivers/net/phy/bcm-phy-lib.ko
160    AUTOLOAD:=$(call AutoLoad,17,bcm-phy-lib)
161 endef
162
163 $(eval $(call KernelPackage,phylib-broadcom))
164
165
166 define KernelPackage/phy-broadcom
167    SUBMENU:=$(NETWORK_DEVICES_MENU)
168    TITLE:=Broadcom Ethernet PHY driver
169    KCONFIG:=CONFIG_BROADCOM_PHY
170    DEPENDS:=+kmod-libphy +kmod-phylib-broadcom
171    FILES:=$(LINUX_DIR)/drivers/net/phy/broadcom.ko
172    AUTOLOAD:=$(call AutoLoad,18,broadcom,1)
173 endef
174
175 define KernelPackage/phy-broadcom/description
176    Currently supports the BCM5411, BCM5421, BCM5461, BCM5464, BCM5481,
177    BCM5482 and BCM57780 PHYs.
178 endef
179
180 $(eval $(call KernelPackage,phy-broadcom))
181
182
183 define KernelPackage/phy-realtek
184    SUBMENU:=$(NETWORK_DEVICES_MENU)
185    TITLE:=Realtek Ethernet PHY driver
186    KCONFIG:=CONFIG_REALTEK_PHY
187    DEPENDS:=+kmod-libphy
188    FILES:=$(LINUX_DIR)/drivers/net/phy/realtek.ko
189    AUTOLOAD:=$(call AutoLoad,18,realtek,1)
190 endef
191
192 define KernelPackage/phy-realtek/description
193    Supports the Realtek 821x PHY.
194 endef
195
196 $(eval $(call KernelPackage,phy-realtek))
197
198
199 define KernelPackage/swconfig
200   SUBMENU:=$(NETWORK_DEVICES_MENU)
201   TITLE:=switch configuration API
202   DEPENDS:=+kmod-libphy
203   KCONFIG:=CONFIG_SWCONFIG
204   FILES:=$(LINUX_DIR)/drivers/net/phy/swconfig.ko
205   AUTOLOAD:=$(call AutoLoad,41,swconfig)
206 endef
207
208 define KernelPackage/swconfig/description
209  Switch configuration API module
210 endef
211
212 $(eval $(call KernelPackage,swconfig))
213
214 define KernelPackage/switch-mvsw61xx
215   SUBMENU:=$(NETWORK_DEVICES_MENU)
216   TITLE:=Marvell 88E61xx switch support
217   DEPENDS:=+kmod-swconfig
218   KCONFIG:=CONFIG_MVSW61XX_PHY
219   FILES:=$(LINUX_DIR)/drivers/net/phy/mvsw61xx.ko
220   AUTOLOAD:=$(call AutoLoad,42,mvsw61xx)
221 endef
222
223 define KernelPackage/switch-mvsw61xx/description
224  Marvell 88E61xx switch support
225 endef
226
227 $(eval $(call KernelPackage,switch-mvsw61xx))
228
229 define KernelPackage/switch-ip17xx
230   SUBMENU:=$(NETWORK_DEVICES_MENU)
231   TITLE:=IC+ IP17XX switch support
232   DEPENDS:=+kmod-swconfig
233   KCONFIG:=CONFIG_IP17XX_PHY
234   FILES:=$(LINUX_DIR)/drivers/net/phy/ip17xx.ko
235   AUTOLOAD:=$(call AutoLoad,42,ip17xx)
236 endef
237
238 define KernelPackage/switch-ip17xx/description
239  IC+ IP175C/IP178C switch support
240 endef
241
242 $(eval $(call KernelPackage,switch-ip17xx))
243
244
245 define KernelPackage/switch-rtl8306
246   SUBMENU:=$(NETWORK_DEVICES_MENU)
247   TITLE:=Realtek RTL8306S switch support
248   DEPENDS:=+kmod-swconfig
249   KCONFIG:=CONFIG_RTL8306_PHY
250   FILES:=$(LINUX_DIR)/drivers/net/phy/rtl8306.ko
251   AUTOLOAD:=$(call AutoLoad,43,rtl8306)
252 endef
253
254 define KernelPackage/switch-rtl8306/description
255  Realtek RTL8306S switch support
256 endef
257
258 $(eval $(call KernelPackage,switch-rtl8306))
259
260
261 define KernelPackage/switch-rtl8366-smi
262   SUBMENU:=$(NETWORK_DEVICES_MENU)
263   TITLE:=Realtek RTL8366 SMI switch interface support
264   DEPENDS:=@GPIO_SUPPORT +kmod-swconfig +(TARGET_armvirt||TARGET_brcm2708_bcm2708||TARGET_samsung||TARGET_tegra):kmod-of-mdio
265   KCONFIG:=CONFIG_RTL8366_SMI
266   FILES:=$(LINUX_DIR)/drivers/net/phy/rtl8366_smi.ko
267   AUTOLOAD:=$(call AutoLoad,42,rtl8366_smi)
268 endef
269
270 define KernelPackage/switch-rtl8366_smi/description
271   Realtek RTL8366 series SMI switch interface support
272 endef
273
274 $(eval $(call KernelPackage,switch-rtl8366-smi))
275
276
277 define KernelPackage/switch-rtl8366rb
278   SUBMENU:=$(NETWORK_DEVICES_MENU)
279   TITLE:=Realtek RTL8366RB switch support
280   DEPENDS:=+kmod-switch-rtl8366-smi
281   KCONFIG:=CONFIG_RTL8366RB_PHY
282   FILES:=$(LINUX_DIR)/drivers/net/phy/rtl8366rb.ko
283   AUTOLOAD:=$(call AutoLoad,43,rtl8366rb)
284 endef
285
286 define KernelPackage/switch-rtl8366rb/description
287  Realtek RTL8366RB switch support
288 endef
289
290 $(eval $(call KernelPackage,switch-rtl8366rb))
291
292
293 define KernelPackage/switch-rtl8366s
294   SUBMENU:=$(NETWORK_DEVICES_MENU)
295   TITLE:=Realtek RTL8366S switch support
296   DEPENDS:=+kmod-switch-rtl8366-smi
297   KCONFIG:=CONFIG_RTL8366S_PHY
298   FILES:=$(LINUX_DIR)/drivers/net/phy/rtl8366s.ko
299   AUTOLOAD:=$(call AutoLoad,43,rtl8366s)
300 endef
301
302 define KernelPackage/switch-rtl8366s/description
303  Realtek RTL8366S switch support
304 endef
305
306 $(eval $(call KernelPackage,switch-rtl8366s))
307
308
309 define KernelPackage/switch-rtl8367b
310   SUBMENU:=$(NETWORK_DEVICES_MENU)
311   TITLE:=Realtek RTL8367R/B switch support
312   DEPENDS:=+kmod-switch-rtl8366-smi
313   KCONFIG:=CONFIG_RTL8367B_PHY
314   FILES:=$(LINUX_DIR)/drivers/net/phy/rtl8367b.ko
315   AUTOLOAD:=$(call AutoLoad,43,rtl8367b)
316 endef
317
318 define KernelPackage/switch-rtl8367b/description
319  Realtek RTL8367R/B switch support
320 endef
321
322 $(eval $(call KernelPackage,switch-rtl8367b))
323
324
325 define KernelPackage/natsemi
326   SUBMENU:=$(NETWORK_DEVICES_MENU)
327   TITLE:=National Semiconductor DP8381x series
328   DEPENDS:=@PCI_SUPPORT
329   KCONFIG:=CONFIG_NATSEMI
330   FILES:=$(LINUX_DIR)/drivers/net/ethernet/natsemi/natsemi.ko
331   AUTOLOAD:=$(call AutoLoad,20,natsemi)
332 endef
333
334 define KernelPackage/natsemi/description
335  Kernel modules for National Semiconductor DP8381x series PCI Ethernet
336  adapters.
337 endef
338
339 $(eval $(call KernelPackage,natsemi))
340
341
342 define KernelPackage/r6040
343   SUBMENU:=$(NETWORK_DEVICES_MENU)
344   TITLE:=RDC Fast-Ethernet support
345   DEPENDS:=@PCI_SUPPORT +kmod-libphy
346   KCONFIG:=CONFIG_R6040 \
347                 CONFIG_R6040_NAPI=y
348   FILES:=$(LINUX_DIR)/drivers/net/ethernet/rdc/r6040.ko
349   AUTOLOAD:=$(call AutoProbe,r6040)
350 endef
351
352 define KernelPackage/r6040/description
353  Kernel modules for RDC Fast-Ethernet adapters.
354 endef
355
356 $(eval $(call KernelPackage,r6040))
357
358
359 define KernelPackage/niu
360   SUBMENU:=$(NETWORK_DEVICES_MENU)
361   TITLE:=Sun Neptune 10Gbit Ethernet support
362   DEPENDS:=@PCI_SUPPORT
363   KCONFIG:=CONFIG_NIU
364   FILES:=$(LINUX_DIR)/drivers/net/ethernet/sun/niu.ko
365   AUTOLOAD:=$(call AutoProbe,niu)
366 endef
367
368 define KernelPackage/niu/description
369  This enables support for cards based upon Sun's Neptune chipset.
370 endef
371
372 $(eval $(call KernelPackage,niu))
373
374
375 define KernelPackage/sis900
376   SUBMENU:=$(NETWORK_DEVICES_MENU)
377   TITLE:=SiS 900 Ethernet support
378   DEPENDS:=@PCI_SUPPORT +kmod-mii
379   KCONFIG:=CONFIG_SIS900
380   FILES:=$(LINUX_DIR)/drivers/net/ethernet/sis/sis900.ko
381   AUTOLOAD:=$(call AutoProbe,sis900)
382 endef
383
384 define KernelPackage/sis900/description
385  Kernel modules for Sis 900 Ethernet adapters.
386 endef
387
388 $(eval $(call KernelPackage,sis900))
389
390
391 define KernelPackage/sky2
392   SUBMENU:=$(NETWORK_DEVICES_MENU)
393   TITLE:=SysKonnect Yukon2 support
394   DEPENDS:=@PCI_SUPPORT
395   KCONFIG:=CONFIG_SKY2
396   FILES:=$(LINUX_DIR)/drivers/net/ethernet/marvell/sky2.ko
397   AUTOLOAD:=$(call AutoProbe,sky2)
398 endef
399
400 define KernelPackage/sky2/description
401   This driver supports Gigabit Ethernet adapters based on the
402   Marvell Yukon 2 chipset:
403   Marvell 88E8021/88E8022/88E8035/88E8036/88E8038/88E8050/88E8052/
404   88E8053/88E8055/88E8061/88E8062, SysKonnect SK-9E21D/SK-9S21
405
406   There is companion driver for the older Marvell Yukon and
407   Genesis based adapters: skge.
408 endef
409
410 $(eval $(call KernelPackage,sky2))
411
412
413 define KernelPackage/via-rhine
414   SUBMENU:=$(NETWORK_DEVICES_MENU)
415   TITLE:=Via Rhine ethernet support
416   DEPENDS:=@PCI_SUPPORT +kmod-mii
417   KCONFIG:=CONFIG_VIA_RHINE \
418     CONFIG_VIA_RHINE_MMIO=y
419   FILES:=$(LINUX_DIR)/drivers/net/ethernet/via/via-rhine.ko
420   AUTOLOAD:=$(call AutoProbe,via-rhine)
421 endef
422
423 define KernelPackage/via-rhine/description
424  Kernel modules for Via Rhine Ethernet chipsets
425 endef
426
427 $(eval $(call KernelPackage,via-rhine))
428
429
430 define KernelPackage/via-velocity
431   SUBMENU:=$(NETWORK_DEVICES_MENU)
432   TITLE:=VIA Velocity Gigabit Ethernet Adapter kernel support
433   DEPENDS:=@PCI_SUPPORT +kmod-lib-crc-ccitt
434   KCONFIG:=CONFIG_VIA_VELOCITY
435   FILES:=$(LINUX_DIR)/drivers/net/ethernet/via/via-velocity.ko
436   AUTOLOAD:=$(call AutoProbe,via-velocity)
437 endef
438
439 define KernelPackage/via-velocity/description
440  Kernel modules for VIA Velocity Gigabit Ethernet chipsets
441 endef
442
443 $(eval $(call KernelPackage,via-velocity))
444
445
446 define KernelPackage/8139too
447   SUBMENU:=$(NETWORK_DEVICES_MENU)
448   TITLE:=RealTek RTL-8139 PCI Fast Ethernet Adapter kernel support
449   DEPENDS:=@PCI_SUPPORT +kmod-mii
450   KCONFIG:=CONFIG_8139TOO \
451     CONFIG_8139TOO_PIO=y \
452     CONFIG_8139TOO_TUNE_TWISTER=n \
453     CONFIG_8139TOO_8129=n \
454     CONFIG_8139_OLD_RX_RESET=n
455   FILES:=$(LINUX_DIR)/drivers/net/ethernet/realtek/8139too.ko
456   AUTOLOAD:=$(call AutoProbe,8139too)
457 endef
458
459 define KernelPackage/8139too/description
460  Kernel modules for RealTek RTL-8139 PCI Fast Ethernet adapters
461 endef
462
463 $(eval $(call KernelPackage,8139too))
464
465
466 define KernelPackage/8139cp
467   SUBMENU:=$(NETWORK_DEVICES_MENU)
468   TITLE:=RealTek RTL-8139C+ PCI Fast Ethernet Adapter kernel support
469   DEPENDS:=@PCI_SUPPORT +kmod-mii
470   KCONFIG:=CONFIG_8139CP
471   FILES:=$(LINUX_DIR)/drivers/net/ethernet/realtek/8139cp.ko
472   AUTOLOAD:=$(call AutoProbe,8139cp)
473 endef
474
475 define KernelPackage/8139cp/description
476  Kernel module for RealTek RTL-8139C+ PCI Fast Ethernet adapters
477 endef
478
479 $(eval $(call KernelPackage,8139cp))
480
481
482 define KernelPackage/r8169
483   SUBMENU:=$(NETWORK_DEVICES_MENU)
484   TITLE:=RealTek RTL-8169 PCI Gigabit Ethernet Adapter kernel support
485   DEPENDS:=@PCI_SUPPORT +kmod-mii +r8169-firmware +LINUX_4_19:kmod-phy-realtek
486   KCONFIG:=CONFIG_R8169 \
487     CONFIG_R8169_NAPI=y \
488     CONFIG_R8169_VLAN=n
489   FILES:=$(LINUX_DIR)/drivers/net/ethernet/realtek/r8169.ko
490   AUTOLOAD:=$(call AutoProbe,r8169)
491 endef
492
493 define KernelPackage/r8169/description
494  Kernel modules for RealTek RTL-8169 PCI Gigabit Ethernet adapters
495 endef
496
497 $(eval $(call KernelPackage,r8169))
498
499
500 define KernelPackage/ne2k-pci
501   SUBMENU:=$(NETWORK_DEVICES_MENU)
502   TITLE:=ne2k-pci Ethernet Adapter kernel support
503   DEPENDS:=@PCI_SUPPORT
504   KCONFIG:=CONFIG_NE2K_PCI
505   FILES:= \
506         $(LINUX_DIR)/drivers/net/ethernet/8390/ne2k-pci.ko \
507         $(LINUX_DIR)/drivers/net/ethernet/8390/8390.ko
508   AUTOLOAD:=$(call AutoProbe,8390 ne2k-pci)
509 endef
510
511 define KernelPackage/ne2k-pci/description
512  Kernel modules for NE2000 PCI Ethernet Adapter kernel
513 endef
514
515 $(eval $(call KernelPackage,ne2k-pci))
516
517
518 define KernelPackage/e100
519   SUBMENU:=$(NETWORK_DEVICES_MENU)
520   TITLE:=Intel(R) PRO/100+ cards kernel support
521   DEPENDS:=@PCI_SUPPORT +kmod-mii +e100-firmware
522   KCONFIG:=CONFIG_E100
523   FILES:=$(LINUX_DIR)/drivers/net/ethernet/intel/e100.ko
524   AUTOLOAD:=$(call AutoProbe,e100)
525 endef
526
527 define KernelPackage/e100/description
528  Kernel modules for Intel(R) PRO/100+ Ethernet adapters
529 endef
530
531 $(eval $(call KernelPackage,e100))
532
533
534 define KernelPackage/e1000
535   SUBMENU:=$(NETWORK_DEVICES_MENU)
536   TITLE:=Intel(R) PRO/1000 PCI cards kernel support
537   DEPENDS:=@PCI_SUPPORT
538   KCONFIG:=CONFIG_E1000 \
539     CONFIG_E1000_DISABLE_PACKET_SPLIT=n \
540     CONFIG_E1000_NAPI=y
541   FILES:=$(LINUX_DIR)/drivers/net/ethernet/intel/e1000/e1000.ko
542   AUTOLOAD:=$(call AutoLoad,35,e1000)
543 endef
544
545 define KernelPackage/e1000/description
546  Kernel modules for Intel(R) PRO/1000 PCI Ethernet adapters.
547 endef
548
549 $(eval $(call KernelPackage,e1000))
550
551
552 define KernelPackage/e1000e
553   SUBMENU:=$(NETWORK_DEVICES_MENU)
554   TITLE:=Intel(R) PRO/1000 PCIe cards kernel support
555   DEPENDS:=@PCIE_SUPPORT +kmod-ptp
556   KCONFIG:=CONFIG_E1000E
557   FILES:=$(LINUX_DIR)/drivers/net/ethernet/intel/e1000e/e1000e.ko
558   AUTOLOAD:=$(call AutoProbe,e1000e)
559   MODPARAMS.e1000e:= \
560     IntMode=1 \
561     InterruptThrottleRate=4,4,4,4,4,4,4,4
562 endef
563
564 define KernelPackage/e1000e/description
565  Kernel modules for Intel(R) PRO/1000 PCIe Ethernet adapters.
566 endef
567
568 $(eval $(call KernelPackage,e1000e))
569
570
571 define KernelPackage/igb
572   SUBMENU:=$(NETWORK_DEVICES_MENU)
573   TITLE:=Intel(R) 82575/82576 PCI-Express Gigabit Ethernet support
574   DEPENDS:=@PCI_SUPPORT +kmod-i2c-core +kmod-i2c-algo-bit +kmod-ptp +kmod-hwmon-core
575   KCONFIG:=CONFIG_IGB \
576     CONFIG_IGB_HWMON=y \
577     CONFIG_IGB_DCA=n
578   FILES:=$(LINUX_DIR)/drivers/net/ethernet/intel/igb/igb.ko
579   AUTOLOAD:=$(call AutoLoad,35,igb)
580 endef
581
582 define KernelPackage/igb/description
583  Kernel modules for Intel(R) 82575/82576 PCI-Express Gigabit Ethernet adapters.
584 endef
585
586 $(eval $(call KernelPackage,igb))
587
588
589 define KernelPackage/igbvf
590   SUBMENU:=$(NETWORK_DEVICES_MENU)
591   TITLE:=Intel(R) 82576 Virtual Function Ethernet support
592   DEPENDS:=@PCI_SUPPORT @TARGET_x86 +kmod-i2c-core +kmod-i2c-algo-bit +kmod-ptp
593   KCONFIG:=CONFIG_IGBVF \
594     CONFIG_IGB_HWMON=y \
595     CONFIG_IGB_DCA=n
596   FILES:=$(LINUX_DIR)/drivers/net/ethernet/intel/igbvf/igbvf.ko
597   AUTOLOAD:=$(call AutoLoad,35,igbvf)
598 endef
599
600 define KernelPackage/igbvf/description
601  Kernel modules for Intel(R) 82576 Virtual Function Ethernet adapters.
602 endef
603
604 $(eval $(call KernelPackage,igbvf))
605
606
607 define KernelPackage/ixgbe
608   SUBMENU:=$(NETWORK_DEVICES_MENU)
609   TITLE:=Intel(R) 82598/82599 PCI-Express 10 Gigabit Ethernet support
610   DEPENDS:=@PCI_SUPPORT +kmod-mdio +kmod-ptp +kmod-hwmon-core
611   KCONFIG:=CONFIG_IXGBE \
612     CONFIG_IXGBE_VXLAN=n \
613     CONFIG_IXGBE_HWMON=y \
614     CONFIG_IXGBE_DCA=n
615   FILES:=$(LINUX_DIR)/drivers/net/ethernet/intel/ixgbe/ixgbe.ko
616   AUTOLOAD:=$(call AutoLoad,35,ixgbe)
617 endef
618
619 define KernelPackage/ixgbe/description
620  Kernel modules for Intel(R) 82598/82599 PCI-Express 10 Gigabit Ethernet adapters.
621 endef
622
623 $(eval $(call KernelPackage,ixgbe))
624
625
626 define KernelPackage/ixgbevf
627   SUBMENU:=$(NETWORK_DEVICES_MENU)
628   TITLE:=Intel(R) 82599 Virtual Function Ethernet support
629   DEPENDS:=@PCI_SUPPORT +kmod-ixgbe
630   KCONFIG:=CONFIG_IXGBEVF \
631     CONFIG_IXGBE_VXLAN=n \
632     CONFIG_IXGBE_HWMON=y \
633     CONFIG_IXGBE_DCA=n
634   FILES:=$(LINUX_DIR)/drivers/net/ethernet/intel/ixgbevf/ixgbevf.ko
635   AUTOLOAD:=$(call AutoLoad,35,ixgbevf)
636 endef
637
638 define KernelPackage/ixgbevf/description
639  Kernel modules for Intel(R) 82599 Virtual Function Ethernet adapters.
640 endef
641
642 $(eval $(call KernelPackage,ixgbevf))
643
644
645 define KernelPackage/b44
646   TITLE:=Broadcom 44xx driver
647   KCONFIG:=CONFIG_B44
648   DEPENDS:=@PCI_SUPPORT @!TARGET_brcm47xx_mips74k +!TARGET_brcm47xx:kmod-ssb +kmod-mii +kmod-libphy
649   SUBMENU:=$(NETWORK_DEVICES_MENU)
650   FILES:=$(LINUX_DIR)/drivers/net/ethernet/broadcom/b44.ko
651   AUTOLOAD:=$(call AutoLoad,19,b44,1)
652 endef
653
654 define KernelPackage/b44/description
655  Kernel modules for Broadcom 44xx Ethernet adapters.
656 endef
657
658 $(eval $(call KernelPackage,b44))
659
660
661 define KernelPackage/3c59x
662   SUBMENU:=$(NETWORK_DEVICES_MENU)
663   TITLE:=3Com 3c590/3c900 series (592/595/597) Vortex/Boomerang
664   DEPENDS:=@PCI_SUPPORT +kmod-mii
665   KCONFIG:=CONFIG_VORTEX
666   FILES:=$(LINUX_DIR)/drivers/net/ethernet/3com/3c59x.ko
667   AUTOLOAD:=$(call AutoProbe,3c59x)
668 endef
669
670 define KernelPackage/3c59x/description
671  This option enables driver support for a large number of 10mbps and
672  10/100mbps EISA, PCI and PCMCIA 3Com Ethernet adapters:
673  - "Vortex"    (Fast EtherLink 3c590/3c592/3c595/3c597) EISA and PCI
674  - "Boomerang" (EtherLink XL 3c900 or 3c905)            PCI
675  - "Cyclone"   (3c540/3c900/3c905/3c980/3c575/3c656)    PCI and Cardbus
676  - "Tornado"   (3c905)                                  PCI
677  - "Hurricane" (3c555/3cSOHO)                           PCI
678 endef
679
680 $(eval $(call KernelPackage,3c59x))
681
682
683 define KernelPackage/pcnet32
684   SUBMENU:=$(NETWORK_DEVICES_MENU)
685   TITLE:=AMD PCnet32 PCI support
686   DEPENDS:=@(PCI_SUPPORT||TARGET_malta) +kmod-mii
687   KCONFIG:=CONFIG_PCNET32
688   FILES:=$(LINUX_DIR)/drivers/net/ethernet/amd/pcnet32.ko
689   AUTOLOAD:=$(call AutoProbe,pcnet32)
690 endef
691
692 define KernelPackage/pcnet32/description
693  Kernel modules for AMD PCnet32 Ethernet adapters
694 endef
695
696 $(eval $(call KernelPackage,pcnet32))
697
698
699 define KernelPackage/tg3
700   TITLE:=Broadcom Tigon3 Gigabit Ethernet
701   KCONFIG:=CONFIG_TIGON3 \
702         CONFIG_TIGON3_HWMON=n
703   DEPENDS:=+!TARGET_brcm47xx:kmod-libphy +LINUX_4_9:kmod-hwmon-core +kmod-ptp
704   SUBMENU:=$(NETWORK_DEVICES_MENU)
705   FILES:=$(LINUX_DIR)/drivers/net/ethernet/broadcom/tg3.ko
706   AUTOLOAD:=$(call AutoLoad,19,tg3,1)
707 endef
708
709 define KernelPackage/tg3/description
710  Kernel modules for Broadcom Tigon3 Gigabit Ethernet adapters
711 endef
712
713 $(eval $(call KernelPackage,tg3))
714
715
716 define KernelPackage/hfcpci
717   TITLE:=HFC PCI cards (single port) support for mISDN
718   KCONFIG:=CONFIG_MISDN_HFCPCI
719   DEPENDS:=+kmod-misdn
720   SUBMENU:=$(NETWORK_DEVICES_MENU)
721   FILES:=$(LINUX_DIR)/drivers/isdn/hardware/mISDN/hfcpci.ko
722   AUTOLOAD:=$(call AutoLoad,31,hfcpci)
723 endef
724
725 define KernelPackage/hfcpci/description
726  Kernel modules for Cologne AG's HFC pci cards (single port)
727  using the mISDN V2 stack
728 endef
729
730 $(eval $(call KernelPackage,hfcpci))
731
732
733 define KernelPackage/hfcmulti
734   TITLE:=HFC multiport cards (HFC-4S/8S/E1) support for mISDN
735   KCONFIG:=CONFIG_MISDN_HFCMULTI
736   DEPENDS:=+kmod-misdn
737   SUBMENU:=$(NETWORK_DEVICES_MENU)
738   FILES:=$(LINUX_DIR)/drivers/isdn/hardware/mISDN/hfcmulti.ko
739   AUTOLOAD:=$(call AutoLoad,31,hfcmulti)
740 endef
741
742 define KernelPackage/hfcmulti/description
743  Kernel modules for Cologne AG's HFC multiport cards (HFC-4S/8S/E1)
744  using the mISDN V2 stack
745 endef
746
747 $(eval $(call KernelPackage,hfcmulti))
748
749
750 define KernelPackage/gigaset
751   SUBMENU:=$(NETWORK_DEVICES_MENU)
752   TITLE:=Siemens Gigaset support for isdn4linux
753   DEPENDS:=@USB_SUPPORT +kmod-isdn4linux +kmod-lib-crc-ccitt +kmod-usb-core
754   URL:=http://gigaset307x.sourceforge.net/
755   KCONFIG:= \
756     CONFIG_ISDN_DRV_GIGASET \
757     CONFIG_GIGASET_BASE \
758     CONFIG_GIGASET_M101 \
759     CONFIG_GIGASET_M105 \
760     CONFIG_GIGASET_UNDOCREQ=y \
761     CONFIG_GIGASET_I4L=y
762   FILES:= \
763     $(LINUX_DIR)/drivers/isdn/gigaset/gigaset.ko \
764     $(LINUX_DIR)/drivers/isdn/gigaset/bas_gigaset.ko \
765     $(LINUX_DIR)/drivers/isdn/gigaset/ser_gigaset.ko \
766     $(LINUX_DIR)/drivers/isdn/gigaset/usb_gigaset.ko
767   AUTOLOAD:=$(call AutoProbe,gigaset bas_gigaset ser_gigaset usb_gigaset)
768 endef
769
770 define KernelPackage/gigaset/description
771  This driver supports the Siemens Gigaset SX205/255 family of
772  ISDN DECT bases, including the predecessors Gigaset 3070/3075
773  and 4170/4175 and their T-Com versions Sinus 45isdn and Sinus
774  721X.
775 endef
776
777 $(eval $(call KernelPackage,gigaset))
778
779
780 define KernelPackage/macvlan
781   SUBMENU:=$(NETWORK_DEVICES_MENU)
782   TITLE:=MAC-VLAN support
783   KCONFIG:=CONFIG_MACVLAN
784   FILES:=$(LINUX_DIR)/drivers/net/macvlan.ko
785   AUTOLOAD:=$(call AutoProbe,macvlan)
786 endef
787
788 define KernelPackage/macvlan/description
789  A kernel module which allows one to create virtual interfaces that
790  map packets to or from specific MAC addresses to a particular interface
791 endef
792
793 $(eval $(call KernelPackage,macvlan))
794
795
796 define KernelPackage/tulip
797   TITLE:=Tulip family network device support
798   DEPENDS:=@PCI_SUPPORT +kmod-mii
799   SUBMENU:=$(NETWORK_DEVICES_MENU)
800   KCONFIG:= \
801     CONFIG_NET_TULIP=y \
802     CONFIG_DE2104X \
803     CONFIG_DE2104X_DSL=0 \
804     CONFIG_TULIP \
805     CONFIG_TULIP_MWI=y \
806     CONFIG_TULIP_MMIO=y \
807     CONFIG_TULIP_NAPI=y \
808     CONFIG_TULIP_NAPI_HW_MITIGATION=y \
809     CONFIG_DE4X5=n \
810     CONFIG_WINBOND_840 \
811     CONFIG_DM9102 \
812     CONFIG_ULI526X
813   FILES:= \
814         $(LINUX_DIR)/drivers/net/ethernet/dec/tulip/tulip.ko \
815         $(LINUX_DIR)/drivers/net/ethernet/dec/tulip/de2104x.ko \
816         $(LINUX_DIR)/drivers/net/ethernet/dec/tulip/dmfe.ko \
817         $(LINUX_DIR)/drivers/net/ethernet/dec/tulip/uli526x.ko \
818         $(LINUX_DIR)/drivers/net/ethernet/dec/tulip/winbond-840.ko
819   AUTOLOAD:=$(call AutoProbe,tulip)
820 endef
821
822 define KernelPackage/tulip/description
823  Kernel modules for the Tulip family of network cards,
824  including DECchip Tulip, DIGITAL EtherWORKS, Winbond W89c840,
825  Davicom DM910x/DM980x and ULi M526x controller support.
826 endef
827
828 $(eval $(call KernelPackage,tulip))
829
830
831 define KernelPackage/solos-pci
832   SUBMENU:=$(NETWORK_DEVICES_MENU)
833   TITLE:=Solos ADSL2+ multiport modem
834   DEPENDS:=@PCI_SUPPORT +kmod-atm
835   KCONFIG:=CONFIG_ATM_SOLOS
836   FILES:=$(LINUX_DIR)/drivers/atm/solos-pci.ko
837   AUTOLOAD:=$(call AutoProbe,solos-pci)
838 endef
839
840 define KernelPackage/solos-pci/description
841  Kernel module for Traverse Technologies' Solos PCI cards
842  and Geos ADSL2+ x86 motherboard
843 endef
844
845 $(eval $(call KernelPackage,solos-pci))
846
847
848 define KernelPackage/dummy
849   SUBMENU:=$(NETWORK_DEVICES_MENU)
850   TITLE:=Dummy network device
851   KCONFIG:=CONFIG_DUMMY
852   FILES:=$(LINUX_DIR)/drivers/net/dummy.ko
853   AUTOLOAD:=$(call AutoLoad,34,dummy)
854 endef
855
856 define KernelPackage/dummy/description
857  The dummy network device
858 endef
859
860 $(eval $(call KernelPackage,dummy))
861
862
863 define KernelPackage/ifb
864   SUBMENU:=$(NETWORK_DEVICES_MENU)
865   TITLE:=Intermediate Functional Block support
866   KCONFIG:= \
867         CONFIG_IFB \
868         CONFIG_NET_CLS=y
869   FILES:=$(LINUX_DIR)/drivers/net/ifb.ko
870   AUTOLOAD:=$(call AutoLoad,34,ifb)
871 endef
872
873 define KernelPackage/ifb/description
874   The Intermediate Functional Block
875 endef
876
877 $(eval $(call KernelPackage,ifb))
878
879
880 define KernelPackage/dm9000
881   SUBMENU:=$(NETWORK_DEVICES_MENU)
882   TITLE:=Davicom 9000 Ethernet support
883   DEPENDS:=+kmod-mii
884   KCONFIG:=CONFIG_DM9000 \
885     CONFIG_DM9000_DEBUGLEVEL=4 \
886     CONFIG_DM9000_FORCE_SIMPLE_PHY_POLL=y
887   FILES:=$(LINUX_DIR)/drivers/net/ethernet/davicom/dm9000.ko
888   AUTOLOAD:=$(call AutoLoad,34,dm9000)
889 endef
890
891 define KernelPackage/dm9000/description
892  Kernel driver for Davicom 9000 Ethernet adapters.
893 endef
894
895 $(eval $(call KernelPackage,dm9000))
896
897
898 define KernelPackage/forcedeth
899   SUBMENU:=$(NETWORK_DEVICES_MENU)
900   TITLE:=nForce Ethernet support
901   DEPENDS:=@PCI_SUPPORT
902   KCONFIG:=CONFIG_FORCEDETH
903   FILES:=$(LINUX_DIR)/drivers/net/ethernet/nvidia/forcedeth.ko
904   AUTOLOAD:=$(call AutoProbe,forcedeth)
905 endef
906
907 define KernelPackage/forcedeth/description
908  Kernel driver for Nvidia Ethernet support
909 endef
910
911 $(eval $(call KernelPackage,forcedeth))
912
913 define KernelPackage/of-mdio
914   SUBMENU:=$(NETWORK_DEVICES_MENU)
915   TITLE:=OpenFirmware MDIO support
916   DEPENDS:=+kmod-libphy
917   KCONFIG:=CONFIG_OF_MDIO
918   FILES:= \
919         $(LINUX_DIR)/drivers/net/phy/fixed_phy.ko@ge4.9 \
920         $(LINUX_DIR)/drivers/of/of_mdio.ko
921   AUTOLOAD:=$(call AutoLoad,41,of_mdio)
922 endef
923
924 define KernelPackage/of-mdio/description
925  Kernel driver for OpenFirmware MDIO support
926 endef
927
928 $(eval $(call KernelPackage,of-mdio))
929
930
931 define KernelPackage/vmxnet3
932   SUBMENU:=$(NETWORK_DEVICES_MENU)
933   TITLE:=VMware VMXNET3 ethernet driver
934   DEPENDS:=@PCI_SUPPORT
935   KCONFIG:=CONFIG_VMXNET3
936   FILES:=$(LINUX_DIR)/drivers/net/vmxnet3/vmxnet3.ko
937   AUTOLOAD:=$(call AutoLoad,35,vmxnet3)
938 endef
939
940 define KernelPackage/vmxnet3/description
941  Kernel modules for VMware VMXNET3 ethernet adapters.
942 endef
943
944 $(eval $(call KernelPackage,vmxnet3))
945
946
947 define KernelPackage/spi-ks8995
948   SUBMENU:=$(NETWORK_DEVICES_MENU)
949   TITLE:=Micrel/Kendin KS8995 Ethernet switch control
950   FILES:=$(LINUX_DIR)/drivers/net/phy/spi_ks8995.ko
951   KCONFIG:=CONFIG_MICREL_KS8995MA \
952         CONFIG_SPI=y \
953         CONFIG_SPI_MASTER=y
954   AUTOLOAD:=$(call AutoLoad,50,spi_ks8995)
955 endef
956
957 define KernelPackage/spi-ks8995/description
958   Kernel module for Micrel/Kendin KS8995 ethernet switch
959 endef
960
961 $(eval $(call KernelPackage,spi-ks8995))
962
963
964 define KernelPackage/ethoc
965   SUBMENU:=$(NETWORK_DEVICES_MENU)
966   TITLE:=Opencore.org ethoc driver
967   DEPENDS:=+kmod-libphy
968   FILES:=$(LINUX_DIR)/drivers/net/ethernet/ethoc.ko
969   KCONFIG:=CONFIG_ETHOC
970   AUTOLOAD:=$(call AutoProbe,ethoc)
971 endef
972
973 define KernelPackage/ethoc/description
974   Kernel module for the Opencores.org ethernet adapter
975 endef
976
977 $(eval $(call KernelPackage,ethoc))
978
979
980 define KernelPackage/bnx2
981   SUBMENU:=$(NETWORK_DEVICES_MENU)
982   TITLE:=BCM5706/5708/5709/5716 ethernet adapter driver
983   DEPENDS:=@PCI_SUPPORT +bnx2-firmware
984   FILES:=$(LINUX_DIR)/drivers/net/ethernet/broadcom/bnx2.ko
985   KCONFIG:=CONFIG_BNX2
986   AUTOLOAD:=$(call AutoProbe,bnx2)
987 endef
988
989 define KernelPackage/bnx2/description
990   Kernel module for the BCM5706/5708/5709/5716 ethernet adapter
991 endef
992
993 $(eval $(call KernelPackage,bnx2))
994
995
996 define KernelPackage/bnx2x
997   SUBMENU:=$(NETWORK_DEVICES_MENU)
998   TITLE:=QLogic 5771x/578xx 10/20-Gigabit ethernet adapter driver
999   DEPENDS:=@PCI_SUPPORT +bnx2x-firmware +kmod-lib-crc32c +kmod-mdio +kmod-ptp +kmod-lib-zlib-inflate
1000   FILES:=$(LINUX_DIR)/drivers/net/ethernet/broadcom/bnx2x/bnx2x.ko
1001   KCONFIG:= \
1002         CONFIG_BNX2X \
1003         CONFIG_BNX2X_SRIOV=y
1004   AUTOLOAD:=$(call AutoProbe,bnx2x)
1005 endef
1006
1007 define KernelPackage/bnx2x/description
1008   QLogic BCM57710/57711/57711E/57712/57712_MF/57800/57800_MF/57810/57810_MF/57840/57840_MF Driver
1009 endef
1010
1011 $(eval $(call KernelPackage,bnx2x))