[package] kmod-r6040 depends on kmod-libphy
[openwrt.git] / package / kernel / 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:=@TARGET_x86
14   KCONFIG:=CONFIG_SIS190
15   ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),ge,3.2)),1)
16     FILES:=$(LINUX_DIR)/drivers/net/ethernet/sis/sis190.ko
17   else
18     FILES:=$(LINUX_DIR)/drivers/net/sis190.ko
19   endif
20   AUTOLOAD:=$(call AutoLoad,50,sis190)
21 endef
22  
23 $(eval $(call KernelPackage,sis190))
24
25 define KernelPackage/skge
26   SUBMENU:=$(NETWORK_DEVICES_MENU)
27   TITLE:=SysKonnect Yukon support
28   DEPENDS:=@TARGET_x86
29   KCONFIG:=CONFIG_SKGE \
30     CONFIG_SKGE_DEBUG=n
31   ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),ge,3.2)),1)
32     FILES:=$(LINUX_DIR)/drivers/net/ethernet/marvell/skge.ko
33   else
34     FILES:=$(LINUX_DIR)/drivers/net/skge.ko
35   endif
36   AUTOLOAD:=$(call AutoLoad,50,skge)
37 endef
38
39 $(eval $(call KernelPackage,skge))
40
41 define KernelPackage/atl2
42   SUBMENU:=$(NETWORK_DEVICES_MENU)
43   TITLE:=Atheros L2 Fast Ethernet support
44   DEPENDS:=@PCI_SUPPORT
45   KCONFIG:=CONFIG_ATL2
46   ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),ge,3.2)),1)
47     FILES:=$(LINUX_DIR)/drivers/net/ethernet/atheros/atlx/atl2.ko
48   else
49     FILES:=$(LINUX_DIR)/drivers/net/atlx/atl2.ko
50   endif
51   AUTOLOAD:=$(call AutoLoad,50,atl2)
52 endef
53
54 $(eval $(call KernelPackage,atl2))
55
56 define KernelPackage/atl1
57   SUBMENU:=$(NETWORK_DEVICES_MENU)
58   TITLE:=Atheros L1 Gigabit Ethernet support
59   DEPENDS:=@PCI_SUPPORT
60   KCONFIG:=CONFIG_ATL1
61   ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),ge,3.2)),1)
62     FILES:=$(LINUX_DIR)/drivers/net/ethernet/atheros/atlx/atl1.ko
63   else
64     FILES:=$(LINUX_DIR)/drivers/net/atlx/atl1.ko
65   endif
66   AUTOLOAD:=$(call AutoLoad,50,atl1)
67 endef
68
69 $(eval $(call KernelPackage,atl1))
70
71 define KernelPackage/atl1c
72   SUBMENU:=$(NETWORK_DEVICES_MENU)
73   TITLE:=Atheros L1C
74   DEPENDS:=@PCI_SUPPORT
75   KCONFIG:=CONFIG_ATL1C
76   ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),ge,3.2)),1)
77     FILES:=$(LINUX_DIR)/drivers/net/ethernet/atheros/atl1c/atl1c.ko
78   else
79     FILES:=$(LINUX_DIR)/drivers/net/atl1c/atl1c.ko
80   endif
81   AUTOLOAD:=$(call AutoLoad,50,atl1c)
82 endef
83
84 $(eval $(call KernelPackage,atl1c))
85
86 define KernelPackage/atl1e
87   SUBMENU:=$(NETWORK_DEVICES_MENU)
88   TITLE:=Atheros L1E
89   DEPENDS:=@PCI_SUPPORT
90   KCONFIG:=CONFIG_ATL1E
91   ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),ge,3.2)),1)
92     FILES:=$(LINUX_DIR)/drivers/net/ethernet/atheros/atl1e/atl1e.ko
93   else
94     FILES:=$(LINUX_DIR)/drivers/net/atl1e/atl1e.ko
95   endif
96   AUTOLOAD:=$(call AutoLoad,50,atl1e)
97 endef
98
99 $(eval $(call KernelPackage,atl1e))
100
101 define KernelPackage/libphy
102   SUBMENU:=$(NETWORK_DEVICES_MENU)
103   TITLE:=PHY library
104   KCONFIG:=CONFIG_PHYLIB
105   FILES:=$(LINUX_DIR)/drivers/net/phy/libphy.ko
106   AUTOLOAD:=$(call AutoLoad,40,libphy)
107 endef
108
109 define KernelPackage/libphy/description
110   PHY library
111 endef
112
113 $(eval $(call KernelPackage,libphy))
114
115 define KernelPackage/swconfig
116   SUBMENU:=$(NETWORK_DEVICES_MENU)
117   TITLE:=switch configuration API
118   DEPENDS:=+kmod-libphy
119   KCONFIG:=CONFIG_SWCONFIG
120   FILES:=$(LINUX_DIR)/drivers/net/phy/swconfig.ko
121   AUTOLOAD:=$(call AutoLoad,41,swconfig)
122 endef
123
124 define KernelPackage/swconfig/description
125   Switch configuration API module
126 endef
127
128 $(eval $(call KernelPackage,swconfig))
129
130 define KernelPackage/mvswitch
131   SUBMENU:=$(NETWORK_DEVICES_MENU)
132   TITLE:=Marvell 88E6060 switch support
133   DEPENDS:=+kmod-swconfig @!LINUX_3_1&&!LINUX_3_2||BROKEN
134   KCONFIG:=CONFIG_MVSWITCH_PHY
135   FILES:=$(LINUX_DIR)/drivers/net/phy/mvswitch.ko
136   AUTOLOAD:=$(call AutoLoad,41,mvswitch)
137 endef
138
139 define KernelPackage/mvswitch/description
140   Marvell 88E6060 switch support
141 endef
142
143 $(eval $(call KernelPackage,mvswitch))
144
145 define KernelPackage/switch-ip17xx
146   SUBMENU:=$(NETWORK_DEVICES_MENU)
147   TITLE:=IC+ IP17XX switch support
148   DEPENDS:=+kmod-swconfig
149   KCONFIG:=CONFIG_IP17XX_PHY
150   FILES:=$(LINUX_DIR)/drivers/net/phy/ip17xx.ko
151   AUTOLOAD:=$(call AutoLoad,42,ip17xx)
152 endef
153
154 define KernelPackage/switch-ip17xx/description
155   IC+ IP175C/IP178C switch support
156 endef
157
158 $(eval $(call KernelPackage,switch-ip17xx))
159
160 define KernelPackage/natsemi
161   SUBMENU:=$(NETWORK_DEVICES_MENU)
162   TITLE:=National Semiconductor DP8381x series
163   DEPENDS:=@TARGET_x86
164   KCONFIG:=CONFIG_NATSEMI
165   ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),ge,3.2)),1)
166     FILES:=$(LINUX_DIR)/drivers/net/ethernet/natsemi/natsemi.ko
167   else
168     FILES:=$(LINUX_DIR)/drivers/net/natsemi.ko
169   endif
170   AUTOLOAD:=$(call AutoLoad,20,natsemi)
171 endef
172
173 define KernelPackage/natsemi/description
174  Kernel modules for National Semiconductor DP8381x series PCI Ethernet
175  adapters.
176 endef
177
178 $(eval $(call KernelPackage,natsemi))
179
180
181 define KernelPackage/r6040
182   SUBMENU:=$(NETWORK_DEVICES_MENU)
183   TITLE:=RDC Fast-Ethernet support
184   DEPENDS:=@TARGET_rdc +kmod-libphy
185   KCONFIG:=CONFIG_R6040 \
186                 CONFIG_R6040_NAPI=y
187   ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),ge,3.2)),1)
188     FILES:=$(LINUX_DIR)/drivers/net/ethernet/rdc/r6040.ko
189   else
190     FILES:=$(LINUX_DIR)/drivers/net/r6040.ko
191   endif
192   AUTOLOAD:=$(call AutoLoad,99,r6040)
193 endef
194
195 define KernelPackage/r6040/description
196  Kernel modules for RDC Fast-Ethernet adapters.
197 endef
198
199 $(eval $(call KernelPackage,r6040))
200
201
202 define KernelPackage/sis900
203   SUBMENU:=$(NETWORK_DEVICES_MENU)
204   TITLE:=SiS 900 Ethernet support
205   DEPENDS:=@TARGET_x86
206   KCONFIG:=CONFIG_SIS900
207   ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),ge,3.2)),1)
208     FILES:=$(LINUX_DIR)/drivers/net/ethernet/sis/sis900.ko
209   else
210     FILES:=$(LINUX_DIR)/drivers/net/sis900.ko
211   endif
212   AUTOLOAD:=$(call AutoLoad,50,sis900)
213 endef
214
215 define KernelPackage/sis900/description
216  Kernel modules for Sis 900 Ethernet adapters.
217 endef
218
219 $(eval $(call KernelPackage,sis900))
220
221
222 define KernelPackage/sky2
223   SUBMENU:=$(NETWORK_DEVICES_MENU)
224   TITLE:=SysKonnect Yukon2 support
225   KCONFIG:=CONFIG_SKY2
226   ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),ge,3.2)),1)
227     FILES:=$(LINUX_DIR)/drivers/net/ethernet/marvell/sky2.ko
228   else
229     FILES:=$(LINUX_DIR)/drivers/net/sky2.ko
230   endif
231   AUTOLOAD:=$(call AutoLoad,50,sky2)
232 endef
233
234 define KernelPackage/sky2/description
235   This driver supports Gigabit Ethernet adapters based on the
236   Marvell Yukon 2 chipset:
237   Marvell 88E8021/88E8022/88E8035/88E8036/88E8038/88E8050/88E8052/
238   88E8053/88E8055/88E8061/88E8062, SysKonnect SK-9E21D/SK-9S21
239
240   There is companion driver for the older Marvell Yukon and
241   Genesis based adapters: skge.
242 endef
243
244 $(eval $(call KernelPackage,sky2))
245
246
247 define KernelPackage/via-rhine
248   SUBMENU:=$(NETWORK_DEVICES_MENU)
249   TITLE:=Via Rhine ethernet support
250   DEPENDS:=@TARGET_x86
251   KCONFIG:=CONFIG_VIA_RHINE \
252     CONFIG_VIA_RHINE_MMIO=y
253   ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),ge,3.2)),1)
254     FILES:=$(LINUX_DIR)/drivers/net/ethernet/via/via-rhine.ko
255   else
256     FILES:=$(LINUX_DIR)/drivers/net/via-rhine.ko
257   endif
258   AUTOLOAD:=$(call AutoLoad,50,via-rhine)
259 endef
260
261 define KernelPackage/via-rhine/description
262  Kernel modules for Via Rhine Ethernet chipsets.
263 endef
264
265 $(eval $(call KernelPackage,via-rhine))
266
267
268 define KernelPackage/via-velocity
269   SUBMENU:=$(NETWORK_DEVICES_MENU)
270   TITLE:=VIA Velocity Gigabit Ethernet Adapter kernel support
271   DEPENDS:=@TARGET_ixp4xx||TARGET_mpc83xx||TARGET_x86 +kmod-lib-crc-ccitt
272   KCONFIG:=CONFIG_VIA_VELOCITY
273   ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),ge,3.2)),1)
274     FILES:=$(LINUX_DIR)/drivers/net/ethernet/via/via-velocity.ko
275   else
276     FILES:=$(LINUX_DIR)/drivers/net/via-velocity.ko
277   endif
278   AUTOLOAD:=$(call AutoLoad,50,via-velocity)
279 endef
280
281 define KernelPackage/via-velocity/description
282  Kernel modules for VIA Velocity Gigabit Ethernet chipsets.
283 endef
284
285 $(eval $(call KernelPackage,via-velocity))
286
287 define KernelPackage/ixp4xx-eth
288   SUBMENU:=$(NETWORK_DEVICES_MENU)
289   TITLE:=IXP4xxt Ethernet Adapter kernel support
290   DEPENDS:=@TARGET_ixp4xx
291   KCONFIG:=CONFIG_IXP4XX_ETH
292   ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),ge,3.2)),1)
293     FILES:=$(LINUX_DIR)/drivers/net/ethernet/xscale/ixp4xx_eth.ko
294   else
295     FILES:=$(LINUX_DIR)/drivers/net/arm/ixp4xx_eth.ko
296   endif
297   AUTOLOAD:=$(call AutoLoad,50,ixp4xx_eth)
298 endef
299
300 define KernelPackage/ixp4xx-eth/description
301  Kernel modules for Intel IXP4xx Ethernet chipsets.
302 endef
303
304 $(eval $(call KernelPackage,ixp4xx-eth))
305
306 define KernelPackage/8139too
307   SUBMENU:=$(NETWORK_DEVICES_MENU)
308   TITLE:=RealTek RTL-8139 PCI Fast Ethernet Adapter kernel support
309   DEPENDS:=@TARGET_x86
310   KCONFIG:=CONFIG_8139TOO \
311     CONFIG_8139TOO_PIO=y \
312     CONFIG_8139TOO_TUNE_TWISTER=n \
313     CONFIG_8139TOO_8129=n \
314     CONFIG_8139_OLD_RX_RESET=n
315   ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),ge,3.2)),1)
316     FILES:=$(LINUX_DIR)/drivers/net/ethernet/realtek/8139too.ko
317   else
318     FILES:=$(LINUX_DIR)/drivers/net/8139too.ko
319   endif
320   AUTOLOAD:=$(call AutoLoad,50,8139too)
321 endef
322
323 define KernelPackage/8139too/description
324  Kernel modules for RealTek RTL-8139 PCI Fast Ethernet adapters.
325 endef
326
327 $(eval $(call KernelPackage,8139too))
328
329
330 define KernelPackage/8139cp
331   SUBMENU:=$(NETWORK_DEVICES_MENU)
332   TITLE:=RealTek RTL-8139C+ PCI Fast Ethernet Adapter kernel support
333   DEPENDS:=@TARGET_x86
334   KCONFIG:=CONFIG_8139CP
335   ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),ge,3.2)),1)
336     FILES:=$(LINUX_DIR)/drivers/net/ethernet/realtek/8139cp.ko
337   else
338     FILES:=$(LINUX_DIR)/drivers/net/8139cp.ko
339   endif
340   AUTOLOAD:=$(call AutoLoad,50,8139cp)
341 endef
342
343 define KernelPackage/8139cp/description
344  Kernel module for RealTek RTL-8139C+ PCI Fast Ethernet adapters.
345 endef
346
347 $(eval $(call KernelPackage,8139cp))
348
349
350 define KernelPackage/r8169
351   SUBMENU:=$(NETWORK_DEVICES_MENU)
352   TITLE:=RealTek RTL-8169 PCI Gigabit Ethernet Adapter kernel support
353   DEPENDS:=@PCI_SUPPORT
354   KCONFIG:=CONFIG_R8169 \
355     CONFIG_R8169_NAPI=y \
356     CONFIG_R8169_VLAN=n
357   ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),ge,3.2)),1)
358     FILES:=$(LINUX_DIR)/drivers/net/ethernet/realtek/r8169.ko
359   else
360     FILES:=$(LINUX_DIR)/drivers/net/r8169.ko
361   endif
362   AUTOLOAD:=$(call AutoLoad,50,r8169)
363 endef
364
365 define KernelPackage/r8169/description
366  Kernel modules for RealTek RTL-8169 PCI Gigabit Ethernet adapters.
367 endef
368
369 $(eval $(call KernelPackage,r8169))
370
371
372 define KernelPackage/ne2k-pci
373   SUBMENU:=$(NETWORK_DEVICES_MENU)
374   TITLE:=ne2k-pci Ethernet Adapter kernel support
375   DEPENDS:=@TARGET_x86
376   KCONFIG:=CONFIG_NE2K_PCI
377   ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),ge,3.2)),1)
378     FILES:= \
379         $(LINUX_DIR)/drivers/net/ethernet/8390/ne2k-pci.ko \
380         $(LINUX_DIR)/drivers/net/ethernet/8390/8390.ko
381   else
382     FILES:= \
383         $(LINUX_DIR)/drivers/net/ne2k-pci.ko \
384         $(LINUX_DIR)/drivers/net/8390.ko
385   endif
386   AUTOLOAD:=$(call AutoLoad,50,8390 ne2k-pci)
387 endef
388
389 define KernelPackage/ne2k-pci/description
390  Kernel modules for NE2000 PCI Ethernet Adapter kernel.
391 endef
392
393 $(eval $(call KernelPackage,ne2k-pci))
394
395
396 define KernelPackage/e100
397   SUBMENU:=$(NETWORK_DEVICES_MENU)
398   TITLE:=Intel(R) PRO/100+ cards kernel support
399   DEPENDS:=@TARGET_x86
400   KCONFIG:=CONFIG_E100
401   ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),ge,3.2)),1)
402     FILES:=$(LINUX_DIR)/drivers/net/ethernet/intel/e100.ko
403   else
404     FILES:=$(LINUX_DIR)/drivers/net/e100.ko
405   endif
406   AUTOLOAD:=$(call AutoLoad,50,e100)
407 endef
408
409 define KernelPackage/e100/description
410  Kernel modules for Intel(R) PRO/100+ Ethernet adapters.
411 endef
412
413 define KernelPackage/e100/install
414         $(INSTALL_DIR) $(1)/lib/firmware/e100
415         $(foreach file,d101m_ucode.bin d101s_ucode.bin d102e_ucode.bin, \
416                 $(TARGET_CROSS)objcopy -Iihex -Obinary $(LINUX_DIR)/firmware/e100/$(file).ihex $(1)/lib/firmware/e100/$(file); \
417         )
418 endef
419
420 $(eval $(call KernelPackage,e100))
421
422
423 define KernelPackage/e1000
424   SUBMENU:=$(NETWORK_DEVICES_MENU)
425   TITLE:=Intel(R) PRO/1000 PCI cards kernel support
426   DEPENDS:=@PCI_SUPPORT
427   KCONFIG:=CONFIG_E1000 \
428     CONFIG_E1000_DISABLE_PACKET_SPLIT=n \
429     CONFIG_E1000_NAPI=y
430   ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),ge,3.2)),1)
431     FILES:=$(LINUX_DIR)/drivers/net/ethernet/intel/e1000/e1000.ko
432   else
433     FILES:=$(LINUX_DIR)/drivers/net/e1000/e1000.ko
434   endif
435   AUTOLOAD:=$(call AutoLoad,35,e1000)
436 endef
437
438 define KernelPackage/e1000/description
439  Kernel modules for Intel(R) PRO/1000 PCI Ethernet adapters.
440 endef
441
442 $(eval $(call KernelPackage,e1000))
443
444
445 define KernelPackage/e1000e
446   SUBMENU:=$(NETWORK_DEVICES_MENU)
447   TITLE:=Intel(R) PRO/1000 PCIe cards kernel support
448   DEPENDS:=@PCIE_SUPPORT
449   KCONFIG:=CONFIG_E1000E
450   ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),ge,3.2)),1)
451     FILES:=$(LINUX_DIR)/drivers/net/ethernet/intel/e1000e/e1000e.ko
452   else
453     FILES:=$(LINUX_DIR)/drivers/net/e1000e/e1000e.ko
454   endif
455   AUTOLOAD:=$(call AutoLoad,50,e1000e)
456 endef
457
458 define KernelPackage/e1000e/description
459  Kernel modules for Intel(R) PRO/1000 PCIe Ethernet adapters.
460 endef
461
462 $(eval $(call KernelPackage,e1000e))
463
464
465 define KernelPackage/b44
466   TITLE:=Broadcom 44xx driver
467   KCONFIG:=CONFIG_B44
468   DEPENDS:=@TARGET_x86 +kmod-ssb
469   SUBMENU:=$(NETWORK_DEVICES_MENU)
470   ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),ge,3.2)),1)
471     FILES:=$(LINUX_DIR)/drivers/net/ethernet/broadcom/b44.ko
472   else
473     FILES:=$(LINUX_DIR)/drivers/net/b44.ko
474   endif
475   AUTOLOAD:=$(call AutoLoad,50,b44)
476 endef
477
478 define KernelPackage/b44/description
479  Kernel modules for Broadcom 44xx Ethernet adapters.
480 endef
481
482 $(eval $(call KernelPackage,b44))
483
484
485 define KernelPackage/3c59x
486   SUBMENU:=$(NETWORK_DEVICES_MENU)
487   TITLE:=3Com 3c590/3c900 series (592/595/597) Vortex/Boomerang
488   DEPENDS:=@TARGET_x86
489   KCONFIG:=CONFIG_VORTEX
490   ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),ge,3.2)),1)
491     FILES:=$(LINUX_DIR)/drivers/net/ethernet/3com/3c59x.ko
492   else
493     FILES:=$(LINUX_DIR)/drivers/net/3c59x.ko
494   endif
495   AUTOLOAD:=$(call AutoLoad,50,3c59x)
496 endef
497
498 define KernelPackage/3c59x/description
499  This option enables driver support for a large number of 10mbps and
500  10/100mbps EISA, PCI and PCMCIA 3Com Ethernet adapters:
501  - "Vortex"    (Fast EtherLink 3c590/3c592/3c595/3c597) EISA and PCI
502  - "Boomerang" (EtherLink XL 3c900 or 3c905)            PCI
503  - "Cyclone"   (3c540/3c900/3c905/3c980/3c575/3c656)    PCI and Cardbus
504  - "Tornado"   (3c905)                                  PCI
505  - "Hurricane" (3c555/3cSOHO)                           PCI
506 endef
507
508 $(eval $(call KernelPackage,3c59x))
509
510
511 define KernelPackage/pcnet32
512   SUBMENU:=$(NETWORK_DEVICES_MENU)
513   TITLE:=AMD PCnet32 PCI support
514   DEPENDS:=@(TARGET_x86||TARGET_malta)
515   KCONFIG:=CONFIG_PCNET32
516   ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),ge,3.2)),1)
517     FILES:=$(LINUX_DIR)/drivers/net/ethernet/amd/pcnet32.ko
518   else
519     FILES:=$(LINUX_DIR)/drivers/net/pcnet32.ko
520   endif
521   AUTOLOAD:=$(call AutoLoad,50,pcnet32)
522 endef
523
524 define KernelPackage/pcnet32/description
525  Kernel modules for AMD PCnet32 Ethernet adapters.
526 endef
527
528 $(eval $(call KernelPackage,pcnet32))
529
530
531 define KernelPackage/tg3
532   TITLE:=Broadcom Tigon3 Gigabit Ethernet
533   KCONFIG:=CONFIG_TIGON3
534   DEPENDS:=+!TARGET_brcm47xx:kmod-libphy @!TARGET_ubicom32
535   SUBMENU:=$(NETWORK_DEVICES_MENU)
536   ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),ge,3.2)),1)
537     FILES:=$(LINUX_DIR)/drivers/net/ethernet/broadcom/tg3.ko
538   else
539     FILES:=$(LINUX_DIR)/drivers/net/tg3.ko
540   endif
541   AUTOLOAD:=$(call AutoLoad,50,tg3)
542 endef
543
544 define KernelPackage/tg3/description
545  Kernel modules for Broadcom Tigon3 Gigabit Ethernet adapters.
546 endef
547
548 $(eval $(call KernelPackage,tg3))
549
550
551 define KernelPackage/ssb-gige
552   TITLE:=Broadcom SSB Gigabit Ethernet
553   KCONFIG:=CONFIG_SSB_DRIVER_GIGE=y
554   DEPENDS:=@TARGET_brcm47xx +kmod-tg3
555   SUBMENU:=$(NETWORK_DEVICES_MENU)
556 endef
557
558 define KernelPackage/ssb-gige/description
559  Kernel modules for Broadcom SSB Gigabit Ethernet adapters.
560 endef
561
562 $(eval $(call KernelPackage,ssb-gige))
563
564
565 define KernelPackage/hfcpci
566   TITLE:=HFC PCI cards (single port) support for mISDN
567   KCONFIG:=CONFIG_MISDN_HFCPCI
568   DEPENDS:=+kmod-misdn
569   SUBMENU:=$(NETWORK_DEVICES_MENU)
570   FILES:=$(LINUX_DIR)/drivers/isdn/hardware/mISDN/hfcpci.ko
571   AUTOLOAD:=$(call AutoLoad,31,hfcpci)
572 endef
573
574 define KernelPackage/hfcpci/description
575  Kernel modules for Cologne AG's HFC pci cards (single port)
576  using the mISDN V2 stack.
577 endef
578
579 $(eval $(call KernelPackage,hfcpci))
580
581
582 define KernelPackage/hfcmulti
583   TITLE:=HFC multiport cards (HFC-4S/8S/E1) support for mISDN
584   KCONFIG:=CONFIG_MISDN_HFCMULTI
585   DEPENDS:=+kmod-misdn
586   SUBMENU:=$(NETWORK_DEVICES_MENU)
587   FILES:=$(LINUX_DIR)/drivers/isdn/hardware/mISDN/hfcmulti.ko
588   AUTOLOAD:=$(call AutoLoad,31,hfcmulti)
589 endef
590
591 define KernelPackage/hfcmulti/description
592  Kernel modules for Cologne AG's HFC multiport cards (HFC-4S/8S/E1)
593  using the mISDN V2 stack.
594 endef
595
596 $(eval $(call KernelPackage,hfcmulti))
597
598
599 define KernelPackage/gigaset
600   SUBMENU:=$(NETWORK_DEVICES_MENU)
601   TITLE:=Siemens Gigaset support for isdn4linux
602   DEPENDS:=@USB_SUPPORT +kmod-isdn4linux +kmod-lib-crc-ccitt +kmod-usb-core
603   URL:=http://gigaset307x.sourceforge.net/
604   KCONFIG:= \
605     CONFIG_ISDN_DRV_GIGASET \
606     CONFIG_GIGASET_BASE \
607     CONFIG_GIGASET_M101 \
608     CONFIG_GIGASET_M105 \
609     CONFIG_GIGASET_UNDOCREQ=y \
610     CONFIG_GIGASET_I4L=y
611   FILES:= \
612     $(LINUX_DIR)/drivers/isdn/gigaset/gigaset.ko \
613     $(LINUX_DIR)/drivers/isdn/gigaset/bas_gigaset.ko \
614     $(LINUX_DIR)/drivers/isdn/gigaset/ser_gigaset.ko \
615     $(LINUX_DIR)/drivers/isdn/gigaset/usb_gigaset.ko
616   AUTOLOAD:=$(call AutoLoad,50,gigaset bas_gigaset ser_gigaset usb_gigaset)
617 endef
618
619 define KernelPackage/gigaset/description
620  This driver supports the Siemens Gigaset SX205/255 family of
621  ISDN DECT bases, including the predecessors Gigaset 3070/3075
622  and 4170/4175 and their T-Com versions Sinus 45isdn and Sinus
623  721X.
624 endef
625
626 $(eval $(call KernelPackage,gigaset))
627
628
629 define KernelPackage/macvlan
630   SUBMENU:=$(NETWORK_DEVICES_MENU)
631   TITLE:=MAC-VLAN support
632   KCONFIG:=CONFIG_MACVLAN
633   FILES:=$(LINUX_DIR)/drivers/net/macvlan.ko
634   AUTOLOAD:=$(call AutoLoad,50,macvlan)
635 endef
636
637 define KernelPackage/macvlan/description
638  A kernel module which allows one to create virtual interfaces that
639  map packets to or from specific MAC addresses to a particular interface.
640 endef
641
642 $(eval $(call KernelPackage,macvlan))
643
644 define KernelPackage/tulip
645   TITLE:=Tulip family network device support
646   SUBMENU:=$(NETWORK_DEVICES_MENU)
647   KCONFIG:= \
648     CONFIG_NET_TULIP=y \
649     CONFIG_DE2104X \
650     CONFIG_DE2104X_DSL=0 \
651     CONFIG_TULIP \
652     CONFIG_TULIP_MWI=y \
653     CONFIG_TULIP_MMIO=y \
654     CONFIG_TULIP_NAPI=y \
655     CONFIG_TULIP_NAPI_HW_MITIGATION=y \
656     CONFIG_DE4X5 \
657     CONFIG_WINBOND_840 \
658     CONFIG_DM9102 \
659     CONFIG_ULI526X 
660   ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),ge,3.2)),1)
661     FILES:= \
662         $(LINUX_DIR)/drivers/net/ethernet/dec/tulip/tulip.ko \
663         $(LINUX_DIR)/drivers/net/ethernet/dec/tulip/de2104x.ko \
664         $(LINUX_DIR)/drivers/net/ethernet/dec/tulip/de4x5.ko \
665         $(LINUX_DIR)/drivers/net/ethernet/dec/tulip/dmfe.ko \
666         $(LINUX_DIR)/drivers/net/ethernet/dec/tulip/uli526x.ko \
667         $(LINUX_DIR)/drivers/net/ethernet/dec/tulip/winbond-840.ko
668   else
669     FILES:= \
670         $(LINUX_DIR)/drivers/net/tulip/tulip.ko \
671         $(LINUX_DIR)/drivers/net/tulip/de2104x.ko \
672         $(LINUX_DIR)/drivers/net/tulip/de4x5.ko \
673         $(LINUX_DIR)/drivers/net/tulip/dmfe.ko \
674         $(LINUX_DIR)/drivers/net/tulip/uli526x.ko \
675         $(LINUX_DIR)/drivers/net/tulip/winbond-840.ko
676   endif
677   AUTOLOAD:=$(call AutoLoad,50,tulip)
678 endef
679
680 define KernelPackage/tulip/description
681  Kernel modules for the Tulip family of network cards,
682  including DECchip Tulip, DIGITAL EtherWORKS, Winbond W89c840,
683  Davicom DM910x/DM980x and ULi M526x controller support.
684 endef
685
686 $(eval $(call KernelPackage,tulip))
687
688
689 define KernelPackage/solos-pci
690   SUBMENU:=$(NETWORK_DEVICES_MENU)
691   TITLE:=Solos ADSL2+ multiport modem
692   DEPENDS:=@TARGET_x86 +kmod-atm
693   KCONFIG:=CONFIG_ATM_SOLOS
694   FILES:=$(LINUX_DIR)/drivers/atm/solos-pci.ko
695   AUTOLOAD:=$(call AutoLoad,50,solos-pci)
696 endef
697
698 define KernelPackage/solos-pci/description
699  Kernel module for Traverse Technologies' Solos PCI cards
700  and Geos ADSL2+ x86 motherboard.
701 endef
702
703 $(eval $(call KernelPackage,solos-pci))
704
705 define KernelPackage/dummy
706   SUBMENU:=$(NETWORK_DEVICES_MENU)
707   TITLE:=Dummy network device
708   KCONFIG:=CONFIG_DUMMY
709   FILES:=$(LINUX_DIR)/drivers/net/dummy.ko
710   AUTOLOAD:=$(call AutoLoad,34,dummy)
711 endef
712
713 define KernelPackage/dummy/description
714   The dummy network device
715 endef
716
717 $(eval $(call KernelPackage,dummy))
718
719 define KernelPackage/ifb
720   SUBMENU:=$(NETWORK_DEVICES_MENU)
721   TITLE:=Intermediate Functional Block support
722   KCONFIG:= \
723         CONFIG_IFB \
724         CONFIG_NET_CLS=y
725   FILES:=$(LINUX_DIR)/drivers/net/ifb.ko
726   AUTOLOAD:=$(call AutoLoad,34,ifb)
727 endef
728
729 define KernelPackage/ifb/description
730   The Intermediate Functional Block
731 endef
732
733 $(eval $(call KernelPackage,ifb))
734
735 define KernelPackage/dm9000
736   SUBMENU:=$(NETWORK_DEVICES_MENU)
737   TITLE:=Davicom 9000 Ethernet support
738   KCONFIG:=CONFIG_DM9000 \
739     CONFIG_DM9000_DEBUGLEVEL=4 \
740     CONFIG_DM9000_FORCE_SIMPLE_PHY_POLL=y
741   ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),ge,3.2)),1)
742     FILES:=$(LINUX_DIR)/drivers/net/ethernet/davicom/dm9000.ko
743   else
744     FILES:=$(LINUX_DIR)/drivers/net/dm9000.ko
745   endif
746   AUTOLOAD:=$(call AutoLoad,34,dm9000)
747 endef
748
749 define KernelPackage/dm9000/description
750  Kernel driver for Davicom 9000 Ethernet adapters.
751 endef
752
753 $(eval $(call KernelPackage,dm9000))