6bd1f33979703d43de14522ff313b796857ae6a1
[openwrt/staging/mkresin.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 endef
52
53 define KernelPackage/bonding/description
54 Kernel module for NIC bonding.
55 endef
56
57 $(eval $(call KernelPackage,bonding))
58
59
60 define KernelPackage/udptunnel4
61 SUBMENU:=$(NETWORK_SUPPORT_MENU)
62 TITLE:=IPv4 UDP tunneling support
63 KCONFIG:= \
64 CONFIG_NET_UDP_TUNNEL \
65 CONFIG_VXLAN=m
66 HIDDEN:=1
67 FILES:=$(LINUX_DIR)/net/ipv4/udp_tunnel.ko
68 AUTOLOAD:=$(call AutoLoad,32,udp_tunnel)
69 endef
70
71
72 $(eval $(call KernelPackage,udptunnel4))
73
74 define KernelPackage/udptunnel6
75 SUBMENU:=$(NETWORK_SUPPORT_MENU)
76 TITLE:=IPv6 UDP tunneling support
77 DEPENDS:=@IPV6
78 KCONFIG:= \
79 CONFIG_NET_UDP_TUNNEL \
80 CONFIG_VXLAN=m
81 HIDDEN:=1
82 FILES:=$(LINUX_DIR)/net/ipv6/ip6_udp_tunnel.ko
83 AUTOLOAD:=$(call AutoLoad,32,ip6_udp_tunnel)
84 endef
85
86 $(eval $(call KernelPackage,udptunnel6))
87
88
89 define KernelPackage/vxlan
90 SUBMENU:=$(NETWORK_SUPPORT_MENU)
91 TITLE:=Native VXLAN Kernel support
92 DEPENDS:= \
93 +kmod-iptunnel \
94 +kmod-udptunnel4 \
95 +IPV6:kmod-udptunnel6
96 KCONFIG:=CONFIG_VXLAN
97 FILES:=$(LINUX_DIR)/drivers/net/vxlan.ko
98 AUTOLOAD:=$(call AutoLoad,13,vxlan)
99 endef
100
101 define KernelPackage/vxlan/description
102 Kernel module for supporting VXLAN in the Kernel.
103 Requires Kernel 3.12 or newer.
104 endef
105
106 $(eval $(call KernelPackage,vxlan))
107
108
109 define KernelPackage/geneve
110 SUBMENU:=$(NETWORK_SUPPORT_MENU)
111 TITLE:=Generic Network Virtualization Encapsulation (Geneve) support
112 DEPENDS:= \
113 +kmod-iptunnel \
114 +kmod-udptunnel4 \
115 +IPV6:kmod-udptunnel6
116 KCONFIG:=CONFIG_GENEVE
117 FILES:= \
118 $(LINUX_DIR)/net/ipv4/geneve.ko@le4.1 \
119 $(LINUX_DIR)/drivers/net/geneve.ko@ge4.2
120 AUTOLOAD:=$(call AutoLoad,13,geneve)
121 endef
122
123 define KernelPackage/geneve/description
124 Kernel module for supporting Geneve in the Kernel.
125 Requires Kernel 3.18 or newer.
126 endef
127
128 $(eval $(call KernelPackage,geneve))
129
130
131 define KernelPackage/nsh
132 SUBMENU:=$(NETWORK_SUPPORT_MENU)
133 TITLE:=Network Service Header (NSH) protocol
134 DEPENDS:=
135 KCONFIG:=CONFIG_NET_NSH
136 FILES:=$(LINUX_DIR)/net/nsh/nsh.ko@ge4.14
137 AUTOLOAD:=$(call AutoLoad,13,nsh)
138 endef
139
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
143 endef
144
145 $(eval $(call KernelPackage,nsh))
146
147
148 define KernelPackage/capi
149 SUBMENU:=$(NETWORK_SUPPORT_MENU)
150 TITLE:=CAPI (ISDN) Support
151 KCONFIG:= \
152 CONFIG_ISDN_CAPI \
153 CONFIG_ISDN_CAPI_CAPI20 \
154 CONFIG_ISDN_CAPIFS \
155 CONFIG_ISDN_CAPI_CAPIFS
156 FILES:= \
157 $(LINUX_DIR)/drivers/isdn/capi/kernelcapi.ko \
158 $(LINUX_DIR)/drivers/isdn/capi/capi.ko
159 AUTOLOAD:=$(call AutoLoad,30,kernelcapi capi)
160 endef
161
162 define KernelPackage/capi/description
163 Kernel module for basic CAPI (ISDN) support
164 endef
165
166 $(eval $(call KernelPackage,capi))
167
168 define KernelPackage/misdn
169 SUBMENU:=$(NETWORK_SUPPORT_MENU)
170 TITLE:=mISDN (ISDN) Support
171 KCONFIG:= \
172 CONFIG_ISDN=y \
173 CONFIG_MISDN \
174 CONFIG_MISDN_DSP \
175 CONFIG_MISDN_L1OIP
176 FILES:= \
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)
181 endef
182
183 define KernelPackage/misdn/description
184 Modular ISDN driver support
185 endef
186
187 $(eval $(call KernelPackage,misdn))
188
189
190 define KernelPackage/isdn4linux
191 SUBMENU:=$(NETWORK_SUPPORT_MENU)
192 TITLE:=Old ISDN4Linux (deprecated)
193 DEPENDS:=+kmod-ppp
194 KCONFIG:= \
195 CONFIG_ISDN=y \
196 CONFIG_ISDN_I4L \
197 CONFIG_ISDN_PPP=y \
198 CONFIG_ISDN_PPP_VJ=y \
199 CONFIG_ISDN_MPP=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 \
206 CONFIG_ISDN_X25=y \
207 CONFIG_ISDN_DIVERSION
208 FILES:= \
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)
213 endef
214
215 define KernelPackage/isdn4linux/description
216 This driver allows you to use an ISDN adapter for networking
217 endef
218
219 $(eval $(call KernelPackage,isdn4linux))
220
221
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)
229 endef
230
231 define KernelPackage/ipip/description
232 Kernel modules for IP-in-IP encapsulation
233 endef
234
235 $(eval $(call KernelPackage,ipip))
236
237
238 IPSEC-m:= \
239 xfrm/xfrm_algo \
240 xfrm/xfrm_ipcomp \
241 xfrm/xfrm_user \
242 key/af_key \
243
244 define KernelPackage/ipsec
245 SUBMENU:=$(NETWORK_SUPPORT_MENU)
246 TITLE:=IPsec related modules (IPv4 and IPv6)
247 DEPENDS:= \
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
251 KCONFIG:= \
252 CONFIG_NET_KEY \
253 CONFIG_XFRM_USER \
254 CONFIG_INET_IPCOMP \
255 CONFIG_XFRM_IPCOMP
256 FILES:=$(foreach mod,$(IPSEC-m),$(LINUX_DIR)/net/$(mod).ko)
257 AUTOLOAD:=$(call AutoLoad,30,$(notdir $(IPSEC-m)))
258 endef
259
260 define KernelPackage/ipsec/description
261 Kernel modules for IPsec support in both IPv4 and IPv6.
262 Includes:
263 - af_key
264 - xfrm_algo
265 - xfrm_ipcomp
266 - xfrm_user
267 endef
268
269 $(eval $(call KernelPackage,ipsec))
270
271
272 IPSEC4-m:= \
273 ipv4/ah4 \
274 ipv4/esp4 \
275 ipv4/xfrm4_mode_beet \
276 ipv4/xfrm4_mode_transport \
277 ipv4/xfrm4_mode_tunnel \
278 ipv4/xfrm4_tunnel \
279 ipv4/ipcomp \
280
281 define KernelPackage/ipsec4
282 SUBMENU:=$(NETWORK_SUPPORT_MENU)
283 TITLE:=IPsec related modules (IPv4)
284 DEPENDS:=kmod-ipsec +kmod-iptunnel4
285 KCONFIG:= \
286 CONFIG_INET_AH \
287 CONFIG_INET_ESP \
288 CONFIG_INET_IPCOMP \
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)))
296 endef
297
298 define KernelPackage/ipsec4/description
299 Kernel modules for IPsec support in IPv4.
300 Includes:
301 - ah4
302 - esp4
303 - ipcomp4
304 - xfrm4_mode_beet
305 - xfrm4_mode_transport
306 - xfrm4_mode_tunnel
307 - xfrm4_tunnel
308 endef
309
310 $(eval $(call KernelPackage,ipsec4))
311
312
313 IPSEC6-m:= \
314 ipv6/ah6 \
315 ipv6/esp6 \
316 ipv6/xfrm6_mode_beet \
317 ipv6/xfrm6_mode_transport \
318 ipv6/xfrm6_mode_tunnel \
319 ipv6/xfrm6_tunnel \
320 ipv6/ipcomp6 \
321
322 define KernelPackage/ipsec6
323 SUBMENU:=$(NETWORK_SUPPORT_MENU)
324 TITLE:=IPsec related modules (IPv6)
325 DEPENDS:=kmod-ipsec +kmod-iptunnel6
326 KCONFIG:= \
327 CONFIG_INET6_AH \
328 CONFIG_INET6_ESP \
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)))
337 endef
338
339 define KernelPackage/ipsec6/description
340 Kernel modules for IPsec support in IPv6.
341 Includes:
342 - ah6
343 - esp6
344 - ipcomp6
345 - xfrm6_mode_beet
346 - xfrm6_mode_transport
347 - xfrm6_mode_tunnel
348 - xfrm6_tunnel
349 endef
350
351 $(eval $(call KernelPackage,ipsec6))
352
353
354 define KernelPackage/iptunnel
355 SUBMENU:=$(NETWORK_SUPPORT_MENU)
356 TITLE:=IP tunnel support
357 HIDDEN:=1
358 KCONFIG:= \
359 CONFIG_NET_IP_TUNNEL
360 FILES:=$(LINUX_DIR)/net/ipv4/ip_tunnel.ko
361 AUTOLOAD:=$(call AutoLoad,31,ip_tunnel)
362 endef
363
364 define KernelPackage/iptunnel/description
365 Kernel module for generic IP tunnel support
366 endef
367
368 $(eval $(call KernelPackage,iptunnel))
369
370
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)
378 endef
379
380 define KernelPackage/ip-vti/description
381 Kernel modules for IP VTI (Virtual Tunnel Interface)
382 endef
383
384 $(eval $(call KernelPackage,ip-vti))
385
386
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)
394 endef
395
396 define KernelPackage/ip6-vti/description
397 Kernel modules for IPv6 VTI (Virtual Tunnel Interface)
398 endef
399
400 $(eval $(call KernelPackage,ip6-vti))
401
402
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)
410 endef
411
412 define KernelPackage/xfrm-interface/description
413 Kernel module for XFRM interface support
414 endef
415
416 $(eval $(call KernelPackage,xfrm-interface))
417
418
419 define KernelPackage/iptunnel4
420 SUBMENU:=$(NETWORK_SUPPORT_MENU)
421 TITLE:=IPv4 tunneling
422 HIDDEN:=1
423 KCONFIG:= \
424 CONFIG_INET_TUNNEL \
425 CONFIG_NET_IPIP=m
426 FILES:=$(LINUX_DIR)/net/ipv4/tunnel4.ko
427 AUTOLOAD:=$(call AutoLoad,31,tunnel4)
428 endef
429
430 define KernelPackage/iptunnel4/description
431 Kernel modules for IPv4 tunneling
432 endef
433
434 $(eval $(call KernelPackage,iptunnel4))
435
436
437 define KernelPackage/iptunnel6
438 SUBMENU:=$(NETWORK_SUPPORT_MENU)
439 TITLE:=IPv6 tunneling
440 DEPENDS:=@IPV6
441 KCONFIG:= \
442 CONFIG_INET6_TUNNEL
443 FILES:=$(LINUX_DIR)/net/ipv6/tunnel6.ko
444 AUTOLOAD:=$(call AutoLoad,31,tunnel6)
445 endef
446
447 define KernelPackage/iptunnel6/description
448 Kernel modules for IPv6 tunneling
449 endef
450
451 $(eval $(call KernelPackage,iptunnel6))
452
453
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)
462 endef
463
464 define KernelPackage/sit/description
465 Kernel modules for IPv6-in-IPv4 tunnelling
466 endef
467
468 $(eval $(call KernelPackage,sit))
469
470
471 define KernelPackage/fou
472 SUBMENU:=$(NETWORK_SUPPORT_MENU)
473 TITLE:=FOU and GUE decapsulation
474 DEPENDS:= \
475 +kmod-iptunnel \
476 +kmod-udptunnel4 \
477 +IPV6:kmod-udptunnel6
478 KCONFIG:= \
479 CONFIG_NET_FOU \
480 CONFIG_NET_FOU_IP_TUNNELS=y
481 FILES:=$(LINUX_DIR)/net/ipv4/fou.ko
482 AUTOLOAD:=$(call AutoProbe,fou)
483 endef
484
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.
488 endef
489
490 $(eval $(call KernelPackage,fou))
491
492
493 define KernelPackage/fou6
494 SUBMENU:=$(NETWORK_SUPPORT_MENU)
495 TITLE:=FOU and GUE decapsulation over IPv6
496 DEPENDS:= @IPV6 \
497 +kmod-fou \
498 +kmod-ip6-tunnel
499 KCONFIG:= \
500 CONFIG_IPV6_FOU \
501 CONFIG_IPV6_FOU_TUNNEL
502 FILES:=$(LINUX_DIR)/net/ipv6/fou6.ko
503 AUTOLOAD:=$(call AutoProbe,fou6)
504 endef
505
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.
509 endef
510
511 $(eval $(call KernelPackage,fou6))
512
513
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)
521 endef
522
523 define KernelPackage/ip6-tunnel/description
524 Kernel modules for IPv6-in-IPv6 and IPv4-in-IPv6 tunnelling
525 endef
526
527 $(eval $(call KernelPackage,ip6-tunnel))
528
529
530 define KernelPackage/gre
531 SUBMENU:=$(NETWORK_SUPPORT_MENU)
532 TITLE:=GRE support
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)
537 endef
538
539 define KernelPackage/gre/description
540 Generic Routing Encapsulation support
541 endef
542
543 $(eval $(call KernelPackage,gre))
544
545
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)
553 endef
554
555 define KernelPackage/gre6/description
556 Generic Routing Encapsulation support over IPv6
557 endef
558
559 $(eval $(call KernelPackage,gre6))
560
561
562 define KernelPackage/tun
563 SUBMENU:=$(NETWORK_SUPPORT_MENU)
564 TITLE:=Universal TUN/TAP driver
565 KCONFIG:=CONFIG_TUN
566 FILES:=$(LINUX_DIR)/drivers/net/tun.ko
567 AUTOLOAD:=$(call AutoLoad,30,tun)
568 endef
569
570 define KernelPackage/tun/description
571 Kernel support for the TUN/TAP tunneling device
572 endef
573
574 $(eval $(call KernelPackage,tun))
575
576
577 define KernelPackage/veth
578 SUBMENU:=$(NETWORK_SUPPORT_MENU)
579 TITLE:=Virtual ethernet pair device
580 KCONFIG:=CONFIG_VETH
581 FILES:=$(LINUX_DIR)/drivers/net/veth.ko
582 AUTOLOAD:=$(call AutoLoad,30,veth)
583 endef
584
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
588 versa.
589 endef
590
591 $(eval $(call KernelPackage,veth))
592
593
594 define KernelPackage/slhc
595 SUBMENU:=$(NETWORK_SUPPORT_MENU)
596 HIDDEN:=1
597 TITLE:=Serial Line Header Compression
598 DEPENDS:=+kmod-lib-crc-ccitt
599 KCONFIG:=CONFIG_SLHC
600 FILES:=$(LINUX_DIR)/drivers/net/slip/slhc.ko
601 endef
602
603 $(eval $(call KernelPackage,slhc))
604
605
606 define KernelPackage/ppp
607 SUBMENU:=$(NETWORK_SUPPORT_MENU)
608 TITLE:=PPP modules
609 DEPENDS:=+kmod-lib-crc-ccitt +kmod-slhc
610 KCONFIG:= \
611 CONFIG_PPP \
612 CONFIG_PPP_ASYNC
613 FILES:= \
614 $(LINUX_DIR)/drivers/net/ppp/ppp_async.ko \
615 $(LINUX_DIR)/drivers/net/ppp/ppp_generic.ko
616 AUTOLOAD:=$(call AutoProbe,ppp_async)
617 endef
618
619 define KernelPackage/ppp/description
620 Kernel modules for PPP support
621 endef
622
623 $(eval $(call KernelPackage,ppp))
624
625
626 define KernelPackage/ppp-synctty
627 SUBMENU:=$(NETWORK_SUPPORT_MENU)
628 TITLE:=PPP sync tty support
629 DEPENDS:=kmod-ppp
630 KCONFIG:=CONFIG_PPP_SYNC_TTY
631 FILES:=$(LINUX_DIR)/drivers/net/ppp/ppp_synctty.ko
632 AUTOLOAD:=$(call AutoProbe,ppp_synctty)
633 endef
634
635 define KernelPackage/ppp-synctty/description
636 Kernel modules for PPP sync tty support
637 endef
638
639 $(eval $(call KernelPackage,ppp-synctty))
640
641
642 define KernelPackage/pppox
643 SUBMENU:=$(NETWORK_SUPPORT_MENU)
644 TITLE:=PPPoX helper
645 DEPENDS:=kmod-ppp
646 KCONFIG:=CONFIG_PPPOE
647 FILES:=$(LINUX_DIR)/drivers/net/ppp/pppox.ko
648 endef
649
650 define KernelPackage/pppox/description
651 Kernel helper module for PPPoE and PPTP support
652 endef
653
654 $(eval $(call KernelPackage,pppox))
655
656
657 define KernelPackage/pppoe
658 SUBMENU:=$(NETWORK_SUPPORT_MENU)
659 TITLE:=PPPoE support
660 DEPENDS:=kmod-ppp +kmod-pppox
661 KCONFIG:=CONFIG_PPPOE
662 FILES:=$(LINUX_DIR)/drivers/net/ppp/pppoe.ko
663 AUTOLOAD:=$(call AutoProbe,pppoe)
664 endef
665
666 define KernelPackage/pppoe/description
667 Kernel module for PPPoE (PPP over Ethernet) support
668 endef
669
670 $(eval $(call KernelPackage,pppoe))
671
672
673 define KernelPackage/pppoa
674 SUBMENU:=$(NETWORK_SUPPORT_MENU)
675 TITLE:=PPPoA support
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)
680 endef
681
682 define KernelPackage/pppoa/description
683 Kernel modules for PPPoA (PPP over ATM) support
684 endef
685
686 $(eval $(call KernelPackage,pppoa))
687
688
689 define KernelPackage/pptp
690 SUBMENU:=$(NETWORK_SUPPORT_MENU)
691 TITLE:=PPtP support
692 DEPENDS:=kmod-ppp +kmod-gre +kmod-pppox
693 KCONFIG:=CONFIG_PPTP
694 FILES:=$(LINUX_DIR)/drivers/net/ppp/pptp.ko
695 AUTOLOAD:=$(call AutoProbe,pptp)
696 endef
697
698 $(eval $(call KernelPackage,pptp))
699
700
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)
708 endef
709
710 define KernelPackage/pppol2tp/description
711 Kernel modules for PPPoL2TP (PPP over L2TP) support
712 endef
713
714 $(eval $(call KernelPackage,pppol2tp))
715
716
717 define KernelPackage/ipoa
718 SUBMENU:=$(NETWORK_SUPPORT_MENU)
719 TITLE:=IPoA support
720 DEPENDS:=kmod-atm
721 KCONFIG:=CONFIG_ATM_CLIP
722 FILES:=$(LINUX_DIR)/net/atm/clip.ko
723 AUTOLOAD:=$(call AutoProbe,clip)
724 endef
725
726 define KernelPackage/ipoa/description
727 Kernel modules for IPoA (IP over ATM) support
728 endef
729
730 $(eval $(call KernelPackage,ipoa))
731
732
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
737 KCONFIG:= \
738 CONFIG_PPP_MPPE_MPPC \
739 CONFIG_PPP_MPPE
740 FILES:=$(LINUX_DIR)/drivers/net/ppp/ppp_mppe.ko
741 AUTOLOAD:=$(call AutoProbe,ppp_mppe)
742 endef
743
744 define KernelPackage/mppe/description
745 Kernel modules for Microsoft PPP compression/encryption
746 endef
747
748 $(eval $(call KernelPackage,mppe))
749
750
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 em_ipset cls_bpf act_bpf
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))
757
758 define KernelPackage/sched-core
759 SUBMENU:=$(NETWORK_SUPPORT_MENU)
760 TITLE:=Traffic schedulers
761 KCONFIG:= \
762 CONFIG_NET_SCHED=y \
763 CONFIG_NET_SCH_HFSC \
764 CONFIG_NET_SCH_HTB \
765 CONFIG_NET_SCH_TBF \
766 CONFIG_NET_SCH_INGRESS \
767 CONFIG_NET_SCH_FQ_CODEL \
768 CONFIG_NET_CLS=y \
769 CONFIG_NET_CLS_ACT=y \
770 CONFIG_NET_CLS_BASIC \
771 CONFIG_NET_CLS_FLOW \
772 CONFIG_NET_CLS_FW \
773 CONFIG_NET_CLS_ROUTE4 \
774 CONFIG_NET_CLS_TCINDEX \
775 CONFIG_NET_CLS_U32 \
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))
783 endef
784
785 define KernelPackage/sched-core/description
786 Core kernel scheduler support for IP traffic
787 endef
788
789 $(eval $(call KernelPackage,sched-core))
790
791
792 define KernelPackage/sched-flower
793 SUBMENU:=$(NETWORK_SUPPORT_MENU)
794 TITLE:=Flower traffic classifier
795 DEPENDS:=+kmod-sched-core
796 KCONFIG:=CONFIG_NET_CLS_FLOWER
797 FILES:=$(LINUX_DIR)/net/sched/cls_flower.ko
798 AUTOLOAD:=$(call AutoProbe, cls_flower)
799 endef
800
801 define KernelPackage/sched-flower/description
802 Allows to classify packets based on a configurable combination of packet keys and masks.
803 endef
804
805 $(eval $(call KernelPackage,sched-flower))
806
807
808 define KernelPackage/sched-act-vlan
809 SUBMENU:=$(NETWORK_SUPPORT_MENU)
810 TITLE:=Traffic VLAN manipulation
811 DEPENDS:=+kmod-sched-core
812 KCONFIG:=CONFIG_NET_ACT_VLAN
813 FILES:=$(LINUX_DIR)/net/sched/act_vlan.ko
814 AUTOLOAD:=$(call AutoProbe, act_vlan)
815 endef
816
817 define KernelPackage/sched-act-vlan/description
818 Allows to configure rules to push or pop vlan headers.
819 endef
820
821 $(eval $(call KernelPackage,sched-act-vlan))
822
823
824 define KernelPackage/sched-mqprio
825 SUBMENU:=$(NETWORK_SUPPORT_MENU)
826 TITLE:=Multi-queue priority scheduler (MQPRIO)
827 DEPENDS:=+kmod-sched-core
828 KCONFIG:=CONFIG_NET_SCH_MQPRIO
829 FILES:=$(LINUX_DIR)/net/sched/sch_mqprio.ko
830 AUTOLOAD:=$(call AutoProbe, sch_mqprio)
831 endef
832
833 define KernelPackage/sched-mqprio/description
834 This scheduler allows QOS to be offloaded on NICs that have support for offloading QOS schedulers.
835 endef
836
837 $(eval $(call KernelPackage,sched-mqprio))
838
839 define KernelPackage/sched-connmark
840 SUBMENU:=$(NETWORK_SUPPORT_MENU)
841 TITLE:=Traffic shaper conntrack mark support
842 DEPENDS:=+kmod-sched-core +kmod-ipt-core +kmod-ipt-conntrack-extra
843 KCONFIG:=CONFIG_NET_ACT_CONNMARK
844 FILES:=$(LINUX_DIR)/net/sched/act_connmark.ko
845 AUTOLOAD:=$(call AutoLoad,71, act_connmark)
846 endef
847 $(eval $(call KernelPackage,sched-connmark))
848
849 define KernelPackage/sched-ctinfo
850 SUBMENU:=$(NETWORK_SUPPORT_MENU)
851 TITLE:=Traffic shaper ctinfo support
852 DEPENDS:=+kmod-sched-core +kmod-ipt-core +kmod-ipt-conntrack-extra
853 KCONFIG:=CONFIG_NET_ACT_CTINFO
854 FILES:=$(LINUX_DIR)/net/sched/act_ctinfo.ko
855 AUTOLOAD:=$(call AutoLoad,71, act_ctinfo)
856 endef
857 $(eval $(call KernelPackage,sched-ctinfo))
858
859 define KernelPackage/sched-ipset
860 SUBMENU:=$(NETWORK_SUPPORT_MENU)
861 TITLE:=Traffic shaper ipset support
862 DEPENDS:=+kmod-sched-core +kmod-ipt-ipset
863 KCONFIG:= \
864 CONFIG_NET_EMATCH_IPSET
865 FILES:= \
866 $(LINUX_DIR)/net/sched/em_ipset.ko
867 AUTOLOAD:=$(call AutoLoad,72,em_ipset)
868 endef
869
870 $(eval $(call KernelPackage,sched-ipset))
871
872
873 define KernelPackage/sched-bpf
874 SUBMENU:=$(NETWORK_SUPPORT_MENU)
875 TITLE:=Traffic shaper support for Berkeley Packet Filter
876 KCONFIG:= \
877 CONFIG_NET_CLS_BPF \
878 CONFIG_NET_ACT_BPF
879 FILES:= \
880 $(LINUX_DIR)/net/sched/cls_bpf.ko \
881 $(LINUX_DIR)/net/sched/act_bpf.ko
882 AUTOLOAD:=$(call AutoLoad,72,cls_bpf act_bpf)
883 endef
884
885 $(eval $(call KernelPackage,sched-bpf))
886
887
888 define KernelPackage/bpf-test
889 SUBMENU:=$(NETWORK_SUPPORT_MENU)
890 TITLE:=Test Berkeley Packet Filter functionality
891 KCONFIG:=CONFIG_TEST_BPF
892 FILES:=$(LINUX_DIR)/lib/test_bpf.ko
893 endef
894
895 $(eval $(call KernelPackage,bpf-test))
896
897
898 define KernelPackage/sched
899 SUBMENU:=$(NETWORK_SUPPORT_MENU)
900 TITLE:=Extra traffic schedulers
901 DEPENDS:=+kmod-sched-core +kmod-ipt-core +kmod-lib-crc32c
902 KCONFIG:= \
903 CONFIG_NET_SCH_CODEL \
904 CONFIG_NET_SCH_DSMARK \
905 CONFIG_NET_SCH_FIFO \
906 CONFIG_NET_SCH_GRED \
907 CONFIG_NET_SCH_MULTIQ \
908 CONFIG_NET_SCH_PRIO \
909 CONFIG_NET_SCH_RED \
910 CONFIG_NET_SCH_SFQ \
911 CONFIG_NET_SCH_TEQL \
912 CONFIG_NET_SCH_FQ \
913 CONFIG_NET_SCH_PIE \
914 CONFIG_NET_ACT_POLICE \
915 CONFIG_NET_ACT_GACT \
916 CONFIG_NET_ACT_IPT \
917 CONFIG_NET_ACT_PEDIT \
918 CONFIG_NET_ACT_SIMP \
919 CONFIG_NET_ACT_CSUM \
920 CONFIG_NET_EMATCH_CMP \
921 CONFIG_NET_EMATCH_NBYTE \
922 CONFIG_NET_EMATCH_META \
923 CONFIG_NET_EMATCH_TEXT
924 FILES:=$(SCHED_FILES_EXTRA)
925 AUTOLOAD:=$(call AutoLoad,73, $(SCHED_MODULES_EXTRA))
926 endef
927
928 define KernelPackage/sched/description
929 Extra kernel schedulers modules for IP traffic
930 endef
931
932 $(eval $(call KernelPackage,sched))
933
934
935 define KernelPackage/tcp-bbr
936 SUBMENU:=$(NETWORK_SUPPORT_MENU)
937 TITLE:=BBR TCP congestion control
938 DEPENDS:=+LINUX_4_9:kmod-sched
939 KCONFIG:= \
940 CONFIG_TCP_CONG_ADVANCED=y \
941 CONFIG_TCP_CONG_BBR
942 FILES:=$(LINUX_DIR)/net/ipv4/tcp_bbr.ko
943 AUTOLOAD:=$(call AutoLoad,74,tcp_bbr)
944 endef
945
946 define KernelPackage/tcp-bbr/description
947 Kernel module for BBR (Bottleneck Bandwidth and RTT) TCP congestion
948 control. It requires the fq ("Fair Queue") pacing packet scheduler.
949 For kernel 4.13+, TCP internal pacing is implemented as fallback.
950 endef
951
952 ifdef CONFIG_LINUX_4_9
953 TCP_BBR_SYSCTL_CONF:=sysctl-tcp-bbr-k4_9.conf
954 else
955 TCP_BBR_SYSCTL_CONF:=sysctl-tcp-bbr.conf
956 endif
957
958 define KernelPackage/tcp-bbr/install
959 $(INSTALL_DIR) $(1)/etc/sysctl.d
960 $(INSTALL_DATA) ./files/$(TCP_BBR_SYSCTL_CONF) $(1)/etc/sysctl.d/12-tcp-bbr.conf
961 endef
962
963 $(eval $(call KernelPackage,tcp-bbr))
964
965
966 define KernelPackage/ax25
967 SUBMENU:=$(NETWORK_SUPPORT_MENU)
968 TITLE:=AX25 support
969 DEPENDS:=+kmod-lib-crc16
970 KCONFIG:= \
971 CONFIG_HAMRADIO=y \
972 CONFIG_AX25 \
973 CONFIG_MKISS
974 FILES:= \
975 $(LINUX_DIR)/net/ax25/ax25.ko \
976 $(LINUX_DIR)/drivers/net/hamradio/mkiss.ko
977 AUTOLOAD:=$(call AutoLoad,80,ax25 mkiss)
978 endef
979
980 define KernelPackage/ax25/description
981 Kernel modules for AX25 support
982 endef
983
984 $(eval $(call KernelPackage,ax25))
985
986
987 define KernelPackage/pktgen
988 SUBMENU:=$(NETWORK_SUPPORT_MENU)
989 DEPENDS:=@!TARGET_uml
990 TITLE:=Network packet generator
991 KCONFIG:=CONFIG_NET_PKTGEN
992 FILES:=$(LINUX_DIR)/net/core/pktgen.ko
993 AUTOLOAD:=$(call AutoLoad,99,pktgen)
994 endef
995
996 define KernelPackage/pktgen/description
997 Kernel modules for the Network Packet Generator
998 endef
999
1000 $(eval $(call KernelPackage,pktgen))
1001
1002 define KernelPackage/l2tp
1003 SUBMENU:=$(NETWORK_SUPPORT_MENU)
1004 TITLE:=Layer Two Tunneling Protocol (L2TP)
1005 DEPENDS:= \
1006 +kmod-udptunnel4 \
1007 +IPV6:kmod-udptunnel6
1008 KCONFIG:=CONFIG_L2TP \
1009 CONFIG_L2TP_V3=y \
1010 CONFIG_L2TP_DEBUGFS=n
1011 FILES:=$(LINUX_DIR)/net/l2tp/l2tp_core.ko \
1012 $(LINUX_DIR)/net/l2tp/l2tp_netlink.ko
1013 AUTOLOAD:=$(call AutoLoad,32,l2tp_core l2tp_netlink)
1014 endef
1015
1016 define KernelPackage/l2tp/description
1017 Kernel modules for L2TP V3 Support
1018 endef
1019
1020 $(eval $(call KernelPackage,l2tp))
1021
1022
1023 define KernelPackage/l2tp-eth
1024 SUBMENU:=$(NETWORK_SUPPORT_MENU)
1025 TITLE:=L2TP ethernet pseudowire support for L2TPv3
1026 DEPENDS:=+kmod-l2tp
1027 KCONFIG:=CONFIG_L2TP_ETH
1028 FILES:=$(LINUX_DIR)/net/l2tp/l2tp_eth.ko
1029 AUTOLOAD:=$(call AutoLoad,33,l2tp_eth)
1030 endef
1031
1032 define KernelPackage/l2tp-eth/description
1033 Kernel modules for L2TP ethernet pseudowire support for L2TPv3
1034 endef
1035
1036 $(eval $(call KernelPackage,l2tp-eth))
1037
1038 define KernelPackage/l2tp-ip
1039 SUBMENU:=$(NETWORK_SUPPORT_MENU)
1040 TITLE:=L2TP IP encapsulation for L2TPv3
1041 DEPENDS:=+kmod-l2tp
1042 KCONFIG:=CONFIG_L2TP_IP
1043 FILES:= \
1044 $(LINUX_DIR)/net/l2tp/l2tp_ip.ko \
1045 $(if $(CONFIG_IPV6),$(LINUX_DIR)/net/l2tp/l2tp_ip6.ko)
1046 AUTOLOAD:=$(call AutoLoad,33,l2tp_ip $(if $(CONFIG_IPV6),l2tp_ip6))
1047 endef
1048
1049 define KernelPackage/l2tp-ip/description
1050 Kernel modules for L2TP IP encapsulation for L2TPv3
1051 endef
1052
1053 $(eval $(call KernelPackage,l2tp-ip))
1054
1055
1056 define KernelPackage/sctp
1057 SUBMENU:=$(NETWORK_SUPPORT_MENU)
1058 TITLE:=SCTP protocol kernel support
1059 KCONFIG:=\
1060 CONFIG_IP_SCTP \
1061 CONFIG_SCTP_DBG_MSG=n \
1062 CONFIG_SCTP_DBG_OBJCNT=n \
1063 CONFIG_SCTP_HMAC_NONE=n \
1064 CONFIG_SCTP_HMAC_SHA1=n \
1065 CONFIG_SCTP_HMAC_MD5=y \
1066 CONFIG_SCTP_COOKIE_HMAC_SHA1=n \
1067 CONFIG_SCTP_COOKIE_HMAC_MD5=y \
1068 CONFIG_SCTP_DEFAULT_COOKIE_HMAC_NONE=n \
1069 CONFIG_SCTP_DEFAULT_COOKIE_HMAC_SHA1=n \
1070 CONFIG_SCTP_DEFAULT_COOKIE_HMAC_MD5=y
1071 FILES:= $(LINUX_DIR)/net/sctp/sctp.ko
1072 AUTOLOAD:= $(call AutoLoad,32,sctp)
1073 DEPENDS:=+kmod-lib-crc32c +kmod-crypto-md5 +kmod-crypto-hmac
1074 endef
1075
1076 define KernelPackage/sctp/description
1077 Kernel modules for SCTP protocol support
1078 endef
1079
1080 $(eval $(call KernelPackage,sctp))
1081
1082
1083 define KernelPackage/netem
1084 SUBMENU:=$(NETWORK_SUPPORT_MENU)
1085 TITLE:=Network emulation functionality
1086 DEPENDS:=+kmod-sched
1087 KCONFIG:=CONFIG_NET_SCH_NETEM
1088 FILES:=$(LINUX_DIR)/net/sched/sch_netem.ko
1089 AUTOLOAD:=$(call AutoLoad,99,netem)
1090 endef
1091
1092 define KernelPackage/netem/description
1093 Kernel modules for emulating the properties of wide area networks
1094 endef
1095
1096 $(eval $(call KernelPackage,netem))
1097
1098 define KernelPackage/slip
1099 SUBMENU:=$(NETWORK_SUPPORT_MENU)
1100 DEPENDS:=+kmod-slhc
1101 TITLE:=SLIP modules
1102 KCONFIG:= \
1103 CONFIG_SLIP \
1104 CONFIG_SLIP_COMPRESSED=y \
1105 CONFIG_SLIP_SMART=y \
1106 CONFIG_SLIP_MODE_SLIP6=y
1107
1108 FILES:= \
1109 $(LINUX_DIR)/drivers/net/slip/slip.ko
1110 AUTOLOAD:=$(call AutoLoad,30,slip)
1111 endef
1112
1113 define KernelPackage/slip/description
1114 Kernel modules for SLIP support
1115 endef
1116
1117 $(eval $(call KernelPackage,slip))
1118
1119 define KernelPackage/dnsresolver
1120 SUBMENU:=$(NETWORK_SUPPORT_MENU)
1121 TITLE:=In-kernel DNS Resolver
1122 KCONFIG:= CONFIG_DNS_RESOLVER
1123 FILES:=$(LINUX_DIR)/net/dns_resolver/dns_resolver.ko
1124 AUTOLOAD:=$(call AutoLoad,30,dns_resolver)
1125 endef
1126
1127 $(eval $(call KernelPackage,dnsresolver))
1128
1129 define KernelPackage/rxrpc
1130 SUBMENU:=$(NETWORK_SUPPORT_MENU)
1131 TITLE:=AF_RXRPC support
1132 HIDDEN:=1
1133 KCONFIG:= \
1134 CONFIG_AF_RXRPC \
1135 CONFIG_RXKAD=m \
1136 CONFIG_AF_RXRPC_DEBUG=n
1137 FILES:= \
1138 $(LINUX_DIR)/net/rxrpc/af-rxrpc.ko@lt4.11 \
1139 $(LINUX_DIR)/net/rxrpc/rxrpc.ko@ge4.11 \
1140 $(LINUX_DIR)/net/rxrpc/rxkad.ko@lt4.7
1141 AUTOLOAD:=$(call AutoLoad,30,rxkad@lt4.7 af-rxrpc.ko@lt4.11 rxrpc.ko@ge4.11)
1142 DEPENDS:= +kmod-crypto-manager +kmod-crypto-pcbc +kmod-crypto-fcrypt
1143 endef
1144
1145 define KernelPackage/rxrpc/description
1146 Kernel support for AF_RXRPC; required for AFS client
1147 endef
1148
1149 $(eval $(call KernelPackage,rxrpc))
1150
1151 define KernelPackage/mpls
1152 SUBMENU:=$(NETWORK_SUPPORT_MENU)
1153 TITLE:=MPLS support
1154 DEPENDS:=+LINUX_4_19:kmod-iptunnel
1155 KCONFIG:= \
1156 CONFIG_MPLS=y \
1157 CONFIG_LWTUNNEL=y \
1158 CONFIG_LWTUNNEL_BPF=n \
1159 CONFIG_NET_MPLS_GSO=m \
1160 CONFIG_MPLS_ROUTING=m \
1161 CONFIG_MPLS_IPTUNNEL=m
1162 FILES:= \
1163 $(LINUX_DIR)/net/mpls/mpls_gso.ko \
1164 $(LINUX_DIR)/net/mpls/mpls_iptunnel.ko \
1165 $(LINUX_DIR)/net/mpls/mpls_router.ko
1166 AUTOLOAD:=$(call AutoLoad,30,mpls_router mpls_iptunnel mpls_gso)
1167 endef
1168
1169 define KernelPackage/mpls/description
1170 Kernel support for MPLS
1171 endef
1172
1173 $(eval $(call KernelPackage,mpls))
1174
1175 define KernelPackage/9pnet
1176 SUBMENU:=$(NETWORK_SUPPORT_MENU)
1177 TITLE:=Plan 9 Resource Sharing Support (9P2000)
1178 DEPENDS:=@VIRTIO_SUPPORT
1179 KCONFIG:= \
1180 CONFIG_NET_9P \
1181 CONFIG_NET_9P_DEBUG=n \
1182 CONFIG_NET_9P_XEN=n \
1183 CONFIG_NET_9P_VIRTIO
1184 FILES:= \
1185 $(LINUX_DIR)/net/9p/9pnet.ko \
1186 $(LINUX_DIR)/net/9p/9pnet_virtio.ko
1187 AUTOLOAD:=$(call AutoLoad,29,9pnet 9pnet_virtio)
1188 endef
1189
1190 define KernelPackage/9pnet/description
1191 Kernel support support for
1192 Plan 9 resource sharing via the 9P2000 protocol.
1193 endef
1194
1195 $(eval $(call KernelPackage,9pnet))
1196
1197
1198 define KernelPackage/nlmon
1199 SUBMENU:=$(NETWORK_SUPPORT_MENU)
1200 TITLE:=Virtual netlink monitoring device
1201 KCONFIG:=CONFIG_NLMON
1202 FILES:=$(LINUX_DIR)/drivers/net/nlmon.ko
1203 AUTOLOAD:=$(call AutoProbe,nlmon)
1204 endef
1205
1206 define KernelPackage/nlmon/description
1207 Kernel module which adds a monitoring device for netlink.
1208 endef
1209
1210 $(eval $(call KernelPackage,nlmon))
1211
1212
1213 define KernelPackage/mdio
1214 SUBMENU:=$(NETWORK_SUPPORT_MENU)
1215 TITLE:=MDIO (clause 45) PHY support
1216 KCONFIG:=CONFIG_MDIO
1217 HIDDEN:=1
1218 FILES:=$(LINUX_DIR)/drivers/net/mdio.ko
1219 AUTOLOAD:=$(call AutoLoad,32,mdio)
1220 endef
1221
1222 define KernelPackage/mdio/description
1223 Kernel modules for MDIO (clause 45) PHY support
1224 endef
1225
1226 $(eval $(call KernelPackage,mdio))
1227
1228 define KernelPackage/macsec
1229 SUBMENU:=$(NETWORK_SUPPORT_MENU)
1230 TITLE:=IEEE 802.1AE MAC-level encryption (MAC)
1231 DEPENDS:=+kmod-crypto-gcm
1232 KCONFIG:=CONFIG_MACSEC
1233 FILES:=$(LINUX_DIR)/drivers/net/macsec.ko
1234 AUTOLOAD:=$(call AutoLoad,13,macsec)
1235 endef
1236
1237 define KernelPackage/macsec/description
1238 MACsec is an encryption standard for Ethernet.
1239 endef
1240
1241 $(eval $(call KernelPackage,macsec))