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
/nsh
132 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
133 TITLE
:=Network Service Header
(NSH
) protocol
135 KCONFIG
:=CONFIG_NET_NSH
136 FILES
:=$(LINUX_DIR
)/net
/nsh
/nsh.ko@ge4.14
137 AUTOLOAD
:=$(call AutoLoad
,13,nsh
)
140 define KernelPackage
/nsh
/description
141 Network Service Header is an implementation of Service Function
142 Chaining
(RFC
7665). Requires kernel
4.14 or newer
145 $(eval
$(call KernelPackage
,nsh
))
148 define KernelPackage
/capi
149 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
150 TITLE
:=CAPI
(ISDN
) Support
153 CONFIG_ISDN_CAPI_CAPI20 \
155 CONFIG_ISDN_CAPI_CAPIFS
157 $(LINUX_DIR
)/drivers
/isdn
/capi
/kernelcapi.ko \
158 $(LINUX_DIR
)/drivers
/isdn
/capi
/capi.ko
159 AUTOLOAD
:=$(call AutoLoad
,30,kernelcapi capi
)
162 define KernelPackage
/capi
/description
163 Kernel module for basic CAPI
(ISDN
) support
166 $(eval
$(call KernelPackage
,capi
))
168 define KernelPackage
/misdn
169 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
170 TITLE
:=mISDN
(ISDN
) Support
177 $(LINUX_DIR
)/drivers
/isdn
/mISDN
/mISDN_core.ko \
178 $(LINUX_DIR
)/drivers
/isdn
/mISDN
/mISDN_dsp.ko \
179 $(LINUX_DIR
)/drivers
/isdn
/mISDN
/l1oip.ko
180 AUTOLOAD
:=$(call AutoLoad
,30,mISDN_core mISDN_dsp l1oip
)
183 define KernelPackage
/misdn
/description
184 Modular ISDN driver support
187 $(eval
$(call KernelPackage
,misdn
))
190 define KernelPackage
/isdn4linux
191 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
192 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-iptunnel
+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
))
244 define KernelPackage
/ipsec
245 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
246 TITLE
:=IPsec related modules
(IPv4 and IPv6
)
248 +kmod-crypto-authenc
+kmod-crypto-cbc
+kmod-crypto-deflate \
249 +kmod-crypto-des
+kmod-crypto-echainiv
+kmod-crypto-hmac \
250 +kmod-crypto-iv
+kmod-crypto-md5
+kmod-crypto-sha1
256 FILES
:=$(foreach mod
,$(IPSEC-m
),$(LINUX_DIR
)/net
/$(mod
).ko
)
257 AUTOLOAD
:=$(call AutoLoad
,30,$(notdir $(IPSEC-m
)))
260 define KernelPackage
/ipsec
/description
261 Kernel modules for IPsec support in both IPv4 and IPv6.
269 $(eval
$(call KernelPackage
,ipsec
))
275 ipv4
/xfrm4_mode_beet \
276 ipv4
/xfrm4_mode_transport \
277 ipv4
/xfrm4_mode_tunnel \
281 define KernelPackage
/ipsec4
282 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
283 TITLE
:=IPsec related modules
(IPv4
)
284 DEPENDS
:=kmod-ipsec
+kmod-iptunnel4
289 CONFIG_INET_XFRM_MODE_BEET \
290 CONFIG_INET_XFRM_MODE_TRANSPORT \
291 CONFIG_INET_XFRM_MODE_TUNNEL \
292 CONFIG_INET_XFRM_TUNNEL \
293 CONFIG_INET_ESP_OFFLOAD
=n
294 FILES
:=$(foreach mod
,$(IPSEC4-m
),$(LINUX_DIR
)/net
/$(mod
).ko
)
295 AUTOLOAD
:=$(call AutoLoad
,32,$(notdir $(IPSEC4-m
)))
298 define KernelPackage
/ipsec4
/description
299 Kernel modules for IPsec support in IPv4.
305 - xfrm4_mode_transport
310 $(eval
$(call KernelPackage
,ipsec4
))
316 ipv6
/xfrm6_mode_beet \
317 ipv6
/xfrm6_mode_transport \
318 ipv6
/xfrm6_mode_tunnel \
322 define KernelPackage
/ipsec6
323 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
324 TITLE
:=IPsec related modules
(IPv6
)
325 DEPENDS
:=kmod-ipsec
+kmod-iptunnel6
329 CONFIG_INET6_IPCOMP \
330 CONFIG_INET6_XFRM_MODE_BEET \
331 CONFIG_INET6_XFRM_MODE_TRANSPORT \
332 CONFIG_INET6_XFRM_MODE_TUNNEL \
333 CONFIG_INET6_XFRM_TUNNEL \
334 CONFIG_INET6_ESP_OFFLOAD
=n
335 FILES
:=$(foreach mod
,$(IPSEC6-m
),$(LINUX_DIR
)/net
/$(mod
).ko
)
336 AUTOLOAD
:=$(call AutoLoad
,32,$(notdir $(IPSEC6-m
)))
339 define KernelPackage
/ipsec6
/description
340 Kernel modules for IPsec support in IPv6.
346 - xfrm6_mode_transport
351 $(eval
$(call KernelPackage
,ipsec6
))
354 define KernelPackage
/iptunnel
355 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
356 TITLE
:=IP tunnel support
360 FILES
:=$(LINUX_DIR
)/net
/ipv4
/ip_tunnel.ko
361 AUTOLOAD
:=$(call AutoLoad
,31,ip_tunnel
)
364 define KernelPackage
/iptunnel
/description
365 Kernel module for generic IP tunnel support
368 $(eval
$(call KernelPackage
,iptunnel
))
371 define KernelPackage
/ip-vti
372 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
373 TITLE
:=IP VTI
(Virtual Tunnel Interface
)
374 DEPENDS
:=+kmod-iptunnel
+kmod-iptunnel4
+kmod-ipsec4
375 KCONFIG
:=CONFIG_NET_IPVTI
376 FILES
:=$(LINUX_DIR
)/net
/ipv4
/ip_vti.ko
377 AUTOLOAD
:=$(call AutoLoad
,33,ip_vti
)
380 define KernelPackage
/ip-vti
/description
381 Kernel modules for IP VTI
(Virtual Tunnel Interface
)
384 $(eval
$(call KernelPackage
,ip-vti
))
387 define KernelPackage
/ip6-vti
388 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
389 TITLE
:=IPv6 VTI
(Virtual Tunnel Interface
)
390 DEPENDS
:=+kmod-iptunnel
+kmod-ip6-tunnel
+kmod-ipsec6
391 KCONFIG
:=CONFIG_IPV6_VTI
392 FILES
:=$(LINUX_DIR
)/net
/ipv6
/ip6_vti.ko
393 AUTOLOAD
:=$(call AutoLoad
,33,ip6_vti
)
396 define KernelPackage
/ip6-vti
/description
397 Kernel modules for IPv6 VTI
(Virtual Tunnel Interface
)
400 $(eval
$(call KernelPackage
,ip6-vti
))
403 define KernelPackage
/xfrm-interface
404 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
405 TITLE
:=IPsec XFRM Interface
406 DEPENDS
:=+kmod-ipsec4
+kmod-ipsec6 @
!LINUX_4_14 @
!LINUX_4_9
407 KCONFIG
:=CONFIG_XFRM_INTERFACE
408 FILES
:=$(LINUX_DIR
)/net
/xfrm
/xfrm_interface.ko
409 AUTOLOAD
:=$(call AutoProbe
,xfrm_interface
)
412 define KernelPackage
/xfrm-interface
/description
413 Kernel module for XFRM interface support
416 $(eval
$(call KernelPackage
,xfrm-interface
))
419 define KernelPackage
/iptunnel4
420 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
421 TITLE
:=IPv4 tunneling
426 FILES
:=$(LINUX_DIR
)/net
/ipv4
/tunnel4.ko
427 AUTOLOAD
:=$(call AutoLoad
,31,tunnel4
)
430 define KernelPackage
/iptunnel4
/description
431 Kernel modules for IPv4 tunneling
434 $(eval
$(call KernelPackage
,iptunnel4
))
437 define KernelPackage
/iptunnel6
438 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
439 TITLE
:=IPv6 tunneling
443 FILES
:=$(LINUX_DIR
)/net
/ipv6
/tunnel6.ko
444 AUTOLOAD
:=$(call AutoLoad
,31,tunnel6
)
447 define KernelPackage
/iptunnel6
/description
448 Kernel modules for IPv6 tunneling
451 $(eval
$(call KernelPackage
,iptunnel6
))
454 define KernelPackage
/sit
455 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
456 DEPENDS
:=@IPV6
+kmod-iptunnel
+kmod-iptunnel4
457 TITLE
:=IPv6-in-IPv4 tunnel
458 KCONFIG
:=CONFIG_IPV6_SIT \
459 CONFIG_IPV6_SIT_6RD
=y
460 FILES
:=$(LINUX_DIR
)/net
/ipv6
/sit.ko
461 AUTOLOAD
:=$(call AutoLoad
,32,sit
)
464 define KernelPackage
/sit
/description
465 Kernel modules for IPv6-in-IPv4 tunnelling
468 $(eval
$(call KernelPackage
,sit
))
471 define KernelPackage
/fou
472 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
473 TITLE
:=FOU and GUE decapsulation
477 +IPV6
:kmod-udptunnel6
480 CONFIG_NET_FOU_IP_TUNNELS
=y
481 FILES
:=$(LINUX_DIR
)/net
/ipv4
/fou.ko
482 AUTOLOAD
:=$(call AutoProbe
,fou
)
485 define KernelPackage
/fou
/description
486 Kernel module for FOU
(Foo over UDP
) and GUE
(Generic UDP Encapsulation
) tunnelling.
487 Requires Kernel
3.18 or newer.
490 $(eval
$(call KernelPackage
,fou
))
493 define KernelPackage
/fou6
494 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
495 TITLE
:=FOU and GUE decapsulation over IPv6
501 CONFIG_IPV6_FOU_TUNNEL
502 FILES
:=$(LINUX_DIR
)/net
/ipv6
/fou6.ko
503 AUTOLOAD
:=$(call AutoProbe
,fou6
)
506 define KernelPackage
/fou6
/description
507 Kernel module for FOU
(Foo over UDP
) and GUE
(Generic UDP Encapsulation
) tunnelling over IPv6.
508 Requires Kernel
3.18 or newer.
511 $(eval
$(call KernelPackage
,fou6
))
514 define KernelPackage
/ip6-tunnel
515 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
516 TITLE
:=IP-in-IPv6 tunnelling
517 DEPENDS
:=@IPV6
+kmod-iptunnel6
518 KCONFIG
:= CONFIG_IPV6_TUNNEL
519 FILES
:=$(LINUX_DIR
)/net
/ipv6
/ip6_tunnel.ko
520 AUTOLOAD
:=$(call AutoLoad
,32,ip6_tunnel
)
523 define KernelPackage
/ip6-tunnel
/description
524 Kernel modules for IPv6-in-IPv6 and IPv4-in-IPv6 tunnelling
527 $(eval
$(call KernelPackage
,ip6-tunnel
))
530 define KernelPackage
/gre
531 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
533 DEPENDS
:=+kmod-iptunnel
534 KCONFIG
:=CONFIG_NET_IPGRE CONFIG_NET_IPGRE_DEMUX
535 FILES
:=$(LINUX_DIR
)/net
/ipv4
/ip_gre.ko
$(LINUX_DIR
)/net
/ipv4
/gre.ko
536 AUTOLOAD
:=$(call AutoLoad
,39,gre ip_gre
)
539 define KernelPackage
/gre
/description
540 Generic Routing Encapsulation support
543 $(eval
$(call KernelPackage
,gre
))
546 define KernelPackage
/gre6
547 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
548 TITLE
:=GRE support over IPV6
549 DEPENDS
:=@IPV6
+kmod-iptunnel
+kmod-ip6-tunnel
+kmod-gre
550 KCONFIG
:=CONFIG_IPV6_GRE
551 FILES
:=$(LINUX_DIR
)/net
/ipv6
/ip6_gre.ko
552 AUTOLOAD
:=$(call AutoLoad
,39,ip6_gre
)
555 define KernelPackage
/gre6
/description
556 Generic Routing Encapsulation support over IPv6
559 $(eval
$(call KernelPackage
,gre6
))
562 define KernelPackage
/tun
563 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
564 TITLE
:=Universal TUN
/TAP driver
566 FILES
:=$(LINUX_DIR
)/drivers
/net
/tun.ko
567 AUTOLOAD
:=$(call AutoLoad
,30,tun
)
570 define KernelPackage
/tun
/description
571 Kernel support for the TUN
/TAP tunneling device
574 $(eval
$(call KernelPackage
,tun
))
577 define KernelPackage
/veth
578 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
579 TITLE
:=Virtual ethernet pair device
581 FILES
:=$(LINUX_DIR
)/drivers
/net
/veth.ko
582 AUTOLOAD
:=$(call AutoLoad
,30,veth
)
585 define KernelPackage
/veth
/description
586 This device is a local ethernet tunnel. Devices are created in pairs.
587 When one end receives the packet it appears on its pair and vice
591 $(eval
$(call KernelPackage
,veth
))
594 define KernelPackage
/slhc
595 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
597 TITLE
:=Serial Line Header Compression
598 DEPENDS
:=+kmod-lib-crc-ccitt
600 FILES
:=$(LINUX_DIR
)/drivers
/net
/slip
/slhc.ko
603 $(eval
$(call KernelPackage
,slhc
))
606 define KernelPackage
/ppp
607 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
609 DEPENDS
:=+kmod-lib-crc-ccitt
+kmod-slhc
614 $(LINUX_DIR
)/drivers
/net
/ppp
/ppp_async.ko \
615 $(LINUX_DIR
)/drivers
/net
/ppp
/ppp_generic.ko
616 AUTOLOAD
:=$(call AutoProbe
,ppp_async
)
619 define KernelPackage
/ppp
/description
620 Kernel modules for PPP support
623 $(eval
$(call KernelPackage
,ppp
))
626 define KernelPackage
/ppp-synctty
627 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
628 TITLE
:=PPP sync tty support
630 KCONFIG
:=CONFIG_PPP_SYNC_TTY
631 FILES
:=$(LINUX_DIR
)/drivers
/net
/ppp
/ppp_synctty.ko
632 AUTOLOAD
:=$(call AutoProbe
,ppp_synctty
)
635 define KernelPackage
/ppp-synctty
/description
636 Kernel modules for PPP sync tty support
639 $(eval
$(call KernelPackage
,ppp-synctty
))
642 define KernelPackage
/pppox
643 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
646 KCONFIG
:=CONFIG_PPPOE
647 FILES
:=$(LINUX_DIR
)/drivers
/net
/ppp
/pppox.ko
650 define KernelPackage
/pppox
/description
651 Kernel helper module for PPPoE and PPTP support
654 $(eval
$(call KernelPackage
,pppox
))
657 define KernelPackage
/pppoe
658 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
660 DEPENDS
:=kmod-ppp
+kmod-pppox
661 KCONFIG
:=CONFIG_PPPOE
662 FILES
:=$(LINUX_DIR
)/drivers
/net
/ppp
/pppoe.ko
663 AUTOLOAD
:=$(call AutoProbe
,pppoe
)
666 define KernelPackage
/pppoe
/description
667 Kernel module for PPPoE
(PPP over Ethernet
) support
670 $(eval
$(call KernelPackage
,pppoe
))
673 define KernelPackage
/pppoa
674 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
676 DEPENDS
:=kmod-ppp
+kmod-atm
677 KCONFIG
:=CONFIG_PPPOATM CONFIG_ATM_DRIVERS
=y
678 FILES
:=$(LINUX_DIR
)/net
/atm
/pppoatm.ko
679 AUTOLOAD
:=$(call AutoLoad
,40,pppoatm
)
682 define KernelPackage
/pppoa
/description
683 Kernel modules for PPPoA
(PPP over ATM
) support
686 $(eval
$(call KernelPackage
,pppoa
))
689 define KernelPackage
/pptp
690 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
692 DEPENDS
:=kmod-ppp
+kmod-gre
+kmod-pppox
694 FILES
:=$(LINUX_DIR
)/drivers
/net
/ppp
/pptp.ko
695 AUTOLOAD
:=$(call AutoProbe
,pptp
)
698 $(eval
$(call KernelPackage
,pptp
))
701 define KernelPackage
/pppol2tp
702 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
703 TITLE
:=PPPoL2TP support
704 DEPENDS
:=kmod-ppp
+kmod-pppox
+kmod-l2tp
705 KCONFIG
:=CONFIG_PPPOL2TP
706 FILES
:=$(LINUX_DIR
)/net
/l2tp
/l2tp_ppp.ko
707 AUTOLOAD
:=$(call AutoProbe
,l2tp_ppp
)
710 define KernelPackage
/pppol2tp
/description
711 Kernel modules for PPPoL2TP
(PPP over L2TP
) support
714 $(eval
$(call KernelPackage
,pppol2tp
))
717 define KernelPackage
/ipoa
718 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
721 KCONFIG
:=CONFIG_ATM_CLIP
722 FILES
:=$(LINUX_DIR
)/net
/atm
/clip.ko
723 AUTOLOAD
:=$(call AutoProbe
,clip
)
726 define KernelPackage
/ipoa
/description
727 Kernel modules for IPoA
(IP over ATM
) support
730 $(eval
$(call KernelPackage
,ipoa
))
733 define KernelPackage
/mppe
734 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
735 TITLE
:=Microsoft PPP compression
/encryption
736 DEPENDS
:=kmod-ppp
+kmod-crypto-sha1
+kmod-crypto-ecb
738 CONFIG_PPP_MPPE_MPPC \
740 FILES
:=$(LINUX_DIR
)/drivers
/net
/ppp
/ppp_mppe.ko
741 AUTOLOAD
:=$(call AutoProbe
,ppp_mppe
)
744 define KernelPackage
/mppe
/description
745 Kernel modules for Microsoft PPP compression
/encryption
748 $(eval
$(call KernelPackage
,mppe
))
751 SCHED_MODULES
= $(patsubst $(LINUX_DIR
)/net
/sched
/%.ko
,%,$(wildcard $(LINUX_DIR
)/net
/sched
/*.ko
))
752 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
753 SCHED_MODULES_FILTER
= $(SCHED_MODULES_CORE
) act_connmark act_ctinfo sch_netem sch_mqprio em_ipset cls_bpf cls_flower act_bpf act_vlan
754 SCHED_MODULES_EXTRA
= $(filter-out $(SCHED_MODULES_FILTER
),$(SCHED_MODULES
))
755 SCHED_FILES
= $(patsubst %,$(LINUX_DIR
)/net
/sched
/%.ko
,$(filter $(SCHED_MODULES_CORE
),$(SCHED_MODULES
)))
756 SCHED_FILES_EXTRA
= $(patsubst %,$(LINUX_DIR
)/net
/sched
/%.ko
,$(SCHED_MODULES_EXTRA
))
758 define KernelPackage
/sched-core
759 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
760 TITLE
:=Traffic schedulers
763 CONFIG_NET_SCH_HFSC \
766 CONFIG_NET_SCH_INGRESS \
767 CONFIG_NET_SCH_FQ_CODEL \
769 CONFIG_NET_CLS_ACT
=y \
770 CONFIG_NET_CLS_BASIC \
771 CONFIG_NET_CLS_FLOW \
773 CONFIG_NET_CLS_ROUTE4 \
774 CONFIG_NET_CLS_TCINDEX \
776 CONFIG_NET_ACT_MIRRED \
777 CONFIG_NET_ACT_SKBEDIT \
778 CONFIG_NET_CLS_MATCHALL \
779 CONFIG_NET_EMATCH
=y \
780 CONFIG_NET_EMATCH_U32
781 FILES
:=$(SCHED_FILES
)
782 AUTOLOAD
:=$(call AutoLoad
,70, $(SCHED_MODULES_CORE
))
785 define KernelPackage
/sched-core
/description
786 Core kernel scheduler support for IP traffic
789 $(eval
$(call KernelPackage
,sched-core
))
792 define KernelPackage
/sched-cake
793 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
794 TITLE
:=Cake fq_codel
/blue derived shaper
795 DEPENDS
:=+kmod-sched-core
796 KCONFIG
:=CONFIG_NET_SCH_CAKE
797 FILES
:=$(LINUX_DIR
)/net
/sched
/sch_cake.ko
798 AUTOLOAD
:=$(call AutoProbe
,sch_cake
)
799 DEPENDS
:=+kmod-ipt-conntrack
802 define KernelPackage
/sched-cake
/description
803 Common Applications Kept Enhanced fq_codel
/blue derived shaper
806 $(eval
$(call KernelPackage
,sched-cake
))
808 define KernelPackage
/sched-flower
809 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
810 TITLE
:=Flower traffic classifier
811 DEPENDS
:=+kmod-sched-core
812 KCONFIG
:=CONFIG_NET_CLS_FLOWER
813 FILES
:=$(LINUX_DIR
)/net
/sched
/cls_flower.ko
814 AUTOLOAD
:=$(call AutoProbe
, cls_flower
)
817 define KernelPackage
/sched-flower
/description
818 Allows to classify packets based on a configurable combination of packet keys and masks.
821 $(eval
$(call KernelPackage
,sched-flower
))
824 define KernelPackage
/sched-act-vlan
825 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
826 TITLE
:=Traffic VLAN manipulation
827 DEPENDS
:=+kmod-sched-core
828 KCONFIG
:=CONFIG_NET_ACT_VLAN
829 FILES
:=$(LINUX_DIR
)/net
/sched
/act_vlan.ko
830 AUTOLOAD
:=$(call AutoProbe
, act_vlan
)
833 define KernelPackage
/sched-act-vlan
/description
834 Allows to configure rules to push or pop vlan headers.
837 $(eval
$(call KernelPackage
,sched-act-vlan
))
840 define KernelPackage
/sched-mqprio
841 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
842 TITLE
:=Multi-queue priority scheduler
(MQPRIO
)
843 DEPENDS
:=+kmod-sched-core
844 KCONFIG
:=CONFIG_NET_SCH_MQPRIO
845 FILES
:=$(LINUX_DIR
)/net
/sched
/sch_mqprio.ko
846 AUTOLOAD
:=$(call AutoProbe
, sch_mqprio
)
849 define KernelPackage
/sched-mqprio
/description
850 This scheduler allows QOS to be offloaded on NICs that have support for offloading QOS schedulers.
853 $(eval
$(call KernelPackage
,sched-mqprio
))
855 define KernelPackage
/sched-connmark
856 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
857 TITLE
:=Traffic shaper conntrack mark support
858 DEPENDS
:=+kmod-sched-core
+kmod-ipt-core
+kmod-ipt-conntrack-extra
859 KCONFIG
:=CONFIG_NET_ACT_CONNMARK
860 FILES
:=$(LINUX_DIR
)/net
/sched
/act_connmark.ko
861 AUTOLOAD
:=$(call AutoLoad
,71, act_connmark
)
863 $(eval
$(call KernelPackage
,sched-connmark
))
865 define KernelPackage
/sched-ctinfo
866 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
867 TITLE
:=Traffic shaper ctinfo support
868 DEPENDS
:=+kmod-sched-core
+kmod-ipt-core
+kmod-ipt-conntrack-extra
869 KCONFIG
:=CONFIG_NET_ACT_CTINFO
870 FILES
:=$(LINUX_DIR
)/net
/sched
/act_ctinfo.ko
871 AUTOLOAD
:=$(call AutoLoad
,71, act_ctinfo
)
873 $(eval
$(call KernelPackage
,sched-ctinfo
))
875 define KernelPackage
/sched-ipset
876 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
877 TITLE
:=Traffic shaper ipset support
878 DEPENDS
:=+kmod-sched-core
+kmod-ipt-ipset
880 CONFIG_NET_EMATCH_IPSET
882 $(LINUX_DIR
)/net
/sched
/em_ipset.ko
883 AUTOLOAD
:=$(call AutoLoad
,72,em_ipset
)
886 $(eval
$(call KernelPackage
,sched-ipset
))
889 define KernelPackage
/sched-bpf
890 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
891 TITLE
:=Traffic shaper support for Berkeley Packet Filter
896 $(LINUX_DIR
)/net
/sched
/cls_bpf.ko \
897 $(LINUX_DIR
)/net
/sched
/act_bpf.ko
898 AUTOLOAD
:=$(call AutoLoad
,72,cls_bpf act_bpf
)
901 $(eval
$(call KernelPackage
,sched-bpf
))
904 define KernelPackage
/bpf-test
905 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
906 TITLE
:=Test Berkeley Packet Filter functionality
907 KCONFIG
:=CONFIG_TEST_BPF
908 FILES
:=$(LINUX_DIR
)/lib
/test_bpf.ko
911 $(eval
$(call KernelPackage
,bpf-test
))
914 define KernelPackage
/sched
915 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
916 TITLE
:=Extra traffic schedulers
917 DEPENDS
:=+kmod-sched-core
+kmod-ipt-core
+kmod-lib-crc32c
919 CONFIG_NET_SCH_CODEL \
920 CONFIG_NET_SCH_DSMARK \
921 CONFIG_NET_SCH_FIFO \
922 CONFIG_NET_SCH_GRED \
923 CONFIG_NET_SCH_MULTIQ \
924 CONFIG_NET_SCH_PRIO \
927 CONFIG_NET_SCH_TEQL \
930 CONFIG_NET_ACT_POLICE \
931 CONFIG_NET_ACT_GACT \
933 CONFIG_NET_ACT_PEDIT \
934 CONFIG_NET_ACT_SIMP \
935 CONFIG_NET_ACT_CSUM \
936 CONFIG_NET_EMATCH_CMP \
937 CONFIG_NET_EMATCH_NBYTE \
938 CONFIG_NET_EMATCH_META \
939 CONFIG_NET_EMATCH_TEXT
940 FILES
:=$(SCHED_FILES_EXTRA
)
941 AUTOLOAD
:=$(call AutoLoad
,73, $(SCHED_MODULES_EXTRA
))
944 define KernelPackage
/sched
/description
945 Extra kernel schedulers modules for IP traffic
948 $(eval
$(call KernelPackage
,sched
))
951 define KernelPackage
/tcp-bbr
952 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
953 TITLE
:=BBR TCP congestion control
954 DEPENDS
:=+LINUX_4_9
:kmod-sched
956 CONFIG_TCP_CONG_ADVANCED
=y \
958 FILES
:=$(LINUX_DIR
)/net
/ipv4
/tcp_bbr.ko
959 AUTOLOAD
:=$(call AutoLoad
,74,tcp_bbr
)
962 define KernelPackage
/tcp-bbr
/description
963 Kernel module for BBR
(Bottleneck Bandwidth and RTT
) TCP congestion
964 control. It requires the fq
("Fair Queue") pacing packet scheduler.
965 For kernel
4.13+, TCP internal pacing is implemented
as fallback.
968 ifdef CONFIG_LINUX_4_9
969 TCP_BBR_SYSCTL_CONF
:=sysctl-tcp-bbr-k4_9.conf
971 TCP_BBR_SYSCTL_CONF
:=sysctl-tcp-bbr.conf
974 define KernelPackage
/tcp-bbr
/install
975 $(INSTALL_DIR
) $(1)/etc
/sysctl.d
976 $(INSTALL_DATA
) .
/files
/$(TCP_BBR_SYSCTL_CONF
) $(1)/etc
/sysctl.d
/12-tcp-bbr.conf
979 $(eval
$(call KernelPackage
,tcp-bbr
))
982 define KernelPackage
/ax25
983 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
985 DEPENDS
:=+kmod-lib-crc16
991 $(LINUX_DIR
)/net
/ax25
/ax25.ko \
992 $(LINUX_DIR
)/drivers
/net
/hamradio
/mkiss.ko
993 AUTOLOAD
:=$(call AutoLoad
,80,ax25 mkiss
)
996 define KernelPackage
/ax25
/description
997 Kernel modules for AX25 support
1000 $(eval
$(call KernelPackage
,ax25
))
1003 define KernelPackage
/pktgen
1004 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
1005 DEPENDS
:=@
!TARGET_uml
1006 TITLE
:=Network packet generator
1007 KCONFIG
:=CONFIG_NET_PKTGEN
1008 FILES
:=$(LINUX_DIR
)/net
/core
/pktgen.ko
1009 AUTOLOAD
:=$(call AutoLoad
,99,pktgen
)
1012 define KernelPackage
/pktgen
/description
1013 Kernel modules for the Network Packet Generator
1016 $(eval
$(call KernelPackage
,pktgen
))
1018 define KernelPackage
/l2tp
1019 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
1020 TITLE
:=Layer Two Tunneling Protocol
(L2TP
)
1023 +IPV6
:kmod-udptunnel6
1024 KCONFIG
:=CONFIG_L2TP \
1026 CONFIG_L2TP_DEBUGFS
=n
1027 FILES
:=$(LINUX_DIR
)/net
/l2tp
/l2tp_core.ko \
1028 $(LINUX_DIR
)/net
/l2tp
/l2tp_netlink.ko
1029 AUTOLOAD
:=$(call AutoLoad
,32,l2tp_core l2tp_netlink
)
1032 define KernelPackage
/l2tp
/description
1033 Kernel modules for L2TP V3 Support
1036 $(eval
$(call KernelPackage
,l2tp
))
1039 define KernelPackage
/l2tp-eth
1040 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
1041 TITLE
:=L2TP ethernet pseudowire support for L2TPv3
1043 KCONFIG
:=CONFIG_L2TP_ETH
1044 FILES
:=$(LINUX_DIR
)/net
/l2tp
/l2tp_eth.ko
1045 AUTOLOAD
:=$(call AutoLoad
,33,l2tp_eth
)
1048 define KernelPackage
/l2tp-eth
/description
1049 Kernel modules for L2TP ethernet pseudowire support for L2TPv3
1052 $(eval
$(call KernelPackage
,l2tp-eth
))
1054 define KernelPackage
/l2tp-ip
1055 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
1056 TITLE
:=L2TP IP encapsulation for L2TPv3
1058 KCONFIG
:=CONFIG_L2TP_IP
1060 $(LINUX_DIR
)/net
/l2tp
/l2tp_ip.ko \
1061 $(if
$(CONFIG_IPV6
),$(LINUX_DIR
)/net
/l2tp
/l2tp_ip6.ko
)
1062 AUTOLOAD
:=$(call AutoLoad
,33,l2tp_ip
$(if
$(CONFIG_IPV6
),l2tp_ip6
))
1065 define KernelPackage
/l2tp-ip
/description
1066 Kernel modules for L2TP IP encapsulation for L2TPv3
1069 $(eval
$(call KernelPackage
,l2tp-ip
))
1072 define KernelPackage
/sctp
1073 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
1074 TITLE
:=SCTP protocol kernel support
1077 CONFIG_SCTP_DBG_MSG
=n \
1078 CONFIG_SCTP_DBG_OBJCNT
=n \
1079 CONFIG_SCTP_HMAC_NONE
=n \
1080 CONFIG_SCTP_HMAC_SHA1
=n \
1081 CONFIG_SCTP_HMAC_MD5
=y \
1082 CONFIG_SCTP_COOKIE_HMAC_SHA1
=n \
1083 CONFIG_SCTP_COOKIE_HMAC_MD5
=y \
1084 CONFIG_SCTP_DEFAULT_COOKIE_HMAC_NONE
=n \
1085 CONFIG_SCTP_DEFAULT_COOKIE_HMAC_SHA1
=n \
1086 CONFIG_SCTP_DEFAULT_COOKIE_HMAC_MD5
=y
1087 FILES
:= $(LINUX_DIR
)/net
/sctp
/sctp.ko
1088 AUTOLOAD
:= $(call AutoLoad
,32,sctp
)
1089 DEPENDS
:=+kmod-lib-crc32c
+kmod-crypto-md5
+kmod-crypto-hmac
1092 define KernelPackage
/sctp
/description
1093 Kernel modules for SCTP protocol support
1096 $(eval
$(call KernelPackage
,sctp
))
1099 define KernelPackage
/netem
1100 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
1101 TITLE
:=Network emulation functionality
1102 DEPENDS
:=+kmod-sched
1103 KCONFIG
:=CONFIG_NET_SCH_NETEM
1104 FILES
:=$(LINUX_DIR
)/net
/sched
/sch_netem.ko
1105 AUTOLOAD
:=$(call AutoLoad
,99,netem
)
1108 define KernelPackage
/netem
/description
1109 Kernel modules for emulating the properties of wide area networks
1112 $(eval
$(call KernelPackage
,netem
))
1114 define KernelPackage
/slip
1115 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
1120 CONFIG_SLIP_COMPRESSED
=y \
1121 CONFIG_SLIP_SMART
=y \
1122 CONFIG_SLIP_MODE_SLIP6
=y
1125 $(LINUX_DIR
)/drivers
/net
/slip
/slip.ko
1126 AUTOLOAD
:=$(call AutoLoad
,30,slip
)
1129 define KernelPackage
/slip
/description
1130 Kernel modules for SLIP support
1133 $(eval
$(call KernelPackage
,slip
))
1135 define KernelPackage
/dnsresolver
1136 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
1137 TITLE
:=In-kernel DNS Resolver
1138 KCONFIG
:= CONFIG_DNS_RESOLVER
1139 FILES
:=$(LINUX_DIR
)/net
/dns_resolver
/dns_resolver.ko
1140 AUTOLOAD
:=$(call AutoLoad
,30,dns_resolver
)
1143 $(eval
$(call KernelPackage
,dnsresolver
))
1145 define KernelPackage
/rxrpc
1146 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
1147 TITLE
:=AF_RXRPC support
1152 CONFIG_AF_RXRPC_DEBUG
=n
1154 $(LINUX_DIR
)/net
/rxrpc
/af-rxrpc.ko@lt4.11 \
1155 $(LINUX_DIR
)/net
/rxrpc
/rxrpc.ko@ge4.11 \
1156 $(LINUX_DIR
)/net
/rxrpc
/rxkad.ko@lt4.7
1157 AUTOLOAD
:=$(call AutoLoad
,30,rxkad@lt4.7 af-rxrpc.ko@lt4.11 rxrpc.ko@ge4.11
)
1158 DEPENDS
:= +kmod-crypto-manager
+kmod-crypto-pcbc
+kmod-crypto-fcrypt
1161 define KernelPackage
/rxrpc
/description
1162 Kernel support for AF_RXRPC
; required for AFS client
1165 $(eval
$(call KernelPackage
,rxrpc
))
1167 define KernelPackage
/mpls
1168 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
1170 DEPENDS
:=+LINUX_4_19
:kmod-iptunnel
1174 CONFIG_LWTUNNEL_BPF
=n \
1175 CONFIG_NET_MPLS_GSO
=m \
1176 CONFIG_MPLS_ROUTING
=m \
1177 CONFIG_MPLS_IPTUNNEL
=m
1179 $(LINUX_DIR
)/net
/mpls
/mpls_gso.ko \
1180 $(LINUX_DIR
)/net
/mpls
/mpls_iptunnel.ko \
1181 $(LINUX_DIR
)/net
/mpls
/mpls_router.ko
1182 AUTOLOAD
:=$(call AutoLoad
,30,mpls_router mpls_iptunnel mpls_gso
)
1185 define KernelPackage
/mpls
/description
1186 Kernel support for MPLS
1189 $(eval
$(call KernelPackage
,mpls
))
1191 define KernelPackage
/9pnet
1192 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
1193 TITLE
:=Plan
9 Resource Sharing Support
(9P2000
)
1194 DEPENDS
:=@VIRTIO_SUPPORT
1197 CONFIG_NET_9P_DEBUG
=n \
1198 CONFIG_NET_9P_XEN
=n \
1199 CONFIG_NET_9P_VIRTIO
1201 $(LINUX_DIR
)/net
/9p
/9pnet.ko \
1202 $(LINUX_DIR
)/net
/9p
/9pnet_virtio.ko
1203 AUTOLOAD
:=$(call AutoLoad
,29,9pnet
9pnet_virtio
)
1206 define KernelPackage
/9pnet
/description
1207 Kernel support support for
1208 Plan
9 resource sharing via the
9P2000 protocol.
1211 $(eval
$(call KernelPackage
,9pnet
))
1214 define KernelPackage
/nlmon
1215 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
1216 TITLE
:=Virtual netlink monitoring device
1217 KCONFIG
:=CONFIG_NLMON
1218 FILES
:=$(LINUX_DIR
)/drivers
/net
/nlmon.ko
1219 AUTOLOAD
:=$(call AutoProbe
,nlmon
)
1222 define KernelPackage
/nlmon
/description
1223 Kernel module which adds a monitoring device for netlink.
1226 $(eval
$(call KernelPackage
,nlmon
))
1229 define KernelPackage
/mdio
1230 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
1231 TITLE
:=MDIO
(clause
45) PHY support
1232 KCONFIG
:=CONFIG_MDIO
1234 FILES
:=$(LINUX_DIR
)/drivers
/net
/mdio.ko
1235 AUTOLOAD
:=$(call AutoLoad
,32,mdio
)
1238 define KernelPackage
/mdio
/description
1239 Kernel modules for MDIO
(clause
45) PHY support
1242 $(eval
$(call KernelPackage
,mdio
))
1244 define KernelPackage
/macsec
1245 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
1246 TITLE
:=IEEE
802.1AE MAC-level encryption
(MAC
)
1247 DEPENDS
:=+kmod-crypto-gcm
1248 KCONFIG
:=CONFIG_MACSEC
1249 FILES
:=$(LINUX_DIR
)/drivers
/net
/macsec.ko
1250 AUTOLOAD
:=$(call AutoLoad
,13,macsec
)
1253 define KernelPackage
/macsec
/description
1254 MACsec is an encryption standard for Ethernet.
1257 $(eval
$(call KernelPackage
,macsec
))