Add kmod-ppp-synctty (#2231)
[openwrt/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 DESCRIPTION:= \
14 Kernel modules for ATM support
15 DEPENDS:=@LINUX_2_6
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 CONFIG_ATM_DRIVERS=y
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 FILES:=$(LINUX_DIR)/drivers/net/bonding/bonding.$(LINUX_KMOD_SUFFIX)
42 KCONFIG:=CONFIG_BONDING
43 SUBMENU:=$(NSMENU)
44 AUTOLOAD:=$(call AutoLoad,40,bonding)
45 endef
46 $(eval $(call KernelPackage,bonding))
47
48 define KernelPackage/ipip
49 TITLE:=IP in IP encapsulation support
50 DESCRIPTION:=\
51 Kernel modules for IP in IP encapsulation
52 KCONFIG:=CONFIG_NET_IPIP
53 SUBMENU:=$(NSMENU)
54 endef
55
56 define KernelPackage/ipip/2.4
57 FILES:=$(LINUX_DIR)/net/ipv4/ipip.$(LINUX_KMOD_SUFFIX)
58 AUTOLOAD:=$(call AutoLoad,30,ipip)
59 endef
60
61 define KernelPackage/ipip/2.6
62 FILES:= \
63 $(LINUX_DIR)/net/ipv4/ipip.$(LINUX_KMOD_SUFFIX) \
64 $(LINUX_DIR)/net/ipv4/tunnel4.$(LINUX_KMOD_SUFFIX)
65 AUTOLOAD:=$(call AutoLoad,30,ipip tunnel4)
66 endef
67 $(eval $(call KernelPackage,ipip))
68
69 define KernelPackage/ipsec
70 TITLE:=IPsec related modules (IPv4 and IPv6)
71 DESCRIPTION:=\
72 Kernel modules for IPsec support in both IPv4 and IPv6.\\\
73 Includes:\\\
74 - af_key\\\
75 - xfrm_user
76 SUBMENU:=$(NSMENU)
77 DEPENDS:=@LINUX_2_6
78 KCONFIG:=CONFIG_NET_KEY
79 FILES:= \
80 $(LINUX_DIR)/net/key/af_key.$(LINUX_KMOD_SUFFIX) \
81 $(LINUX_DIR)/net/xfrm/xfrm_user.$(LINUX_KMOD_SUFFIX)
82 endef
83 $(eval $(call KernelPackage,ipsec))
84
85 define KernelPackage/ipsec4
86 TITLE:=IPsec related modules (IPv4)
87 DESCRIPTION:=\
88 Kernel modules for IPsec support in IPv4.\\\
89 Includes:\\\
90 - ah4\\\
91 - esp4\\\
92 - ipcomp\\\
93 - xfrm4_tunnel
94 SUBMENU:=$(NSMENU)
95 KCONFIG:=CONFIG_INET_AH
96 DEPENDS:=kmod-ipsec
97 FILES:= $(foreach mod,ah4 esp4 ipcomp xfrm4_tunnel, \
98 $(LINUX_DIR)/net/ipv4/$(mod).$(LINUX_KMOD_SUFFIX) \
99 )
100 endef
101 $(eval $(call KernelPackage,ipsec4))
102
103 define KernelPackage/ipsec6
104 TITLE:=IPsec related modules (IPv6)
105 DESCRIPTION:=\
106 Kernel modules for IPsec support in IPv6.\\\
107 Includes:\\\
108 - ah6\\\
109 - esp6\\\
110 - ipcomp6\\\
111 - xfrm6_tunnel\\\
112 - tunnel6
113 SUBMENU:=$(NSMENU)
114 KCONFIG:=CONFIG_INET6_AH
115 DEPENDS:=kmod-ipsec
116 FILES:= $(foreach mod,ah6 esp6 ipcomp6 xfrm6_tunnel tunnel6, \
117 $(LINUX_DIR)/net/ipv6/$(mod).$(LINUX_KMOD_SUFFIX) \
118 )
119 endef
120 $(eval $(call KernelPackage,ipsec6))
121
122
123 define KernelPackage/ipv6
124 TITLE:=IPv6 support
125 DESCRIPTION:=\
126 Kernel modules for IPv6 support
127 KCONFIG:=CONFIG_IPV6
128 SUBMENU:=$(NSMENU)
129 AUTOLOAD:=$(call AutoLoad,20,ipv6)
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/ppp-synctty
193 TITLE:=PPP sync tty support
194 DESCRIPTION:=\
195 Kernel modules for PPP sync tty support
196 DEPENDS:=kmod-ppp
197 KCONFIG:=CONFIG_PPP_SYNC_TTY
198 SUBMENU:=$(NSMENU)
199 FILES:=$(LINUX_DIR)/drivers/net/ppp_synctty.$(LINUX_KMOD_SUFFIX)
200 AUTOLOAD:=$(call AutoLoad,40,ppp_synctty)
201 endef
202 $(eval $(call KernelPackage,ppp-synctty))
203
204
205 define KernelPackage/pppoe
206 TITLE:=PPPoE support
207 DESCRIPTION:=\
208 Kernel modules for PPPoE (PPP over Ethernet) support
209 DEPENDS:=kmod-ppp
210 KCONFIG:=CONFIG_PPPOE
211 FILES:= \
212 $(LINUX_DIR)/drivers/net/pppoe.$(LINUX_KMOD_SUFFIX) \
213 $(LINUX_DIR)/drivers/net/pppox.$(LINUX_KMOD_SUFFIX)
214 SUBMENU:=$(NSMENU)
215 endef
216 $(eval $(call KernelPackage,pppoe))
217
218
219 define KernelPackage/pppoa
220 TITLE:=PPPoA support
221 DESCRIPTION:=\
222 Kernel modules for PPPoA (PPP over ATM) support
223 DEPENDS:=kmod-ppp kmod-atm
224 KCONFIG:=CONFIG_PPPOATM
225 FILES:=$(LINUX_DIR)/net/atm/pppoatm.$(LINUX_KMOD_SUFFIX)
226 AUTOLOAD:=$(call AutoLoad,40,pppoatm)
227 SUBMENU:=$(NSMENU)
228 endef
229 $(eval $(call KernelPackage,pppoa))
230
231
232 define KernelPackage/mppe
233 TITLE:=Microsoft PPP compression/encryption
234 DESCRIPTION:=Kernel modules for Microsoft PPP compression/encryption
235 DEPENDS:=kmod-ppp
236 KCONFIG:=CONFIG_PPP_MPPE_MPPC CONFIG_PPP_MPPE
237 SUBMENU:=$(NSMENU)
238 endef
239
240 define KernelPackage/mppe/2.4
241 FILES:=$(LINUX_DIR)/drivers/net/ppp_mppe_mppc.$(LINUX_KMOD_SUFFIX)
242 AUTOLOAD:=$(call AutoLoad,31,ppp_mppe_mppc)
243 endef
244
245 define KernelPackage/mppe/2.6
246 FILES:=$(LINUX_DIR)/drivers/net/ppp_mppe.$(LINUX_KMOD_SUFFIX)
247 AUTOLOAD:=$(call AutoLoad,31,ppp_mppe)
248 endef
249 $(eval $(call KernelPackage,mppe))
250
251
252 define KernelPackage/sched
253 TITLE:=Traffic schedulers
254 DESCRIPTION:=\
255 Kernel schedulers for IP traffic
256 FILES:=$(LINUX_DIR)/net/sched/*.$(LINUX_KMOD_SUFFIX)
257 SUBMENU:=$(NSMENU)
258 endef
259 $(eval $(call KernelPackage,sched))
260
261
262
263 define KernelPackage/ax25
264 TITLE:=AX25 support
265 DESCRIPTION:=Kernel modules for AX25 support
266 SUBMENU:=$(NSMENU)
267 KCONFIG:=CONFIG_AX25 CONFIG_MKISS
268 FILES:= \
269 $(LINUX_DIR)/net/ax25/ax25.$(LINUX_KMOD_SUFFIX) \
270 $(LINUX_DIR)/drivers/net/hamradio/mkiss.$(LINUX_KMOD_SUFFIX)
271 AUTOLOAD:=$(call AutoLoad,80,ax25 mkiss)
272 endef
273 $(eval $(call KernelPackage,ax25))
274
275
276 define KernelPackage/mp-alg
277 TITLE:=ECMP caching algorithms
278 DEPENDS:=@LINUX_2_6
279 DESCRIPTION:= \
280 Kernel modules that provide several different algorithms for multipath \\\
281 route selection from the route cache. The iproute "mpath" argument allows \\\
282 specifying which algorithm to use for routes. \\\
283 quagga (at least <=0.99.6) requires a multipath patch to support this \\\
284 cached mp route feature.
285 SUBMENU:=$(NSMENU)
286 KCONFIG:=CONFIG_IP_ROUTE_MULTIPATH_RR CONFIG_IP_ROUTE_MULTIPATH_RANDOM CONFIG_IP_ROUTE_MULTIPATH_WRANDOM CONFIG_IP_ROUTE_MULTIPATH_DRR
287 FILES:=$(LINUX_DIR)/net/ipv4/multipath_*.$(LINUX_KMOD_SUFFIX)
288 AUTOLOAD:=$(call AutoLoad,35,multipath_rr multipath_random multipath_wrandom multipath_drr)
289 endef
290 $(eval $(call KernelPackage,mp-alg))
291
292
293 NDMENU:=Network Devices
294
295 define KernelPackage/natsemi
296 TITLE:=National Semiconductor DP8381x series
297 DESCRIPTION:=\
298 Kernel modules for National Semiconductor DP8381x series PCI Ethernet \\\
299 adapters.
300 FILES:=$(LINUX_DIR)/drivers/net/natsemi.$(LINUX_KMOD_SUFFIX)
301 KCONFIG:=CONFIG_NATSEMI
302 DEPENDS:=@LINUX_2_6_X86
303 SUBMENU:=$(NDMENU)
304 AUTOLOAD:=$(call AutoLoad,20,natsemi)
305 endef
306 $(eval $(call KernelPackage,natsemi))
307
308 define KernelPackage/r6040
309 TITLE:=RDC Fast-Ethernet support
310 DESCRIPTION:=\
311 Kernel modules for RDC Fast-Ethernet adapters.
312 FILES:=$(LINUX_DIR)/drivers/net/r6040.$(LINUX_KMOD_SUFFIX)
313 KCONFIG:=CONFIG_R6040
314 DEPENDS:=@LINUX_2_6_RDC
315 SUBMENU:=$(NDMENU)
316 endef
317 $(eval $(call KernelPackage,r6040))
318
319 define KernelPackage/sis900
320 TITLE:=SiS 900 Ethernet support
321 DESCRIPTION:=\
322 Kernel modules for Sis 900 Ethernet adapters.
323 FILES:=$(LINUX_DIR)/drivers/net/sis900.$(LINUX_KMOD_SUFFIX)
324 KCONFIG:=CONFIG_SIS900
325 DEPENDS:=@LINUX_2_6_X86
326 SUBMENU:=$(NDMENU)
327 AUTOLOAD:=$(call AutoLoad,50,sis900)
328 endef
329 $(eval $(call KernelPackage,sis900))
330
331 define KernelPackage/via-rhine
332 TITLE:=Via Rhine ethernet support
333 DESCRIPTION:=\
334 Kernel modules for Via Rhine Ethernet chipsets.
335 FILES:=$(LINUX_DIR)/drivers/net/via-rhine.$(LINUX_KMOD_SUFFIX)
336 KCONFIG:=CONFIG_VIA_RHINE
337 DEPENDS:=@LINUX_2_6_X86
338 SUBMENU:=$(NDMENU)
339 AUTOLOAD:=$(call AutoLoad,50,via-rhine)
340 endef
341 $(eval $(call KernelPackage,via-rhine))
342
343 define KernelPackage/via-velocity
344 TITLE:=VIA Velocity Gigabit Ethernet Adapter kernel support
345 DESCRIPTION:=\
346 Kernel modules for VIA Velocity Gigabit Ethernet chipsets.
347 FILES:=$(LINUX_DIR)/drivers/net/via-velocity.$(LINUX_KMOD_SUFFIX)
348 KCONFIG:=CONFIG_VIA_VELOCITY
349 DEPENDS:=@LINUX_2_6_IXP4XX
350 SUBMENU:=$(NDMENU)
351 AUTOLOAD:=$(call AutoLoad,50,via-velocity)
352 endef
353 $(eval $(call KernelPackage,via-velocity))
354
355 define KernelPackage/8139too
356 TITLE:=RealTek RTL-8139 PCI Fast Ethernet Adapter kernel support
357 DESCRIPTION:=\
358 Kernel modules for RealTek RTL-8139 PCI Fast Ethernet adapters.
359 FILES:=$(LINUX_DIR)/drivers/net/8139too.$(LINUX_KMOD_SUFFIX)
360 KCONFIG:=CONFIG_8139TOO
361 DEPENDS:=@LINUX_2_6_X86
362 SUBMENU:=$(NDMENU)
363 AUTOLOAD:=$(call AutoLoad,50,8139too)
364 endef
365 $(eval $(call KernelPackage,8139too))
366
367 define KernelPackage/r8169
368 TITLE:=RealTek RTL-8169 PCI Gigabit Ethernet Adapter kernel support
369 DESCRIPTION:=\
370 Kernel modules for RealTek RTL-8169 PCI Gigabit Ethernet adapters.
371 FILES:=$(LINUX_DIR)/drivers/net/r8169.$(LINUX_KMOD_SUFFIX)
372 KCONFIG:=CONFIG_R8169 CONFIG_R8169_NAPI=y CONFIG_R8169_VLAN=n
373 DEPENDS:=@LINUX_2_6_X86
374 SUBMENU:=$(NDMENU)
375 AUTOLOAD:=$(call AutoLoad,50,r8169)
376 endef
377 $(eval $(call KernelPackage,r8169))
378
379 define KernelPackage/ne2k-pci
380 TITLE:=ne2k-pci Ethernet Adapter kernel support
381 DESCRIPTION:=\
382 ne2k-pci Ethernet Adapter kernel support.
383 FILES:=$(LINUX_DIR)/drivers/net/ne2k-pci.$(LINUX_KMOD_SUFFIX) \
384 $(LINUX_DIR)/drivers/net/8390.$(LINUX_KMOD_SUFFIX)
385 KCONFIG:=CONFIG_NE2K_PCI
386 DEPENDS:=@LINUX_2_6_X86
387 SUBMENU:=$(NDMENU)
388 AUTOLOAD:=$(call AutoLoad,50,8390 ne2k-pci)
389 endef
390 $(eval $(call KernelPackage,ne2k-pci))
391
392 define KernelPackage/ixp4xx-npe
393 TITLE:=Intel(R) IXP4xx ethernet support
394 DESCRIPTION:=\
395 Kernel modules for Intel(R) IXP4xx onboard ethernet.
396 FILES:=$(LINUX_DIR)/drivers/net/ixp4xx/ixp4xx_npe.$(LINUX_KMOD_SUFFIX) \
397 $(LINUX_DIR)/drivers/net/ixp4xx/ixp4xx_qmgr.$(LINUX_KMOD_SUFFIX) \
398 $(LINUX_DIR)/drivers/net/ixp4xx/ixp4xx_mac.$(LINUX_KMOD_SUFFIX)
399 KCONFIG:=CONFIG_IXP4XX_MAC
400 DEPENDS:=@LINUX_2_6_IXP4XX
401 SUBMENU:=$(NDMENU)
402 AUTOLOAD:=$(call AutoLoad,20,ixp4xx_npe ixp4xx_qmgr ixp4xx_mac)
403 endef
404 $(eval $(call KernelPackage,ixp4xx-npe))
405
406 define KernelPackage/e100
407 TITLE:=Intel(R) PRO/100+ cards kernel support
408 DESCRIPTION:=\
409 Kernel modules for Intel(R) PRO/100+ Ethernet adapters.
410 FILES:=$(LINUX_DIR)/drivers/net/e100.$(LINUX_KMOD_SUFFIX)
411 KCONFIG:=CONFIG_E100
412 DEPENDS:=@LINUX_2_6_X86
413 SUBMENU:=$(NDMENU)
414 AUTOLOAD:=$(call AutoLoad,50,e100)
415 endef
416 $(eval $(call KernelPackage,e100))
417
418 define KernelPackage/e1000
419 TITLE:=Intel(R) PRO/1000 cards kernel support
420 DESCRIPTION:=\
421 Kernel modules for Intel(R) PRO/1000 Ethernet adapters.
422 FILES:=$(LINUX_DIR)/drivers/net/e1000/e1000.$(LINUX_KMOD_SUFFIX)
423 KCONFIG:=CONFIG_E1000
424 DEPENDS:=@LINUX_2_6_X86
425 SUBMENU:=$(NDMENU)
426 AUTOLOAD:=$(call AutoLoad,50,e1000)
427 endef
428 $(eval $(call KernelPackage,e1000))
429
430 define KernelPackage/3c59x
431 TITLE:=3Com 3c590/3c900 series (592/595/597) Vortex/Boomerang
432 DESCRIPTION:=\
433 This option enables driver support for a large number of 10mbps and \\\
434 10/100mbps EISA, PCI and PCMCIA 3Com Ethernet adapters: \\\
435 - "Vortex" (Fast EtherLink 3c590/3c592/3c595/3c597) EISA and PCI \\\
436 - "Boomerang" (EtherLink XL 3c900 or 3c905) PCI \\\
437 - "Cyclone" (3c540/3c900/3c905/3c980/3c575/3c656) PCI and Cardbus \\\
438 - "Tornado" (3c905) PCI \\\
439 - "Hurricane" (3c555/3cSOHO) PCI
440 FILES:=$(LINUX_DIR)/drivers/net/3c59x.$(LINUX_KMOD_SUFFIX)
441 KCONFIG:=CONFIG_3C59X
442 DEPENDS:=@LINUX_2_6_X86
443 SUBMENU:=$(NDMENU)
444 AUTOLOAD:=$(call AutoLoad,50,3c59x)
445 endef
446 $(eval $(call KernelPackage,3c59x))