fix KCONFIG in packages: move back all KCONFIG from package variants to the main...
[openwrt/svn-archive/archive.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:=@LINUX_2_6_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:=@LINUX_2_6_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:=@LINUX_2_6_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:=@LINUX_2_6_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:=@LINUX_2_6_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:=@LINUX_2_6_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:=@LINUX_2_6_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:=@LINUX_2_6_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:=@LINUX_2_6_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:=@LINUX_2_6_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:=@LINUX_2_6_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:=@LINUX_2_6_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))