load e1000 earlier to fix the order of the ethernet ports on Axiomtek NA-200
[openwrt.git] / package / kernel / modules / netdevices.mk
1 #
2 # Copyright (C) 2006-2008 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/libphy
11   SUBMENU:=$(NETWORK_DEVICES_MENU)
12   TITLE:=PHY library
13   KCONFIG:=CONFIG_PHYLIB
14   FILES:=$(LINUX_DIR)/drivers/net/phy/libphy.ko
15   AUTOLOAD:=$(call AutoLoad,40,libphy)
16 endef
17
18 define KernelPackage/libphy/description
19   PHY library
20 endef
21
22 $(eval $(call KernelPackage,libphy))
23
24 define KernelPackage/swconfig
25   SUBMENU:=$(NETWORK_DEVICES_MENU)
26   TITLE:=switch configuration API
27   DEPENDS:=+kmod-libphy
28   KCONFIG:=CONFIG_SWCONFIG
29   FILES:=$(LINUX_DIR)/drivers/net/phy/swconfig.ko
30   AUTOLOAD:=$(call AutoLoad,41,swconfig)
31 endef
32
33 define KernelPackage/swconfig/description
34   Switch configuration API module
35 endef
36
37 $(eval $(call KernelPackage,swconfig))
38
39 define KernelPackage/mvswitch
40   SUBMENU:=$(NETWORK_DEVICES_MENU)
41   TITLE:=Marvell 88E6060 switch support
42   DEPENDS:=+kmod-swconfig
43   KCONFIG:=CONFIG_MVSWITCH_PHY
44   FILES:=$(LINUX_DIR)/drivers/net/phy/mvswitch.ko
45   AUTOLOAD:=$(call AutoLoad,41,mvswitch)
46 endef
47
48 define KernelPackage/mvswitch/description
49   Marvell 88E6060 switch support
50 endef
51
52 $(eval $(call KernelPackage,mvswitch))
53
54 define KernelPackage/switch-ip175c
55   SUBMENU:=$(NETWORK_DEVICES_MENU)
56   TITLE:=IC+ IP175C/IP178C switch support
57   DEPENDS:=+kmod-swconfig
58   KCONFIG:=CONFIG_IP175C_PHY
59   FILES:=$(LINUX_DIR)/drivers/net/phy/ip175c.ko
60   AUTOLOAD:=$(call AutoLoad,42,ip175c)
61 endef
62
63 define KernelPackage/switch-ip175c/description
64   IC+ IP175C/IP178C switch support
65 endef
66
67 $(eval $(call KernelPackage,switch-ip175c))
68
69 define KernelPackage/natsemi
70   SUBMENU:=$(NETWORK_DEVICES_MENU)
71   TITLE:=National Semiconductor DP8381x series
72   DEPENDS:=@TARGET_x86
73   KCONFIG:=CONFIG_NATSEMI
74   FILES:=$(LINUX_DIR)/drivers/net/natsemi.ko
75   AUTOLOAD:=$(call AutoLoad,20,natsemi)
76 endef
77
78 define KernelPackage/natsemi/description
79  Kernel modules for National Semiconductor DP8381x series PCI Ethernet
80  adapters.
81 endef
82
83 $(eval $(call KernelPackage,natsemi))
84
85
86 define KernelPackage/r6040
87   SUBMENU:=$(NETWORK_DEVICES_MENU)
88   TITLE:=RDC Fast-Ethernet support
89   DEPENDS:=@TARGET_rdc
90   KCONFIG:=CONFIG_R6040 \
91                 CONFIG_R6040_NAPI=y
92   FILES:=$(LINUX_DIR)/drivers/net/r6040.ko
93   AUTOLOAD:=$(call AutoLoad,99,r6040)
94 endef
95
96 define KernelPackage/r6040/description
97  Kernel modules for RDC Fast-Ethernet adapters.
98 endef
99
100 $(eval $(call KernelPackage,r6040))
101
102
103 define KernelPackage/sis900
104   SUBMENU:=$(NETWORK_DEVICES_MENU)
105   TITLE:=SiS 900 Ethernet support
106   DEPENDS:=@TARGET_x86
107   KCONFIG:=CONFIG_SIS900
108   FILES:=$(LINUX_DIR)/drivers/net/sis900.ko
109   AUTOLOAD:=$(call AutoLoad,50,sis900)
110 endef
111
112 define KernelPackage/sis900/description
113  Kernel modules for Sis 900 Ethernet adapters.
114 endef
115
116 $(eval $(call KernelPackage,sis900))
117
118
119 define KernelPackage/sky2
120   SUBMENU:=$(NETWORK_DEVICES_MENU)
121   TITLE:=SysKonnect Yukon2 support
122   DEPENDS:=@TARGET_x86
123   KCONFIG:=CONFIG_SKY2
124   FILES:=$(LINUX_DIR)/drivers/net/sky2.ko
125   AUTOLOAD:=$(call AutoLoad,50,sky2)
126 endef
127
128 define KernelPackage/sky2/description
129   This driver supports Gigabit Ethernet adapters based on the
130   Marvell Yukon 2 chipset:
131   Marvell 88E8021/88E8022/88E8035/88E8036/88E8038/88E8050/88E8052/
132   88E8053/88E8055/88E8061/88E8062, SysKonnect SK-9E21D/SK-9S21
133
134   There is companion driver for the older Marvell Yukon and
135   Genesis based adapters: skge.
136 endef
137
138 $(eval $(call KernelPackage,sky2))
139
140
141 define KernelPackage/via-rhine
142   SUBMENU:=$(NETWORK_DEVICES_MENU)
143   TITLE:=Via Rhine ethernet support
144   DEPENDS:=@TARGET_x86
145   KCONFIG:=CONFIG_VIA_RHINE \
146     CONFIG_VIA_RHINE_MMIO=y
147   FILES:=$(LINUX_DIR)/drivers/net/via-rhine.ko
148   AUTOLOAD:=$(call AutoLoad,50,via-rhine)
149 endef
150
151 define KernelPackage/via-rhine/description
152  Kernel modules for Via Rhine Ethernet chipsets.
153 endef
154
155 $(eval $(call KernelPackage,via-rhine))
156
157
158 define KernelPackage/via-velocity
159   SUBMENU:=$(NETWORK_DEVICES_MENU)
160   TITLE:=VIA Velocity Gigabit Ethernet Adapter kernel support
161   DEPENDS:=@TARGET_ixp4xx||TARGET_mpc83xx||TARGET_x86
162   KCONFIG:=CONFIG_VIA_VELOCITY
163   FILES:=$(LINUX_DIR)/drivers/net/via-velocity.ko
164   AUTOLOAD:=$(call AutoLoad,50,via-velocity)
165 endef
166
167 define KernelPackage/via-velocity/description
168  Kernel modules for VIA Velocity Gigabit Ethernet chipsets.
169 endef
170
171 $(eval $(call KernelPackage,via-velocity))
172
173 define KernelPackage/ixp4xx-eth
174   SUBMENU:=$(NETWORK_DEVICES_MENU)
175   TITLE:=IXP4xxt Ethernet Adapter kernel support
176   DEPENDS:=@TARGET_ixp4xx
177   KCONFIG:=CONFIG_IXP4XX_ETH
178   FILES:=$(LINUX_DIR)/drivers/net/arm/ixp4xx_eth.ko
179   AUTOLOAD:=$(call AutoLoad,50,ixp4xx_eth)
180 endef
181
182 define KernelPackage/ixp4xx-eth/description
183  Kernel modules for Intel IXP4xx Ethernet chipsets.
184 endef
185
186 $(eval $(call KernelPackage,ixp4xx-eth))
187
188 define KernelPackage/8139too
189   SUBMENU:=$(NETWORK_DEVICES_MENU)
190   TITLE:=RealTek RTL-8139 PCI Fast Ethernet Adapter kernel support
191   DEPENDS:=@TARGET_x86
192   KCONFIG:=CONFIG_8139TOO \
193     CONFIG_8139TOO_PIO=y \
194     CONFIG_8139TOO_TUNE_TWISTER=n \
195     CONFIG_8139TOO_8129=n \
196     CONFIG_8139_OLD_RX_RESET=n
197   FILES:=$(LINUX_DIR)/drivers/net/8139too.ko
198   AUTOLOAD:=$(call AutoLoad,50,8139too)
199 endef
200
201 define KernelPackage/8139too/description
202  Kernel modules for RealTek RTL-8139 PCI Fast Ethernet adapters.
203 endef
204
205 $(eval $(call KernelPackage,8139too))
206
207
208 define KernelPackage/r8169
209   SUBMENU:=$(NETWORK_DEVICES_MENU)
210   TITLE:=RealTek RTL-8169 PCI Gigabit Ethernet Adapter kernel support
211   DEPENDS:=@TARGET_x86
212   KCONFIG:=CONFIG_R8169 \
213     CONFIG_R8169_NAPI=y \
214     CONFIG_R8169_VLAN=n
215   FILES:=$(LINUX_DIR)/drivers/net/r8169.ko
216   AUTOLOAD:=$(call AutoLoad,50,r8169)
217 endef
218
219 define KernelPackage/r8169/description
220  Kernel modules for RealTek RTL-8169 PCI Gigabit Ethernet adapters.
221 endef
222
223 $(eval $(call KernelPackage,r8169))
224
225
226 define KernelPackage/ne2k-pci
227   SUBMENU:=$(NETWORK_DEVICES_MENU)
228   TITLE:=ne2k-pci Ethernet Adapter kernel support
229   DEPENDS:=@TARGET_x86
230   KCONFIG:=CONFIG_NE2K_PCI
231   FILES:= \
232         $(LINUX_DIR)/drivers/net/ne2k-pci.ko \
233         $(LINUX_DIR)/drivers/net/8390.ko
234   AUTOLOAD:=$(call AutoLoad,50,8390 ne2k-pci)
235 endef
236
237 define KernelPackage/ne2k-pci/description
238  Kernel modules for NE2000 PCI Ethernet Adapter kernel.
239 endef
240
241 $(eval $(call KernelPackage,ne2k-pci))
242
243
244 define KernelPackage/e100
245   SUBMENU:=$(NETWORK_DEVICES_MENU)
246   TITLE:=Intel(R) PRO/100+ cards kernel support
247   DEPENDS:=@TARGET_x86
248   KCONFIG:=CONFIG_E100
249   FILES:=$(LINUX_DIR)/drivers/net/e100.ko
250   AUTOLOAD:=$(call AutoLoad,50,e100)
251 endef
252
253 define KernelPackage/e100/description
254  Kernel modules for Intel(R) PRO/100+ Ethernet adapters.
255 endef
256
257 $(eval $(call KernelPackage,e100))
258
259
260 define KernelPackage/e1000
261   SUBMENU:=$(NETWORK_DEVICES_MENU)
262   TITLE:=Intel(R) PRO/1000 PCI cards kernel support
263   DEPENDS:=@PCI_SUPPORT
264   KCONFIG:=CONFIG_E1000 \
265     CONFIG_E1000_DISABLE_PACKET_SPLIT=n \
266     CONFIG_E1000_NAPI=y
267   FILES:=$(LINUX_DIR)/drivers/net/e1000/e1000.ko
268   AUTOLOAD:=$(call AutoLoad,35,e1000)
269 endef
270
271 define KernelPackage/e1000/description
272  Kernel modules for Intel(R) PRO/1000 PCI Ethernet adapters.
273 endef
274
275 $(eval $(call KernelPackage,e1000))
276
277
278 define KernelPackage/e1000e
279   SUBMENU:=$(NETWORK_DEVICES_MENU)
280   TITLE:=Intel(R) PRO/1000 PCIe cards kernel support
281   DEPENDS:=@PCIE_SUPPORT
282   KCONFIG:=CONFIG_E1000E
283   FILES:=$(LINUX_DIR)/drivers/net/e1000e/e1000e.ko
284   AUTOLOAD:=$(call AutoLoad,50,e1000e)
285 endef
286
287 define KernelPackage/e1000e/description
288  Kernel modules for Intel(R) PRO/1000 PCIe Ethernet adapters.
289 endef
290
291 $(eval $(call KernelPackage,e1000e))
292
293
294 define KernelPackage/b44
295   TITLE:=Broadcom 44xx driver
296   FILES:=$(LINUX_DIR)/drivers/net/b44.ko
297   KCONFIG:=CONFIG_B44
298   DEPENDS:=@TARGET_x86 +kmod-ssb
299   SUBMENU:=$(NETWORK_DEVICES_MENU)
300   AUTOLOAD:=$(call AutoLoad,50,b44)
301 endef
302
303 define KernelPackage/b44/description
304  Kernel modules for Broadcom 44xx Ethernet adapters.
305 endef
306
307 $(eval $(call KernelPackage,b44))
308
309
310 define KernelPackage/3c59x
311   SUBMENU:=$(NETWORK_DEVICES_MENU)
312   TITLE:=3Com 3c590/3c900 series (592/595/597) Vortex/Boomerang
313   DEPENDS:=@TARGET_x86
314   KCONFIG:=CONFIG_VORTEX
315   FILES:=$(LINUX_DIR)/drivers/net/3c59x.ko
316   AUTOLOAD:=$(call AutoLoad,50,3c59x)
317 endef
318
319 define KernelPackage/3c59x/description
320  This option enables driver support for a large number of 10mbps and
321  10/100mbps EISA, PCI and PCMCIA 3Com Ethernet adapters:
322  - "Vortex"    (Fast EtherLink 3c590/3c592/3c595/3c597) EISA and PCI
323  - "Boomerang" (EtherLink XL 3c900 or 3c905)            PCI
324  - "Cyclone"   (3c540/3c900/3c905/3c980/3c575/3c656)    PCI and Cardbus
325  - "Tornado"   (3c905)                                  PCI
326  - "Hurricane" (3c555/3cSOHO)                           PCI
327 endef
328
329 $(eval $(call KernelPackage,3c59x))
330
331
332 define KernelPackage/pcnet32
333   SUBMENU:=$(NETWORK_DEVICES_MENU)
334   TITLE:=AMD PCnet32 PCI support
335   DEPENDS:=@(TARGET_x86||TARGET_malta)
336   KCONFIG:=CONFIG_PCNET32
337   FILES:=$(LINUX_DIR)/drivers/net/pcnet32.ko
338   AUTOLOAD:=$(call AutoLoad,50,pcnet32)
339 endef
340
341 define KernelPackage/pcnet32/description
342  Kernel modules for AMD PCnet32 Ethernet adapters.
343 endef
344
345 $(eval $(call KernelPackage,pcnet32))
346
347
348 define KernelPackage/tg3
349   TITLE:=Broadcom Tigon3 Gigabit Ethernet
350   FILES:=$(LINUX_DIR)/drivers/net/tg3.ko
351   KCONFIG:=CONFIG_TIGON3
352   DEPENDS:=+!TARGET_brcm47xx:kmod-libphy @!TARGET_ubicom32
353   SUBMENU:=$(NETWORK_DEVICES_MENU)
354   AUTOLOAD:=$(call AutoLoad,50,tg3)
355 endef
356
357 define KernelPackage/tg3/description
358  Kernel modules for Broadcom Tigon3 Gigabit Ethernet adapters.
359 endef
360
361 $(eval $(call KernelPackage,tg3))
362
363
364 define KernelPackage/ssb-gige
365   TITLE:=Broadcom SSB Gigabit Ethernet
366   KCONFIG:=CONFIG_SSB_DRIVER_GIGE=y
367   DEPENDS:=@TARGET_brcm47xx +kmod-tg3
368   SUBMENU:=$(NETWORK_DEVICES_MENU)
369 endef
370
371 define KernelPackage/ssb-gige/description
372  Kernel modules for Broadcom SSB Gigabit Ethernet adapters.
373 endef
374
375 $(eval $(call KernelPackage,ssb-gige))
376
377 define KernelPackage/hfcmulti
378   TITLE:=HFC multiport cards (HFC-4S/8S/E1)
379   KCONFIG:=CONFIG_MISDN_HFCMULTI
380   DEPENDS:=+kmod-misdn
381   SUBMENU:=$(NETWORK_DEVICES_MENU)
382   FILES:=$(LINUX_DIR)/drivers/isdn/hardware/mISDN/hfcmulti.ko
383   AUTOLOAD:=$(call AutoLoad,31,hfcmulti)
384 endef
385
386 define KernelPackage/hfcmulti/description
387   HFC multiport cards (HFC-4S/8S/E1) support
388 endef
389
390 $(eval $(call KernelPackage,hfcmulti))
391
392
393 define KernelPackage/gigaset
394   SUBMENU:=$(NETWORK_DEVICES_MENU)
395   TITLE:=Siemens Gigaset support (isdn)
396   DEPENDS:=@USB_SUPPORT +kmod-isdn4linux +kmod-crc-ccitt +kmod-usb-core
397   URL:=http://gigaset307x.sourceforge.net/
398   KCONFIG:= \
399     CONFIG_ISDN_DRV_GIGASET \
400     CONFIG_GIGASET_BASE \
401     CONFIG_GIGASET_M101 \
402     CONFIG_GIGASET_M105 \
403     CONFIG_GIGASET_UNDOCREQ=y \
404     CONFIG_GIGASET_I4L=y
405   FILES:= \
406     $(LINUX_DIR)/drivers/isdn/gigaset/gigaset.ko \
407     $(LINUX_DIR)/drivers/isdn/gigaset/bas_gigaset.ko \
408     $(LINUX_DIR)/drivers/isdn/gigaset/ser_gigaset.ko \
409     $(LINUX_DIR)/drivers/isdn/gigaset/usb_gigaset.ko
410   AUTOLOAD:=$(call AutoLoad,50,gigaset bas_gigaset ser_gigaset usb_gigaset)
411 endef
412
413 define KernelPackage/gigaset/description
414  This driver supports the Siemens Gigaset SX205/255 family of
415  ISDN DECT bases, including the predecessors Gigaset 3070/3075
416  and 4170/4175 and their T-Com versions Sinus 45isdn and Sinus
417  721X.
418 endef
419
420 $(eval $(call KernelPackage,gigaset))
421
422
423 define KernelPackage/macvlan
424   SUBMENU:=$(NETWORK_DEVICES_MENU)
425   TITLE:=MAC-VLAN support
426   KCONFIG:=CONFIG_MACVLAN
427   FILES:=$(LINUX_DIR)/drivers/net/macvlan.ko
428   AUTOLOAD:=$(call AutoLoad,50,macvlan)
429 endef
430
431 define KernelPackage/macvlan/description
432  A kernel module which allows one to create virtual interfaces that
433  map packets to or from specific MAC addresses to a particular interface.
434 endef
435
436 $(eval $(call KernelPackage,macvlan))
437
438 define KernelPackage/tulip
439   TITLE:=Tulip family network device support
440   SUBMENU:=$(NETWORK_DEVICES_MENU)
441   KCONFIG:= \
442     CONFIG_NET_TULIP=y \
443     CONFIG_DE2104X \
444     CONFIG_DE2104X_DSL=0 \
445     CONFIG_TULIP \
446     CONFIG_TULIP_MWI=y \
447     CONFIG_TULIP_MMIO=y \
448     CONFIG_TULIP_NAPI=y \
449     CONFIG_TULIP_NAPI_HW_MITIGATION=y \
450     CONFIG_DE4X5 \
451     CONFIG_WINBOND_840 \
452     CONFIG_DM9102 \
453     CONFIG_ULI526X 
454   FILES:= \
455     $(LINUX_DIR)/drivers/net/tulip/tulip.ko \
456     $(LINUX_DIR)/drivers/net/tulip/de2104x.ko \
457     $(LINUX_DIR)/drivers/net/tulip/de4x5.ko \
458     $(LINUX_DIR)/drivers/net/tulip/dmfe.ko \
459     $(LINUX_DIR)/drivers/net/tulip/uli526x.ko \
460     $(LINUX_DIR)/drivers/net/tulip/winbond-840.ko
461   AUTOLOAD:=$(call AutoLoad,50,tulip)
462 endef
463
464 define KernelPackage/tulip/description
465  Kernel modules for the Tulip family of network cards,
466  including DECchip Tulip, DIGITAL EtherWORKS, Winbond W89c840,
467  Davicom DM910x/DM980x and ULi M526x controller support.
468 endef
469
470 $(eval $(call KernelPackage,tulip))