[package] kernel: fix kmod-gre for Kernel >= 2.6.37 (#9009)
[openwrt/svn-archive/archive.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 \
374 $(if $(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),le,2.6.37)),CONFIG_NET_IPGRE_DEMUX)
375 FILES=$(LINUX_DIR)/net/ipv4/ip_gre.ko \
376 $(if $(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),le,2.6.37)),$(LINUX_DIR)/net/ipv4/gre.ko)
377 endef
378
379 define KernelPackage/gre/description
380 Generic Routing Encapsulation support
381 endef
382
383 $(eval $(call KernelPackage,gre))
384
385
386 define KernelPackage/tun
387 SUBMENU:=$(NETWORK_SUPPORT_MENU)
388 TITLE:=Universal TUN/TAP driver
389 KCONFIG:=CONFIG_TUN
390 FILES:=$(LINUX_DIR)/drivers/net/tun.ko
391 AUTOLOAD:=$(call AutoLoad,30,tun)
392 endef
393
394 define KernelPackage/tun/description
395 Kernel support for the TUN/TAP tunneling device
396 endef
397
398 $(eval $(call KernelPackage,tun))
399
400
401 define KernelPackage/ppp
402 SUBMENU:=$(NETWORK_SUPPORT_MENU)
403 TITLE:=PPP modules
404 DEPENDS:=+kmod-crc-ccitt
405 KCONFIG:= \
406 CONFIG_PPP \
407 CONFIG_PPP_ASYNC \
408 CONFIG_SLHC
409 FILES:= \
410 $(LINUX_DIR)/drivers/net/ppp_async.ko \
411 $(LINUX_DIR)/drivers/net/ppp_generic.ko \
412 $(LINUX_DIR)/drivers/net/slhc.ko
413 AUTOLOAD:=$(call AutoLoad,30,slhc ppp_generic ppp_async)
414 endef
415
416 define KernelPackage/ppp/description
417 Kernel modules for PPP support
418 endef
419
420 $(eval $(call KernelPackage,ppp))
421
422
423 define KernelPackage/ppp-synctty
424 SUBMENU:=$(NETWORK_SUPPORT_MENU)
425 TITLE:=PPP sync tty support
426 DEPENDS:=kmod-ppp
427 KCONFIG:=CONFIG_PPP_SYNC_TTY
428 FILES:=$(LINUX_DIR)/drivers/net/ppp_synctty.ko
429 AUTOLOAD:=$(call AutoLoad,40,ppp_synctty)
430 endef
431
432 define KernelPackage/ppp-synctty/description
433 Kernel modules for PPP sync tty support
434 endef
435
436 $(eval $(call KernelPackage,ppp-synctty))
437
438
439 define KernelPackage/pppoe
440 SUBMENU:=$(NETWORK_SUPPORT_MENU)
441 TITLE:=PPPoE support
442 DEPENDS:=kmod-ppp
443 KCONFIG:=CONFIG_PPPOE
444 FILES:= \
445 $(LINUX_DIR)/drivers/net/pppoe.ko \
446 $(LINUX_DIR)/drivers/net/pppox.ko
447 AUTOLOAD:=$(call AutoLoad,40,pppox pppoe)
448 endef
449
450 define KernelPackage/pppoe/description
451 Kernel modules for PPPoE (PPP over Ethernet) support
452 endef
453
454 $(eval $(call KernelPackage,pppoe))
455
456
457 define KernelPackage/pppoa
458 SUBMENU:=$(NETWORK_SUPPORT_MENU)
459 TITLE:=PPPoA support
460 DEPENDS:=kmod-ppp +kmod-atm
461 KCONFIG:=CONFIG_PPPOATM CONFIG_ATM_DRIVERS=y
462 FILES:=$(LINUX_DIR)/net/atm/pppoatm.ko
463 AUTOLOAD:=$(call AutoLoad,40,pppoatm)
464 endef
465
466 define KernelPackage/pppoa/description
467 Kernel modules for PPPoA (PPP over ATM) support
468 endef
469
470 $(eval $(call KernelPackage,pppoa))
471
472 define KernelPackage/pppol2tp
473 SUBMENU:=$(NETWORK_SUPPORT_MENU)
474 TITLE:=PPPoL2TP support
475 DEPENDS:=kmod-ppp +kmod-pppoe +LINUX_2_6_35||LINUX_2_6_36||LINUX_2_6_37:kmod-l2tp
476 KCONFIG:=CONFIG_PPPOL2TP
477 ifneq ($(CONFIG_LINUX_2_6_35)$(CONFIG_LINUX_2_6_36)$(CONFIG_LINUX_2_6_37),)
478 FILES:=$(LINUX_DIR)/net/l2tp/l2tp_ppp.ko
479 AUTOLOAD:=$(call AutoLoad,40,l2tp_ppp)
480 else
481 FILES:=$(LINUX_DIR)/drivers/net/pppol2tp.ko
482 AUTOLOAD:=$(call AutoLoad,40,pppol2tp)
483 endif
484 endef
485
486 define KernelPackage/pppol2tp/description
487 Kernel modules for PPPoL2TP (PPP over L2TP) support
488 endef
489
490 $(eval $(call KernelPackage,pppol2tp))
491
492
493 define KernelPackage/ipoa
494 SUBMENU:=$(NETWORK_SUPPORT_MENU)
495 TITLE:=IPoA support
496 DEPENDS:=kmod-atm
497 KCONFIG:=CONFIG_ATM_CLIP
498 FILES:=$(LINUX_DIR)/net/atm/clip.ko
499 AUTOLOAD:=$(call AutoLoad,40,clip)
500 endef
501
502 define KernelPackage/ipoa/description
503 Kernel modules for IPoA (IP over ATM) support
504 endef
505
506 $(eval $(call KernelPackage,ipoa))
507
508
509 define KernelPackage/mppe
510 SUBMENU:=$(NETWORK_SUPPORT_MENU)
511 TITLE:=Microsoft PPP compression/encryption
512 DEPENDS:=kmod-ppp +kmod-crypto-core +kmod-crypto-arc4 +kmod-crypto-sha1
513 KCONFIG:= \
514 CONFIG_PPP_MPPE_MPPC \
515 CONFIG_PPP_MPPE
516 FILES:=$(LINUX_DIR)/drivers/net/ppp_mppe.ko
517 AUTOLOAD:=$(call AutoLoad,31,ppp_mppe)
518 endef
519
520 define KernelPackage/mppe/description
521 Kernel modules for Microsoft PPP compression/encryption
522 endef
523
524 $(eval $(call KernelPackage,mppe))
525
526
527 define KernelPackage/sched
528 SUBMENU:=$(NETWORK_SUPPORT_MENU)
529 TITLE:=Traffic schedulers
530 KCONFIG:= \
531 CONFIG_NET_SCHED=y \
532 CONFIG_NET_SCH_DSMARK \
533 CONFIG_NET_SCH_ESFQ \
534 CONFIG_NET_SCH_ESFQ_NFCT=y \
535 CONFIG_NET_SCH_FIFO \
536 CONFIG_NET_SCH_GRED \
537 CONFIG_NET_SCH_HFSC \
538 CONFIG_NET_SCH_HTB \
539 CONFIG_NET_SCH_INGRESS \
540 CONFIG_NET_SCH_PRIO \
541 CONFIG_NET_SCH_RED \
542 CONFIG_NET_SCH_TBF \
543 CONFIG_NET_SCH_SFQ \
544 CONFIG_NET_SCH_TEQL \
545 CONFIG_NET_CLS=y \
546 CONFIG_NET_CLS_ACT=y \
547 CONFIG_NET_CLS_BASIC \
548 CONFIG_NET_CLS_FLOW \
549 CONFIG_NET_CLS_FW \
550 CONFIG_NET_CLS_ROUTE4 \
551 CONFIG_NET_CLS_TCINDEX \
552 CONFIG_NET_CLS_U32 \
553 CONFIG_NET_ACT_MIRRED \
554 CONFIG_NET_ACT_IPT \
555 CONFIG_NET_ACT_POLICE \
556 CONFIG_NET_ACT_CONNMARK \
557 CONFIG_NET_ACT_SKBEDIT \
558 CONFIG_NET_EMATCH=y \
559 CONFIG_NET_EMATCH_CMP \
560 CONFIG_NET_EMATCH_NBYTE \
561 CONFIG_NET_EMATCH_U32 \
562 CONFIG_NET_EMATCH_META \
563 CONFIG_NET_EMATCH_TEXT
564 FILES:=$(LINUX_DIR)/net/sched/*.ko
565 endef
566
567 define KernelPackage/sched/description
568 Kernel schedulers for IP traffic
569 endef
570
571 $(eval $(call KernelPackage,sched))
572
573
574 define KernelPackage/ax25
575 SUBMENU:=$(NETWORK_SUPPORT_MENU)
576 TITLE:=AX25 support
577 KCONFIG:= \
578 CONFIG_AX25 \
579 CONFIG_MKISS
580 FILES:= \
581 $(LINUX_DIR)/net/ax25/ax25.ko \
582 $(LINUX_DIR)/drivers/net/hamradio/mkiss.ko
583 AUTOLOAD:=$(call AutoLoad,80,ax25 mkiss)
584 $(call AddDepends/crc16)
585 endef
586
587 define KernelPackage/ax25/description
588 Kernel modules for AX25 support
589 endef
590
591 $(eval $(call KernelPackage,ax25))
592
593
594 define KernelPackage/mp-alg
595 SUBMENU:=$(NETWORK_SUPPORT_MENU)
596 TITLE:=ECMP caching algorithms
597 KCONFIG:= \
598 CONFIG_IP_ROUTE_MULTIPATH_RR \
599 CONFIG_IP_ROUTE_MULTIPATH_RANDOM \
600 CONFIG_IP_ROUTE_MULTIPATH_WRANDOM \
601 CONFIG_IP_ROUTE_MULTIPATH_DRR
602 FILES:= \
603 $(LINUX_DIR)/net/ipv4/multipath_rr.ko \
604 $(LINUX_DIR)/net/ipv4/multipath_random.ko \
605 $(LINUX_DIR)/net/ipv4/multipath_wrandom.ko \
606 $(LINUX_DIR)/net/ipv4/multipath_drr.ko
607 AUTOLOAD:=$(call AutoLoad,35,multipath_rr multipath_random multipath_wrandom multipath_drr)
608 endef
609
610 define KernelPackage/mp-alg/description
611 Kernel modules that provide several different algorithms for multipath
612 route selection from the route cache. The iproute "mpath" argument allows
613 specifying which algorithm to use for routes.
614 quagga (at least <=0.99.6) requires a multipath patch to support this
615 cached mp route feature.
616 endef
617
618 $(eval $(call KernelPackage,mp-alg))
619
620
621 define KernelPackage/pktgen
622 SUBMENU:=$(NETWORK_SUPPORT_MENU)
623 TITLE:=Network packet generator
624 KCONFIG:=CONFIG_NET_PKTGEN
625 FILES:=$(LINUX_DIR)/net/core/pktgen.ko
626 AUTOLOAD:=$(call AutoLoad,99,pktgen)
627 endef
628
629 define KernelPackage/pktgen/description
630 Kernel modules for the Network Packet Generator
631 endef
632
633 $(eval $(call KernelPackage,pktgen))
634
635 define KernelPackage/l2tp
636 SUBMENU:=$(NETWORK_SUPPORT_MENU)
637 DEPENDS:=@LINUX_2_6_35||LINUX_2_6_36||LINUX_2_6_37
638 TITLE:=Layer Two Tunneling Protocol (L2TP)
639 KCONFIG:=CONFIG_L2TP \
640 CONFIG_L2TP_V3=y \
641 CONFIG_L2TP_DEBUGFS=n
642 FILES:=$(LINUX_DIR)/net/l2tp/l2tp_core.$(LINUX_KMOD_SUFFIX) \
643 $(LINUX_DIR)/net/l2tp/l2tp_netlink.$(LINUX_KMOD_SUFFIX)
644 AUTOLOAD:=$(call AutoLoad,32,l2tp_core l2tp_netlink)
645 endef
646
647 define KernelPackage/l2tp/description
648 Kernel modules for L2TP V3 Support
649 endef
650
651 $(eval $(call KernelPackage,l2tp))
652
653
654 define KernelPackage/l2tp-eth
655 SUBMENU:=$(NETWORK_SUPPORT_MENU)
656 TITLE:=L2TP ethernet pseudowire support for L2TPv3
657 DEPENDS:=+kmod-l2tp
658 KCONFIG:=CONFIG_L2TP_ETH
659 FILES:=$(LINUX_DIR)/net/l2tp/l2tp_eth.$(LINUX_KMOD_SUFFIX)
660 AUTOLOAD:=$(call AutoLoad,33,l2tp_eth)
661 endef
662
663 define KernelPackage/l2tp-eth/description
664 Kernel modules for L2TP ethernet pseudowire support for L2TPv3
665 endef
666
667 $(eval $(call KernelPackage,l2tp-eth))
668
669 define KernelPackage/l2tp-ip
670 SUBMENU:=$(NETWORK_SUPPORT_MENU)
671 TITLE:=L2TP IP encapsulation for L2TPv3
672 DEPENDS:=+kmod-l2tp
673 KCONFIG:=CONFIG_L2TP_IP
674 FILES:=$(LINUX_DIR)/net/l2tp/l2tp_ip.$(LINUX_KMOD_SUFFIX)
675 AUTOLOAD:=$(call AutoLoad,33,l2tp_ip)
676 endef
677
678 define KernelPackage/l2tp-ip/description
679 Kernel modules for L2TP IP encapsulation for L2TPv3
680 endef
681
682 $(eval $(call KernelPackage,l2tp-ip))
683
684
685 define KernelPackage/sctp
686 SUBMENU:=$(NETWORK_SUPPORT_MENU)
687 TITLE:=SCTP protocol kernel support
688 KCONFIG:=\
689 CONFIG_IP_SCTP \
690 CONFIG_SCTP_DBG_MSG=n \
691 CONFIG_SCTP_DBG_OBJCNT=n \
692 CONFIG_SCTP_HMAC_NONE=n \
693 CONFIG_SCTP_HMAC_SHA1=n \
694 CONFIG_SCTP_HMAC_MD5=y
695 FILES:= $(LINUX_DIR)/net/sctp/sctp.$(LINUX_KMOD_SUFFIX)
696 AUTOLOAD:= $(call AutoLoad,32,sctp)
697 DEPENDS:=+kmod-libcrc32c +kmod-crypto-md5 +kmod-crypto-hmac
698 endef
699
700 define KernelPackage/sctp/description
701 Kernel modules for SCTP protocol support
702 endef
703
704 $(eval $(call KernelPackage,sctp))
705
706