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