[package] kernel/modules: Add ifb module (#8764)
[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-ip17xx
55   SUBMENU:=$(NETWORK_DEVICES_MENU)
56   TITLE:=IC+ IP17XX switch support
57   DEPENDS:=+kmod-swconfig
58   KCONFIG:=CONFIG_IP17XX_PHY
59   FILES:=$(LINUX_DIR)/drivers/net/phy/ip17xx.ko
60   AUTOLOAD:=$(call AutoLoad,42,ip17xx)
61 endef
62
63 define KernelPackage/switch-ip17xx/description
64   IC+ IP175C/IP178C switch support
65 endef
66
67 $(eval $(call KernelPackage,switch-ip17xx))
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 +kmod-crc-ccitt
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/8139cp
209   SUBMENU:=$(NETWORK_DEVICES_MENU)
210   TITLE:=RealTek RTL-8139C+ PCI Fast Ethernet Adapter kernel support
211   DEPENDS:=@TARGET_x86
212   KCONFIG:=CONFIG_8139CP
213   FILES:=$(LINUX_DIR)/drivers/net/8139cp.ko
214   AUTOLOAD:=$(call AutoLoad,50,8139cp)
215 endef
216
217 define KernelPackage/8139cp/description
218  Kernel module for RealTek RTL-8139C+ PCI Fast Ethernet adapters.
219 endef
220
221 $(eval $(call KernelPackage,8139cp))
222
223
224 define KernelPackage/r8169
225   SUBMENU:=$(NETWORK_DEVICES_MENU)
226   TITLE:=RealTek RTL-8169 PCI Gigabit Ethernet Adapter kernel support
227   DEPENDS:=@TARGET_x86
228   KCONFIG:=CONFIG_R8169 \
229     CONFIG_R8169_NAPI=y \
230     CONFIG_R8169_VLAN=n
231   FILES:=$(LINUX_DIR)/drivers/net/r8169.ko
232   AUTOLOAD:=$(call AutoLoad,50,r8169)
233 endef
234
235 define KernelPackage/r8169/description
236  Kernel modules for RealTek RTL-8169 PCI Gigabit Ethernet adapters.
237 endef
238
239 $(eval $(call KernelPackage,r8169))
240
241
242 define KernelPackage/ne2k-pci
243   SUBMENU:=$(NETWORK_DEVICES_MENU)
244   TITLE:=ne2k-pci Ethernet Adapter kernel support
245   DEPENDS:=@TARGET_x86
246   KCONFIG:=CONFIG_NE2K_PCI
247   FILES:= \
248         $(LINUX_DIR)/drivers/net/ne2k-pci.ko \
249         $(LINUX_DIR)/drivers/net/8390.ko
250   AUTOLOAD:=$(call AutoLoad,50,8390 ne2k-pci)
251 endef
252
253 define KernelPackage/ne2k-pci/description
254  Kernel modules for NE2000 PCI Ethernet Adapter kernel.
255 endef
256
257 $(eval $(call KernelPackage,ne2k-pci))
258
259
260 define KernelPackage/e100
261   SUBMENU:=$(NETWORK_DEVICES_MENU)
262   TITLE:=Intel(R) PRO/100+ cards kernel support
263   DEPENDS:=@TARGET_x86
264   KCONFIG:=CONFIG_E100
265   FILES:=$(LINUX_DIR)/drivers/net/e100.ko
266   AUTOLOAD:=$(call AutoLoad,50,e100)
267 endef
268
269 define KernelPackage/e100/description
270  Kernel modules for Intel(R) PRO/100+ Ethernet adapters.
271 endef
272
273 $(eval $(call KernelPackage,e100))
274
275
276 define KernelPackage/e1000
277   SUBMENU:=$(NETWORK_DEVICES_MENU)
278   TITLE:=Intel(R) PRO/1000 PCI cards kernel support
279   DEPENDS:=@PCI_SUPPORT
280   KCONFIG:=CONFIG_E1000 \
281     CONFIG_E1000_DISABLE_PACKET_SPLIT=n \
282     CONFIG_E1000_NAPI=y
283   FILES:=$(LINUX_DIR)/drivers/net/e1000/e1000.ko
284   AUTOLOAD:=$(call AutoLoad,35,e1000)
285 endef
286
287 define KernelPackage/e1000/description
288  Kernel modules for Intel(R) PRO/1000 PCI Ethernet adapters.
289 endef
290
291 $(eval $(call KernelPackage,e1000))
292
293
294 define KernelPackage/e1000e
295   SUBMENU:=$(NETWORK_DEVICES_MENU)
296   TITLE:=Intel(R) PRO/1000 PCIe cards kernel support
297   DEPENDS:=@PCIE_SUPPORT
298   KCONFIG:=CONFIG_E1000E
299   FILES:=$(LINUX_DIR)/drivers/net/e1000e/e1000e.ko
300   AUTOLOAD:=$(call AutoLoad,50,e1000e)
301 endef
302
303 define KernelPackage/e1000e/description
304  Kernel modules for Intel(R) PRO/1000 PCIe Ethernet adapters.
305 endef
306
307 $(eval $(call KernelPackage,e1000e))
308
309
310 define KernelPackage/b44
311   TITLE:=Broadcom 44xx driver
312   FILES:=$(LINUX_DIR)/drivers/net/b44.ko
313   KCONFIG:=CONFIG_B44
314   DEPENDS:=@TARGET_x86 +kmod-ssb
315   SUBMENU:=$(NETWORK_DEVICES_MENU)
316   AUTOLOAD:=$(call AutoLoad,50,b44)
317 endef
318
319 define KernelPackage/b44/description
320  Kernel modules for Broadcom 44xx Ethernet adapters.
321 endef
322
323 $(eval $(call KernelPackage,b44))
324
325
326 define KernelPackage/3c59x
327   SUBMENU:=$(NETWORK_DEVICES_MENU)
328   TITLE:=3Com 3c590/3c900 series (592/595/597) Vortex/Boomerang
329   DEPENDS:=@TARGET_x86
330   KCONFIG:=CONFIG_VORTEX
331   FILES:=$(LINUX_DIR)/drivers/net/3c59x.ko
332   AUTOLOAD:=$(call AutoLoad,50,3c59x)
333 endef
334
335 define KernelPackage/3c59x/description
336  This option enables driver support for a large number of 10mbps and
337  10/100mbps EISA, PCI and PCMCIA 3Com Ethernet adapters:
338  - "Vortex"    (Fast EtherLink 3c590/3c592/3c595/3c597) EISA and PCI
339  - "Boomerang" (EtherLink XL 3c900 or 3c905)            PCI
340  - "Cyclone"   (3c540/3c900/3c905/3c980/3c575/3c656)    PCI and Cardbus
341  - "Tornado"   (3c905)                                  PCI
342  - "Hurricane" (3c555/3cSOHO)                           PCI
343 endef
344
345 $(eval $(call KernelPackage,3c59x))
346
347
348 define KernelPackage/pcnet32
349   SUBMENU:=$(NETWORK_DEVICES_MENU)
350   TITLE:=AMD PCnet32 PCI support
351   DEPENDS:=@(TARGET_x86||TARGET_malta)
352   KCONFIG:=CONFIG_PCNET32
353   FILES:=$(LINUX_DIR)/drivers/net/pcnet32.ko
354   AUTOLOAD:=$(call AutoLoad,50,pcnet32)
355 endef
356
357 define KernelPackage/pcnet32/description
358  Kernel modules for AMD PCnet32 Ethernet adapters.
359 endef
360
361 $(eval $(call KernelPackage,pcnet32))
362
363
364 define KernelPackage/tg3
365   TITLE:=Broadcom Tigon3 Gigabit Ethernet
366   FILES:=$(LINUX_DIR)/drivers/net/tg3.ko
367   KCONFIG:=CONFIG_TIGON3
368   DEPENDS:=+!TARGET_brcm47xx:kmod-libphy @!TARGET_ubicom32
369   SUBMENU:=$(NETWORK_DEVICES_MENU)
370   AUTOLOAD:=$(call AutoLoad,50,tg3)
371 endef
372
373 define KernelPackage/tg3/description
374  Kernel modules for Broadcom Tigon3 Gigabit Ethernet adapters.
375 endef
376
377 $(eval $(call KernelPackage,tg3))
378
379
380 define KernelPackage/ssb-gige
381   TITLE:=Broadcom SSB Gigabit Ethernet
382   KCONFIG:=CONFIG_SSB_DRIVER_GIGE=y
383   DEPENDS:=@TARGET_brcm47xx +kmod-tg3
384   SUBMENU:=$(NETWORK_DEVICES_MENU)
385 endef
386
387 define KernelPackage/ssb-gige/description
388  Kernel modules for Broadcom SSB Gigabit Ethernet adapters.
389 endef
390
391 $(eval $(call KernelPackage,ssb-gige))
392
393 define KernelPackage/hfcmulti
394   TITLE:=HFC multiport cards (HFC-4S/8S/E1)
395   KCONFIG:=CONFIG_MISDN_HFCMULTI
396   DEPENDS:=+kmod-misdn
397   SUBMENU:=$(NETWORK_DEVICES_MENU)
398   FILES:=$(LINUX_DIR)/drivers/isdn/hardware/mISDN/hfcmulti.ko
399   AUTOLOAD:=$(call AutoLoad,31,hfcmulti)
400 endef
401
402 define KernelPackage/hfcmulti/description
403   HFC multiport cards (HFC-4S/8S/E1) support
404 endef
405
406 $(eval $(call KernelPackage,hfcmulti))
407
408
409 define KernelPackage/gigaset
410   SUBMENU:=$(NETWORK_DEVICES_MENU)
411   TITLE:=Siemens Gigaset support (isdn)
412   DEPENDS:=@USB_SUPPORT +kmod-isdn4linux +kmod-crc-ccitt +kmod-usb-core
413   URL:=http://gigaset307x.sourceforge.net/
414   KCONFIG:= \
415     CONFIG_ISDN_DRV_GIGASET \
416     CONFIG_GIGASET_BASE \
417     CONFIG_GIGASET_M101 \
418     CONFIG_GIGASET_M105 \
419     CONFIG_GIGASET_UNDOCREQ=y \
420     CONFIG_GIGASET_I4L=y
421   FILES:= \
422     $(LINUX_DIR)/drivers/isdn/gigaset/gigaset.ko \
423     $(LINUX_DIR)/drivers/isdn/gigaset/bas_gigaset.ko \
424     $(LINUX_DIR)/drivers/isdn/gigaset/ser_gigaset.ko \
425     $(LINUX_DIR)/drivers/isdn/gigaset/usb_gigaset.ko
426   AUTOLOAD:=$(call AutoLoad,50,gigaset bas_gigaset ser_gigaset usb_gigaset)
427 endef
428
429 define KernelPackage/gigaset/description
430  This driver supports the Siemens Gigaset SX205/255 family of
431  ISDN DECT bases, including the predecessors Gigaset 3070/3075
432  and 4170/4175 and their T-Com versions Sinus 45isdn and Sinus
433  721X.
434 endef
435
436 $(eval $(call KernelPackage,gigaset))
437
438
439 define KernelPackage/macvlan
440   SUBMENU:=$(NETWORK_DEVICES_MENU)
441   TITLE:=MAC-VLAN support
442   KCONFIG:=CONFIG_MACVLAN
443   FILES:=$(LINUX_DIR)/drivers/net/macvlan.ko
444   AUTOLOAD:=$(call AutoLoad,50,macvlan)
445 endef
446
447 define KernelPackage/macvlan/description
448  A kernel module which allows one to create virtual interfaces that
449  map packets to or from specific MAC addresses to a particular interface.
450 endef
451
452 $(eval $(call KernelPackage,macvlan))
453
454 define KernelPackage/tulip
455   TITLE:=Tulip family network device support
456   SUBMENU:=$(NETWORK_DEVICES_MENU)
457   KCONFIG:= \
458     CONFIG_NET_TULIP=y \
459     CONFIG_DE2104X \
460     CONFIG_DE2104X_DSL=0 \
461     CONFIG_TULIP \
462     CONFIG_TULIP_MWI=y \
463     CONFIG_TULIP_MMIO=y \
464     CONFIG_TULIP_NAPI=y \
465     CONFIG_TULIP_NAPI_HW_MITIGATION=y \
466     CONFIG_DE4X5 \
467     CONFIG_WINBOND_840 \
468     CONFIG_DM9102 \
469     CONFIG_ULI526X 
470   FILES:= \
471     $(LINUX_DIR)/drivers/net/tulip/tulip.ko \
472     $(LINUX_DIR)/drivers/net/tulip/de2104x.ko \
473     $(LINUX_DIR)/drivers/net/tulip/de4x5.ko \
474     $(LINUX_DIR)/drivers/net/tulip/dmfe.ko \
475     $(LINUX_DIR)/drivers/net/tulip/uli526x.ko \
476     $(LINUX_DIR)/drivers/net/tulip/winbond-840.ko
477   AUTOLOAD:=$(call AutoLoad,50,tulip)
478 endef
479
480 define KernelPackage/tulip/description
481  Kernel modules for the Tulip family of network cards,
482  including DECchip Tulip, DIGITAL EtherWORKS, Winbond W89c840,
483  Davicom DM910x/DM980x and ULi M526x controller support.
484 endef
485
486 $(eval $(call KernelPackage,tulip))
487
488
489 define KernelPackage/solos-pci
490   SUBMENU:=$(NETWORK_DEVICES_MENU)
491   TITLE:=Solos ADSL2+ multiport modem
492   DEPENDS:=@TARGET_x86 +kmod-atm
493   KCONFIG:=CONFIG_ATM_SOLOS
494   FILES:=$(LINUX_DIR)/drivers/atm/solos-pci.ko
495   AUTOLOAD:=$(call AutoLoad,50,solos-pci)
496 endef
497
498 define KernelPackage/solos-pci/description
499  Kernel module for Traverse Technologies' Solos PCI cards
500  and Geos ADSL2+ x86 motherboard.
501 endef
502
503 $(eval $(call KernelPackage,solos-pci))
504
505 define KernelPackage/dummy
506   SUBMENU:=$(NETWORK_DEVICES_MENU)
507   TITLE:=Dummy network device
508   KCONFIG:=CONFIG_DUMMY
509   FILES:=$(LINUX_DIR)/drivers/net/dummy.ko
510   AUTOLOAD:=$(call AutoLoad,34,dummy)
511 endef
512
513 define KernelPackage/dummy/description
514   The dummy network device
515 endef
516
517 $(eval $(call KernelPackage,dummy))
518
519 define KernelPackage/ifb
520   SUBMENU:=$(NETWORK_DEVICES_MENU)
521   TITLE:=Intermediate Functional Block support
522   KCONFIG:= \
523         CONFIG_IFB \
524         CONFIG_NET_CLS=y
525   FILES:=$(LINUX_DIR)/drivers/net/ifb.ko
526   AUTOLOAD:=$(call AutoLoad,34,ifb)
527 endef
528
529 define KernelPackage/ifb/description
530   The Intermediate Functional Block
531 endef
532
533 $(eval $(call KernelPackage,ifb))