2 # Copyright (C) 2006-2011 OpenWrt.org
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
8 NETWORK_SUPPORT_MENU:=Network Support
10 define KernelPackage/atm
11 SUBMENU:=$(NETWORK_SUPPORT_MENU)
17 $(LINUX_DIR)/net/atm/atm.ko \
18 $(LINUX_DIR)/net/atm/br2684.ko
19 AUTOLOAD:=$(call AutoLoad,30,atm br2684)
22 define KernelPackage/atm/description
23 Kernel modules for ATM support
26 $(eval $(call KernelPackage,atm))
29 define KernelPackage/atmtcp
30 SUBMENU:=$(NETWORK_SUPPORT_MENU)
33 KCONFIG:=CONFIG_ATM_TCP CONFIG_ATM_DRIVERS=y
34 FILES:=$(LINUX_DIR)/drivers/atm/atmtcp.ko
35 AUTOLOAD:=$(call AutoLoad,40,atmtcp)
38 define KernelPackage/atmtcp/description
39 Kernel module for ATM over TCP support
42 $(eval $(call KernelPackage,atmtcp))
45 define KernelPackage/appletalk
46 SUBMENU:=$(NETWORK_SUPPORT_MENU)
47 TITLE:=Appletalk protocol support
50 CONFIG_DEV_APPLETALK \
52 CONFIG_IPDDP_ENCAP=y \
55 $(LINUX_DIR)/net/appletalk/appletalk.ko \
56 $(LINUX_DIR)/drivers/net/appletalk/ipddp.ko
57 AUTOLOAD:=$(call AutoLoad,40,appletalk ipddp)
60 define KernelPackage/appletalk/description
61 Kernel module for AppleTalk protocol.
64 $(eval $(call KernelPackage,appletalk))
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)
75 define KernelPackage/bonding/description
76 Kernel module for NIC bonding.
79 $(eval $(call KernelPackage,bonding))
82 define KernelPackage/bridge
83 SUBMENU:=$(NETWORK_SUPPORT_MENU)
84 TITLE:=Ethernet bridging support
88 CONFIG_BRIDGE_IGMP_SNOOPING=y
89 FILES:=$(LINUX_DIR)/net/bridge/bridge.ko
90 AUTOLOAD:=$(call AutoLoad,11,bridge)
93 define KernelPackage/bridge/description
94 Kernel module for Ethernet bridging.
97 $(eval $(call KernelPackage,bridge))
99 define KernelPackage/llc
100 SUBMENU:=$(NETWORK_SUPPORT_MENU)
101 TITLE:=ANSI/IEEE 802.2 LLC support
103 FILES:=$(LINUX_DIR)/net/llc/llc.ko
104 AUTOLOAD:=$(call AutoLoad,09,llc)
107 define KernelPackage/llc/description
108 Kernel module for ANSI/IEEE 802.2 LLC support.
111 $(eval $(call KernelPackage,llc))
113 define KernelPackage/stp
114 SUBMENU:=$(NETWORK_SUPPORT_MENU)
115 TITLE:=Ethernet Spanning Tree Protocol support
118 FILES:=$(LINUX_DIR)/net/802/stp.ko
119 AUTOLOAD:=$(call AutoLoad,10,stp)
122 define KernelPackage/stp/description
123 Kernel module for Ethernet Spanning Tree Protocol support.
126 $(eval $(call KernelPackage,stp))
128 define KernelPackage/8021q
129 SUBMENU:=$(NETWORK_SUPPORT_MENU)
130 TITLE:=802.1Q VLAN support
131 KCONFIG:=CONFIG_VLAN_8021Q \
132 CONFIG_VLAN_8021Q_GVRP=n
133 FILES:=$(LINUX_DIR)/net/8021q/8021q.ko
134 AUTOLOAD:=$(call AutoLoad,12,8021q)
137 define KernelPackage/8021q/description
138 Kernel module for 802.1Q VLAN support
141 $(eval $(call KernelPackage,8021q))
144 define KernelPackage/capi
145 SUBMENU:=$(NETWORK_SUPPORT_MENU)
146 TITLE:=CAPI (ISDN) Support
149 CONFIG_ISDN_CAPI_CAPI20 \
151 CONFIG_ISDN_CAPI_CAPIFS
153 $(LINUX_DIR)/drivers/isdn/capi/kernelcapi.ko \
154 $(LINUX_DIR)/drivers/isdn/capi/capi.ko
155 ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),ge,3.0)),1)
156 AUTOLOAD:=$(call AutoLoad,30,kernelcapi capi)
158 FILES+= $(LINUX_DIR)/drivers/isdn/capi/capifs.ko
159 AUTOLOAD:=$(call AutoLoad,30,kernelcapi capifs capi)
163 define KernelPackage/capi/description
164 Kernel module for basic CAPI (ISDN) support
167 $(eval $(call KernelPackage,capi))
169 define KernelPackage/misdn
170 SUBMENU:=$(NETWORK_SUPPORT_MENU)
171 TITLE:=mISDN (ISDN) Support
178 $(LINUX_DIR)/drivers/isdn/mISDN/mISDN_core.ko \
179 $(LINUX_DIR)/drivers/isdn/mISDN/mISDN_dsp.ko \
180 $(LINUX_DIR)/drivers/isdn/mISDN/l1oip.ko
181 AUTOLOAD:=$(call AutoLoad,30,mISDN_core mISDN_dsp l1oip)
184 define KernelPackage/misdn/description
185 Modular ISDN driver support
188 $(eval $(call KernelPackage,misdn))
191 define KernelPackage/isdn4linux
192 SUBMENU:=$(NETWORK_SUPPORT_MENU)
193 TITLE:=Old ISDN4Linux (deprecated)
198 CONFIG_ISDN_PPP_VJ=y \
200 CONFIG_IPPP_FILTER=y \
201 CONFIG_ISDN_PPP_BSDCOMP \
202 CONFIG_ISDN_CAPI_MIDDLEWARE=y \
203 CONFIG_ISDN_CAPI_CAPIFS_BOOL=y \
204 CONFIG_ISDN_AUDIO=y \
205 CONFIG_ISDN_TTY_FAX=y \
207 CONFIG_ISDN_DIVERSION
209 $(LINUX_DIR)/drivers/isdn/divert/dss1_divert.ko \
210 $(LINUX_DIR)/drivers/isdn/i4l/isdn.ko \
211 $(LINUX_DIR)/drivers/isdn/i4l/isdn_bsdcomp.ko
212 AUTOLOAD:=$(call AutoLoad,40,isdn isdn_bsdcomp dss1_divert)
215 define KernelPackage/isdn4linux/description
216 This driver allows you to use an ISDN adapter for networking
219 $(eval $(call KernelPackage,isdn4linux))
222 define KernelPackage/ipip
223 SUBMENU:=$(NETWORK_SUPPORT_MENU)
224 TITLE:=IP-in-IP encapsulation
225 DEPENDS:=+kmod-iptunnel4
226 KCONFIG:=CONFIG_NET_IPIP
227 FILES:=$(LINUX_DIR)/net/ipv4/ipip.ko
228 AUTOLOAD:=$(call AutoLoad,32,ipip)
231 define KernelPackage/ipip/description
232 Kernel modules for IP-in-IP encapsulation
235 $(eval $(call KernelPackage,ipip))
243 define KernelPackage/ipsec
244 SUBMENU:=$(NETWORK_SUPPORT_MENU)
245 TITLE:=IPsec related modules (IPv4 and IPv6)
246 DEPENDS:=+kmod-crypto-authenc +kmod-crypto-iv +kmod-crypto-des +kmod-crypto-hmac +kmod-crypto-md5 +kmod-crypto-sha1 +kmod-crypto-deflate +kmod-crypto-cbc
252 FILES:=$(foreach mod,$(IPSEC-m),$(LINUX_DIR)/net/$(mod).ko)
253 AUTOLOAD:=$(call AutoLoad,30,$(notdir $(IPSEC-m)))
256 define KernelPackage/ipsec/description
257 Kernel modules for IPsec support in both IPv4 and IPv6.
264 $(eval $(call KernelPackage,ipsec))
270 ipv4/xfrm4_mode_beet \
271 ipv4/xfrm4_mode_transport \
272 ipv4/xfrm4_mode_tunnel \
276 define KernelPackage/ipsec4
277 SUBMENU:=$(NETWORK_SUPPORT_MENU)
278 TITLE:=IPsec related modules (IPv4)
279 DEPENDS:=kmod-ipsec +kmod-iptunnel4
284 CONFIG_INET_XFRM_MODE_BEET \
285 CONFIG_INET_XFRM_MODE_TRANSPORT \
286 CONFIG_INET_XFRM_MODE_TUNNEL \
287 CONFIG_INET_XFRM_TUNNEL
288 FILES:=$(foreach mod,$(IPSEC4-m),$(LINUX_DIR)/net/$(mod).ko)
289 AUTOLOAD:=$(call AutoLoad,32,$(notdir $(IPSEC4-m)))
292 define KernelPackage/ipsec4/description
293 Kernel modules for IPsec support in IPv4.
299 - xfrm4_mode_transport
304 $(eval $(call KernelPackage,ipsec4))
310 ipv6/xfrm6_mode_beet \
311 ipv6/xfrm6_mode_transport \
312 ipv6/xfrm6_mode_tunnel \
316 define KernelPackage/ipsec6
317 SUBMENU:=$(NETWORK_SUPPORT_MENU)
318 TITLE:=IPsec related modules (IPv6)
319 DEPENDS:=kmod-ipsec +kmod-iptunnel6
323 CONFIG_INET6_IPCOMP \
324 CONFIG_INET6_XFRM_MODE_BEET \
325 CONFIG_INET6_XFRM_MODE_TRANSPORT \
326 CONFIG_INET6_XFRM_MODE_TUNNEL \
327 CONFIG_INET6_XFRM_TUNNEL
328 FILES:=$(foreach mod,$(IPSEC6-m),$(LINUX_DIR)/net/$(mod).ko)
329 AUTOLOAD:=$(call AutoLoad,32,$(notdir $(IPSEC6-m)))
332 define KernelPackage/ipsec6/description
333 Kernel modules for IPsec support in IPv6.
339 - xfrm6_mode_transport
344 $(eval $(call KernelPackage,ipsec6))
347 # NOTE: tunnel4 is not selectable by itself, so enable ipip for that
348 define KernelPackage/iptunnel4
349 SUBMENU:=$(NETWORK_SUPPORT_MENU)
350 TITLE:=IPv4 tunneling
354 FILES:=$(LINUX_DIR)/net/ipv4/tunnel4.ko
355 AUTOLOAD:=$(call AutoLoad,31,tunnel4)
358 define KernelPackage/iptunnel4/description
359 Kernel modules for IPv4 tunneling
362 $(eval $(call KernelPackage,iptunnel4))
365 define KernelPackage/iptunnel6
366 SUBMENU:=$(NETWORK_SUPPORT_MENU)
367 TITLE:=IPv6 tunneling
371 FILES:=$(LINUX_DIR)/net/ipv6/tunnel6.ko
372 AUTOLOAD:=$(call AutoLoad,31,tunnel6)
375 define KernelPackage/iptunnel6/description
376 Kernel modules for IPv6 tunneling
379 $(eval $(call KernelPackage,iptunnel6))
382 define KernelPackage/ipv6
383 SUBMENU:=$(NETWORK_SUPPORT_MENU)
387 CONFIG_IPV6_PRIVACY=y \
388 CONFIG_IPV6_MULTIPLE_TABLES=y \
389 CONFIG_IPV6_MROUTE=y \
390 CONFIG_IPV6_PIMSM_V2=n \
391 CONFIG_IPV6_SUBTREES=y
392 FILES:=$(LINUX_DIR)/net/ipv6/ipv6.ko
393 AUTOLOAD:=$(call AutoLoad,20,ipv6)
396 define KernelPackage/ipv6/description
397 Kernel modules for IPv6 support
400 $(eval $(call KernelPackage,ipv6))
403 define KernelPackage/sit
404 SUBMENU:=$(NETWORK_SUPPORT_MENU)
405 DEPENDS:=+kmod-ipv6 +kmod-iptunnel4
406 TITLE:=IPv6-in-IPv4 tunnel
407 KCONFIG:=CONFIG_IPV6_SIT \
408 CONFIG_IPV6_SIT_6RD=y
409 FILES:=$(LINUX_DIR)/net/ipv6/sit.ko
410 AUTOLOAD:=$(call AutoLoad,32,sit)
413 define KernelPackage/sit/description
414 Kernel modules for IPv6-in-IPv4 tunnelling
417 $(eval $(call KernelPackage,sit))
420 define KernelPackage/ip6-tunnel
421 SUBMENU:=$(NETWORK_SUPPORT_MENU)
422 TITLE:=IP-in-IPv6 tunnelling
423 DEPENDS:= +kmod-ipv6 +kmod-iptunnel6
424 KCONFIG:= CONFIG_IPV6_TUNNEL
425 FILES:=$(LINUX_DIR)/net/ipv6/ip6_tunnel.ko
426 AUTOLOAD:=$(call AutoLoad,32,ip6_tunnel)
429 define KernelPackage/ip6-tunnel/description
430 Kernel modules for IPv6-in-IPv6 and IPv4-in-IPv6 tunnelling
433 $(eval $(call KernelPackage,ip6-tunnel))
436 define KernelPackage/gre
437 SUBMENU:=$(NETWORK_SUPPORT_MENU)
439 DEPENDS:=+PACKAGE_kmod-ipv6:kmod-ipv6
440 KCONFIG:=CONFIG_NET_IPGRE CONFIG_NET_IPGRE_DEMUX
441 FILES:=$(LINUX_DIR)/net/ipv4/ip_gre.ko $(LINUX_DIR)/net/ipv4/gre.ko
442 AUTOLOAD:=$(call AutoLoad,39,gre ip_gre)
445 define KernelPackage/gre/description
446 Generic Routing Encapsulation support
449 $(eval $(call KernelPackage,gre))
452 define KernelPackage/tun
453 SUBMENU:=$(NETWORK_SUPPORT_MENU)
454 TITLE:=Universal TUN/TAP driver
456 FILES:=$(LINUX_DIR)/drivers/net/tun.ko
457 AUTOLOAD:=$(call AutoLoad,30,tun)
460 define KernelPackage/tun/description
461 Kernel support for the TUN/TAP tunneling device
464 $(eval $(call KernelPackage,tun))
467 define KernelPackage/ppp
468 SUBMENU:=$(NETWORK_SUPPORT_MENU)
470 DEPENDS:=+kmod-lib-crc-ccitt
475 ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),ge,3.2)),1)
477 $(LINUX_DIR)/drivers/net/ppp/ppp_async.ko \
478 $(LINUX_DIR)/drivers/net/ppp/ppp_generic.ko \
479 $(LINUX_DIR)/drivers/net/slip/slhc.ko
482 $(LINUX_DIR)/drivers/net/ppp_async.ko \
483 $(LINUX_DIR)/drivers/net/ppp_generic.ko \
484 $(LINUX_DIR)/drivers/net/slhc.ko
486 AUTOLOAD:=$(call AutoLoad,30,slhc ppp_generic ppp_async)
489 define KernelPackage/ppp/description
490 Kernel modules for PPP support
493 $(eval $(call KernelPackage,ppp))
496 define KernelPackage/ppp-synctty
497 SUBMENU:=$(NETWORK_SUPPORT_MENU)
498 TITLE:=PPP sync tty support
500 KCONFIG:=CONFIG_PPP_SYNC_TTY
501 ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),ge,3.2)),1)
502 FILES:=$(LINUX_DIR)/drivers/net/ppp/ppp_synctty.ko
504 FILES:=$(LINUX_DIR)/drivers/net/ppp_synctty.ko
506 AUTOLOAD:=$(call AutoLoad,40,ppp_synctty)
509 define KernelPackage/ppp-synctty/description
510 Kernel modules for PPP sync tty support
513 $(eval $(call KernelPackage,ppp-synctty))
516 define KernelPackage/pppoe
517 SUBMENU:=$(NETWORK_SUPPORT_MENU)
520 KCONFIG:=CONFIG_PPPOE
521 ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),ge,3.2)),1)
523 $(LINUX_DIR)/drivers/net/ppp/pppoe.ko \
524 $(LINUX_DIR)/drivers/net/ppp/pppox.ko
527 $(LINUX_DIR)/drivers/net/pppoe.ko \
528 $(LINUX_DIR)/drivers/net/pppox.ko
530 AUTOLOAD:=$(call AutoLoad,40,pppox pppoe)
533 define KernelPackage/pppoe/description
534 Kernel modules for PPPoE (PPP over Ethernet) support
537 $(eval $(call KernelPackage,pppoe))
540 define KernelPackage/pppoa
541 SUBMENU:=$(NETWORK_SUPPORT_MENU)
543 DEPENDS:=kmod-ppp +kmod-atm
544 KCONFIG:=CONFIG_PPPOATM CONFIG_ATM_DRIVERS=y
545 FILES:=$(LINUX_DIR)/net/atm/pppoatm.ko
546 AUTOLOAD:=$(call AutoLoad,40,pppoatm)
549 define KernelPackage/pppoa/description
550 Kernel modules for PPPoA (PPP over ATM) support
553 $(eval $(call KernelPackage,pppoa))
556 define KernelPackage/pptp
557 SUBMENU:=$(NETWORK_SUPPORT_MENU)
559 DEPENDS:=kmod-ppp +kmod-gre
561 ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),ge,3.2)),1)
562 FILES:=$(LINUX_DIR)/drivers/net/ppp/pptp.ko
564 FILES:=$(LINUX_DIR)/drivers/net/pptp.ko
566 AUTOLOAD:=$(call AutoLoad,41,pptp)
569 $(eval $(call KernelPackage,pptp))
572 define KernelPackage/pppol2tp
573 SUBMENU:=$(NETWORK_SUPPORT_MENU)
574 TITLE:=PPPoL2TP support
575 DEPENDS:=kmod-ppp +kmod-pppoe +kmod-l2tp
576 KCONFIG:=CONFIG_PPPOL2TP
577 FILES:=$(LINUX_DIR)/net/l2tp/l2tp_ppp.ko
578 AUTOLOAD:=$(call AutoLoad,40,l2tp_ppp)
581 define KernelPackage/pppol2tp/description
582 Kernel modules for PPPoL2TP (PPP over L2TP) support
585 $(eval $(call KernelPackage,pppol2tp))
588 define KernelPackage/ipoa
589 SUBMENU:=$(NETWORK_SUPPORT_MENU)
592 KCONFIG:=CONFIG_ATM_CLIP
593 FILES:=$(LINUX_DIR)/net/atm/clip.ko
594 AUTOLOAD:=$(call AutoLoad,40,clip)
597 define KernelPackage/ipoa/description
598 Kernel modules for IPoA (IP over ATM) support
601 $(eval $(call KernelPackage,ipoa))
604 define KernelPackage/mppe
605 SUBMENU:=$(NETWORK_SUPPORT_MENU)
606 TITLE:=Microsoft PPP compression/encryption
607 DEPENDS:=kmod-ppp +kmod-crypto-core +kmod-crypto-arc4 +kmod-crypto-sha1 +kmod-crypto-ecb
609 CONFIG_PPP_MPPE_MPPC \
611 ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),ge,3.2)),1)
612 FILES:=$(LINUX_DIR)/drivers/net/ppp/ppp_mppe.ko
614 FILES:=$(LINUX_DIR)/drivers/net/ppp_mppe.ko
616 AUTOLOAD:=$(call AutoLoad,31,ppp_mppe)
619 define KernelPackage/mppe/description
620 Kernel modules for Microsoft PPP compression/encryption
623 $(eval $(call KernelPackage,mppe))
626 SCHED_MODULES = $(patsubst $(LINUX_DIR)/net/sched/%.ko,%,$(wildcard $(LINUX_DIR)/net/sched/*.ko))
627 SCHED_MODULES_CORE = sch_ingress sch_codel sch_fq_codel sch_hfsc cls_fw cls_route cls_flow cls_tcindex cls_u32 em_u32 act_mirred act_skbedit
628 SCHED_MODULES_EXTRA = $(filter-out $(SCHED_MODULES_CORE) act_connmark,$(SCHED_MODULES))
629 SCHED_FILES = $(patsubst %,$(LINUX_DIR)/net/sched/%.ko,$(filter $(SCHED_MODULES_CORE),$(SCHED_MODULES)))
630 SCHED_FILES_EXTRA = $(patsubst %,$(LINUX_DIR)/net/sched/%.ko,$(SCHED_MODULES_EXTRA))
632 define KernelPackage/sched-core
633 SUBMENU:=$(NETWORK_SUPPORT_MENU)
634 TITLE:=Traffic schedulers
637 CONFIG_NET_SCH_HFSC \
638 CONFIG_NET_SCH_INGRESS \
639 CONFIG_NET_SCH_CODEL \
640 CONFIG_NET_SCH_FQ_CODEL \
642 CONFIG_NET_CLS_ACT=y \
643 CONFIG_NET_CLS_FLOW \
645 CONFIG_NET_CLS_ROUTE4 \
646 CONFIG_NET_CLS_TCINDEX \
648 CONFIG_NET_ACT_MIRRED \
649 CONFIG_NET_ACT_SKBEDIT \
650 CONFIG_NET_EMATCH=y \
651 CONFIG_NET_EMATCH_U32
652 FILES:=$(SCHED_FILES)
655 define KernelPackage/sched-core/description
656 Core kernel scheduler support for IP traffic
659 $(eval $(call KernelPackage,sched-core))
662 define KernelPackage/sched-connmark
663 SUBMENU:=$(NETWORK_SUPPORT_MENU)
664 TITLE:=Traffic shaper conntrack mark support
665 DEPENDS:=+kmod-sched-core +kmod-ipt-core +kmod-ipt-conntrack-extra
666 KCONFIG:=CONFIG_NET_ACT_CONNMARK
667 FILES:=$(LINUX_DIR)/net/sched/act_connmark.ko
669 $(eval $(call KernelPackage,sched-connmark))
671 define KernelPackage/sched
672 SUBMENU:=$(NETWORK_SUPPORT_MENU)
673 TITLE:=Extra traffic schedulers
674 DEPENDS:=+kmod-sched-core
676 CONFIG_NET_SCH_DSMARK \
678 CONFIG_NET_SCH_ESFQ \
679 CONFIG_NET_SCH_ESFQ_NFCT=y \
680 CONFIG_NET_SCH_FIFO \
681 CONFIG_NET_SCH_GRED \
682 CONFIG_NET_SCH_PRIO \
686 CONFIG_NET_SCH_TEQL \
687 CONFIG_NET_CLS_BASIC \
688 CONFIG_NET_ACT_POLICE \
690 CONFIG_NET_EMATCH_CMP \
691 CONFIG_NET_EMATCH_NBYTE \
692 CONFIG_NET_EMATCH_META \
693 CONFIG_NET_EMATCH_TEXT
694 FILES:=$(SCHED_FILES_EXTRA)
697 define KernelPackage/sched/description
698 Extra kernel schedulers modules for IP traffic
701 $(eval $(call KernelPackage,sched))
704 define KernelPackage/ax25
705 SUBMENU:=$(NETWORK_SUPPORT_MENU)
711 $(LINUX_DIR)/net/ax25/ax25.ko \
712 $(LINUX_DIR)/drivers/net/hamradio/mkiss.ko
713 AUTOLOAD:=$(call AutoLoad,80,ax25 mkiss)
714 $(call AddDepends/crc16)
717 define KernelPackage/ax25/description
718 Kernel modules for AX25 support
721 $(eval $(call KernelPackage,ax25))
724 define KernelPackage/mp-alg
725 SUBMENU:=$(NETWORK_SUPPORT_MENU)
726 TITLE:=ECMP caching algorithms
728 CONFIG_IP_ROUTE_MULTIPATH_RR \
729 CONFIG_IP_ROUTE_MULTIPATH_RANDOM \
730 CONFIG_IP_ROUTE_MULTIPATH_WRANDOM \
731 CONFIG_IP_ROUTE_MULTIPATH_DRR
733 $(LINUX_DIR)/net/ipv4/multipath_rr.ko \
734 $(LINUX_DIR)/net/ipv4/multipath_random.ko \
735 $(LINUX_DIR)/net/ipv4/multipath_wrandom.ko \
736 $(LINUX_DIR)/net/ipv4/multipath_drr.ko
737 AUTOLOAD:=$(call AutoLoad,35,multipath_rr multipath_random multipath_wrandom multipath_drr)
740 define KernelPackage/mp-alg/description
741 Kernel modules that provide several different algorithms for multipath
742 route selection from the route cache. The iproute "mpath" argument allows
743 specifying which algorithm to use for routes.
744 quagga (at least <=0.99.6) requires a multipath patch to support this
745 cached mp route feature.
748 $(eval $(call KernelPackage,mp-alg))
751 define KernelPackage/pktgen
752 SUBMENU:=$(NETWORK_SUPPORT_MENU)
753 DEPENDS:=@!TARGET_uml
754 TITLE:=Network packet generator
755 KCONFIG:=CONFIG_NET_PKTGEN
756 FILES:=$(LINUX_DIR)/net/core/pktgen.ko
757 AUTOLOAD:=$(call AutoLoad,99,pktgen)
760 define KernelPackage/pktgen/description
761 Kernel modules for the Network Packet Generator
764 $(eval $(call KernelPackage,pktgen))
766 define KernelPackage/l2tp
767 SUBMENU:=$(NETWORK_SUPPORT_MENU)
768 TITLE:=Layer Two Tunneling Protocol (L2TP)
769 KCONFIG:=CONFIG_L2TP \
771 CONFIG_L2TP_DEBUGFS=n
772 FILES:=$(LINUX_DIR)/net/l2tp/l2tp_core.ko \
773 $(LINUX_DIR)/net/l2tp/l2tp_netlink.ko
774 AUTOLOAD:=$(call AutoLoad,32,l2tp_core l2tp_netlink)
777 define KernelPackage/l2tp/description
778 Kernel modules for L2TP V3 Support
781 $(eval $(call KernelPackage,l2tp))
784 define KernelPackage/l2tp-eth
785 SUBMENU:=$(NETWORK_SUPPORT_MENU)
786 TITLE:=L2TP ethernet pseudowire support for L2TPv3
788 KCONFIG:=CONFIG_L2TP_ETH
789 FILES:=$(LINUX_DIR)/net/l2tp/l2tp_eth.ko
790 AUTOLOAD:=$(call AutoLoad,33,l2tp_eth)
793 define KernelPackage/l2tp-eth/description
794 Kernel modules for L2TP ethernet pseudowire support for L2TPv3
797 $(eval $(call KernelPackage,l2tp-eth))
799 define KernelPackage/l2tp-ip
800 SUBMENU:=$(NETWORK_SUPPORT_MENU)
801 TITLE:=L2TP IP encapsulation for L2TPv3
803 KCONFIG:=CONFIG_L2TP_IP
804 FILES:=$(LINUX_DIR)/net/l2tp/l2tp_ip.ko
805 AUTOLOAD:=$(call AutoLoad,33,l2tp_ip)
808 define KernelPackage/l2tp-ip/description
809 Kernel modules for L2TP IP encapsulation for L2TPv3
812 $(eval $(call KernelPackage,l2tp-ip))
815 define KernelPackage/sctp
816 SUBMENU:=$(NETWORK_SUPPORT_MENU)
817 TITLE:=SCTP protocol kernel support
820 CONFIG_SCTP_DBG_MSG=n \
821 CONFIG_SCTP_DBG_OBJCNT=n \
822 CONFIG_SCTP_HMAC_NONE=n \
823 CONFIG_SCTP_HMAC_SHA1=n \
824 CONFIG_SCTP_HMAC_MD5=y
825 FILES:= $(LINUX_DIR)/net/sctp/sctp.ko
826 AUTOLOAD:= $(call AutoLoad,32,sctp)
827 DEPENDS:=+kmod-lib-crc32c +kmod-crypto-md5 +kmod-crypto-hmac
830 define KernelPackage/sctp/description
831 Kernel modules for SCTP protocol support
834 $(eval $(call KernelPackage,sctp))
837 define KernelPackage/netem
838 SUBMENU:=$(NETWORK_SUPPORT_MENU)
839 TITLE:=Network emulation functionality
841 KCONFIG:=CONFIG_NET_SCH_NETEM
842 FILES:=$(LINUX_DIR)/net/sched/sch_netem.ko
843 AUTOLOAD:=$(call AutoLoad,99,netem)
846 define KernelPackage/netem/description
847 Kernel modules for emulating the properties of wide area networks
850 $(eval $(call KernelPackage,netem))
852 define KernelPackage/slip
853 SUBMENU:=$(NETWORK_SUPPORT_MENU)
857 CONFIG_SLIP_COMPRESSED=y \
858 CONFIG_SLIP_SMART=y \
859 CONFIG_SLIP_MODE_SLIP6=y
861 ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),ge,3.2)),1)
863 $(LINUX_DIR)/drivers/net/slip/slip.ko
866 $(LINUX_DIR)/drivers/net/slip.ko
868 AUTOLOAD:=$(call AutoLoad,30,slip)
871 define KernelPackage/slip/description
872 Kernel modules for SLIP support
875 $(eval $(call KernelPackage,slip))