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
/bonding
46 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
47 TITLE
:=Ethernet bonding driver
48 KCONFIG
:=CONFIG_BONDING
49 FILES
:=$(LINUX_DIR
)/drivers
/net
/bonding
/bonding.ko
50 AUTOLOAD
:=$(call AutoLoad
,40,bonding
)
53 define KernelPackage
/bonding
/description
54 Kernel module for NIC bonding.
57 $(eval
$(call KernelPackage
,bonding
))
60 define KernelPackage
/udptunnel4
61 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
62 TITLE
:=IPv4 UDP tunneling support
64 CONFIG_NET_UDP_TUNNEL \
67 FILES
:=$(LINUX_DIR
)/net
/ipv4
/udp_tunnel.ko
68 AUTOLOAD
:=$(call AutoLoad
,32,udp_tunnel
)
72 $(eval
$(call KernelPackage
,udptunnel4
))
74 define KernelPackage
/udptunnel6
75 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
76 TITLE
:=IPv6 UDP tunneling support
79 CONFIG_NET_UDP_TUNNEL \
82 FILES
:=$(LINUX_DIR
)/net
/ipv6
/ip6_udp_tunnel.ko
83 AUTOLOAD
:=$(call AutoLoad
,32,ip6_udp_tunnel
)
86 $(eval
$(call KernelPackage
,udptunnel6
))
89 define KernelPackage
/vxlan
90 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
91 TITLE
:=Native VXLAN Kernel support
97 FILES
:=$(LINUX_DIR
)/drivers
/net
/vxlan.ko
98 AUTOLOAD
:=$(call AutoLoad
,13,vxlan
)
101 define KernelPackage
/vxlan
/description
102 Kernel module for supporting VXLAN in the Kernel.
103 Requires Kernel
3.12 or newer.
106 $(eval
$(call KernelPackage
,vxlan
))
109 define KernelPackage
/geneve
110 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
111 TITLE
:=Generic Network Virtualization Encapsulation
(Geneve
) support
115 +IPV6
:kmod-udptunnel6
116 KCONFIG
:=CONFIG_GENEVE
118 $(LINUX_DIR
)/net
/ipv4
/geneve.ko@le4.1 \
119 $(LINUX_DIR
)/drivers
/net
/geneve.ko@ge4.2
120 AUTOLOAD
:=$(call AutoLoad
,13,geneve
)
123 define KernelPackage
/geneve
/description
124 Kernel module for supporting Geneve in the Kernel.
125 Requires Kernel
3.18 or newer.
128 $(eval
$(call KernelPackage
,geneve
))
131 define KernelPackage
/capi
132 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
133 TITLE
:=CAPI
(ISDN
) Support
136 CONFIG_ISDN_CAPI_CAPI20 \
138 CONFIG_ISDN_CAPI_CAPIFS
140 $(LINUX_DIR
)/drivers
/isdn
/capi
/kernelcapi.ko \
141 $(LINUX_DIR
)/drivers
/isdn
/capi
/capi.ko
142 AUTOLOAD
:=$(call AutoLoad
,30,kernelcapi capi
)
145 define KernelPackage
/capi
/description
146 Kernel module for basic CAPI
(ISDN
) support
149 $(eval
$(call KernelPackage
,capi
))
151 define KernelPackage
/misdn
152 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
153 TITLE
:=mISDN
(ISDN
) Support
160 $(LINUX_DIR
)/drivers
/isdn
/mISDN
/mISDN_core.ko \
161 $(LINUX_DIR
)/drivers
/isdn
/mISDN
/mISDN_dsp.ko \
162 $(LINUX_DIR
)/drivers
/isdn
/mISDN
/l1oip.ko
163 AUTOLOAD
:=$(call AutoLoad
,30,mISDN_core mISDN_dsp l1oip
)
166 define KernelPackage
/misdn
/description
167 Modular ISDN driver support
170 $(eval
$(call KernelPackage
,misdn
))
173 define KernelPackage
/isdn4linux
174 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
175 TITLE
:=Old ISDN4Linux
(deprecated
)
181 CONFIG_ISDN_PPP_VJ
=y \
183 CONFIG_IPPP_FILTER
=y \
184 CONFIG_ISDN_PPP_BSDCOMP \
185 CONFIG_ISDN_CAPI_MIDDLEWARE
=y \
186 CONFIG_ISDN_CAPI_CAPIFS_BOOL
=y \
187 CONFIG_ISDN_AUDIO
=y \
188 CONFIG_ISDN_TTY_FAX
=y \
190 CONFIG_ISDN_DIVERSION
192 $(LINUX_DIR
)/drivers
/isdn
/divert
/dss1_divert.ko \
193 $(LINUX_DIR
)/drivers
/isdn
/i4l
/isdn.ko \
194 $(LINUX_DIR
)/drivers
/isdn
/i4l
/isdn_bsdcomp.ko
195 AUTOLOAD
:=$(call AutoLoad
,40,isdn isdn_bsdcomp dss1_divert
)
198 define KernelPackage
/isdn4linux
/description
199 This driver allows you to use an ISDN adapter for networking
202 $(eval
$(call KernelPackage
,isdn4linux
))
205 define KernelPackage
/ipip
206 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
207 TITLE
:=IP-in-IP encapsulation
208 DEPENDS
:=+kmod-iptunnel
+kmod-iptunnel4
209 KCONFIG
:=CONFIG_NET_IPIP
210 FILES
:=$(LINUX_DIR
)/net
/ipv4
/ipip.ko
211 AUTOLOAD
:=$(call AutoLoad
,32,ipip
)
214 define KernelPackage
/ipip
/description
215 Kernel modules for IP-in-IP encapsulation
218 $(eval
$(call KernelPackage
,ipip
))
227 define KernelPackage
/ipsec
228 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
229 TITLE
:=IPsec related modules
(IPv4 and IPv6
)
231 +kmod-crypto-authenc
+kmod-crypto-cbc
+kmod-crypto-deflate \
232 +kmod-crypto-des
+kmod-crypto-echainiv
+kmod-crypto-hmac \
233 +kmod-crypto-iv
+kmod-crypto-md5
+kmod-crypto-sha1
239 FILES
:=$(foreach mod
,$(IPSEC-m
),$(LINUX_DIR
)/net
/$(mod
).ko
)
240 AUTOLOAD
:=$(call AutoLoad
,30,$(notdir $(IPSEC-m
)))
243 define KernelPackage
/ipsec
/description
244 Kernel modules for IPsec support in both IPv4 and IPv6.
252 $(eval
$(call KernelPackage
,ipsec
))
258 ipv4
/xfrm4_mode_beet \
259 ipv4
/xfrm4_mode_transport \
260 ipv4
/xfrm4_mode_tunnel \
264 define KernelPackage
/ipsec4
265 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
266 TITLE
:=IPsec related modules
(IPv4
)
267 DEPENDS
:=kmod-ipsec
+kmod-iptunnel4
272 CONFIG_INET_XFRM_MODE_BEET \
273 CONFIG_INET_XFRM_MODE_TRANSPORT \
274 CONFIG_INET_XFRM_MODE_TUNNEL \
275 CONFIG_INET_XFRM_TUNNEL \
276 CONFIG_INET_ESP_OFFLOAD
=n
277 FILES
:=$(foreach mod
,$(IPSEC4-m
),$(LINUX_DIR
)/net
/$(mod
).ko
)
278 AUTOLOAD
:=$(call AutoLoad
,32,$(notdir $(IPSEC4-m
)))
281 define KernelPackage
/ipsec4
/description
282 Kernel modules for IPsec support in IPv4.
288 - xfrm4_mode_transport
293 $(eval
$(call KernelPackage
,ipsec4
))
299 ipv6
/xfrm6_mode_beet \
300 ipv6
/xfrm6_mode_transport \
301 ipv6
/xfrm6_mode_tunnel \
305 define KernelPackage
/ipsec6
306 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
307 TITLE
:=IPsec related modules
(IPv6
)
308 DEPENDS
:=kmod-ipsec
+kmod-iptunnel6
312 CONFIG_INET6_IPCOMP \
313 CONFIG_INET6_XFRM_MODE_BEET \
314 CONFIG_INET6_XFRM_MODE_TRANSPORT \
315 CONFIG_INET6_XFRM_MODE_TUNNEL \
316 CONFIG_INET6_XFRM_TUNNEL \
317 CONFIG_INET6_ESP_OFFLOAD
=n
318 FILES
:=$(foreach mod
,$(IPSEC6-m
),$(LINUX_DIR
)/net
/$(mod
).ko
)
319 AUTOLOAD
:=$(call AutoLoad
,32,$(notdir $(IPSEC6-m
)))
322 define KernelPackage
/ipsec6
/description
323 Kernel modules for IPsec support in IPv6.
329 - xfrm6_mode_transport
334 $(eval
$(call KernelPackage
,ipsec6
))
337 define KernelPackage
/iptunnel
338 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
339 TITLE
:=IP tunnel support
343 FILES
:=$(LINUX_DIR
)/net
/ipv4
/ip_tunnel.ko
344 AUTOLOAD
:=$(call AutoLoad
,31,ip_tunnel
)
347 define KernelPackage
/iptunnel
/description
348 Kernel module for generic IP tunnel support
351 $(eval
$(call KernelPackage
,iptunnel
))
354 define KernelPackage
/ip-vti
355 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
356 TITLE
:=IP VTI
(Virtual Tunnel Interface
)
357 DEPENDS
:=+kmod-iptunnel
+kmod-iptunnel4
+kmod-ipsec4
358 KCONFIG
:=CONFIG_NET_IPVTI
359 FILES
:=$(LINUX_DIR
)/net
/ipv4
/ip_vti.ko
360 AUTOLOAD
:=$(call AutoLoad
,33,ip_vti
)
363 define KernelPackage
/ip-vti
/description
364 Kernel modules for IP VTI
(Virtual Tunnel Interface
)
367 $(eval
$(call KernelPackage
,ip-vti
))
370 define KernelPackage
/ip6-vti
371 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
372 TITLE
:=IPv6 VTI
(Virtual Tunnel Interface
)
373 DEPENDS
:=+kmod-iptunnel
+kmod-ip6-tunnel
+kmod-ipsec6
374 KCONFIG
:=CONFIG_IPV6_VTI
375 FILES
:=$(LINUX_DIR
)/net
/ipv6
/ip6_vti.ko
376 AUTOLOAD
:=$(call AutoLoad
,33,ip6_vti
)
379 define KernelPackage
/ip6-vti
/description
380 Kernel modules for IPv6 VTI
(Virtual Tunnel Interface
)
383 $(eval
$(call KernelPackage
,ip6-vti
))
386 define KernelPackage
/iptunnel4
387 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
388 TITLE
:=IPv4 tunneling
393 FILES
:=$(LINUX_DIR
)/net
/ipv4
/tunnel4.ko
394 AUTOLOAD
:=$(call AutoLoad
,31,tunnel4
)
397 define KernelPackage
/iptunnel4
/description
398 Kernel modules for IPv4 tunneling
401 $(eval
$(call KernelPackage
,iptunnel4
))
404 define KernelPackage
/iptunnel6
405 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
406 TITLE
:=IPv6 tunneling
410 FILES
:=$(LINUX_DIR
)/net
/ipv6
/tunnel6.ko
411 AUTOLOAD
:=$(call AutoLoad
,31,tunnel6
)
414 define KernelPackage
/iptunnel6
/description
415 Kernel modules for IPv6 tunneling
418 $(eval
$(call KernelPackage
,iptunnel6
))
421 define KernelPackage
/sit
422 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
423 DEPENDS
:=@IPV6
+kmod-iptunnel
+kmod-iptunnel4
424 TITLE
:=IPv6-in-IPv4 tunnel
425 KCONFIG
:=CONFIG_IPV6_SIT \
426 CONFIG_IPV6_SIT_6RD
=y
427 FILES
:=$(LINUX_DIR
)/net
/ipv6
/sit.ko
428 AUTOLOAD
:=$(call AutoLoad
,32,sit
)
431 define KernelPackage
/sit
/description
432 Kernel modules for IPv6-in-IPv4 tunnelling
435 $(eval
$(call KernelPackage
,sit
))
438 define KernelPackage
/fou
439 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
440 TITLE
:=FOU and GUE decapsulation
444 +IPV6
:kmod-udptunnel6
447 CONFIG_NET_FOU_IP_TUNNELS
=y
448 FILES
:=$(LINUX_DIR
)/net
/ipv4
/fou.ko
449 AUTOLOAD
:=$(call AutoProbe
,fou
)
452 define KernelPackage
/fou
/description
453 Kernel module for FOU
(Foo over UDP
) and GUE
(Generic UDP Encapsulation
) tunnelling.
454 Requires Kernel
3.18 or newer.
457 $(eval
$(call KernelPackage
,fou
))
460 define KernelPackage
/fou6
461 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
462 TITLE
:=FOU and GUE decapsulation over IPv6
468 CONFIG_IPV6_FOU_TUNNEL
469 FILES
:=$(LINUX_DIR
)/net
/ipv6
/fou6.ko
470 AUTOLOAD
:=$(call AutoProbe
,fou6
)
473 define KernelPackage
/fou6
/description
474 Kernel module for FOU
(Foo over UDP
) and GUE
(Generic UDP Encapsulation
) tunnelling over IPv6.
475 Requires Kernel
3.18 or newer.
478 $(eval
$(call KernelPackage
,fou6
))
481 define KernelPackage
/ip6-tunnel
482 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
483 TITLE
:=IP-in-IPv6 tunnelling
484 DEPENDS
:=@IPV6
+kmod-iptunnel6
485 KCONFIG
:= CONFIG_IPV6_TUNNEL
486 FILES
:=$(LINUX_DIR
)/net
/ipv6
/ip6_tunnel.ko
487 AUTOLOAD
:=$(call AutoLoad
,32,ip6_tunnel
)
490 define KernelPackage
/ip6-tunnel
/description
491 Kernel modules for IPv6-in-IPv6 and IPv4-in-IPv6 tunnelling
494 $(eval
$(call KernelPackage
,ip6-tunnel
))
497 define KernelPackage
/gre
498 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
500 DEPENDS
:=+kmod-iptunnel
501 KCONFIG
:=CONFIG_NET_IPGRE CONFIG_NET_IPGRE_DEMUX
502 FILES
:=$(LINUX_DIR
)/net
/ipv4
/ip_gre.ko
$(LINUX_DIR
)/net
/ipv4
/gre.ko
503 AUTOLOAD
:=$(call AutoLoad
,39,gre ip_gre
)
506 define KernelPackage
/gre
/description
507 Generic Routing Encapsulation support
510 $(eval
$(call KernelPackage
,gre
))
513 define KernelPackage
/gre6
514 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
515 TITLE
:=GRE support over IPV6
516 DEPENDS
:=@IPV6
+kmod-iptunnel
+kmod-ip6-tunnel
+kmod-gre
517 KCONFIG
:=CONFIG_IPV6_GRE
518 FILES
:=$(LINUX_DIR
)/net
/ipv6
/ip6_gre.ko
519 AUTOLOAD
:=$(call AutoLoad
,39,ip6_gre
)
522 define KernelPackage
/gre6
/description
523 Generic Routing Encapsulation support over IPv6
526 $(eval
$(call KernelPackage
,gre6
))
529 define KernelPackage
/tun
530 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
531 TITLE
:=Universal TUN
/TAP driver
533 FILES
:=$(LINUX_DIR
)/drivers
/net
/tun.ko
534 AUTOLOAD
:=$(call AutoLoad
,30,tun
)
537 define KernelPackage
/tun
/description
538 Kernel support for the TUN
/TAP tunneling device
541 $(eval
$(call KernelPackage
,tun
))
544 define KernelPackage
/veth
545 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
546 TITLE
:=Virtual ethernet pair device
548 FILES
:=$(LINUX_DIR
)/drivers
/net
/veth.ko
549 AUTOLOAD
:=$(call AutoLoad
,30,veth
)
552 define KernelPackage
/veth
/description
553 This device is a local ethernet tunnel. Devices are created in pairs.
554 When one end receives the packet it appears on its pair and vice
558 $(eval
$(call KernelPackage
,veth
))
561 define KernelPackage
/slhc
562 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
564 TITLE
:=Serial Line Header Compression
565 DEPENDS
:=+kmod-lib-crc-ccitt
567 FILES
:=$(LINUX_DIR
)/drivers
/net
/slip
/slhc.ko
570 $(eval
$(call KernelPackage
,slhc
))
573 define KernelPackage
/ppp
574 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
576 DEPENDS
:=+kmod-lib-crc-ccitt
+kmod-slhc
581 $(LINUX_DIR
)/drivers
/net
/ppp
/ppp_async.ko \
582 $(LINUX_DIR
)/drivers
/net
/ppp
/ppp_generic.ko
583 AUTOLOAD
:=$(call AutoProbe
,ppp_async
)
586 define KernelPackage
/ppp
/description
587 Kernel modules for PPP support
590 $(eval
$(call KernelPackage
,ppp
))
593 define KernelPackage
/ppp-synctty
594 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
595 TITLE
:=PPP sync tty support
597 KCONFIG
:=CONFIG_PPP_SYNC_TTY
598 FILES
:=$(LINUX_DIR
)/drivers
/net
/ppp
/ppp_synctty.ko
599 AUTOLOAD
:=$(call AutoProbe
,ppp_synctty
)
602 define KernelPackage
/ppp-synctty
/description
603 Kernel modules for PPP sync tty support
606 $(eval
$(call KernelPackage
,ppp-synctty
))
609 define KernelPackage
/pppox
610 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
613 KCONFIG
:=CONFIG_PPPOE
614 FILES
:=$(LINUX_DIR
)/drivers
/net
/ppp
/pppox.ko
617 define KernelPackage
/pppox
/description
618 Kernel helper module for PPPoE and PPTP support
621 $(eval
$(call KernelPackage
,pppox
))
624 define KernelPackage
/pppoe
625 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
627 DEPENDS
:=kmod-ppp
+kmod-pppox
628 KCONFIG
:=CONFIG_PPPOE
629 FILES
:=$(LINUX_DIR
)/drivers
/net
/ppp
/pppoe.ko
630 AUTOLOAD
:=$(call AutoProbe
,pppoe
)
633 define KernelPackage
/pppoe
/description
634 Kernel module for PPPoE
(PPP over Ethernet
) support
637 $(eval
$(call KernelPackage
,pppoe
))
640 define KernelPackage
/pppoa
641 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
643 DEPENDS
:=kmod-ppp
+kmod-atm
644 KCONFIG
:=CONFIG_PPPOATM CONFIG_ATM_DRIVERS
=y
645 FILES
:=$(LINUX_DIR
)/net
/atm
/pppoatm.ko
646 AUTOLOAD
:=$(call AutoLoad
,40,pppoatm
)
649 define KernelPackage
/pppoa
/description
650 Kernel modules for PPPoA
(PPP over ATM
) support
653 $(eval
$(call KernelPackage
,pppoa
))
656 define KernelPackage
/pptp
657 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
659 DEPENDS
:=kmod-ppp
+kmod-gre
+kmod-pppox
661 FILES
:=$(LINUX_DIR
)/drivers
/net
/ppp
/pptp.ko
662 AUTOLOAD
:=$(call AutoProbe
,pptp
)
665 $(eval
$(call KernelPackage
,pptp
))
668 define KernelPackage
/pppol2tp
669 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
670 TITLE
:=PPPoL2TP support
671 DEPENDS
:=kmod-ppp
+kmod-pppox
+kmod-l2tp
672 KCONFIG
:=CONFIG_PPPOL2TP
673 FILES
:=$(LINUX_DIR
)/net
/l2tp
/l2tp_ppp.ko
674 AUTOLOAD
:=$(call AutoProbe
,l2tp_ppp
)
677 define KernelPackage
/pppol2tp
/description
678 Kernel modules for PPPoL2TP
(PPP over L2TP
) support
681 $(eval
$(call KernelPackage
,pppol2tp
))
684 define KernelPackage
/ipoa
685 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
688 KCONFIG
:=CONFIG_ATM_CLIP
689 FILES
:=$(LINUX_DIR
)/net
/atm
/clip.ko
690 AUTOLOAD
:=$(call AutoProbe
,clip
)
693 define KernelPackage
/ipoa
/description
694 Kernel modules for IPoA
(IP over ATM
) support
697 $(eval
$(call KernelPackage
,ipoa
))
700 define KernelPackage
/mppe
701 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
702 TITLE
:=Microsoft PPP compression
/encryption
703 DEPENDS
:=kmod-ppp
+kmod-crypto-sha1
+kmod-crypto-ecb
705 CONFIG_PPP_MPPE_MPPC \
707 FILES
:=$(LINUX_DIR
)/drivers
/net
/ppp
/ppp_mppe.ko
708 AUTOLOAD
:=$(call AutoProbe
,ppp_mppe
)
711 define KernelPackage
/mppe
/description
712 Kernel modules for Microsoft PPP compression
/encryption
715 $(eval
$(call KernelPackage
,mppe
))
718 SCHED_MODULES
= $(patsubst $(LINUX_DIR
)/net
/sched
/%.ko
,%,$(wildcard $(LINUX_DIR
)/net
/sched
/*.ko
))
719 SCHED_MODULES_CORE
= sch_ingress sch_fq_codel sch_hfsc sch_htb sch_tbf cls_basic cls_fw cls_route cls_flow cls_tcindex cls_u32 em_u32 act_mirred act_skbedit cls_matchall
720 SCHED_MODULES_FILTER
= $(SCHED_MODULES_CORE
) act_connmark sch_netem em_ipset cls_bpf act_bpf
721 SCHED_MODULES_EXTRA
= $(filter-out $(SCHED_MODULES_FILTER
),$(SCHED_MODULES
))
722 SCHED_FILES
= $(patsubst %,$(LINUX_DIR
)/net
/sched
/%.ko
,$(filter $(SCHED_MODULES_CORE
),$(SCHED_MODULES
)))
723 SCHED_FILES_EXTRA
= $(patsubst %,$(LINUX_DIR
)/net
/sched
/%.ko
,$(SCHED_MODULES_EXTRA
))
725 define KernelPackage
/sched-core
726 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
727 TITLE
:=Traffic schedulers
730 CONFIG_NET_SCH_HFSC \
733 CONFIG_NET_SCH_INGRESS \
734 CONFIG_NET_SCH_FQ_CODEL \
736 CONFIG_NET_CLS_ACT
=y \
737 CONFIG_NET_CLS_BASIC \
738 CONFIG_NET_CLS_FLOW \
740 CONFIG_NET_CLS_ROUTE4 \
741 CONFIG_NET_CLS_TCINDEX \
743 CONFIG_NET_ACT_MIRRED \
744 CONFIG_NET_ACT_SKBEDIT \
745 CONFIG_NET_CLS_MATCHALL \
746 CONFIG_NET_EMATCH
=y \
747 CONFIG_NET_EMATCH_U32
748 FILES
:=$(SCHED_FILES
)
749 AUTOLOAD
:=$(call AutoLoad
,70, $(SCHED_MODULES_CORE
))
752 define KernelPackage
/sched-core
/description
753 Core kernel scheduler support for IP traffic
756 $(eval
$(call KernelPackage
,sched-core
))
759 define KernelPackage
/sched-flower
760 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
761 TITLE
:=Flower traffic classifier
762 DEPENDS
:=+kmod-sched-core
763 KCONFIG
:=CONFIG_NET_CLS_FLOWER
764 FILES
:=$(LINUX_DIR
)/net
/sched
/cls_flower.ko
765 AUTOLOAD
:=$(call AutoProbe
, cls_flower
)
768 define KernelPackage
/sched-flower
/description
769 Allows to classify packets based on a configurable combination of packet keys and masks.
772 $(eval
$(call KernelPackage
,sched-flower
))
775 define KernelPackage
/sched-act-vlan
776 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
777 TITLE
:=Traffic VLAN manipulation
778 DEPENDS
:=+kmod-sched-core
779 KCONFIG
:=CONFIG_NET_ACT_VLAN
780 FILES
:=$(LINUX_DIR
)/net
/sched
/act_vlan.ko
781 AUTOLOAD
:=$(call AutoProbe
, act_vlan
)
784 define KernelPackage
/sched-act-vlan
/description
785 Allows to configure rules to push or pop vlan headers.
788 $(eval
$(call KernelPackage
,sched-act-vlan
))
791 define KernelPackage
/sched-mqprio
792 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
793 TITLE
:=Multi-queue priority scheduler
(MQPRIO
)
794 DEPENDS
:=+kmod-sched-core
795 KCONFIG
:=CONFIG_NET_SCH_MQPRIO
796 FILES
:=$(LINUX_DIR
)/net
/sched
/sch_mqprio.ko
797 AUTOLOAD
:=$(call AutoProbe
, sch_mqprio
)
800 define KernelPackage
/sched-mqprio
/description
801 This scheduler allows QOS to be offloaded on NICs that have support for offloading QOS schedulers.
804 $(eval
$(call KernelPackage
,sched-mqprio
))
807 define KernelPackage
/sched-connmark
808 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
809 TITLE
:=Traffic shaper conntrack mark support
810 DEPENDS
:=+kmod-sched-core
+kmod-ipt-core
+kmod-ipt-conntrack-extra
811 KCONFIG
:=CONFIG_NET_ACT_CONNMARK
812 FILES
:=$(LINUX_DIR
)/net
/sched
/act_connmark.ko
813 AUTOLOAD
:=$(call AutoLoad
,71, act_connmark
)
815 $(eval
$(call KernelPackage
,sched-connmark
))
818 define KernelPackage
/sched-ipset
819 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
820 TITLE
:=Traffic shaper ipset support
821 DEPENDS
:=+kmod-sched-core
+kmod-ipt-ipset
823 CONFIG_NET_EMATCH_IPSET
825 $(LINUX_DIR
)/net
/sched
/em_ipset.ko
826 AUTOLOAD
:=$(call AutoLoad
,72,em_ipset
)
829 $(eval
$(call KernelPackage
,sched-ipset
))
832 define KernelPackage
/sched-bpf
833 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
834 TITLE
:=Traffic shaper support for Berkeley Packet Filter
839 $(LINUX_DIR
)/net
/sched
/cls_bpf.ko \
840 $(LINUX_DIR
)/net
/sched
/act_bpf.ko
841 AUTOLOAD
:=$(call AutoLoad
,72,cls_bpf act_bpf
)
844 $(eval
$(call KernelPackage
,sched-bpf
))
847 define KernelPackage
/bpf-test
848 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
849 TITLE
:=Test Berkeley Packet Filter functionality
850 KCONFIG
:=CONFIG_TEST_BPF
851 FILES
:=$(LINUX_DIR
)/lib
/test_bpf.ko
854 $(eval
$(call KernelPackage
,bpf-test
))
857 define KernelPackage
/sched
858 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
859 TITLE
:=Extra traffic schedulers
860 DEPENDS
:=+kmod-sched-core
+kmod-ipt-core
+kmod-lib-crc32c
862 CONFIG_NET_SCH_CODEL \
863 CONFIG_NET_SCH_DSMARK \
864 CONFIG_NET_SCH_FIFO \
865 CONFIG_NET_SCH_GRED \
866 CONFIG_NET_SCH_MULTIQ \
867 CONFIG_NET_SCH_PRIO \
870 CONFIG_NET_SCH_TEQL \
873 CONFIG_NET_ACT_POLICE \
874 CONFIG_NET_ACT_GACT \
876 CONFIG_NET_ACT_PEDIT \
877 CONFIG_NET_ACT_SIMP \
878 CONFIG_NET_ACT_CSUM \
879 CONFIG_NET_EMATCH_CMP \
880 CONFIG_NET_EMATCH_NBYTE \
881 CONFIG_NET_EMATCH_META \
882 CONFIG_NET_EMATCH_TEXT
883 FILES
:=$(SCHED_FILES_EXTRA
)
884 AUTOLOAD
:=$(call AutoLoad
,73, $(SCHED_MODULES_EXTRA
))
887 define KernelPackage
/sched
/description
888 Extra kernel schedulers modules for IP traffic
891 $(eval
$(call KernelPackage
,sched
))
894 define KernelPackage
/tcp-bbr
895 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
896 TITLE
:=BBR TCP congestion control
897 DEPENDS
:=+LINUX_4_9
:kmod-sched
899 CONFIG_TCP_CONG_ADVANCED
=y \
901 FILES
:=$(LINUX_DIR
)/net
/ipv4
/tcp_bbr.ko
902 AUTOLOAD
:=$(call AutoLoad
,74,tcp_bbr
)
905 define KernelPackage
/tcp-bbr
/description
906 Kernel module for BBR
(Bottleneck Bandwidth and RTT
) TCP congestion
907 control. It requires the fq
("Fair Queue") pacing packet scheduler.
908 For kernel
4.13+, TCP internal pacing is implemented
as fallback.
911 ifdef CONFIG_LINUX_4_9
912 TCP_BBR_SYSCTL_CONF
:=sysctl-tcp-bbr-k4_9.conf
914 TCP_BBR_SYSCTL_CONF
:=sysctl-tcp-bbr.conf
917 define KernelPackage
/tcp-bbr
/install
918 $(INSTALL_DIR
) $(1)/etc
/sysctl.d
919 $(INSTALL_DATA
) .
/files
/$(TCP_BBR_SYSCTL_CONF
) $(1)/etc
/sysctl.d
/12-tcp-bbr.conf
922 $(eval
$(call KernelPackage
,tcp-bbr
))
925 define KernelPackage
/ax25
926 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
928 DEPENDS
:=+kmod-lib-crc16
934 $(LINUX_DIR
)/net
/ax25
/ax25.ko \
935 $(LINUX_DIR
)/drivers
/net
/hamradio
/mkiss.ko
936 AUTOLOAD
:=$(call AutoLoad
,80,ax25 mkiss
)
939 define KernelPackage
/ax25
/description
940 Kernel modules for AX25 support
943 $(eval
$(call KernelPackage
,ax25
))
946 define KernelPackage
/pktgen
947 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
948 DEPENDS
:=@
!TARGET_uml
949 TITLE
:=Network packet generator
950 KCONFIG
:=CONFIG_NET_PKTGEN
951 FILES
:=$(LINUX_DIR
)/net
/core
/pktgen.ko
952 AUTOLOAD
:=$(call AutoLoad
,99,pktgen
)
955 define KernelPackage
/pktgen
/description
956 Kernel modules for the Network Packet Generator
959 $(eval
$(call KernelPackage
,pktgen
))
961 define KernelPackage
/l2tp
962 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
963 TITLE
:=Layer Two Tunneling Protocol
(L2TP
)
966 +IPV6
:kmod-udptunnel6
967 KCONFIG
:=CONFIG_L2TP \
969 CONFIG_L2TP_DEBUGFS
=n
970 FILES
:=$(LINUX_DIR
)/net
/l2tp
/l2tp_core.ko \
971 $(LINUX_DIR
)/net
/l2tp
/l2tp_netlink.ko
972 AUTOLOAD
:=$(call AutoLoad
,32,l2tp_core l2tp_netlink
)
975 define KernelPackage
/l2tp
/description
976 Kernel modules for L2TP V3 Support
979 $(eval
$(call KernelPackage
,l2tp
))
982 define KernelPackage
/l2tp-eth
983 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
984 TITLE
:=L2TP ethernet pseudowire support for L2TPv3
986 KCONFIG
:=CONFIG_L2TP_ETH
987 FILES
:=$(LINUX_DIR
)/net
/l2tp
/l2tp_eth.ko
988 AUTOLOAD
:=$(call AutoLoad
,33,l2tp_eth
)
991 define KernelPackage
/l2tp-eth
/description
992 Kernel modules for L2TP ethernet pseudowire support for L2TPv3
995 $(eval
$(call KernelPackage
,l2tp-eth
))
997 define KernelPackage
/l2tp-ip
998 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
999 TITLE
:=L2TP IP encapsulation for L2TPv3
1001 KCONFIG
:=CONFIG_L2TP_IP
1003 $(LINUX_DIR
)/net
/l2tp
/l2tp_ip.ko \
1004 $(if
$(CONFIG_IPV6
),$(LINUX_DIR
)/net
/l2tp
/l2tp_ip6.ko
)
1005 AUTOLOAD
:=$(call AutoLoad
,33,l2tp_ip
$(if
$(CONFIG_IPV6
),l2tp_ip6
))
1008 define KernelPackage
/l2tp-ip
/description
1009 Kernel modules for L2TP IP encapsulation for L2TPv3
1012 $(eval
$(call KernelPackage
,l2tp-ip
))
1015 define KernelPackage
/sctp
1016 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
1017 TITLE
:=SCTP protocol kernel support
1020 CONFIG_SCTP_DBG_MSG
=n \
1021 CONFIG_SCTP_DBG_OBJCNT
=n \
1022 CONFIG_SCTP_HMAC_NONE
=n \
1023 CONFIG_SCTP_HMAC_SHA1
=n \
1024 CONFIG_SCTP_HMAC_MD5
=y \
1025 CONFIG_SCTP_COOKIE_HMAC_SHA1
=n \
1026 CONFIG_SCTP_COOKIE_HMAC_MD5
=y \
1027 CONFIG_SCTP_DEFAULT_COOKIE_HMAC_NONE
=n \
1028 CONFIG_SCTP_DEFAULT_COOKIE_HMAC_SHA1
=n \
1029 CONFIG_SCTP_DEFAULT_COOKIE_HMAC_MD5
=y
1030 FILES
:= $(LINUX_DIR
)/net
/sctp
/sctp.ko
1031 AUTOLOAD
:= $(call AutoLoad
,32,sctp
)
1032 DEPENDS
:=+kmod-lib-crc32c
+kmod-crypto-md5
+kmod-crypto-hmac
1035 define KernelPackage
/sctp
/description
1036 Kernel modules for SCTP protocol support
1039 $(eval
$(call KernelPackage
,sctp
))
1042 define KernelPackage
/netem
1043 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
1044 TITLE
:=Network emulation functionality
1045 DEPENDS
:=+kmod-sched
1046 KCONFIG
:=CONFIG_NET_SCH_NETEM
1047 FILES
:=$(LINUX_DIR
)/net
/sched
/sch_netem.ko
1048 AUTOLOAD
:=$(call AutoLoad
,99,netem
)
1051 define KernelPackage
/netem
/description
1052 Kernel modules for emulating the properties of wide area networks
1055 $(eval
$(call KernelPackage
,netem
))
1057 define KernelPackage
/slip
1058 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
1063 CONFIG_SLIP_COMPRESSED
=y \
1064 CONFIG_SLIP_SMART
=y \
1065 CONFIG_SLIP_MODE_SLIP6
=y
1068 $(LINUX_DIR
)/drivers
/net
/slip
/slip.ko
1069 AUTOLOAD
:=$(call AutoLoad
,30,slip
)
1072 define KernelPackage
/slip
/description
1073 Kernel modules for SLIP support
1076 $(eval
$(call KernelPackage
,slip
))
1078 define KernelPackage
/dnsresolver
1079 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
1080 TITLE
:=In-kernel DNS Resolver
1081 KCONFIG
:= CONFIG_DNS_RESOLVER
1082 FILES
:=$(LINUX_DIR
)/net
/dns_resolver
/dns_resolver.ko
1083 AUTOLOAD
:=$(call AutoLoad
,30,dns_resolver
)
1086 $(eval
$(call KernelPackage
,dnsresolver
))
1088 define KernelPackage
/rxrpc
1089 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
1090 TITLE
:=AF_RXRPC support
1095 CONFIG_AF_RXRPC_DEBUG
=n
1097 $(LINUX_DIR
)/net
/rxrpc
/af-rxrpc.ko@lt4.11 \
1098 $(LINUX_DIR
)/net
/rxrpc
/rxrpc.ko@ge4.11 \
1099 $(LINUX_DIR
)/net
/rxrpc
/rxkad.ko@lt4.7
1100 AUTOLOAD
:=$(call AutoLoad
,30,rxkad@lt4.7 af-rxrpc.ko@lt4.11 rxrpc.ko@ge4.11
)
1101 DEPENDS
:= +kmod-crypto-manager
+kmod-crypto-pcbc
+kmod-crypto-fcrypt
1104 define KernelPackage
/rxrpc
/description
1105 Kernel support for AF_RXRPC
; required for AFS client
1108 $(eval
$(call KernelPackage
,rxrpc
))
1110 define KernelPackage
/mpls
1111 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
1113 DEPENDS
:=+LINUX_4_19
:kmod-iptunnel
1117 CONFIG_LWTUNNEL_BPF
=n \
1118 CONFIG_NET_MPLS_GSO
=m \
1119 CONFIG_MPLS_ROUTING
=m \
1120 CONFIG_MPLS_IPTUNNEL
=m
1122 $(LINUX_DIR
)/net
/mpls
/mpls_gso.ko \
1123 $(LINUX_DIR
)/net
/mpls
/mpls_iptunnel.ko \
1124 $(LINUX_DIR
)/net
/mpls
/mpls_router.ko
1125 AUTOLOAD
:=$(call AutoLoad
,30,mpls_router mpls_iptunnel mpls_gso
)
1128 define KernelPackage
/mpls
/description
1129 Kernel support for MPLS
1132 $(eval
$(call KernelPackage
,mpls
))
1134 define KernelPackage
/9pnet
1135 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
1136 TITLE
:=Plan
9 Resource Sharing Support
(9P2000
)
1137 DEPENDS
:=@VIRTIO_SUPPORT
1140 CONFIG_NET_9P_DEBUG
=n \
1141 CONFIG_NET_9P_XEN
=n \
1142 CONFIG_NET_9P_VIRTIO
1144 $(LINUX_DIR
)/net
/9p
/9pnet.ko \
1145 $(LINUX_DIR
)/net
/9p
/9pnet_virtio.ko
1146 AUTOLOAD
:=$(call AutoLoad
,29,9pnet
9pnet_virtio
)
1149 define KernelPackage
/9pnet
/description
1150 Kernel support support for
1151 Plan
9 resource sharing via the
9P2000 protocol.
1154 $(eval
$(call KernelPackage
,9pnet
))
1157 define KernelPackage
/nlmon
1158 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
1159 TITLE
:=Virtual netlink monitoring device
1160 KCONFIG
:=CONFIG_NLMON
1161 FILES
:=$(LINUX_DIR
)/drivers
/net
/nlmon.ko
1162 AUTOLOAD
:=$(call AutoProbe
,nlmon
)
1165 define KernelPackage
/nlmon
/description
1166 Kernel module which adds a monitoring device for netlink.
1169 $(eval
$(call KernelPackage
,nlmon
))
1172 define KernelPackage
/mdio
1173 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
1174 TITLE
:=MDIO
(clause
45) PHY support
1175 KCONFIG
:=CONFIG_MDIO
1177 FILES
:=$(LINUX_DIR
)/drivers
/net
/mdio.ko
1178 AUTOLOAD
:=$(call AutoLoad
,32,mdio
)
1181 define KernelPackage
/mdio
/description
1182 Kernel modules for MDIO
(clause
45) PHY support
1185 $(eval
$(call KernelPackage
,mdio
))
1187 define KernelPackage
/macsec
1188 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
1189 TITLE
:=IEEE
802.1AE MAC-level encryption
(MAC
)
1190 DEPENDS
:=+kmod-crypto-gcm
1191 KCONFIG
:=CONFIG_MACSEC
1192 FILES
:=$(LINUX_DIR
)/drivers
/net
/macsec.ko
1193 AUTOLOAD
:=$(call AutoLoad
,13,macsec
)
1196 define KernelPackage
/macsec
/description
1197 MACsec is an encryption standard for Ethernet.
1200 $(eval
$(call KernelPackage
,macsec
))