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