kernel: kmod-isdn4linux: Remove package
[openwrt/openwrt.git] / package / kernel / linux / modules / netsupport.mk
1 #
2 # Copyright (C) 2006-2011 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/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)
51 MODPARAMS.bonding:=max_bonds=0
52 endef
53
54 define KernelPackage/bonding/description
55 Kernel module for NIC bonding.
56 endef
57
58 $(eval $(call KernelPackage,bonding))
59
60
61 define KernelPackage/udptunnel4
62 SUBMENU:=$(NETWORK_SUPPORT_MENU)
63 TITLE:=IPv4 UDP tunneling support
64 KCONFIG:=CONFIG_NET_UDP_TUNNEL
65 HIDDEN:=1
66 FILES:=$(LINUX_DIR)/net/ipv4/udp_tunnel.ko
67 AUTOLOAD:=$(call AutoLoad,32,udp_tunnel)
68 endef
69
70
71 $(eval $(call KernelPackage,udptunnel4))
72
73 define KernelPackage/udptunnel6
74 SUBMENU:=$(NETWORK_SUPPORT_MENU)
75 TITLE:=IPv6 UDP tunneling support
76 DEPENDS:=@IPV6
77 KCONFIG:=CONFIG_NET_UDP_TUNNEL
78 HIDDEN:=1
79 FILES:=$(LINUX_DIR)/net/ipv6/ip6_udp_tunnel.ko
80 AUTOLOAD:=$(call AutoLoad,32,ip6_udp_tunnel)
81 endef
82
83 $(eval $(call KernelPackage,udptunnel6))
84
85
86 define KernelPackage/vxlan
87 SUBMENU:=$(NETWORK_SUPPORT_MENU)
88 TITLE:=Native VXLAN Kernel support
89 DEPENDS:= \
90 +kmod-iptunnel \
91 +kmod-udptunnel4 \
92 +IPV6:kmod-udptunnel6
93 KCONFIG:=CONFIG_VXLAN
94 FILES:=$(LINUX_DIR)/drivers/net/vxlan.ko
95 AUTOLOAD:=$(call AutoLoad,13,vxlan)
96 endef
97
98 define KernelPackage/vxlan/description
99 Kernel module for supporting VXLAN in the Kernel.
100 Requires Kernel 3.12 or newer.
101 endef
102
103 $(eval $(call KernelPackage,vxlan))
104
105
106 define KernelPackage/geneve
107 SUBMENU:=$(NETWORK_SUPPORT_MENU)
108 TITLE:=Generic Network Virtualization Encapsulation (Geneve) support
109 DEPENDS:= \
110 +kmod-iptunnel \
111 +kmod-udptunnel4 \
112 +IPV6:kmod-udptunnel6
113 KCONFIG:=CONFIG_GENEVE
114 FILES:= \
115 $(LINUX_DIR)/drivers/net/geneve.ko
116 AUTOLOAD:=$(call AutoLoad,13,geneve)
117 endef
118
119 define KernelPackage/geneve/description
120 Kernel module for supporting Geneve in the Kernel.
121 Requires Kernel 3.18 or newer.
122 endef
123
124 $(eval $(call KernelPackage,geneve))
125
126
127 define KernelPackage/nsh
128 SUBMENU:=$(NETWORK_SUPPORT_MENU)
129 TITLE:=Network Service Header (NSH) protocol
130 DEPENDS:=
131 KCONFIG:=CONFIG_NET_NSH
132 FILES:=$(LINUX_DIR)/net/nsh/nsh.ko
133 AUTOLOAD:=$(call AutoLoad,13,nsh)
134 endef
135
136 define KernelPackage/nsh/description
137 Network Service Header is an implementation of Service Function
138 Chaining (RFC 7665). Requires kernel 4.14 or newer
139 endef
140
141 $(eval $(call KernelPackage,nsh))
142
143
144 define KernelPackage/misdn
145 SUBMENU:=$(NETWORK_SUPPORT_MENU)
146 TITLE:=mISDN (ISDN) Support
147 KCONFIG:= \
148 CONFIG_ISDN=y \
149 CONFIG_MISDN \
150 CONFIG_MISDN_DSP \
151 CONFIG_MISDN_L1OIP
152 FILES:= \
153 $(LINUX_DIR)/drivers/isdn/mISDN/mISDN_core.ko \
154 $(LINUX_DIR)/drivers/isdn/mISDN/mISDN_dsp.ko \
155 $(LINUX_DIR)/drivers/isdn/mISDN/l1oip.ko
156 AUTOLOAD:=$(call AutoLoad,30,mISDN_core mISDN_dsp l1oip)
157 endef
158
159 define KernelPackage/misdn/description
160 Modular ISDN driver support
161 endef
162
163 $(eval $(call KernelPackage,misdn))
164
165
166 define KernelPackage/ipip
167 SUBMENU:=$(NETWORK_SUPPORT_MENU)
168 TITLE:=IP-in-IP encapsulation
169 DEPENDS:=+kmod-iptunnel +kmod-iptunnel4
170 KCONFIG:=CONFIG_NET_IPIP
171 FILES:=$(LINUX_DIR)/net/ipv4/ipip.ko
172 AUTOLOAD:=$(call AutoLoad,32,ipip)
173 endef
174
175 define KernelPackage/ipip/description
176 Kernel modules for IP-in-IP encapsulation
177 endef
178
179 $(eval $(call KernelPackage,ipip))
180
181
182 IPSEC-m:= \
183 xfrm/xfrm_algo \
184 xfrm/xfrm_ipcomp \
185 xfrm/xfrm_user \
186 key/af_key \
187
188 define KernelPackage/ipsec
189 SUBMENU:=$(NETWORK_SUPPORT_MENU)
190 TITLE:=IPsec related modules (IPv4 and IPv6)
191 DEPENDS:= \
192 +kmod-crypto-authenc +kmod-crypto-cbc +kmod-crypto-deflate \
193 +kmod-crypto-des +kmod-crypto-echainiv +kmod-crypto-hmac \
194 +kmod-crypto-md5 +kmod-crypto-sha1
195 KCONFIG:= \
196 CONFIG_NET_KEY \
197 CONFIG_XFRM_USER \
198 CONFIG_INET_IPCOMP \
199 CONFIG_XFRM_IPCOMP
200 FILES:=$(foreach mod,$(IPSEC-m),$(LINUX_DIR)/net/$(mod).ko)
201 AUTOLOAD:=$(call AutoLoad,30,$(notdir $(IPSEC-m)))
202 endef
203
204 define KernelPackage/ipsec/description
205 Kernel modules for IPsec support in both IPv4 and IPv6.
206 Includes:
207 - af_key
208 - xfrm_algo
209 - xfrm_ipcomp
210 - xfrm_user
211 endef
212
213 $(eval $(call KernelPackage,ipsec))
214
215 IPSEC4-m = \
216 ipv4/ah4 \
217 ipv4/esp4 \
218 ipv4/xfrm4_tunnel \
219 ipv4/ipcomp \
220
221 IPSEC4-m += $(ifeq ($$(strip $$(call CompareKernelPatchVer,$$(KERNEL_PATCHVER),le,5.2))),ipv4/xfrm4_mode_beet ipv4/xfrm4_mode_transport ipv4/xfrm4_mode_tunnel)
222
223 define KernelPackage/ipsec4
224 SUBMENU:=$(NETWORK_SUPPORT_MENU)
225 TITLE:=IPsec related modules (IPv4)
226 DEPENDS:=kmod-ipsec +kmod-iptunnel4
227 KCONFIG:= \
228 CONFIG_INET_AH \
229 CONFIG_INET_ESP \
230 CONFIG_INET_IPCOMP \
231 CONFIG_INET_XFRM_MODE_BEET \
232 CONFIG_INET_XFRM_MODE_TRANSPORT \
233 CONFIG_INET_XFRM_MODE_TUNNEL \
234 CONFIG_INET_XFRM_TUNNEL \
235 CONFIG_INET_ESP_OFFLOAD=n
236 FILES:=$(foreach mod,$(IPSEC4-m),$(LINUX_DIR)/net/$(mod).ko)
237 AUTOLOAD:=$(call AutoLoad,32,$(notdir $(IPSEC4-m)))
238 endef
239
240 define KernelPackage/ipsec4/description
241 Kernel modules for IPsec support in IPv4.
242 Includes:
243 - ah4
244 - esp4
245 - ipcomp4
246 - xfrm4_mode_beet
247 - xfrm4_mode_transport
248 - xfrm4_mode_tunnel
249 - xfrm4_tunnel
250 endef
251
252 $(eval $(call KernelPackage,ipsec4))
253
254
255 IPSEC6-m = \
256 ipv6/ah6 \
257 ipv6/esp6 \
258 ipv6/xfrm6_tunnel \
259 ipv6/ipcomp6 \
260
261 IPSEC6-m += $(ifeq ($$(strip $$(call CompareKernelPatchVer,$$(KERNEL_PATCHVER),le,5.2))),ipv6/xfrm6_mode_beet ipv6/xfrm6_mode_transport ipv6/xfrm6_mode_tunnel)
262
263 define KernelPackage/ipsec6
264 SUBMENU:=$(NETWORK_SUPPORT_MENU)
265 TITLE:=IPsec related modules (IPv6)
266 DEPENDS:=@IPV6 kmod-ipsec +kmod-iptunnel6
267 KCONFIG:= \
268 CONFIG_INET6_AH \
269 CONFIG_INET6_ESP \
270 CONFIG_INET6_IPCOMP \
271 CONFIG_INET6_XFRM_MODE_BEET \
272 CONFIG_INET6_XFRM_MODE_TRANSPORT \
273 CONFIG_INET6_XFRM_MODE_TUNNEL \
274 CONFIG_INET6_XFRM_TUNNEL \
275 CONFIG_INET6_ESP_OFFLOAD=n
276 FILES:=$(foreach mod,$(IPSEC6-m),$(LINUX_DIR)/net/$(mod).ko)
277 AUTOLOAD:=$(call AutoLoad,32,$(notdir $(IPSEC6-m)))
278 endef
279
280 define KernelPackage/ipsec6/description
281 Kernel modules for IPsec support in IPv6.
282 Includes:
283 - ah6
284 - esp6
285 - ipcomp6
286 - xfrm6_mode_beet
287 - xfrm6_mode_transport
288 - xfrm6_mode_tunnel
289 - xfrm6_tunnel
290 endef
291
292 $(eval $(call KernelPackage,ipsec6))
293
294
295 define KernelPackage/iptunnel
296 SUBMENU:=$(NETWORK_SUPPORT_MENU)
297 TITLE:=IP tunnel support
298 HIDDEN:=1
299 KCONFIG:= \
300 CONFIG_NET_IP_TUNNEL
301 FILES:=$(LINUX_DIR)/net/ipv4/ip_tunnel.ko
302 AUTOLOAD:=$(call AutoLoad,31,ip_tunnel)
303 endef
304
305 define KernelPackage/iptunnel/description
306 Kernel module for generic IP tunnel support
307 endef
308
309 $(eval $(call KernelPackage,iptunnel))
310
311
312 define KernelPackage/ip-vti
313 SUBMENU:=$(NETWORK_SUPPORT_MENU)
314 TITLE:=IP VTI (Virtual Tunnel Interface)
315 DEPENDS:=+kmod-iptunnel +kmod-iptunnel4 +kmod-ipsec4
316 KCONFIG:=CONFIG_NET_IPVTI
317 FILES:=$(LINUX_DIR)/net/ipv4/ip_vti.ko
318 AUTOLOAD:=$(call AutoLoad,33,ip_vti)
319 endef
320
321 define KernelPackage/ip-vti/description
322 Kernel modules for IP VTI (Virtual Tunnel Interface)
323 endef
324
325 $(eval $(call KernelPackage,ip-vti))
326
327
328 define KernelPackage/ip6-vti
329 SUBMENU:=$(NETWORK_SUPPORT_MENU)
330 TITLE:=IPv6 VTI (Virtual Tunnel Interface)
331 DEPENDS:=@IPV6 +kmod-iptunnel +kmod-ip6-tunnel +kmod-ipsec6
332 KCONFIG:=CONFIG_IPV6_VTI
333 FILES:=$(LINUX_DIR)/net/ipv6/ip6_vti.ko
334 AUTOLOAD:=$(call AutoLoad,33,ip6_vti)
335 endef
336
337 define KernelPackage/ip6-vti/description
338 Kernel modules for IPv6 VTI (Virtual Tunnel Interface)
339 endef
340
341 $(eval $(call KernelPackage,ip6-vti))
342
343
344 define KernelPackage/xfrm-interface
345 SUBMENU:=$(NETWORK_SUPPORT_MENU)
346 TITLE:=IPsec XFRM Interface
347 DEPENDS:=@IPV6 +kmod-ipsec4 +kmod-ipsec6
348 KCONFIG:=CONFIG_XFRM_INTERFACE
349 FILES:=$(LINUX_DIR)/net/xfrm/xfrm_interface.ko
350 AUTOLOAD:=$(call AutoProbe,xfrm_interface)
351 endef
352
353 define KernelPackage/xfrm-interface/description
354 Kernel module for XFRM interface support
355 endef
356
357 $(eval $(call KernelPackage,xfrm-interface))
358
359
360 define KernelPackage/iptunnel4
361 SUBMENU:=$(NETWORK_SUPPORT_MENU)
362 TITLE:=IPv4 tunneling
363 HIDDEN:=1
364 KCONFIG:= \
365 CONFIG_INET_TUNNEL \
366 CONFIG_NET_IPIP=m
367 FILES:=$(LINUX_DIR)/net/ipv4/tunnel4.ko
368 AUTOLOAD:=$(call AutoLoad,31,tunnel4)
369 endef
370
371 define KernelPackage/iptunnel4/description
372 Kernel modules for IPv4 tunneling
373 endef
374
375 $(eval $(call KernelPackage,iptunnel4))
376
377
378 define KernelPackage/iptunnel6
379 SUBMENU:=$(NETWORK_SUPPORT_MENU)
380 TITLE:=IPv6 tunneling
381 DEPENDS:=@IPV6
382 KCONFIG:= \
383 CONFIG_INET6_TUNNEL
384 FILES:=$(LINUX_DIR)/net/ipv6/tunnel6.ko
385 AUTOLOAD:=$(call AutoLoad,31,tunnel6)
386 endef
387
388 define KernelPackage/iptunnel6/description
389 Kernel modules for IPv6 tunneling
390 endef
391
392 $(eval $(call KernelPackage,iptunnel6))
393
394
395 define KernelPackage/sit
396 SUBMENU:=$(NETWORK_SUPPORT_MENU)
397 DEPENDS:=@IPV6 +kmod-iptunnel +kmod-iptunnel4
398 TITLE:=IPv6-in-IPv4 tunnel
399 KCONFIG:=CONFIG_IPV6_SIT \
400 CONFIG_IPV6_SIT_6RD=y
401 FILES:=$(LINUX_DIR)/net/ipv6/sit.ko
402 AUTOLOAD:=$(call AutoLoad,32,sit)
403 endef
404
405 define KernelPackage/sit/description
406 Kernel modules for IPv6-in-IPv4 tunnelling
407 endef
408
409 $(eval $(call KernelPackage,sit))
410
411
412 define KernelPackage/fou
413 SUBMENU:=$(NETWORK_SUPPORT_MENU)
414 TITLE:=FOU and GUE decapsulation
415 DEPENDS:= \
416 +kmod-iptunnel \
417 +kmod-udptunnel4 \
418 +IPV6:kmod-udptunnel6
419 KCONFIG:= \
420 CONFIG_NET_FOU \
421 CONFIG_NET_FOU_IP_TUNNELS=y
422 FILES:=$(LINUX_DIR)/net/ipv4/fou.ko
423 AUTOLOAD:=$(call AutoProbe,fou)
424 endef
425
426 define KernelPackage/fou/description
427 Kernel module for FOU (Foo over UDP) and GUE (Generic UDP Encapsulation) tunnelling.
428 Requires Kernel 3.18 or newer.
429 endef
430
431 $(eval $(call KernelPackage,fou))
432
433
434 define KernelPackage/fou6
435 SUBMENU:=$(NETWORK_SUPPORT_MENU)
436 TITLE:=FOU and GUE decapsulation over IPv6
437 DEPENDS:= @IPV6 \
438 +kmod-fou \
439 +kmod-ip6-tunnel
440 KCONFIG:= \
441 CONFIG_IPV6_FOU \
442 CONFIG_IPV6_FOU_TUNNEL
443 FILES:=$(LINUX_DIR)/net/ipv6/fou6.ko
444 AUTOLOAD:=$(call AutoProbe,fou6)
445 endef
446
447 define KernelPackage/fou6/description
448 Kernel module for FOU (Foo over UDP) and GUE (Generic UDP Encapsulation) tunnelling over IPv6.
449 Requires Kernel 3.18 or newer.
450 endef
451
452 $(eval $(call KernelPackage,fou6))
453
454
455 define KernelPackage/ip6-tunnel
456 SUBMENU:=$(NETWORK_SUPPORT_MENU)
457 TITLE:=IP-in-IPv6 tunnelling
458 DEPENDS:=@IPV6 +kmod-iptunnel6
459 KCONFIG:= CONFIG_IPV6_TUNNEL
460 FILES:=$(LINUX_DIR)/net/ipv6/ip6_tunnel.ko
461 AUTOLOAD:=$(call AutoLoad,32,ip6_tunnel)
462 endef
463
464 define KernelPackage/ip6-tunnel/description
465 Kernel modules for IPv6-in-IPv6 and IPv4-in-IPv6 tunnelling
466 endef
467
468 $(eval $(call KernelPackage,ip6-tunnel))
469
470
471 define KernelPackage/gre
472 SUBMENU:=$(NETWORK_SUPPORT_MENU)
473 TITLE:=GRE support
474 DEPENDS:=+kmod-iptunnel
475 KCONFIG:=CONFIG_NET_IPGRE CONFIG_NET_IPGRE_DEMUX
476 FILES:=$(LINUX_DIR)/net/ipv4/ip_gre.ko $(LINUX_DIR)/net/ipv4/gre.ko
477 AUTOLOAD:=$(call AutoLoad,39,gre ip_gre)
478 endef
479
480 define KernelPackage/gre/description
481 Generic Routing Encapsulation support
482 endef
483
484 $(eval $(call KernelPackage,gre))
485
486
487 define KernelPackage/gre6
488 SUBMENU:=$(NETWORK_SUPPORT_MENU)
489 TITLE:=GRE support over IPV6
490 DEPENDS:=@IPV6 +kmod-iptunnel +kmod-ip6-tunnel +kmod-gre
491 KCONFIG:=CONFIG_IPV6_GRE
492 FILES:=$(LINUX_DIR)/net/ipv6/ip6_gre.ko
493 AUTOLOAD:=$(call AutoLoad,39,ip6_gre)
494 endef
495
496 define KernelPackage/gre6/description
497 Generic Routing Encapsulation support over IPv6
498 endef
499
500 $(eval $(call KernelPackage,gre6))
501
502
503 define KernelPackage/tun
504 SUBMENU:=$(NETWORK_SUPPORT_MENU)
505 TITLE:=Universal TUN/TAP driver
506 KCONFIG:=CONFIG_TUN
507 FILES:=$(LINUX_DIR)/drivers/net/tun.ko
508 AUTOLOAD:=$(call AutoLoad,30,tun)
509 endef
510
511 define KernelPackage/tun/description
512 Kernel support for the TUN/TAP tunneling device
513 endef
514
515 $(eval $(call KernelPackage,tun))
516
517
518 define KernelPackage/veth
519 SUBMENU:=$(NETWORK_SUPPORT_MENU)
520 TITLE:=Virtual ethernet pair device
521 KCONFIG:=CONFIG_VETH
522 FILES:=$(LINUX_DIR)/drivers/net/veth.ko
523 AUTOLOAD:=$(call AutoLoad,30,veth)
524 endef
525
526 define KernelPackage/veth/description
527 This device is a local ethernet tunnel. Devices are created in pairs.
528 When one end receives the packet it appears on its pair and vice
529 versa.
530 endef
531
532 $(eval $(call KernelPackage,veth))
533
534
535 define KernelPackage/vrf
536 SUBMENU:=$(NETWORK_SUPPORT_MENU)
537 TITLE:=Virtual Routing and Forwarding (Lite)
538 DEPENDS:=@KERNEL_NET_L3_MASTER_DEV
539 KCONFIG:=CONFIG_NET_VRF
540 FILES:=$(LINUX_DIR)/drivers/net/vrf.ko
541 AUTOLOAD:=$(call AutoLoad,30,vrf)
542 endef
543
544 define KernelPackage/vrf/description
545 This option enables the support for mapping interfaces into VRF's. The
546 support enables VRF devices.
547 endef
548
549 $(eval $(call KernelPackage,vrf))
550
551
552 define KernelPackage/slhc
553 SUBMENU:=$(NETWORK_SUPPORT_MENU)
554 HIDDEN:=1
555 TITLE:=Serial Line Header Compression
556 DEPENDS:=+kmod-lib-crc-ccitt
557 KCONFIG:=CONFIG_SLHC
558 FILES:=$(LINUX_DIR)/drivers/net/slip/slhc.ko
559 endef
560
561 $(eval $(call KernelPackage,slhc))
562
563
564 define KernelPackage/ppp
565 SUBMENU:=$(NETWORK_SUPPORT_MENU)
566 TITLE:=PPP modules
567 DEPENDS:=+kmod-lib-crc-ccitt +kmod-slhc
568 KCONFIG:= \
569 CONFIG_PPP \
570 CONFIG_PPP_ASYNC
571 FILES:= \
572 $(LINUX_DIR)/drivers/net/ppp/ppp_async.ko \
573 $(LINUX_DIR)/drivers/net/ppp/ppp_generic.ko
574 AUTOLOAD:=$(call AutoProbe,ppp_async)
575 endef
576
577 define KernelPackage/ppp/description
578 Kernel modules for PPP support
579 endef
580
581 $(eval $(call KernelPackage,ppp))
582
583
584 define KernelPackage/ppp-synctty
585 SUBMENU:=$(NETWORK_SUPPORT_MENU)
586 TITLE:=PPP sync tty support
587 DEPENDS:=kmod-ppp
588 KCONFIG:=CONFIG_PPP_SYNC_TTY
589 FILES:=$(LINUX_DIR)/drivers/net/ppp/ppp_synctty.ko
590 AUTOLOAD:=$(call AutoProbe,ppp_synctty)
591 endef
592
593 define KernelPackage/ppp-synctty/description
594 Kernel modules for PPP sync tty support
595 endef
596
597 $(eval $(call KernelPackage,ppp-synctty))
598
599
600 define KernelPackage/pppox
601 SUBMENU:=$(NETWORK_SUPPORT_MENU)
602 TITLE:=PPPoX helper
603 DEPENDS:=kmod-ppp
604 KCONFIG:=CONFIG_PPPOE
605 FILES:=$(LINUX_DIR)/drivers/net/ppp/pppox.ko
606 endef
607
608 define KernelPackage/pppox/description
609 Kernel helper module for PPPoE and PPTP support
610 endef
611
612 $(eval $(call KernelPackage,pppox))
613
614
615 define KernelPackage/pppoe
616 SUBMENU:=$(NETWORK_SUPPORT_MENU)
617 TITLE:=PPPoE support
618 DEPENDS:=kmod-ppp +kmod-pppox
619 KCONFIG:=CONFIG_PPPOE
620 FILES:=$(LINUX_DIR)/drivers/net/ppp/pppoe.ko
621 AUTOLOAD:=$(call AutoProbe,pppoe)
622 endef
623
624 define KernelPackage/pppoe/description
625 Kernel module for PPPoE (PPP over Ethernet) support
626 endef
627
628 $(eval $(call KernelPackage,pppoe))
629
630
631 define KernelPackage/pppoa
632 SUBMENU:=$(NETWORK_SUPPORT_MENU)
633 TITLE:=PPPoA support
634 DEPENDS:=kmod-ppp +kmod-atm
635 KCONFIG:=CONFIG_PPPOATM CONFIG_ATM_DRIVERS=y
636 FILES:=$(LINUX_DIR)/net/atm/pppoatm.ko
637 AUTOLOAD:=$(call AutoLoad,40,pppoatm)
638 endef
639
640 define KernelPackage/pppoa/description
641 Kernel modules for PPPoA (PPP over ATM) support
642 endef
643
644 $(eval $(call KernelPackage,pppoa))
645
646
647 define KernelPackage/pptp
648 SUBMENU:=$(NETWORK_SUPPORT_MENU)
649 TITLE:=PPtP support
650 DEPENDS:=kmod-ppp +kmod-gre +kmod-pppox
651 KCONFIG:=CONFIG_PPTP
652 FILES:=$(LINUX_DIR)/drivers/net/ppp/pptp.ko
653 AUTOLOAD:=$(call AutoProbe,pptp)
654 endef
655
656 $(eval $(call KernelPackage,pptp))
657
658
659 define KernelPackage/pppol2tp
660 SUBMENU:=$(NETWORK_SUPPORT_MENU)
661 TITLE:=PPPoL2TP support
662 DEPENDS:=kmod-ppp +kmod-pppox +kmod-l2tp
663 KCONFIG:=CONFIG_PPPOL2TP
664 FILES:=$(LINUX_DIR)/net/l2tp/l2tp_ppp.ko
665 AUTOLOAD:=$(call AutoProbe,l2tp_ppp)
666 endef
667
668 define KernelPackage/pppol2tp/description
669 Kernel modules for PPPoL2TP (PPP over L2TP) support
670 endef
671
672 $(eval $(call KernelPackage,pppol2tp))
673
674
675 define KernelPackage/ipoa
676 SUBMENU:=$(NETWORK_SUPPORT_MENU)
677 TITLE:=IPoA support
678 DEPENDS:=kmod-atm
679 KCONFIG:=CONFIG_ATM_CLIP
680 FILES:=$(LINUX_DIR)/net/atm/clip.ko
681 AUTOLOAD:=$(call AutoProbe,clip)
682 endef
683
684 define KernelPackage/ipoa/description
685 Kernel modules for IPoA (IP over ATM) support
686 endef
687
688 $(eval $(call KernelPackage,ipoa))
689
690
691 define KernelPackage/mppe
692 SUBMENU:=$(NETWORK_SUPPORT_MENU)
693 TITLE:=Microsoft PPP compression/encryption
694 DEPENDS:=kmod-ppp +kmod-crypto-arc4 +kmod-crypto-sha1 +kmod-crypto-ecb
695 KCONFIG:= \
696 CONFIG_PPP_MPPE_MPPC \
697 CONFIG_PPP_MPPE
698 FILES:=$(LINUX_DIR)/drivers/net/ppp/ppp_mppe.ko
699 AUTOLOAD:=$(call AutoProbe,ppp_mppe)
700 endef
701
702 define KernelPackage/mppe/description
703 Kernel modules for Microsoft PPP compression/encryption
704 endef
705
706 $(eval $(call KernelPackage,mppe))
707
708
709 SCHED_MODULES_CORE = sch_ingress sch_hfsc sch_htb sch_tbf cls_basic cls_fw cls_route cls_flow cls_tcindex cls_u32 em_u32 act_gact act_mirred act_skbedit cls_matchall
710 SCHED_FILES_CORE = $(foreach mod,$(SCHED_MODULES_CORE),$(LINUX_DIR)/net/sched/$(mod).ko)
711
712 define KernelPackage/sched-core
713 SUBMENU:=$(NETWORK_SUPPORT_MENU)
714 TITLE:=Traffic schedulers
715 KCONFIG:= \
716 CONFIG_NET_SCHED=y \
717 CONFIG_NET_SCH_HFSC \
718 CONFIG_NET_SCH_HTB \
719 CONFIG_NET_SCH_TBF \
720 CONFIG_NET_SCH_INGRESS \
721 CONFIG_NET_CLS=y \
722 CONFIG_NET_CLS_ACT=y \
723 CONFIG_NET_CLS_BASIC \
724 CONFIG_NET_CLS_FLOW \
725 CONFIG_NET_CLS_FW \
726 CONFIG_NET_CLS_ROUTE4 \
727 CONFIG_NET_CLS_TCINDEX \
728 CONFIG_NET_CLS_U32 \
729 CONFIG_NET_ACT_GACT \
730 CONFIG_NET_ACT_MIRRED \
731 CONFIG_NET_ACT_SKBEDIT \
732 CONFIG_NET_CLS_MATCHALL \
733 CONFIG_NET_EMATCH=y \
734 CONFIG_NET_EMATCH_U32
735 FILES:=$(SCHED_FILES_CORE)
736 AUTOLOAD:=$(call AutoLoad,70, $(SCHED_MODULES_CORE))
737 endef
738
739 define KernelPackage/sched-core/description
740 Core kernel scheduler support for IP traffic
741 endef
742
743 $(eval $(call KernelPackage,sched-core))
744
745
746 define KernelPackage/sched-act-police
747 SUBMENU:=$(NETWORK_SUPPORT_MENU)
748 TITLE:=Traffic Policing
749 DEPENDS:=+kmod-sched-core
750 KCONFIG:=CONFIG_NET_ACT_POLICE
751 FILES:=$(LINUX_DIR)/net/sched/act_police.ko
752 AUTOLOAD:=$(call AutoProbe,act_police)
753 endef
754
755 $(eval $(call KernelPackage,sched-act-police))
756
757
758 define KernelPackage/sched-act-sample
759 SUBMENU:=$(NETWORK_SUPPORT_MENU)
760 TITLE:=Traffic Sampling
761 DEPENDS:=+kmod-sched-core
762 KCONFIG:= \
763 CONFIG_NET_ACT_SAMPLE \
764 CONFIG_PSAMPLE
765 FILES:= \
766 $(LINUX_DIR)/net/psample/psample.ko \
767 $(LINUX_DIR)/net/sched/act_sample.ko
768 AUTOLOAD:=$(call AutoProbe,act_sample psample)
769 endef
770
771 define KernelPackage/sched-act-sample/description
772 Packet sampling tc action.
773 endef
774
775 $(eval $(call KernelPackage,sched-act-sample))
776
777
778 define KernelPackage/sched-act-vlan
779 SUBMENU:=$(NETWORK_SUPPORT_MENU)
780 TITLE:=Traffic VLAN manipulation
781 DEPENDS:=+kmod-sched-core
782 KCONFIG:=CONFIG_NET_ACT_VLAN
783 FILES:=$(LINUX_DIR)/net/sched/act_vlan.ko
784 AUTOLOAD:=$(call AutoProbe, act_vlan)
785 endef
786
787 define KernelPackage/sched-act-vlan/description
788 Allows to configure rules to push or pop vlan headers.
789 endef
790
791 $(eval $(call KernelPackage,sched-act-vlan))
792
793
794 define KernelPackage/sched-bpf
795 SUBMENU:=$(NETWORK_SUPPORT_MENU)
796 TITLE:=Traffic shaper support for Berkeley Packet Filter
797 KCONFIG:= \
798 CONFIG_NET_CLS_BPF \
799 CONFIG_NET_ACT_BPF
800 FILES:= \
801 $(LINUX_DIR)/net/sched/cls_bpf.ko \
802 $(LINUX_DIR)/net/sched/act_bpf.ko
803 AUTOLOAD:=$(call AutoLoad,72,cls_bpf act_bpf)
804 endef
805
806 $(eval $(call KernelPackage,sched-bpf))
807
808
809 define KernelPackage/sched-cake
810 SUBMENU:=$(NETWORK_SUPPORT_MENU)
811 TITLE:=Cake fq_codel/blue derived shaper
812 DEPENDS:=+kmod-sched-core
813 KCONFIG:=CONFIG_NET_SCH_CAKE
814 FILES:=$(LINUX_DIR)/net/sched/sch_cake.ko
815 AUTOLOAD:=$(call AutoProbe,sch_cake)
816 endef
817
818 define KernelPackage/sched-cake/description
819 Common Applications Kept Enhanced fq_codel/blue derived shaper
820 endef
821
822 $(eval $(call KernelPackage,sched-cake))
823
824
825 define KernelPackage/sched-connmark
826 SUBMENU:=$(NETWORK_SUPPORT_MENU)
827 TITLE:=Traffic shaper conntrack mark support
828 DEPENDS:=+kmod-sched-core +kmod-ipt-core +kmod-ipt-conntrack-extra
829 KCONFIG:=CONFIG_NET_ACT_CONNMARK
830 FILES:=$(LINUX_DIR)/net/sched/act_connmark.ko
831 AUTOLOAD:=$(call AutoLoad,71, act_connmark)
832 endef
833 $(eval $(call KernelPackage,sched-connmark))
834
835
836 define KernelPackage/sched-ctinfo
837 SUBMENU:=$(NETWORK_SUPPORT_MENU)
838 TITLE:=Traffic shaper ctinfo support
839 DEPENDS:=+kmod-sched-core +kmod-ipt-core +kmod-ipt-conntrack-extra
840 KCONFIG:=CONFIG_NET_ACT_CTINFO
841 FILES:=$(LINUX_DIR)/net/sched/act_ctinfo.ko
842 AUTOLOAD:=$(call AutoLoad,71, act_ctinfo)
843 endef
844 $(eval $(call KernelPackage,sched-ctinfo))
845
846
847 define KernelPackage/sched-drr
848 SUBMENU:=$(NETWORK_SUPPORT_MENU)
849 TITLE:=Deficit Round Robin scheduler (DRR)
850 DEPENDS:=+kmod-sched-core
851 KCONFIG:=CONFIG_NET_SCH_DRR
852 FILES:=$(LINUX_DIR)/net/sched/sch_drr.ko
853 AUTOLOAD:=$(call AutoProbe,sch_drr)
854 endef
855
856 define KernelPackage/sched-drr/description
857 DRR algorithm Configuration
858 endef
859
860 $(eval $(call KernelPackage,sched-drr))
861
862
863 define KernelPackage/sched-flower
864 SUBMENU:=$(NETWORK_SUPPORT_MENU)
865 TITLE:=Flower traffic classifier
866 DEPENDS:=+kmod-sched-core
867 KCONFIG:=CONFIG_NET_CLS_FLOWER
868 FILES:=$(LINUX_DIR)/net/sched/cls_flower.ko
869 AUTOLOAD:=$(call AutoProbe, cls_flower)
870 endef
871
872 define KernelPackage/sched-flower/description
873 Allows to classify packets based on a configurable combination of packet keys and masks.
874 endef
875
876 $(eval $(call KernelPackage,sched-flower))
877
878
879 define KernelPackage/sched-ipset
880 SUBMENU:=$(NETWORK_SUPPORT_MENU)
881 TITLE:=Traffic shaper ipset support
882 DEPENDS:=+kmod-sched-core +kmod-ipt-ipset
883 KCONFIG:= \
884 CONFIG_NET_EMATCH_IPSET
885 FILES:= \
886 $(LINUX_DIR)/net/sched/em_ipset.ko
887 AUTOLOAD:=$(call AutoLoad,72,em_ipset)
888 endef
889
890 $(eval $(call KernelPackage,sched-ipset))
891
892
893 define KernelPackage/sched-mqprio
894 SUBMENU:=$(NETWORK_SUPPORT_MENU)
895 TITLE:=Multi-queue priority scheduler (MQPRIO)
896 DEPENDS:=+kmod-sched-core
897 KCONFIG:=CONFIG_NET_SCH_MQPRIO
898 FILES:=$(LINUX_DIR)/net/sched/sch_mqprio.ko
899 AUTOLOAD:=$(call AutoProbe, sch_mqprio)
900 endef
901
902 define KernelPackage/sched-mqprio/description
903 This scheduler allows QOS to be offloaded on NICs that have support for offloading QOS schedulers.
904 endef
905
906 $(eval $(call KernelPackage,sched-mqprio))
907
908
909 define KernelPackage/sched-prio
910 SUBMENU:=$(NETWORK_SUPPORT_MENU)
911 TITLE:=Multi Band Priority Queueing (PRIO)
912 DEPENDS:=+kmod-sched-core
913 KCONFIG:=CONFIG_NET_SCH_PRIO
914 FILES:=$(LINUX_DIR)/net/sched/sch_prio.ko
915 AUTOLOAD:=$(call AutoProbe,sch_prio)
916 endef
917
918 define KernelPackage/sched-prio/description
919 PRIO algorithm Configuration
920 endef
921
922 $(eval $(call KernelPackage,sched-prio))
923
924
925 define KernelPackage/sched-red
926 SUBMENU:=$(NETWORK_SUPPORT_MENU)
927 TITLE:=Random Early Detection (RED)
928 DEPENDS:=+kmod-sched-core
929 KCONFIG:=CONFIG_NET_SCH_RED
930 FILES:=$(LINUX_DIR)/net/sched/sch_red.ko
931 AUTOLOAD:=$(call AutoProbe,sch_red)
932 endef
933
934 define KernelPackage/sched-red/description
935 Random Early Detection (RED) algorithm Configuration
936 endef
937
938 $(eval $(call KernelPackage,sched-red))
939
940
941 define KernelPackage/bpf-test
942 SUBMENU:=$(NETWORK_SUPPORT_MENU)
943 TITLE:=Test Berkeley Packet Filter functionality
944 KCONFIG:=CONFIG_TEST_BPF
945 FILES:=$(LINUX_DIR)/lib/test_bpf.ko
946 endef
947
948 $(eval $(call KernelPackage,bpf-test))
949
950
951 SCHED_MODULES_EXTRA = sch_codel sch_dsmark sch_gred sch_multiq sch_sfq sch_teql sch_fq sch_pie act_ipt act_pedit act_simple act_csum em_cmp em_nbyte em_meta em_text
952 SCHED_FILES_EXTRA = $(foreach mod,$(SCHED_MODULES_EXTRA),$(LINUX_DIR)/net/sched/$(mod).ko)
953
954 define KernelPackage/sched
955 SUBMENU:=$(NETWORK_SUPPORT_MENU)
956 TITLE:=Extra traffic schedulers
957 DEPENDS:=+kmod-sched-core +kmod-ipt-core +kmod-lib-crc32c +kmod-lib-textsearch
958 KCONFIG:= \
959 CONFIG_NET_SCH_CODEL \
960 CONFIG_NET_SCH_DSMARK \
961 CONFIG_NET_SCH_GRED \
962 CONFIG_NET_SCH_MULTIQ \
963 CONFIG_NET_SCH_SFQ \
964 CONFIG_NET_SCH_TEQL \
965 CONFIG_NET_SCH_FQ \
966 CONFIG_NET_SCH_PIE \
967 CONFIG_NET_ACT_IPT \
968 CONFIG_NET_ACT_PEDIT \
969 CONFIG_NET_ACT_SIMP \
970 CONFIG_NET_ACT_CSUM \
971 CONFIG_NET_EMATCH_CMP \
972 CONFIG_NET_EMATCH_NBYTE \
973 CONFIG_NET_EMATCH_META \
974 CONFIG_NET_EMATCH_TEXT
975 FILES:=$(SCHED_FILES_EXTRA)
976 AUTOLOAD:=$(call AutoLoad,73, $(SCHED_MODULES_EXTRA))
977 endef
978
979 define KernelPackage/sched/description
980 Extra kernel schedulers modules for IP traffic
981 endef
982
983 SCHED_TEQL_HOTPLUG:=hotplug-sched-teql.sh
984
985 define KernelPackage/sched/install
986 $(INSTALL_DIR) $(1)/etc/hotplug.d/iface
987 $(INSTALL_DATA) ./files/$(SCHED_TEQL_HOTPLUG) $(1)/etc/hotplug.d/iface/15-teql
988 endef
989
990 $(eval $(call KernelPackage,sched))
991
992
993 define KernelPackage/tcp-bbr
994 SUBMENU:=$(NETWORK_SUPPORT_MENU)
995 TITLE:=BBR TCP congestion control
996 KCONFIG:=CONFIG_TCP_CONG_BBR
997 FILES:=$(LINUX_DIR)/net/ipv4/tcp_bbr.ko
998 AUTOLOAD:=$(call AutoProbe,tcp_bbr)
999 endef
1000
1001 define KernelPackage/tcp-bbr/description
1002 Kernel module for BBR (Bottleneck Bandwidth and RTT) TCP congestion
1003 control. It requires the fq ("Fair Queue") pacing packet scheduler.
1004 For kernel 4.13+, TCP internal pacing is implemented as fallback.
1005 endef
1006
1007 TCP_BBR_SYSCTL_CONF:=sysctl-tcp-bbr.conf
1008
1009 define KernelPackage/tcp-bbr/install
1010 $(INSTALL_DIR) $(1)/etc/sysctl.d
1011 $(INSTALL_DATA) ./files/$(TCP_BBR_SYSCTL_CONF) $(1)/etc/sysctl.d/12-tcp-bbr.conf
1012 endef
1013
1014 $(eval $(call KernelPackage,tcp-bbr))
1015
1016
1017 define KernelPackage/tcp-hybla
1018 SUBMENU:=$(NETWORK_SUPPORT_MENU)
1019 TITLE:=TCP-Hybla congestion control algorithm
1020 KCONFIG:=CONFIG_TCP_CONG_HYBLA
1021 FILES:=$(LINUX_DIR)/net/ipv4/tcp_hybla.ko
1022 AUTOLOAD:=$(call AutoProbe,tcp_hybla)
1023 endef
1024
1025 define KernelPackage/tcp-hybla/description
1026 TCP-Hybla is a sender-side only change that eliminates penalization of
1027 long-RTT, large-bandwidth connections, like when satellite legs are
1028 involved, especially when sharing a common bottleneck with normal
1029 terrestrial connections.
1030 endef
1031
1032 $(eval $(call KernelPackage,tcp-hybla))
1033
1034
1035 define KernelPackage/tcp-scalable
1036 SUBMENU:=$(NETWORK_SUPPORT_MENU)
1037 TITLE:=TCP-Scalable congestion control algorithm
1038 KCONFIG:=CONFIG_TCP_CONG_SCALABLE
1039 FILES:=$(LINUX_DIR)/net/ipv4/tcp_scalable.ko
1040 AUTOLOAD:=$(call AutoProbe,tcp-scalable)
1041 endef
1042
1043 define KernelPackage/tcp-scalable/description
1044 Scalable TCP is a sender-side only change to TCP which uses a
1045 MIMD congestion control algorithm which has some nice scaling
1046 properties, though is known to have fairness issues.
1047 See http://www.deneholme.net/tom/scalable/
1048 endef
1049
1050 $(eval $(call KernelPackage,tcp-scalable))
1051
1052
1053 define KernelPackage/ax25
1054 SUBMENU:=$(NETWORK_SUPPORT_MENU)
1055 TITLE:=AX25 support
1056 DEPENDS:=+kmod-lib-crc16
1057 KCONFIG:= \
1058 CONFIG_HAMRADIO=y \
1059 CONFIG_AX25 \
1060 CONFIG_MKISS
1061 FILES:= \
1062 $(LINUX_DIR)/net/ax25/ax25.ko \
1063 $(LINUX_DIR)/drivers/net/hamradio/mkiss.ko
1064 AUTOLOAD:=$(call AutoLoad,80,ax25 mkiss)
1065 endef
1066
1067 define KernelPackage/ax25/description
1068 Kernel modules for AX25 support
1069 endef
1070
1071 $(eval $(call KernelPackage,ax25))
1072
1073
1074 define KernelPackage/pktgen
1075 SUBMENU:=$(NETWORK_SUPPORT_MENU)
1076 DEPENDS:=@!TARGET_uml
1077 TITLE:=Network packet generator
1078 KCONFIG:=CONFIG_NET_PKTGEN
1079 FILES:=$(LINUX_DIR)/net/core/pktgen.ko
1080 AUTOLOAD:=$(call AutoLoad,99,pktgen)
1081 endef
1082
1083 define KernelPackage/pktgen/description
1084 Kernel modules for the Network Packet Generator
1085 endef
1086
1087 $(eval $(call KernelPackage,pktgen))
1088
1089 define KernelPackage/l2tp
1090 SUBMENU:=$(NETWORK_SUPPORT_MENU)
1091 TITLE:=Layer Two Tunneling Protocol (L2TP)
1092 DEPENDS:= \
1093 +kmod-udptunnel4 \
1094 +IPV6:kmod-udptunnel6
1095 KCONFIG:=CONFIG_L2TP \
1096 CONFIG_L2TP_V3=y \
1097 CONFIG_L2TP_DEBUGFS=n
1098 FILES:=$(LINUX_DIR)/net/l2tp/l2tp_core.ko \
1099 $(LINUX_DIR)/net/l2tp/l2tp_netlink.ko
1100 AUTOLOAD:=$(call AutoLoad,32,l2tp_core l2tp_netlink)
1101 endef
1102
1103 define KernelPackage/l2tp/description
1104 Kernel modules for L2TP V3 Support
1105 endef
1106
1107 $(eval $(call KernelPackage,l2tp))
1108
1109
1110 define KernelPackage/l2tp-eth
1111 SUBMENU:=$(NETWORK_SUPPORT_MENU)
1112 TITLE:=L2TP ethernet pseudowire support for L2TPv3
1113 DEPENDS:=+kmod-l2tp
1114 KCONFIG:=CONFIG_L2TP_ETH
1115 FILES:=$(LINUX_DIR)/net/l2tp/l2tp_eth.ko
1116 AUTOLOAD:=$(call AutoLoad,33,l2tp_eth)
1117 endef
1118
1119 define KernelPackage/l2tp-eth/description
1120 Kernel modules for L2TP ethernet pseudowire support for L2TPv3
1121 endef
1122
1123 $(eval $(call KernelPackage,l2tp-eth))
1124
1125 define KernelPackage/l2tp-ip
1126 SUBMENU:=$(NETWORK_SUPPORT_MENU)
1127 TITLE:=L2TP IP encapsulation for L2TPv3
1128 DEPENDS:=+kmod-l2tp
1129 KCONFIG:=CONFIG_L2TP_IP
1130 FILES:= \
1131 $(LINUX_DIR)/net/l2tp/l2tp_ip.ko \
1132 $(if $(CONFIG_IPV6),$(LINUX_DIR)/net/l2tp/l2tp_ip6.ko)
1133 AUTOLOAD:=$(call AutoLoad,33,l2tp_ip $(if $(CONFIG_IPV6),l2tp_ip6))
1134 endef
1135
1136 define KernelPackage/l2tp-ip/description
1137 Kernel modules for L2TP IP encapsulation for L2TPv3
1138 endef
1139
1140 $(eval $(call KernelPackage,l2tp-ip))
1141
1142
1143 define KernelPackage/sctp
1144 SUBMENU:=$(NETWORK_SUPPORT_MENU)
1145 TITLE:=SCTP protocol kernel support
1146 KCONFIG:=\
1147 CONFIG_IP_SCTP \
1148 CONFIG_SCTP_DBG_MSG=n \
1149 CONFIG_SCTP_DBG_OBJCNT=n \
1150 CONFIG_SCTP_HMAC_NONE=n \
1151 CONFIG_SCTP_HMAC_SHA1=n \
1152 CONFIG_SCTP_HMAC_MD5=y \
1153 CONFIG_SCTP_COOKIE_HMAC_SHA1=n \
1154 CONFIG_SCTP_COOKIE_HMAC_MD5=y \
1155 CONFIG_SCTP_DEFAULT_COOKIE_HMAC_NONE=n \
1156 CONFIG_SCTP_DEFAULT_COOKIE_HMAC_SHA1=n \
1157 CONFIG_SCTP_DEFAULT_COOKIE_HMAC_MD5=y
1158 FILES:= $(LINUX_DIR)/net/sctp/sctp.ko
1159 AUTOLOAD:= $(call AutoLoad,32,sctp)
1160 DEPENDS:=+kmod-lib-crc32c +kmod-crypto-md5 +kmod-crypto-hmac \
1161 +LINUX_5_15:kmod-udptunnel4 +LINUX_5_15:kmod-udptunnel6
1162 endef
1163
1164 define KernelPackage/sctp/description
1165 Kernel modules for SCTP protocol support
1166 endef
1167
1168 $(eval $(call KernelPackage,sctp))
1169
1170
1171 define KernelPackage/netem
1172 SUBMENU:=$(NETWORK_SUPPORT_MENU)
1173 TITLE:=Network emulation functionality
1174 DEPENDS:=+kmod-sched
1175 KCONFIG:=CONFIG_NET_SCH_NETEM
1176 FILES:=$(LINUX_DIR)/net/sched/sch_netem.ko
1177 AUTOLOAD:=$(call AutoLoad,99,netem)
1178 endef
1179
1180 define KernelPackage/netem/description
1181 Kernel modules for emulating the properties of wide area networks
1182 endef
1183
1184 $(eval $(call KernelPackage,netem))
1185
1186 define KernelPackage/slip
1187 SUBMENU:=$(NETWORK_SUPPORT_MENU)
1188 DEPENDS:=+kmod-slhc
1189 TITLE:=SLIP modules
1190 KCONFIG:= \
1191 CONFIG_SLIP \
1192 CONFIG_SLIP_COMPRESSED=y \
1193 CONFIG_SLIP_SMART=y \
1194 CONFIG_SLIP_MODE_SLIP6=y
1195
1196 FILES:= \
1197 $(LINUX_DIR)/drivers/net/slip/slip.ko
1198 AUTOLOAD:=$(call AutoLoad,30,slip)
1199 endef
1200
1201 define KernelPackage/slip/description
1202 Kernel modules for SLIP support
1203 endef
1204
1205 $(eval $(call KernelPackage,slip))
1206
1207 define KernelPackage/dnsresolver
1208 SUBMENU:=$(NETWORK_SUPPORT_MENU)
1209 TITLE:=In-kernel DNS Resolver
1210 KCONFIG:= CONFIG_DNS_RESOLVER
1211 FILES:=$(LINUX_DIR)/net/dns_resolver/dns_resolver.ko
1212 AUTOLOAD:=$(call AutoLoad,30,dns_resolver)
1213 endef
1214
1215 $(eval $(call KernelPackage,dnsresolver))
1216
1217 define KernelPackage/rxrpc
1218 SUBMENU:=$(NETWORK_SUPPORT_MENU)
1219 TITLE:=AF_RXRPC support
1220 HIDDEN:=1
1221 KCONFIG:= \
1222 CONFIG_AF_RXRPC \
1223 CONFIG_RXKAD=m \
1224 CONFIG_AF_RXRPC_DEBUG=n
1225 FILES:= \
1226 $(LINUX_DIR)/net/rxrpc/rxrpc.ko
1227 AUTOLOAD:=$(call AutoLoad,30,rxrpc.ko)
1228 DEPENDS:= +kmod-crypto-manager +kmod-crypto-pcbc +kmod-crypto-fcrypt
1229 endef
1230
1231 define KernelPackage/rxrpc/description
1232 Kernel support for AF_RXRPC; required for AFS client
1233 endef
1234
1235 $(eval $(call KernelPackage,rxrpc))
1236
1237 define KernelPackage/mpls
1238 SUBMENU:=$(NETWORK_SUPPORT_MENU)
1239 TITLE:=MPLS support
1240 DEPENDS:=+kmod-iptunnel
1241 KCONFIG:= \
1242 CONFIG_MPLS=y \
1243 CONFIG_LWTUNNEL=y \
1244 CONFIG_LWTUNNEL_BPF=n \
1245 CONFIG_NET_MPLS_GSO=m \
1246 CONFIG_MPLS_ROUTING=m \
1247 CONFIG_MPLS_IPTUNNEL=m
1248 FILES:= \
1249 $(LINUX_DIR)/net/mpls/mpls_gso.ko \
1250 $(LINUX_DIR)/net/mpls/mpls_iptunnel.ko \
1251 $(LINUX_DIR)/net/mpls/mpls_router.ko
1252 AUTOLOAD:=$(call AutoLoad,30,mpls_router mpls_iptunnel mpls_gso)
1253 endef
1254
1255 define KernelPackage/mpls/description
1256 Kernel support for MPLS
1257 endef
1258
1259 $(eval $(call KernelPackage,mpls))
1260
1261 define KernelPackage/9pnet
1262 SUBMENU:=$(NETWORK_SUPPORT_MENU)
1263 TITLE:=Plan 9 Resource Sharing Support (9P2000)
1264 DEPENDS:=@VIRTIO_SUPPORT
1265 KCONFIG:= \
1266 CONFIG_NET_9P \
1267 CONFIG_NET_9P_DEBUG=n \
1268 CONFIG_NET_9P_XEN=n \
1269 CONFIG_NET_9P_VIRTIO
1270 FILES:= \
1271 $(LINUX_DIR)/net/9p/9pnet.ko \
1272 $(LINUX_DIR)/net/9p/9pnet_virtio.ko
1273 AUTOLOAD:=$(call AutoLoad,29,9pnet 9pnet_virtio)
1274 endef
1275
1276 define KernelPackage/9pnet/description
1277 Kernel support support for
1278 Plan 9 resource sharing via the 9P2000 protocol.
1279 endef
1280
1281 $(eval $(call KernelPackage,9pnet))
1282
1283
1284 define KernelPackage/nlmon
1285 SUBMENU:=$(NETWORK_SUPPORT_MENU)
1286 TITLE:=Virtual netlink monitoring device
1287 KCONFIG:=CONFIG_NLMON
1288 FILES:=$(LINUX_DIR)/drivers/net/nlmon.ko
1289 AUTOLOAD:=$(call AutoProbe,nlmon)
1290 endef
1291
1292 define KernelPackage/nlmon/description
1293 Kernel module which adds a monitoring device for netlink.
1294 endef
1295
1296 $(eval $(call KernelPackage,nlmon))
1297
1298
1299 define KernelPackage/mdio
1300 SUBMENU:=$(NETWORK_SUPPORT_MENU)
1301 TITLE:=MDIO (clause 45) PHY support
1302 KCONFIG:=CONFIG_MDIO
1303 HIDDEN:=1
1304 FILES:=$(LINUX_DIR)/drivers/net/mdio.ko
1305 AUTOLOAD:=$(call AutoLoad,32,mdio)
1306 endef
1307
1308 define KernelPackage/mdio/description
1309 Kernel modules for MDIO (clause 45) PHY support
1310 endef
1311
1312 $(eval $(call KernelPackage,mdio))
1313
1314 define KernelPackage/macsec
1315 SUBMENU:=$(NETWORK_SUPPORT_MENU)
1316 TITLE:=IEEE 802.1AE MAC-level encryption (MAC)
1317 DEPENDS:=+kmod-crypto-gcm
1318 KCONFIG:=CONFIG_MACSEC
1319 FILES:=$(LINUX_DIR)/drivers/net/macsec.ko
1320 AUTOLOAD:=$(call AutoLoad,13,macsec)
1321 endef
1322
1323 define KernelPackage/macsec/description
1324 MACsec is an encryption standard for Ethernet.
1325 endef
1326
1327 $(eval $(call KernelPackage,macsec))
1328
1329
1330 define KernelPackage/netlink-diag
1331 SUBMENU:=$(NETWORK_SUPPORT_MENU)
1332 TITLE:=Netlink diag support for ss utility
1333 KCONFIG:=CONFIG_NETLINK_DIAG
1334 FILES:=$(LINUX_DIR)/net/netlink/netlink_diag.ko
1335 AUTOLOAD:=$(call AutoLoad,31,netlink-diag)
1336 endef
1337
1338 define KernelPackage/netlink-diag/description
1339 Netlink diag is a module made for use with iproute2's ss utility
1340 endef
1341
1342 $(eval $(call KernelPackage,netlink-diag))
1343
1344
1345 define KernelPackage/inet-diag
1346 SUBMENU:=$(NETWORK_SUPPORT_MENU)
1347 TITLE:=INET diag support for ss utility
1348 KCONFIG:= \
1349 CONFIG_INET_DIAG \
1350 CONFIG_INET_TCP_DIAG \
1351 CONFIG_INET_UDP_DIAG \
1352 CONFIG_INET_RAW_DIAG \
1353 CONFIG_INET_DIAG_DESTROY=n
1354 FILES:= \
1355 $(LINUX_DIR)/net/ipv4/inet_diag.ko \
1356 $(LINUX_DIR)/net/ipv4/tcp_diag.ko \
1357 $(LINUX_DIR)/net/ipv4/udp_diag.ko \
1358 $(LINUX_DIR)/net/ipv4/raw_diag.ko
1359 AUTOLOAD:=$(call AutoLoad,31,inet_diag tcp_diag udp_diag raw_diag)
1360 endef
1361
1362 define KernelPackage/inet-diag/description
1363 Support for INET (TCP, DCCP, etc) socket monitoring interface used by
1364 native Linux tools such as ss.
1365 endef
1366
1367 $(eval $(call KernelPackage,inet-diag))
1368
1369
1370 define KernelPackage/wireguard
1371 SUBMENU:=$(NETWORK_SUPPORT_MENU)
1372 TITLE:=WireGuard secure network tunnel
1373 DEPENDS:= \
1374 +kmod-crypto-lib-chacha20poly1305 \
1375 +kmod-crypto-lib-curve25519 \
1376 +kmod-udptunnel4 \
1377 +IPV6:kmod-udptunnel6
1378 KCONFIG:= \
1379 CONFIG_WIREGUARD \
1380 CONFIG_WIREGUARD_DEBUG=n
1381 FILES:=$(LINUX_DIR)/drivers/net/wireguard/wireguard.ko
1382 AUTOLOAD:=$(call AutoProbe,wireguard)
1383 endef
1384
1385 define KernelPackage/wireguard/description
1386 WireGuard is a novel VPN that runs inside the Linux Kernel and utilizes
1387 state-of-the-art cryptography. It aims to be faster, simpler, leaner, and
1388 more useful than IPSec, while avoiding the massive headache. It intends to
1389 be considerably more performant than OpenVPN. WireGuard is designed as a
1390 general purpose VPN for running on embedded interfaces and super computers
1391 alike, fit for many different circumstances. It uses UDP.
1392 endef
1393
1394 $(eval $(call KernelPackage,wireguard))
1395
1396
1397 define KernelPackage/netconsole
1398 SUBMENU:=$(NETWORK_SUPPORT_MENU)
1399 TITLE:=Network console logging support
1400 KCONFIG:=CONFIG_NETCONSOLE \
1401 CONFIG_NETCONSOLE_DYNAMIC=n
1402 FILES:=$(LINUX_DIR)/drivers/net/netconsole.ko
1403 AUTOLOAD:=$(call AutoProbe,netconsole)
1404 endef
1405
1406 define KernelPackage/netconsole/description
1407 Network console logging support.
1408 endef
1409
1410 $(eval $(call KernelPackage,netconsole))