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