fix target names in DEPENDS (closes: #2341)
[openwrt.git] / package / kernel / modules / network.mk
1
2 # Copyright (C) 2006 OpenWrt.org
3 #
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
6 #
7 # $Id$
8
9 NSMENU:=Network Support
10
11 define KernelPackage/atm
12   SUBMENU:=$(NSMENU)
13   TITLE:=ATM support
14   DEPENDS:=@LINUX_2_6
15   KCONFIG:= \
16         CONFIG_ATM \
17         CONFIG_ATM_BR2684
18   FILES:= \
19         $(LINUX_DIR)/net/atm/atm.$(LINUX_KMOD_SUFFIX) \
20         $(LINUX_DIR)/net/atm/br2684.$(LINUX_KMOD_SUFFIX)
21   AUTOLOAD:=$(call AutoLoad,30,atm br2684)
22 endef
23
24 define KernelPackage/atm/description
25  Kernel modules for ATM support
26 endef
27
28 $(eval $(call KernelPackage,atm))
29
30
31 define KernelPackage/atmtcp
32   SUBMENU:=$(NSMENU)
33   TITLE:=ATM over TCP
34   DEPENDS:=@LINUX_2_6 kmod-atm
35   KCONFIG:=CONFIG_ATM_TCP CONFIG_ATM_DRIVERS=y
36   FILES:=$(LINUX_DIR)/drivers/atm/atmtcp.$(LINUX_KMOD_SUFFIX)
37   AUTOLOAD:=$(call AutoLoad,40,atmtcp)
38 endef
39
40 define KernelPackage/atmtcp/description
41  Kernel module for ATM over TCP support
42 endef
43
44 $(eval $(call KernelPackage,atmtcp))
45
46
47 define KernelPackage/bonding
48   SUBMENU:=$(NSMENU)
49   TITLE:=Ethernet bonding driver
50   KCONFIG:=CONFIG_BONDING
51   FILES:=$(LINUX_DIR)/drivers/net/bonding/bonding.$(LINUX_KMOD_SUFFIX)
52   AUTOLOAD:=$(call AutoLoad,40,bonding)
53 endef
54
55 define KernelPackage/bonding/description
56  Kernel module for NIC bonding.
57 endef
58
59 $(eval $(call KernelPackage,bonding))
60
61
62 define KernelPackage/ipip
63   SUBMENU:=$(NSMENU)
64   TITLE:=IP in IP encapsulation support
65   KCONFIG:= \
66         CONFIG_NET_IPIP \
67         CONFIG_INET_TUNNEL
68   FILES:=$(LINUX_DIR)/net/ipv4/ipip.$(LINUX_KMOD_SUFFIX)
69   AUTOLOAD:=$(call AutoLoad,30,ipip)
70 endef
71
72 define KernelPackage/ipip/2.6
73 #  KCONFIG+=CONFIG_INET_TUNNEL
74   FILES+=$(LINUX_DIR)/net/ipv4/tunnel4.$(LINUX_KMOD_SUFFIX)
75   AUTOLOAD+=$(call AutoLoad,31,tunnel4)
76 endef
77
78 define KernelPackage/ipip/description
79  Kernel modules for IP in IP encapsulation
80 endef
81
82 $(eval $(call KernelPackage,ipip))
83
84
85 define KernelPackage/ipsec
86   SUBMENU:=$(NSMENU)
87   TITLE:=IPsec related modules (IPv4 and IPv6)
88   DEPENDS:=@LINUX_2_6
89   KCONFIG:= \
90         CONFIG_NET_KEY \
91         CONFIG_XFRM_USER
92   FILES:= \
93         $(LINUX_DIR)/net/key/af_key.$(LINUX_KMOD_SUFFIX) \
94         $(LINUX_DIR)/net/xfrm/xfrm_user.$(LINUX_KMOD_SUFFIX)
95 endef
96
97 define KernelPackage/ipsec/description
98  Kernel modules for IPsec support in both IPv4 and IPv6.
99  Includes:
100  - af_key
101  - xfrm_user
102 endef
103
104 $(eval $(call KernelPackage,ipsec))
105
106
107 define KernelPackage/ipsec4
108   SUBMENU:=$(NSMENU)
109   TITLE:=IPsec related modules (IPv4)
110   DEPENDS:=kmod-ipsec
111   KCONFIG:= \
112         CONFIG_INET_AH \
113         CONFIG_INET_ESP \
114         CONFIG_INET_IPCOMP \
115         CONFIG_INET_XFRM_TUNNEL
116   FILES:= $(foreach mod,ah4 esp4 ipcomp xfrm4_tunnel, \
117         $(LINUX_DIR)/net/ipv4/$(mod).$(LINUX_KMOD_SUFFIX) \
118   )
119 endef
120
121 define KernelPackage/ipsec4/description
122  Kernel modules for IPsec support in IPv4.
123  Includes:
124  - ah4
125  - esp4
126  - ipcomp
127  - xfrm4_tunnel
128 endef
129
130 $(eval $(call KernelPackage,ipsec4))
131
132
133 define KernelPackage/ipsec6
134   SUBMENU:=$(NSMENU)
135   TITLE:=IPsec related modules (IPv6)
136   DEPENDS:=kmod-ipsec
137   KCONFIG:= \
138         CONFIG_INET6_AH \
139         CONFIG_INET6_ESP \
140         CONFIG_INET6_IPCOMP \
141         CONFIG_INET6_XFRM_TUNNEL \
142         CONFIG_INET6_TUNNEL
143   FILES:= $(foreach mod,ah6 esp6 ipcomp6 xfrm6_tunnel tunnel6, \
144         $(LINUX_DIR)/net/ipv6/$(mod).$(LINUX_KMOD_SUFFIX) \
145   )
146 endef
147
148 define KernelPackage/ipsec6/description
149  Kernel modules for IPsec support in IPv6.
150  Includes:
151  - ah6
152  - esp6
153  - ipcomp6
154  - xfrm6_tunnel
155  - tunnel6
156 endef
157
158 $(eval $(call KernelPackage,ipsec6))
159
160
161 define KernelPackage/ipv6
162   SUBMENU:=$(NSMENU)
163   TITLE:=IPv6 support
164   KCONFIG:= \
165         CONFIG_IPV6 \
166         CONFIG_IPV6_SIT
167   FILES:=$(LINUX_DIR)/net/ipv6/ipv6.$(LINUX_KMOD_SUFFIX)
168   AUTOLOAD:=$(call AutoLoad,20,ipv6)
169 endef
170
171 define KernelPackage/ipv6/2.6
172 #  KCONFIG+=CONFIG_IPV6_SIT
173   FILES+=$(LINUX_DIR)/net/ipv6/sit.$(LINUX_KMOD_SUFFIX)
174   AUTOLOAD+=$(call AutoLoad,21,sit)
175 endef
176
177 define KernelPackage/ipv6/description
178  Kernel modules for IPv6 support
179 endef
180
181 $(eval $(call KernelPackage,ipv6))
182
183
184 define KernelPackage/gre
185   SUBMENU:=$(NSMENU)
186   TITLE:=GRE support
187   KCONFIG:=CONFIG_NET_IPGRE
188   FILES=$(LINUX_DIR)/net/ipv4/ip_gre.$(LINUX_KMOD_SUFFIX)
189 endef
190
191 define KernelPackage/gre/description
192  Generic Routing Encapsulation support
193 endef
194
195 $(eval $(call KernelPackage,gre))
196
197
198 define KernelPackage/tun
199   SUBMENU:=$(NSMENU)
200   TITLE:=Universal TUN/TAP driver
201   KCONFIG:=CONFIG_TUN
202   FILES:=$(LINUX_DIR)/drivers/net/tun.$(LINUX_KMOD_SUFFIX)
203   AUTOLOAD:=$(call AutoLoad,30,tun)
204 endef
205
206 define KernelPackage/tun/description
207  Kernel support for the TUN/TAP tunneling device
208 endef
209
210 $(eval $(call KernelPackage,tun))
211
212
213 define KernelPackage/ppp
214   SUBMENU:=$(NSMENU)
215   TITLE:=PPP modules
216   KCONFIG:= \
217         CONFIG_PPP \
218         CONFIG_PPP_ASYNC \
219         CONFIG_SLHC \
220         CONFIG_CRC_CCITT
221   FILES:= \
222         $(LINUX_DIR)/drivers/net/ppp_async.$(LINUX_KMOD_SUFFIX) \
223         $(LINUX_DIR)/drivers/net/ppp_generic.$(LINUX_KMOD_SUFFIX) \
224         $(LINUX_DIR)/drivers/net/slhc.$(LINUX_KMOD_SUFFIX)
225 endef
226
227 define KernelPackage/ppp/2.4
228   AUTOLOAD:=$(call AutoLoad,30,slhc ppp_generic ppp_async)
229 endef
230
231 define KernelPackage/ppp/2.6
232 #  KCONFIG+= \
233 #       CONFIG_SLHC \
234 #       CONFIG_CRC_CCITT
235   FILES+= \
236         $(LINUX_DIR)/lib/crc-ccitt.$(LINUX_KMOD_SUFFIX)
237   AUTOLOAD:=$(call AutoLoad,30,crc-ccitt slhc ppp_generic ppp_async)
238 endef
239
240 define KernelPackage/ppp/description
241  Kernel modules for PPP support
242 endef
243
244 $(eval $(call KernelPackage,ppp))
245
246
247 define KernelPackage/ppp-synctty
248   SUBMENU:=$(NSMENU)
249   TITLE:=PPP sync tty support
250   DEPENDS:=kmod-ppp
251   KCONFIG:=CONFIG_PPP_SYNC_TTY
252   FILES:=$(LINUX_DIR)/drivers/net/ppp_synctty.$(LINUX_KMOD_SUFFIX)
253   AUTOLOAD:=$(call AutoLoad,40,ppp_synctty)
254 endef
255
256 define KernelPackage/ppp-synctty/description
257  Kernel modules for PPP sync tty support
258 endef
259
260 $(eval $(call KernelPackage,ppp-synctty))
261
262
263 define KernelPackage/pppoe
264   SUBMENU:=$(NSMENU)
265   TITLE:=PPPoE support
266   DEPENDS:=kmod-ppp
267   KCONFIG:=CONFIG_PPPOE
268   FILES:= \
269         $(LINUX_DIR)/drivers/net/pppoe.$(LINUX_KMOD_SUFFIX) \
270         $(LINUX_DIR)/drivers/net/pppox.$(LINUX_KMOD_SUFFIX)
271 endef
272
273 define KernelPackage/pppoe/description
274  Kernel modules for PPPoE (PPP over Ethernet) support
275 endef
276
277 $(eval $(call KernelPackage,pppoe))
278
279
280 define KernelPackage/pppoa
281   SUBMENU:=$(NSMENU)
282   TITLE:=PPPoA support
283   DEPENDS:=kmod-ppp kmod-atm
284   KCONFIG:=CONFIG_PPPOATM
285   FILES:=$(LINUX_DIR)/net/atm/pppoatm.$(LINUX_KMOD_SUFFIX)
286   AUTOLOAD:=$(call AutoLoad,40,pppoatm)
287 endef
288
289 define KernelPackage/pppoa/description
290  Kernel modules for PPPoA (PPP over ATM) support
291 endef
292
293 $(eval $(call KernelPackage,pppoa))
294
295
296 define KernelPackage/mppe
297   SUBMENU:=$(NSMENU)
298   TITLE:=Microsoft PPP compression/encryption
299   DEPENDS:=kmod-ppp
300   KCONFIG:= \
301         CONFIG_PPP_MPPE_MPPC \
302         CONFIG_PPP_MPPE
303 endef
304
305 define KernelPackage/mppe/2.4
306 #  KCONFIG:=CONFIG_PPP_MPPE_MPPC
307   FILES:=$(LINUX_DIR)/drivers/net/ppp_mppe_mppc.$(LINUX_KMOD_SUFFIX)
308   AUTOLOAD:=$(call AutoLoad,31,ppp_mppe_mppc)
309 endef
310
311 define KernelPackage/mppe/2.6
312 #  KCONFIG:=CONFIG_PPP_MPPE
313   FILES:=$(LINUX_DIR)/drivers/net/ppp_mppe.$(LINUX_KMOD_SUFFIX)
314   AUTOLOAD:=$(call AutoLoad,31,ppp_mppe)
315 endef
316
317 define KernelPackage/mppe/description
318  Kernel modules for Microsoft PPP compression/encryption
319 endef
320
321 $(eval $(call KernelPackage,mppe))
322
323
324 define KernelPackage/sched
325   SUBMENU:=$(NSMENU)
326   TITLE:=Traffic schedulers
327   KCONFIG:=CONFIG_NET_SCHED
328   FILES:=$(LINUX_DIR)/net/sched/*.$(LINUX_KMOD_SUFFIX)
329 endef
330
331 define KernelPackage/sched/description
332  Kernel schedulers for IP traffic
333 endef
334
335 $(eval $(call KernelPackage,sched))
336
337
338 define KernelPackage/ax25
339   SUBMENU:=$(NSMENU)
340   TITLE:=AX25 support
341   KCONFIG:= \
342         CONFIG_AX25 \
343         CONFIG_MKISS
344   FILES:= \
345         $(LINUX_DIR)/net/ax25/ax25.$(LINUX_KMOD_SUFFIX) \
346         $(LINUX_DIR)/drivers/net/hamradio/mkiss.$(LINUX_KMOD_SUFFIX)
347   AUTOLOAD:=$(call AutoLoad,80,ax25 mkiss)
348 endef
349
350 define KernelPackage/ax25/description
351  Kernel modules for AX25 support
352 endef
353
354 $(eval $(call KernelPackage,ax25))
355
356
357 define KernelPackage/mp-alg
358   SUBMENU:=$(NSMENU)
359   TITLE:=ECMP caching algorithms
360   DEPENDS:=@LINUX_2_6
361   KCONFIG:= \
362         CONFIG_IP_ROUTE_MULTIPATH_RR \
363         CONFIG_IP_ROUTE_MULTIPATH_RANDOM \
364         CONFIG_IP_ROUTE_MULTIPATH_WRANDOM \
365         CONFIG_IP_ROUTE_MULTIPATH_DRR
366   FILES:= \
367         $(LINUX_DIR)/net/ipv4/multipath_rr.$(LINUX_KMOD_SUFFIX) \
368         $(LINUX_DIR)/net/ipv4/multipath_random.$(LINUX_KMOD_SUFFIX) \
369         $(LINUX_DIR)/net/ipv4/multipath_wrandom.$(LINUX_KMOD_SUFFIX) \
370         $(LINUX_DIR)/net/ipv4/multipath_drr.$(LINUX_KMOD_SUFFIX)
371   AUTOLOAD:=$(call AutoLoad,35,multipath_rr multipath_random multipath_wrandom multipath_drr)
372 endef
373
374 define KernelPackage/mp-alg/description
375  Kernel modules that provide several different algorithms for multipath 
376  route selection from the route cache. The iproute "mpath" argument allows 
377  specifying which algorithm to use for routes. 
378  quagga (at least <=0.99.6) requires a multipath patch to support this 
379  cached mp route feature.
380 endef
381
382 $(eval $(call KernelPackage,mp-alg))
383
384
385 NDMENU:=Network Devices
386
387 define KernelPackage/natsemi
388   SUBMENU:=$(NDMENU)
389   TITLE:=National Semiconductor DP8381x series 
390   DEPENDS:=@TARGET_x86
391   KCONFIG:=CONFIG_NATSEMI
392   FILES:=$(LINUX_DIR)/drivers/net/natsemi.$(LINUX_KMOD_SUFFIX)
393   AUTOLOAD:=$(call AutoLoad,20,natsemi)
394 endef
395
396 define KernelPackage/natsemi/description
397  Kernel modules for National Semiconductor DP8381x series PCI Ethernet 
398  adapters.
399 endef
400
401 $(eval $(call KernelPackage,natsemi))
402
403
404 define KernelPackage/r6040
405   SUBMENU:=$(NDMENU)
406   TITLE:=RDC Fast-Ethernet support
407   DEPENDS:=@TARGET_rdc
408   KCONFIG:=CONFIG_R6040
409   FILES:=$(LINUX_DIR)/drivers/net/r6040.$(LINUX_KMOD_SUFFIX)
410 endef
411
412 define KernelPackage/r6040/description
413  Kernel modules for RDC Fast-Ethernet adapters.
414 endef
415
416 $(eval $(call KernelPackage,r6040))
417
418
419 define KernelPackage/sis900
420   SUBMENU:=$(NDMENU)
421   TITLE:=SiS 900 Ethernet support
422   DEPENDS:=@TARGET_x86
423   KCONFIG:=CONFIG_SIS900
424   FILES:=$(LINUX_DIR)/drivers/net/sis900.$(LINUX_KMOD_SUFFIX)
425   AUTOLOAD:=$(call AutoLoad,50,sis900)
426 endef
427
428 define KernelPackage/sis900/description
429  Kernel modules for Sis 900 Ethernet adapters.
430 endef
431
432 $(eval $(call KernelPackage,sis900))
433
434
435 define KernelPackage/via-rhine
436   SUBMENU:=$(NDMENU)
437   TITLE:=Via Rhine ethernet support
438   DEPENDS:=@TARGET_x86
439   KCONFIG:=CONFIG_VIA_RHINE
440   FILES:=$(LINUX_DIR)/drivers/net/via-rhine.$(LINUX_KMOD_SUFFIX)
441   AUTOLOAD:=$(call AutoLoad,50,via-rhine)
442 endef
443
444 define KernelPackage/via-rhine/description
445  Kernel modules for Via Rhine Ethernet chipsets.
446 endef
447
448 $(eval $(call KernelPackage,via-rhine))
449
450
451 define KernelPackage/via-velocity
452   SUBMENU:=$(NDMENU)
453   TITLE:=VIA Velocity Gigabit Ethernet Adapter kernel support
454   DEPENDS:=@TARGET_ixp4xx
455   KCONFIG:=CONFIG_VIA_VELOCITY
456   FILES:=$(LINUX_DIR)/drivers/net/via-velocity.$(LINUX_KMOD_SUFFIX)
457   AUTOLOAD:=$(call AutoLoad,50,via-velocity)
458 endef
459
460 define KernelPackage/via-velocity/description
461  Kernel modules for VIA Velocity Gigabit Ethernet chipsets.
462 endef
463
464 $(eval $(call KernelPackage,via-velocity))
465
466
467 define KernelPackage/8139too
468   SUBMENU:=$(NDMENU)
469   TITLE:=RealTek RTL-8139 PCI Fast Ethernet Adapter kernel support
470   DEPENDS:=@TARGET_x86
471   KCONFIG:=CONFIG_8139TOO
472   FILES:=$(LINUX_DIR)/drivers/net/8139too.$(LINUX_KMOD_SUFFIX)
473   AUTOLOAD:=$(call AutoLoad,50,8139too)
474 endef
475
476 define KernelPackage/8139too/description
477  Kernel modules for RealTek RTL-8139 PCI Fast Ethernet adapters.
478 endef
479
480 $(eval $(call KernelPackage,8139too))
481
482
483 define KernelPackage/r8169
484   SUBMENU:=$(NDMENU)
485   TITLE:=RealTek RTL-8169 PCI Gigabit Ethernet Adapter kernel support
486   DEPENDS:=@TARGET_x86 
487   KCONFIG:=CONFIG_R8169 CONFIG_R8169_NAPI=y CONFIG_R8169_VLAN=n
488   FILES:=$(LINUX_DIR)/drivers/net/r8169.$(LINUX_KMOD_SUFFIX)
489   AUTOLOAD:=$(call AutoLoad,50,r8169)
490 endef
491
492 define KernelPackage/r8169/description
493  Kernel modules for RealTek RTL-8169 PCI Gigabit Ethernet adapters.
494 endef
495
496 $(eval $(call KernelPackage,r8169))
497
498
499 define KernelPackage/ne2k-pci
500   SUBMENU:=$(NDMENU)
501   TITLE:=ne2k-pci Ethernet Adapter kernel support
502   DEPENDS:=@TARGET_x86
503   KCONFIG:=CONFIG_NE2K_PCI
504   FILES:= \
505         $(LINUX_DIR)/drivers/net/ne2k-pci.$(LINUX_KMOD_SUFFIX) \
506         $(LINUX_DIR)/drivers/net/8390.$(LINUX_KMOD_SUFFIX)
507   AUTOLOAD:=$(call AutoLoad,50,8390 ne2k-pci)
508 endef
509
510 define KernelPackage/ne2k-pci/description
511  Kernel modules for NE2000 PCI Ethernet Adapter kernel.
512 endef
513
514 $(eval $(call KernelPackage,ne2k-pci))
515
516
517 define KernelPackage/ixp4xx-npe
518   SUBMENU:=$(NDMENU)
519   TITLE:=Intel(R) IXP4xx ethernet support
520   DEPENDS:=@TARGET_ixp4xx
521   KCONFIG:=CONFIG_IXP4XX_MAC
522   FILES:= \
523         $(LINUX_DIR)/drivers/net/ixp4xx/ixp4xx_npe.$(LINUX_KMOD_SUFFIX) \
524         $(LINUX_DIR)/drivers/net/ixp4xx/ixp4xx_qmgr.$(LINUX_KMOD_SUFFIX) \
525         $(LINUX_DIR)/drivers/net/ixp4xx/ixp4xx_mac.$(LINUX_KMOD_SUFFIX)
526   AUTOLOAD:=$(call AutoLoad,20,ixp4xx_npe ixp4xx_qmgr ixp4xx_mac)
527 endef
528
529 define KernelPackage/ixp4xx-npe/description
530  Kernel modules for Intel(R) IXP4xx onboard ethernet.
531 endef
532
533 $(eval $(call KernelPackage,ixp4xx-npe))
534
535
536 define KernelPackage/e100
537   SUBMENU:=$(NDMENU)
538   TITLE:=Intel(R) PRO/100+ cards kernel support
539   DEPENDS:=@TARGET_x86
540   KCONFIG:=CONFIG_E100
541   FILES:=$(LINUX_DIR)/drivers/net/e100.$(LINUX_KMOD_SUFFIX)
542   AUTOLOAD:=$(call AutoLoad,50,e100)
543 endef
544
545 define KernelPackage/e100/description
546  Kernel modules for Intel(R) PRO/100+ Ethernet adapters.
547 endef
548
549 $(eval $(call KernelPackage,e100))
550
551
552 define KernelPackage/e1000
553   SUBMENU:=$(NDMENU)
554   TITLE:=Intel(R) PRO/1000 cards kernel support
555   DEPENDS:=@TARGET_x86
556   KCONFIG:=CONFIG_E1000
557   FILES:=$(LINUX_DIR)/drivers/net/e1000/e1000.$(LINUX_KMOD_SUFFIX)
558   AUTOLOAD:=$(call AutoLoad,50,e1000)
559 endef
560
561 define KernelPackage/e1000/description
562  Kernel modules for Intel(R) PRO/1000 Ethernet adapters.
563 endef
564
565 $(eval $(call KernelPackage,e1000))
566
567
568 define KernelPackage/3c59x
569   SUBMENU:=$(NDMENU)
570   TITLE:=3Com 3c590/3c900 series (592/595/597) Vortex/Boomerang
571   DEPENDS:=@TARGET_x86
572   KCONFIG:=CONFIG_3C59X
573   FILES:=$(LINUX_DIR)/drivers/net/3c59x.$(LINUX_KMOD_SUFFIX)
574   AUTOLOAD:=$(call AutoLoad,50,3c59x)
575 endef
576
577 define KernelPackage/3c59x/description
578  This option enables driver support for a large number of 10mbps and 
579  10/100mbps EISA, PCI and PCMCIA 3Com Ethernet adapters: 
580  - "Vortex"    (Fast EtherLink 3c590/3c592/3c595/3c597) EISA and PCI 
581  - "Boomerang" (EtherLink XL 3c900 or 3c905)            PCI 
582  - "Cyclone"   (3c540/3c900/3c905/3c980/3c575/3c656)    PCI and Cardbus 
583  - "Tornado"   (3c905)                                  PCI  
584  - "Hurricane" (3c555/3cSOHO)                           PCI 
585 endef
586
587 $(eval $(call KernelPackage,3c59x))