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