kernel: enable MPPE again, got broken in r26296
[openwrt.git] / package / kernel / modules / netsupport.mk
1 #
2 # Copyright (C) 2006-2008 OpenWrt.org
3 #
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
6 #
7
8 NETWORK_SUPPORT_MENU:=Network Support
9
10 define KernelPackage/atm
11   SUBMENU:=$(NETWORK_SUPPORT_MENU)
12   TITLE:=ATM support
13   KCONFIG:= \
14         CONFIG_ATM \
15         CONFIG_ATM_BR2684
16   FILES:= \
17         $(LINUX_DIR)/net/atm/atm.ko \
18         $(LINUX_DIR)/net/atm/br2684.ko
19   AUTOLOAD:=$(call AutoLoad,30,atm br2684)
20 endef
21
22 define KernelPackage/atm/description
23  Kernel modules for ATM support
24 endef
25
26 $(eval $(call KernelPackage,atm))
27
28
29 define KernelPackage/atmtcp
30   SUBMENU:=$(NETWORK_SUPPORT_MENU)
31   TITLE:=ATM over TCP
32   DEPENDS:=kmod-atm
33   KCONFIG:=CONFIG_ATM_TCP CONFIG_ATM_DRIVERS=y
34   FILES:=$(LINUX_DIR)/drivers/atm/atmtcp.ko
35   AUTOLOAD:=$(call AutoLoad,40,atmtcp)
36 endef
37
38 define KernelPackage/atmtcp/description
39  Kernel module for ATM over TCP support
40 endef
41
42 $(eval $(call KernelPackage,atmtcp))
43
44
45 define KernelPackage/appletalk
46   SUBMENU:=$(NETWORK_SUPPORT_MENU)
47   TITLE:=Appletalk protocol support
48   KCONFIG:= \
49         CONFIG_ATALK \
50         CONFIG_DEV_APPLETALK \
51         CONFIG_IPDDP \
52         CONFIG_IPDDP_ENCAP=y \
53         CONFIG_IPDDP_DECAP=y
54   FILES:= \
55         $(LINUX_DIR)/net/appletalk/appletalk.ko \
56         $(LINUX_DIR)/drivers/net/appletalk/ipddp.ko
57   AUTOLOAD:=$(call AutoLoad,40,appletalk ipddp)
58 endef
59
60 define KernelPackage/appletalk/description
61  Kernel module for AppleTalk protocol.
62 endef
63
64 $(eval $(call KernelPackage,appletalk))
65
66
67 define KernelPackage/bonding
68   SUBMENU:=$(NETWORK_SUPPORT_MENU)
69   TITLE:=Ethernet bonding driver
70   KCONFIG:=CONFIG_BONDING
71   FILES:=$(LINUX_DIR)/drivers/net/bonding/bonding.ko
72   AUTOLOAD:=$(call AutoLoad,40,bonding)
73 endef
74
75 define KernelPackage/bonding/description
76  Kernel module for NIC bonding.
77 endef
78
79 $(eval $(call KernelPackage,bonding))
80
81
82 define KernelPackage/capi
83   SUBMENU:=$(NETWORK_SUPPORT_MENU)
84   TITLE:=CAPI (ISDN) Support
85   KCONFIG:= \
86         CONFIG_ISDN_CAPI \
87         CONFIG_ISDN_CAPI_CAPI20 \
88         CONFIG_ISDN_CAPIFS \
89         CONFIG_ISDN_CAPI_CAPIFS
90   FILES:= \
91         $(LINUX_DIR)/drivers/isdn/capi/kernelcapi.ko \
92         $(LINUX_DIR)/drivers/isdn/capi/capifs.ko \
93         $(LINUX_DIR)/drivers/isdn/capi/capi.ko
94   AUTOLOAD:=$(call AutoLoad,30,kernelcapi capifs capi)
95 endef
96
97 define KernelPackage/capi/description
98  Kernel module for basic CAPI (ISDN) support
99 endef
100
101 $(eval $(call KernelPackage,capi))
102
103 define KernelPackage/misdn
104   SUBMENU:=$(NETWORK_SUPPORT_MENU)
105   TITLE:=mISDN (ISDN) Support
106   KCONFIG:= \
107         CONFIG_ISDN=y \
108         CONFIG_MISDN \
109         CONFIG_MISDN_DSP \
110         CONFIG_MISDN_L1OIP
111   FILES:= \
112         $(LINUX_DIR)/drivers/isdn/mISDN/mISDN_core.ko \
113         $(LINUX_DIR)/drivers/isdn/mISDN/mISDN_dsp.ko \
114         $(LINUX_DIR)/drivers/isdn/mISDN/l1oip.ko
115   AUTOLOAD:=$(call AutoLoad,30,mISDN_core mISDN_dsp l1oip)
116 endef
117
118 define KernelPackage/misdn/description
119   Modular ISDN driver support
120 endef
121
122 $(eval $(call KernelPackage,misdn))
123
124
125 define KernelPackage/isdn4linux
126   SUBMENU:=$(NETWORK_SUPPORT_MENU)
127   TITLE:=Old ISDN4Linux (deprecated)
128   KCONFIG:= \
129         CONFIG_ISDN=y \
130     CONFIG_ISDN_I4L \
131     CONFIG_ISDN_PPP=y \
132     CONFIG_ISDN_PPP_VJ=y \
133     CONFIG_ISDN_MPP=y \
134     CONFIG_IPPP_FILTER=y \
135     CONFIG_ISDN_PPP_BSDCOMP \
136     CONFIG_ISDN_CAPI_MIDDLEWARE=y \
137     CONFIG_ISDN_CAPI_CAPIFS_BOOL=y \
138     CONFIG_ISDN_AUDIO=y \
139     CONFIG_ISDN_TTY_FAX=y \
140     CONFIG_ISDN_X25=y \
141     CONFIG_ISDN_DIVERSION
142   FILES:= \
143     $(LINUX_DIR)/drivers/isdn/divert/dss1_divert.ko \
144         $(LINUX_DIR)/drivers/isdn/i4l/isdn.ko \
145         $(LINUX_DIR)/drivers/isdn/i4l/isdn_bsdcomp.ko
146   AUTOLOAD:=$(call AutoLoad,40,isdn isdn_bsdcomp dss1_divert)
147 endef
148
149 define KernelPackage/isdn4linux/description
150   This driver allows you to use an ISDN adapter for networking
151 endef
152
153 $(eval $(call KernelPackage,isdn4linux))
154
155
156 define KernelPackage/ipip
157   SUBMENU:=$(NETWORK_SUPPORT_MENU)
158   TITLE:=IP-in-IP encapsulation
159   DEPENDS:=+kmod-iptunnel4
160   KCONFIG:=CONFIG_NET_IPIP
161   FILES:=$(LINUX_DIR)/net/ipv4/ipip.ko
162   AUTOLOAD:=$(call AutoLoad,32,ipip)
163 endef
164
165 define KernelPackage/ipip/description
166  Kernel modules for IP-in-IP encapsulation
167 endef
168
169 $(eval $(call KernelPackage,ipip))
170
171
172 IPSEC-m:= \
173         key/af_key \
174         xfrm/xfrm_ipcomp \
175         xfrm/xfrm_user \
176
177 define KernelPackage/ipsec
178   SUBMENU:=$(NETWORK_SUPPORT_MENU)
179   TITLE:=IPsec related modules (IPv4 and IPv6)
180   DEPENDS:=+kmod-crypto-core +kmod-crypto-des +kmod-crypto-hmac +kmod-crypto-md5 +kmod-crypto-sha1 +kmod-crypto-deflate +kmod-crypto-cbc
181   KCONFIG:= \
182         CONFIG_NET_KEY \
183         CONFIG_XFRM_USER \
184         CONFIG_INET_IPCOMP \
185         CONFIG_XFRM_IPCOMP
186   FILES:=$(foreach mod,$(IPSEC-m),$(LINUX_DIR)/net/$(mod).ko)
187   AUTOLOAD:=$(call AutoLoad,30,$(notdir $(IPSEC-m)))
188 endef
189
190 define KernelPackage/ipsec/description
191  Kernel modules for IPsec support in both IPv4 and IPv6.
192  Includes:
193  - af_key
194  - xfrm_ipcomp
195  - xfrm_user
196 endef
197
198 $(eval $(call KernelPackage,ipsec))
199
200
201 IPSEC4-m:= \
202         ipv4/ah4 \
203         ipv4/esp4 \
204         ipv4/xfrm4_mode_beet \
205         ipv4/xfrm4_mode_transport \
206         ipv4/xfrm4_mode_tunnel \
207         ipv4/xfrm4_tunnel \
208         ipv4/ipcomp \
209
210 define KernelPackage/ipsec4
211   SUBMENU:=$(NETWORK_SUPPORT_MENU)
212   TITLE:=IPsec related modules (IPv4)
213   DEPENDS:=kmod-ipsec +kmod-iptunnel4
214   KCONFIG:= \
215         CONFIG_INET_AH \
216         CONFIG_INET_ESP \
217         CONFIG_INET_IPCOMP \
218         CONFIG_INET_XFRM_MODE_BEET \
219         CONFIG_INET_XFRM_MODE_TRANSPORT \
220         CONFIG_INET_XFRM_MODE_TUNNEL \
221         CONFIG_INET_XFRM_TUNNEL
222   FILES:=$(foreach mod,$(IPSEC4-m),$(LINUX_DIR)/net/$(mod).ko)
223   AUTOLOAD:=$(call AutoLoad,32,$(notdir $(IPSEC4-m)))
224 endef
225
226 define KernelPackage/ipsec4/description
227  Kernel modules for IPsec support in IPv4.
228  Includes:
229  - ah4
230  - esp4
231  - ipcomp
232  - xfrm4_mode_beet
233  - xfrm4_mode_transport
234  - xfrm4_mode_tunnel
235  - xfrm4_tunnel
236 endef
237
238 $(eval $(call KernelPackage,ipsec4))
239
240
241 IPSEC6-m:= \
242         ipv6/ah6 \
243         ipv6/esp6 \
244         ipv6/xfrm6_mode_beet \
245         ipv6/xfrm6_mode_transport \
246         ipv6/xfrm6_mode_tunnel \
247         ipv6/xfrm6_tunnel \
248         ipv6/ipcomp6 \
249
250 define KernelPackage/ipsec6
251   SUBMENU:=$(NETWORK_SUPPORT_MENU)
252   TITLE:=IPsec related modules (IPv6)
253   DEPENDS:=kmod-ipsec +kmod-iptunnel6
254   KCONFIG:= \
255         CONFIG_INET6_AH \
256         CONFIG_INET6_ESP \
257         CONFIG_INET6_IPCOMP \
258         CONFIG_INET6_XFRM_MODE_BEET \
259         CONFIG_INET6_XFRM_MODE_TRANSPORT \
260         CONFIG_INET6_XFRM_MODE_TUNNEL \
261         CONFIG_INET6_XFRM_TUNNEL
262   FILES:=$(foreach mod,$(IPSEC6-m),$(LINUX_DIR)/net/$(mod).ko)
263   AUTOLOAD:=$(call AutoLoad,32,$(notdir $(IPSEC6-m)))
264 endef
265
266 define KernelPackage/ipsec6/description
267  Kernel modules for IPsec support in IPv6.
268  Includes:
269  - ah6
270  - esp6
271  - ipcomp6
272  - xfrm6_mode_beet
273  - xfrm6_mode_transport
274  - xfrm6_mode_tunnel
275  - xfrm6_tunnel
276 endef
277
278 $(eval $(call KernelPackage,ipsec6))
279
280
281 # NOTE: tunnel4 is not selectable by itself, so enable ipip for that
282 define KernelPackage/iptunnel4
283   SUBMENU:=$(NETWORK_SUPPORT_MENU)
284   TITLE:=IPv4 tunneling
285   KCONFIG:= \
286         CONFIG_NET_IPIP \
287         CONFIG_INET_TUNNEL
288   FILES:=$(LINUX_DIR)/net/ipv4/tunnel4.ko
289   AUTOLOAD:=$(call AutoLoad,31,tunnel4)
290 endef
291
292 define KernelPackage/iptunnel4/description
293  Kernel modules for IPv4 tunneling
294 endef
295
296 $(eval $(call KernelPackage,iptunnel4))
297
298
299 define KernelPackage/iptunnel6
300   SUBMENU:=$(NETWORK_SUPPORT_MENU)
301   TITLE:=IPv6 tunneling
302   DEPENDS:= +kmod-ipv6
303   KCONFIG:= \
304         CONFIG_INET6_TUNNEL
305   FILES:=$(LINUX_DIR)/net/ipv6/tunnel6.ko
306   AUTOLOAD:=$(call AutoLoad,31,tunnel6)
307 endef
308
309 define KernelPackage/iptunnel6/description
310  Kernel modules for IPv6 tunneling
311 endef
312
313 $(eval $(call KernelPackage,iptunnel6))
314
315
316 define KernelPackage/ipv6
317   SUBMENU:=$(NETWORK_SUPPORT_MENU)
318   TITLE:=IPv6 support
319   KCONFIG:= \
320         CONFIG_IPV6 \
321         CONFIG_IPV6_PRIVACY=y \
322         CONFIG_IPV6_MULTIPLE_TABLES=y \
323         CONFIG_IPV6_MROUTE=y \
324         CONFIG_IPV6_PIMSM_V2=n \
325         CONFIG_IPV6_SUBTREES=y
326   FILES:=$(LINUX_DIR)/net/ipv6/ipv6.ko
327   AUTOLOAD:=$(call AutoLoad,20,ipv6)
328 endef
329
330 define KernelPackage/ipv6/description
331  Kernel modules for IPv6 support
332 endef
333
334 $(eval $(call KernelPackage,ipv6))
335
336
337 define KernelPackage/sit
338   SUBMENU:=$(NETWORK_SUPPORT_MENU)
339   DEPENDS:=+kmod-ipv6 +kmod-iptunnel4
340   TITLE:=IPv6-in-IPv4 tunnel
341   KCONFIG:=CONFIG_IPV6_SIT \
342         CONFIG_IPV6_SIT_6RD=y
343   FILES:=$(LINUX_DIR)/net/ipv6/sit.ko
344   AUTOLOAD:=$(call AutoLoad,32,sit)
345 endef
346
347 define KernelPackage/sit/description
348  Kernel modules for IPv6-in-IPv4 tunnelling
349 endef
350
351 $(eval $(call KernelPackage,sit))
352
353
354 define KernelPackage/ip6-tunnel
355   SUBMENU:=$(NETWORK_SUPPORT_MENU)
356   TITLE:=IP-in-IPv6 tunnelling
357   DEPENDS:= +kmod-ipv6 +kmod-iptunnel6
358   KCONFIG:= CONFIG_IPV6_TUNNEL
359   FILES:=$(LINUX_DIR)/net/ipv6/ip6_tunnel.ko
360   AUTOLOAD:=$(call AutoLoad,32,ip6_tunnel)
361 endef
362
363 define KernelPackage/ip6-tunnel/description
364  Kernel modules for IPv6-in-IPv6 and IPv4-in-IPv6 tunnelling
365 endef
366
367 $(eval $(call KernelPackage,ip6-tunnel))
368
369
370 define KernelPackage/gre
371   SUBMENU:=$(NETWORK_SUPPORT_MENU)
372   TITLE:=GRE support
373   KCONFIG:=CONFIG_NET_IPGRE CONFIG_NET_IPGRE_DEMUX
374  ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),ge,2.6.37)),1)
375   FILES:=$(LINUX_DIR)/net/ipv4/ip_gre.ko $(LINUX_DIR)/net/ipv4/gre.ko
376   AUTOLOAD:=$(call AutoLoad,39,gre ip_gre)
377  else
378   FILES:=$(LINUX_DIR)/net/ipv4/ip_gre.ko
379   AUTOLOAD:=$(call AutoLoad,39,ip_gre)
380  endif
381 endef
382
383 define KernelPackage/gre/description
384  Generic Routing Encapsulation support
385 endef
386
387 $(eval $(call KernelPackage,gre))
388
389
390 define KernelPackage/tun
391   SUBMENU:=$(NETWORK_SUPPORT_MENU)
392   TITLE:=Universal TUN/TAP driver
393   KCONFIG:=CONFIG_TUN
394   FILES:=$(LINUX_DIR)/drivers/net/tun.ko
395   AUTOLOAD:=$(call AutoLoad,30,tun)
396 endef
397
398 define KernelPackage/tun/description
399  Kernel support for the TUN/TAP tunneling device
400 endef
401
402 $(eval $(call KernelPackage,tun))
403
404
405 define KernelPackage/ppp
406   SUBMENU:=$(NETWORK_SUPPORT_MENU)
407   TITLE:=PPP modules
408   DEPENDS:=+kmod-crc-ccitt
409   KCONFIG:= \
410         CONFIG_PPP \
411         CONFIG_PPP_ASYNC \
412         CONFIG_SLHC
413   FILES:= \
414         $(LINUX_DIR)/drivers/net/ppp_async.ko \
415         $(LINUX_DIR)/drivers/net/ppp_generic.ko \
416         $(LINUX_DIR)/drivers/net/slhc.ko
417   AUTOLOAD:=$(call AutoLoad,30,slhc ppp_generic ppp_async)
418 endef
419
420 define KernelPackage/ppp/description
421  Kernel modules for PPP support
422 endef
423
424 $(eval $(call KernelPackage,ppp))
425
426
427 define KernelPackage/ppp-synctty
428   SUBMENU:=$(NETWORK_SUPPORT_MENU)
429   TITLE:=PPP sync tty support
430   DEPENDS:=kmod-ppp
431   KCONFIG:=CONFIG_PPP_SYNC_TTY
432   FILES:=$(LINUX_DIR)/drivers/net/ppp_synctty.ko
433   AUTOLOAD:=$(call AutoLoad,40,ppp_synctty)
434 endef
435
436 define KernelPackage/ppp-synctty/description
437  Kernel modules for PPP sync tty support
438 endef
439
440 $(eval $(call KernelPackage,ppp-synctty))
441
442
443 define KernelPackage/pppoe
444   SUBMENU:=$(NETWORK_SUPPORT_MENU)
445   TITLE:=PPPoE support
446   DEPENDS:=kmod-ppp
447   KCONFIG:=CONFIG_PPPOE
448   FILES:= \
449         $(LINUX_DIR)/drivers/net/pppoe.ko \
450         $(LINUX_DIR)/drivers/net/pppox.ko
451   AUTOLOAD:=$(call AutoLoad,40,pppox pppoe)
452 endef
453
454 define KernelPackage/pppoe/description
455  Kernel modules for PPPoE (PPP over Ethernet) support
456 endef
457
458 $(eval $(call KernelPackage,pppoe))
459
460
461 define KernelPackage/pppoa
462   SUBMENU:=$(NETWORK_SUPPORT_MENU)
463   TITLE:=PPPoA support
464   DEPENDS:=kmod-ppp +kmod-atm
465   KCONFIG:=CONFIG_PPPOATM CONFIG_ATM_DRIVERS=y
466   FILES:=$(LINUX_DIR)/net/atm/pppoatm.ko
467   AUTOLOAD:=$(call AutoLoad,40,pppoatm)
468 endef
469
470 define KernelPackage/pppoa/description
471  Kernel modules for PPPoA (PPP over ATM) support
472 endef
473
474 $(eval $(call KernelPackage,pppoa))
475
476
477 define KernelPackage/pptp
478   SUBMENU:=$(NETWORK_SUPPORT_MENU)
479   TITLE:=PPtP support
480   DEPENDS:=kmod-ppp +kmod-gre @LINUX_2_6_37||LINUX_2_6_38
481   KCONFIG:=CONFIG_PPTP
482   FILES:=$(LINUX_DIR)/drivers/net/pptp.ko
483   AUTOLOAD:=$(call AutoLoad,41,pptp)
484 endef
485
486 $(eval $(call KernelPackage,pptp))
487         
488
489 define KernelPackage/pppol2tp
490   SUBMENU:=$(NETWORK_SUPPORT_MENU)
491   TITLE:=PPPoL2TP support
492   DEPENDS:=kmod-ppp +kmod-pppoe +LINUX_2_6_35||LINUX_2_6_36||LINUX_2_6_37||LINUX_2_6_38:kmod-l2tp
493   KCONFIG:=CONFIG_PPPOL2TP
494   ifneq ($(CONFIG_LINUX_2_6_35)$(CONFIG_LINUX_2_6_36)$(CONFIG_LINUX_2_6_37)$(CONFIG_LINUX_2_6_38),)
495     FILES:=$(LINUX_DIR)/net/l2tp/l2tp_ppp.ko
496     AUTOLOAD:=$(call AutoLoad,40,l2tp_ppp)
497   else
498     FILES:=$(LINUX_DIR)/drivers/net/pppol2tp.ko
499     AUTOLOAD:=$(call AutoLoad,40,pppol2tp)
500   endif
501 endef
502
503 define KernelPackage/pppol2tp/description
504   Kernel modules for PPPoL2TP (PPP over L2TP) support
505 endef
506
507 $(eval $(call KernelPackage,pppol2tp))
508
509
510 define KernelPackage/ipoa
511   SUBMENU:=$(NETWORK_SUPPORT_MENU)
512   TITLE:=IPoA support
513   DEPENDS:=kmod-atm
514   KCONFIG:=CONFIG_ATM_CLIP
515   FILES:=$(LINUX_DIR)/net/atm/clip.ko
516   AUTOLOAD:=$(call AutoLoad,40,clip)
517 endef
518
519 define KernelPackage/ipoa/description
520   Kernel modules for IPoA (IP over ATM) support
521 endef
522
523 $(eval $(call KernelPackage,ipoa))
524
525
526 define KernelPackage/mppe
527   SUBMENU:=$(NETWORK_SUPPORT_MENU)
528   TITLE:=Microsoft PPP compression/encryption
529   DEPENDS:=kmod-ppp +kmod-crypto-core +kmod-crypto-arc4 +kmod-crypto-sha1 +kmod-crypto-ecb
530   KCONFIG:= \
531         CONFIG_PPP_MPPE_MPPC \
532         CONFIG_PPP_MPPE
533   FILES:=$(LINUX_DIR)/drivers/net/ppp_mppe.ko
534   AUTOLOAD:=$(call AutoLoad,31,ppp_mppe)
535 endef
536
537 define KernelPackage/mppe/description
538  Kernel modules for Microsoft PPP compression/encryption
539 endef
540
541 $(eval $(call KernelPackage,mppe))
542
543
544 define KernelPackage/sched
545   SUBMENU:=$(NETWORK_SUPPORT_MENU)
546   TITLE:=Traffic schedulers
547   KCONFIG:= \
548         CONFIG_NET_SCHED=y \
549         CONFIG_NET_SCH_DSMARK \
550         CONFIG_NET_SCH_ESFQ \
551         CONFIG_NET_SCH_ESFQ_NFCT=y \
552         CONFIG_NET_SCH_FIFO \
553         CONFIG_NET_SCH_GRED \
554         CONFIG_NET_SCH_HFSC \
555         CONFIG_NET_SCH_HTB \
556         CONFIG_NET_SCH_INGRESS \
557         CONFIG_NET_SCH_PRIO \
558         CONFIG_NET_SCH_RED \
559         CONFIG_NET_SCH_TBF \
560         CONFIG_NET_SCH_SFQ \
561         CONFIG_NET_SCH_TEQL \
562         CONFIG_NET_CLS=y \
563         CONFIG_NET_CLS_ACT=y \
564         CONFIG_NET_CLS_BASIC \
565         CONFIG_NET_CLS_FLOW \
566         CONFIG_NET_CLS_FW \
567         CONFIG_NET_CLS_ROUTE4 \
568         CONFIG_NET_CLS_TCINDEX \
569         CONFIG_NET_CLS_U32 \
570         CONFIG_NET_ACT_MIRRED \
571         CONFIG_NET_ACT_IPT \
572         CONFIG_NET_ACT_POLICE \
573         CONFIG_NET_ACT_CONNMARK \
574         CONFIG_NET_ACT_SKBEDIT \
575         CONFIG_NET_EMATCH=y \
576         CONFIG_NET_EMATCH_CMP \
577         CONFIG_NET_EMATCH_NBYTE \
578         CONFIG_NET_EMATCH_U32 \
579         CONFIG_NET_EMATCH_META \
580         CONFIG_NET_EMATCH_TEXT
581   FILES:=$(LINUX_DIR)/net/sched/*.ko
582 endef
583
584 define KernelPackage/sched/description
585  Kernel schedulers for IP traffic
586 endef
587
588 $(eval $(call KernelPackage,sched))
589
590
591 define KernelPackage/ax25
592   SUBMENU:=$(NETWORK_SUPPORT_MENU)
593   TITLE:=AX25 support
594   KCONFIG:= \
595         CONFIG_AX25 \
596         CONFIG_MKISS
597   FILES:= \
598         $(LINUX_DIR)/net/ax25/ax25.ko \
599         $(LINUX_DIR)/drivers/net/hamradio/mkiss.ko
600   AUTOLOAD:=$(call AutoLoad,80,ax25 mkiss)
601   $(call AddDepends/crc16)
602 endef
603
604 define KernelPackage/ax25/description
605  Kernel modules for AX25 support
606 endef
607
608 $(eval $(call KernelPackage,ax25))
609
610
611 define KernelPackage/mp-alg
612   SUBMENU:=$(NETWORK_SUPPORT_MENU)
613   TITLE:=ECMP caching algorithms
614   KCONFIG:= \
615         CONFIG_IP_ROUTE_MULTIPATH_RR \
616         CONFIG_IP_ROUTE_MULTIPATH_RANDOM \
617         CONFIG_IP_ROUTE_MULTIPATH_WRANDOM \
618         CONFIG_IP_ROUTE_MULTIPATH_DRR
619   FILES:= \
620         $(LINUX_DIR)/net/ipv4/multipath_rr.ko \
621         $(LINUX_DIR)/net/ipv4/multipath_random.ko \
622         $(LINUX_DIR)/net/ipv4/multipath_wrandom.ko \
623         $(LINUX_DIR)/net/ipv4/multipath_drr.ko
624   AUTOLOAD:=$(call AutoLoad,35,multipath_rr multipath_random multipath_wrandom multipath_drr)
625 endef
626
627 define KernelPackage/mp-alg/description
628  Kernel modules that provide several different algorithms for multipath
629  route selection from the route cache. The iproute "mpath" argument allows
630  specifying which algorithm to use for routes.
631  quagga (at least <=0.99.6) requires a multipath patch to support this
632  cached mp route feature.
633 endef
634
635 $(eval $(call KernelPackage,mp-alg))
636
637
638 define KernelPackage/pktgen
639   SUBMENU:=$(NETWORK_SUPPORT_MENU)
640   TITLE:=Network packet generator
641   KCONFIG:=CONFIG_NET_PKTGEN
642   FILES:=$(LINUX_DIR)/net/core/pktgen.ko
643   AUTOLOAD:=$(call AutoLoad,99,pktgen)
644 endef
645
646 define KernelPackage/pktgen/description
647   Kernel modules for the Network Packet Generator
648 endef
649
650 $(eval $(call KernelPackage,pktgen))
651
652 define KernelPackage/l2tp
653   SUBMENU:=$(NETWORK_SUPPORT_MENU)
654   DEPENDS:=@LINUX_2_6_35||LINUX_2_6_36||LINUX_2_6_37||LINUX_2_6_38
655   TITLE:=Layer Two Tunneling Protocol (L2TP)
656   KCONFIG:=CONFIG_L2TP \
657         CONFIG_L2TP_V3=y \
658         CONFIG_L2TP_DEBUGFS=n
659   FILES:=$(LINUX_DIR)/net/l2tp/l2tp_core.$(LINUX_KMOD_SUFFIX) \
660         $(LINUX_DIR)/net/l2tp/l2tp_netlink.$(LINUX_KMOD_SUFFIX)
661   AUTOLOAD:=$(call AutoLoad,32,l2tp_core l2tp_netlink)
662 endef
663
664 define KernelPackage/l2tp/description
665  Kernel modules for L2TP V3 Support
666 endef
667
668 $(eval $(call KernelPackage,l2tp))
669
670
671 define KernelPackage/l2tp-eth
672   SUBMENU:=$(NETWORK_SUPPORT_MENU)
673   TITLE:=L2TP ethernet pseudowire support for L2TPv3
674   DEPENDS:=+kmod-l2tp
675   KCONFIG:=CONFIG_L2TP_ETH
676   FILES:=$(LINUX_DIR)/net/l2tp/l2tp_eth.$(LINUX_KMOD_SUFFIX) 
677   AUTOLOAD:=$(call AutoLoad,33,l2tp_eth)
678 endef
679
680 define KernelPackage/l2tp-eth/description
681  Kernel modules for L2TP ethernet pseudowire support for L2TPv3
682 endef
683
684 $(eval $(call KernelPackage,l2tp-eth))
685
686 define KernelPackage/l2tp-ip
687   SUBMENU:=$(NETWORK_SUPPORT_MENU)
688   TITLE:=L2TP IP encapsulation for L2TPv3
689   DEPENDS:=+kmod-l2tp
690   KCONFIG:=CONFIG_L2TP_IP
691   FILES:=$(LINUX_DIR)/net/l2tp/l2tp_ip.$(LINUX_KMOD_SUFFIX)
692   AUTOLOAD:=$(call AutoLoad,33,l2tp_ip)
693 endef
694
695 define KernelPackage/l2tp-ip/description
696  Kernel modules for L2TP IP encapsulation for L2TPv3
697 endef
698
699 $(eval $(call KernelPackage,l2tp-ip))
700
701
702 define KernelPackage/sctp
703   SUBMENU:=$(NETWORK_SUPPORT_MENU)
704   TITLE:=SCTP protocol kernel support
705   KCONFIG:=\
706      CONFIG_IP_SCTP \
707      CONFIG_SCTP_DBG_MSG=n \
708      CONFIG_SCTP_DBG_OBJCNT=n \
709      CONFIG_SCTP_HMAC_NONE=n \
710      CONFIG_SCTP_HMAC_SHA1=n \
711      CONFIG_SCTP_HMAC_MD5=y
712   FILES:= $(LINUX_DIR)/net/sctp/sctp.$(LINUX_KMOD_SUFFIX)
713   AUTOLOAD:= $(call AutoLoad,32,sctp)
714   DEPENDS:=+kmod-libcrc32c +kmod-crypto-md5 +kmod-crypto-hmac
715 endef
716
717 define KernelPackage/sctp/description
718  Kernel modules for SCTP protocol support
719 endef
720
721 $(eval $(call KernelPackage,sctp))
722
723