kernel: kmod-macsec module for 4.9
[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/appletalk
46 SUBMENU:=$(NETWORK_SUPPORT_MENU)
47 TITLE:=Appletalk protocol support
48 KCONFIG:= \
49 CONFIG_ATALK \
50 CONFIG_DEV_APPLETALK \
51 CONFIG_IPDDP \
52 CONFIG_IPDDP_ENCAP=y \
53 CONFIG_IPDDP_DECAP=y
54 FILES:= \
55 $(LINUX_DIR)/net/appletalk/appletalk.ko \
56 $(LINUX_DIR)/drivers/net/appletalk/ipddp.ko
57 AUTOLOAD:=$(call AutoLoad,40,appletalk ipddp)
58 endef
59
60 define KernelPackage/appletalk/description
61 Kernel module for AppleTalk protocol.
62 endef
63
64 $(eval $(call KernelPackage,appletalk))
65
66
67 define KernelPackage/bonding
68 SUBMENU:=$(NETWORK_SUPPORT_MENU)
69 TITLE:=Ethernet bonding driver
70 KCONFIG:=CONFIG_BONDING
71 FILES:=$(LINUX_DIR)/drivers/net/bonding/bonding.ko
72 AUTOLOAD:=$(call AutoLoad,40,bonding)
73 endef
74
75 define KernelPackage/bonding/description
76 Kernel module for NIC bonding.
77 endef
78
79 $(eval $(call KernelPackage,bonding))
80
81
82 define KernelPackage/udptunnel4
83 SUBMENU:=$(NETWORK_SUPPORT_MENU)
84 TITLE:=IPv4 UDP tunneling support
85 KCONFIG:= \
86 CONFIG_NET_UDP_TUNNEL \
87 CONFIG_VXLAN=m
88 HIDDEN:=1
89 FILES:=$(LINUX_DIR)/net/ipv4/udp_tunnel.ko
90 AUTOLOAD:=$(call AutoLoad,32,udp_tunnel)
91 endef
92
93
94 $(eval $(call KernelPackage,udptunnel4))
95
96 define KernelPackage/udptunnel6
97 SUBMENU:=$(NETWORK_SUPPORT_MENU)
98 TITLE:=IPv6 UDP tunneling support
99 DEPENDS:=@IPV6
100 KCONFIG:= \
101 CONFIG_NET_UDP_TUNNEL \
102 CONFIG_VXLAN=m
103 HIDDEN:=1
104 FILES:=$(LINUX_DIR)/net/ipv6/ip6_udp_tunnel.ko
105 AUTOLOAD:=$(call AutoLoad,32,ip6_udp_tunnel)
106 endef
107
108 $(eval $(call KernelPackage,udptunnel6))
109
110
111 define KernelPackage/vxlan
112 SUBMENU:=$(NETWORK_SUPPORT_MENU)
113 TITLE:=Native VXLAN Kernel support
114 DEPENDS:= \
115 +kmod-iptunnel \
116 +kmod-udptunnel4 \
117 +IPV6:kmod-udptunnel6
118 KCONFIG:=CONFIG_VXLAN
119 FILES:=$(LINUX_DIR)/drivers/net/vxlan.ko
120 AUTOLOAD:=$(call AutoLoad,13,vxlan)
121 endef
122
123 define KernelPackage/vxlan/description
124 Kernel module for supporting VXLAN in the Kernel.
125 Requires Kernel 3.12 or newer.
126 endef
127
128 $(eval $(call KernelPackage,vxlan))
129
130 define KernelPackage/capi
131 SUBMENU:=$(NETWORK_SUPPORT_MENU)
132 TITLE:=CAPI (ISDN) Support
133 KCONFIG:= \
134 CONFIG_ISDN_CAPI \
135 CONFIG_ISDN_CAPI_CAPI20 \
136 CONFIG_ISDN_CAPIFS \
137 CONFIG_ISDN_CAPI_CAPIFS
138 FILES:= \
139 $(LINUX_DIR)/drivers/isdn/capi/kernelcapi.ko \
140 $(LINUX_DIR)/drivers/isdn/capi/capi.ko
141 AUTOLOAD:=$(call AutoLoad,30,kernelcapi capi)
142 endef
143
144 define KernelPackage/capi/description
145 Kernel module for basic CAPI (ISDN) support
146 endef
147
148 $(eval $(call KernelPackage,capi))
149
150 define KernelPackage/misdn
151 SUBMENU:=$(NETWORK_SUPPORT_MENU)
152 TITLE:=mISDN (ISDN) Support
153 KCONFIG:= \
154 CONFIG_ISDN=y \
155 CONFIG_MISDN \
156 CONFIG_MISDN_DSP \
157 CONFIG_MISDN_L1OIP
158 FILES:= \
159 $(LINUX_DIR)/drivers/isdn/mISDN/mISDN_core.ko \
160 $(LINUX_DIR)/drivers/isdn/mISDN/mISDN_dsp.ko \
161 $(LINUX_DIR)/drivers/isdn/mISDN/l1oip.ko
162 AUTOLOAD:=$(call AutoLoad,30,mISDN_core mISDN_dsp l1oip)
163 endef
164
165 define KernelPackage/misdn/description
166 Modular ISDN driver support
167 endef
168
169 $(eval $(call KernelPackage,misdn))
170
171
172 define KernelPackage/isdn4linux
173 SUBMENU:=$(NETWORK_SUPPORT_MENU)
174 TITLE:=Old ISDN4Linux (deprecated)
175 DEPENDS:=+kmod-ppp
176 KCONFIG:= \
177 CONFIG_ISDN=y \
178 CONFIG_ISDN_I4L \
179 CONFIG_ISDN_PPP=y \
180 CONFIG_ISDN_PPP_VJ=y \
181 CONFIG_ISDN_MPP=y \
182 CONFIG_IPPP_FILTER=y \
183 CONFIG_ISDN_PPP_BSDCOMP \
184 CONFIG_ISDN_CAPI_MIDDLEWARE=y \
185 CONFIG_ISDN_CAPI_CAPIFS_BOOL=y \
186 CONFIG_ISDN_AUDIO=y \
187 CONFIG_ISDN_TTY_FAX=y \
188 CONFIG_ISDN_X25=y \
189 CONFIG_ISDN_DIVERSION
190 FILES:= \
191 $(LINUX_DIR)/drivers/isdn/divert/dss1_divert.ko \
192 $(LINUX_DIR)/drivers/isdn/i4l/isdn.ko \
193 $(LINUX_DIR)/drivers/isdn/i4l/isdn_bsdcomp.ko
194 AUTOLOAD:=$(call AutoLoad,40,isdn isdn_bsdcomp dss1_divert)
195 endef
196
197 define KernelPackage/isdn4linux/description
198 This driver allows you to use an ISDN adapter for networking
199 endef
200
201 $(eval $(call KernelPackage,isdn4linux))
202
203
204 define KernelPackage/ipip
205 SUBMENU:=$(NETWORK_SUPPORT_MENU)
206 TITLE:=IP-in-IP encapsulation
207 DEPENDS:=+kmod-iptunnel +kmod-iptunnel4
208 KCONFIG:=CONFIG_NET_IPIP
209 FILES:=$(LINUX_DIR)/net/ipv4/ipip.ko
210 AUTOLOAD:=$(call AutoLoad,32,ipip)
211 endef
212
213 define KernelPackage/ipip/description
214 Kernel modules for IP-in-IP encapsulation
215 endef
216
217 $(eval $(call KernelPackage,ipip))
218
219
220 IPSEC-m:= \
221 xfrm/xfrm_algo \
222 xfrm/xfrm_ipcomp \
223 xfrm/xfrm_user \
224 key/af_key \
225
226 define KernelPackage/ipsec
227 SUBMENU:=$(NETWORK_SUPPORT_MENU)
228 TITLE:=IPsec related modules (IPv4 and IPv6)
229 DEPENDS:= \
230 +kmod-crypto-authenc +kmod-crypto-cbc +kmod-crypto-deflate \
231 +kmod-crypto-des +kmod-crypto-echainiv +kmod-crypto-hmac \
232 +kmod-crypto-iv +kmod-crypto-md5 +kmod-crypto-sha1
233 KCONFIG:= \
234 CONFIG_NET_KEY \
235 CONFIG_XFRM_USER \
236 CONFIG_INET_IPCOMP \
237 CONFIG_XFRM_IPCOMP
238 FILES:=$(foreach mod,$(IPSEC-m),$(LINUX_DIR)/net/$(mod).ko)
239 AUTOLOAD:=$(call AutoLoad,30,$(notdir $(IPSEC-m)))
240 endef
241
242 define KernelPackage/ipsec/description
243 Kernel modules for IPsec support in both IPv4 and IPv6.
244 Includes:
245 - af_key
246 - xfrm_algo
247 - xfrm_ipcomp
248 - xfrm_user
249 endef
250
251 $(eval $(call KernelPackage,ipsec))
252
253
254 IPSEC4-m:= \
255 ipv4/ah4 \
256 ipv4/esp4 \
257 ipv4/xfrm4_mode_beet \
258 ipv4/xfrm4_mode_transport \
259 ipv4/xfrm4_mode_tunnel \
260 ipv4/xfrm4_tunnel \
261 ipv4/ipcomp \
262
263 define KernelPackage/ipsec4
264 SUBMENU:=$(NETWORK_SUPPORT_MENU)
265 TITLE:=IPsec related modules (IPv4)
266 DEPENDS:=kmod-ipsec +kmod-iptunnel4
267 KCONFIG:= \
268 CONFIG_INET_AH \
269 CONFIG_INET_ESP \
270 CONFIG_INET_IPCOMP \
271 CONFIG_INET_XFRM_MODE_BEET \
272 CONFIG_INET_XFRM_MODE_TRANSPORT \
273 CONFIG_INET_XFRM_MODE_TUNNEL \
274 CONFIG_INET_XFRM_TUNNEL
275 FILES:=$(foreach mod,$(IPSEC4-m),$(LINUX_DIR)/net/$(mod).ko)
276 AUTOLOAD:=$(call AutoLoad,32,$(notdir $(IPSEC4-m)))
277 endef
278
279 define KernelPackage/ipsec4/description
280 Kernel modules for IPsec support in IPv4.
281 Includes:
282 - ah4
283 - esp4
284 - ipcomp4
285 - xfrm4_mode_beet
286 - xfrm4_mode_transport
287 - xfrm4_mode_tunnel
288 - xfrm4_tunnel
289 endef
290
291 $(eval $(call KernelPackage,ipsec4))
292
293
294 IPSEC6-m:= \
295 ipv6/ah6 \
296 ipv6/esp6 \
297 ipv6/xfrm6_mode_beet \
298 ipv6/xfrm6_mode_transport \
299 ipv6/xfrm6_mode_tunnel \
300 ipv6/xfrm6_tunnel \
301 ipv6/ipcomp6 \
302
303 define KernelPackage/ipsec6
304 SUBMENU:=$(NETWORK_SUPPORT_MENU)
305 TITLE:=IPsec related modules (IPv6)
306 DEPENDS:=kmod-ipsec +kmod-iptunnel6
307 KCONFIG:= \
308 CONFIG_INET6_AH \
309 CONFIG_INET6_ESP \
310 CONFIG_INET6_IPCOMP \
311 CONFIG_INET6_XFRM_MODE_BEET \
312 CONFIG_INET6_XFRM_MODE_TRANSPORT \
313 CONFIG_INET6_XFRM_MODE_TUNNEL \
314 CONFIG_INET6_XFRM_TUNNEL
315 FILES:=$(foreach mod,$(IPSEC6-m),$(LINUX_DIR)/net/$(mod).ko)
316 AUTOLOAD:=$(call AutoLoad,32,$(notdir $(IPSEC6-m)))
317 endef
318
319 define KernelPackage/ipsec6/description
320 Kernel modules for IPsec support in IPv6.
321 Includes:
322 - ah6
323 - esp6
324 - ipcomp6
325 - xfrm6_mode_beet
326 - xfrm6_mode_transport
327 - xfrm6_mode_tunnel
328 - xfrm6_tunnel
329 endef
330
331 $(eval $(call KernelPackage,ipsec6))
332
333
334 define KernelPackage/iptunnel
335 SUBMENU:=$(NETWORK_SUPPORT_MENU)
336 TITLE:=IP tunnel support
337 HIDDEN:=1
338 KCONFIG:= \
339 CONFIG_NET_IP_TUNNEL
340 FILES:=$(LINUX_DIR)/net/ipv4/ip_tunnel.ko
341 AUTOLOAD:=$(call AutoLoad,31,ip_tunnel)
342 endef
343
344 define KernelPackage/iptunnel/description
345 Kernel module for generic IP tunnel support
346 endef
347
348 $(eval $(call KernelPackage,iptunnel))
349
350
351 define KernelPackage/ip-vti
352 SUBMENU:=$(NETWORK_SUPPORT_MENU)
353 TITLE:=IP VTI (Virtual Tunnel Interface)
354 DEPENDS:=+kmod-iptunnel +kmod-iptunnel4 +kmod-ipsec4
355 KCONFIG:=CONFIG_NET_IPVTI
356 FILES:=$(LINUX_DIR)/net/ipv4/ip_vti.ko
357 AUTOLOAD:=$(call AutoLoad,33,ip_vti)
358 endef
359
360 define KernelPackage/ip-vti/description
361 Kernel modules for IP VTI (Virtual Tunnel Interface)
362 endef
363
364 $(eval $(call KernelPackage,ip-vti))
365
366
367 define KernelPackage/ip6-vti
368 SUBMENU:=$(NETWORK_SUPPORT_MENU)
369 TITLE:=IPv6 VTI (Virtual Tunnel Interface)
370 DEPENDS:=+kmod-iptunnel +kmod-ip6-tunnel +kmod-ipsec6
371 KCONFIG:=CONFIG_IPV6_VTI
372 FILES:=$(LINUX_DIR)/net/ipv6/ip6_vti.ko
373 AUTOLOAD:=$(call AutoLoad,33,ip6_vti)
374 endef
375
376 define KernelPackage/ip6-vti/description
377 Kernel modules for IPv6 VTI (Virtual Tunnel Interface)
378 endef
379
380 $(eval $(call KernelPackage,ip6-vti))
381
382
383 define KernelPackage/iptunnel4
384 SUBMENU:=$(NETWORK_SUPPORT_MENU)
385 TITLE:=IPv4 tunneling
386 HIDDEN:=1
387 KCONFIG:= \
388 CONFIG_INET_TUNNEL \
389 CONFIG_NET_IPIP=m
390 FILES:=$(LINUX_DIR)/net/ipv4/tunnel4.ko
391 AUTOLOAD:=$(call AutoLoad,31,tunnel4)
392 endef
393
394 define KernelPackage/iptunnel4/description
395 Kernel modules for IPv4 tunneling
396 endef
397
398 $(eval $(call KernelPackage,iptunnel4))
399
400
401 define KernelPackage/iptunnel6
402 SUBMENU:=$(NETWORK_SUPPORT_MENU)
403 TITLE:=IPv6 tunneling
404 DEPENDS:=@IPV6
405 KCONFIG:= \
406 CONFIG_INET6_TUNNEL
407 FILES:=$(LINUX_DIR)/net/ipv6/tunnel6.ko
408 AUTOLOAD:=$(call AutoLoad,31,tunnel6)
409 endef
410
411 define KernelPackage/iptunnel6/description
412 Kernel modules for IPv6 tunneling
413 endef
414
415 $(eval $(call KernelPackage,iptunnel6))
416
417
418 define KernelPackage/sit
419 SUBMENU:=$(NETWORK_SUPPORT_MENU)
420 DEPENDS:=@IPV6 +kmod-iptunnel +kmod-iptunnel4
421 TITLE:=IPv6-in-IPv4 tunnel
422 KCONFIG:=CONFIG_IPV6_SIT \
423 CONFIG_IPV6_SIT_6RD=y
424 FILES:=$(LINUX_DIR)/net/ipv6/sit.ko
425 AUTOLOAD:=$(call AutoLoad,32,sit)
426 endef
427
428 define KernelPackage/sit/description
429 Kernel modules for IPv6-in-IPv4 tunnelling
430 endef
431
432 $(eval $(call KernelPackage,sit))
433
434
435 define KernelPackage/ip6-tunnel
436 SUBMENU:=$(NETWORK_SUPPORT_MENU)
437 TITLE:=IP-in-IPv6 tunnelling
438 DEPENDS:=@IPV6 +kmod-iptunnel6
439 KCONFIG:= CONFIG_IPV6_TUNNEL
440 FILES:=$(LINUX_DIR)/net/ipv6/ip6_tunnel.ko
441 AUTOLOAD:=$(call AutoLoad,32,ip6_tunnel)
442 endef
443
444 define KernelPackage/ip6-tunnel/description
445 Kernel modules for IPv6-in-IPv6 and IPv4-in-IPv6 tunnelling
446 endef
447
448 $(eval $(call KernelPackage,ip6-tunnel))
449
450
451 define KernelPackage/gre
452 SUBMENU:=$(NETWORK_SUPPORT_MENU)
453 TITLE:=GRE support
454 DEPENDS:=+kmod-iptunnel
455 KCONFIG:=CONFIG_NET_IPGRE CONFIG_NET_IPGRE_DEMUX
456 FILES:=$(LINUX_DIR)/net/ipv4/ip_gre.ko $(LINUX_DIR)/net/ipv4/gre.ko
457 AUTOLOAD:=$(call AutoLoad,39,gre ip_gre)
458 endef
459
460 define KernelPackage/gre/description
461 Generic Routing Encapsulation support
462 endef
463
464 $(eval $(call KernelPackage,gre))
465
466
467 define KernelPackage/gre6
468 SUBMENU:=$(NETWORK_SUPPORT_MENU)
469 TITLE:=GRE support over IPV6
470 DEPENDS:=@IPV6 +kmod-iptunnel +kmod-ip6-tunnel +kmod-gre
471 KCONFIG:=CONFIG_IPV6_GRE
472 FILES:=$(LINUX_DIR)/net/ipv6/ip6_gre.ko
473 AUTOLOAD:=$(call AutoLoad,39,ip6_gre)
474 endef
475
476 define KernelPackage/gre6/description
477 Generic Routing Encapsulation support over IPv6
478 endef
479
480 $(eval $(call KernelPackage,gre6))
481
482
483 define KernelPackage/tun
484 SUBMENU:=$(NETWORK_SUPPORT_MENU)
485 TITLE:=Universal TUN/TAP driver
486 KCONFIG:=CONFIG_TUN
487 FILES:=$(LINUX_DIR)/drivers/net/tun.ko
488 AUTOLOAD:=$(call AutoLoad,30,tun)
489 endef
490
491 define KernelPackage/tun/description
492 Kernel support for the TUN/TAP tunneling device
493 endef
494
495 $(eval $(call KernelPackage,tun))
496
497
498 define KernelPackage/veth
499 SUBMENU:=$(NETWORK_SUPPORT_MENU)
500 TITLE:=Virtual ethernet pair device
501 KCONFIG:=CONFIG_VETH
502 FILES:=$(LINUX_DIR)/drivers/net/veth.ko
503 AUTOLOAD:=$(call AutoLoad,30,veth)
504 endef
505
506 define KernelPackage/veth/description
507 This device is a local ethernet tunnel. Devices are created in pairs.
508 When one end receives the packet it appears on its pair and vice
509 versa.
510 endef
511
512 $(eval $(call KernelPackage,veth))
513
514
515 define KernelPackage/slhc
516 SUBMENU:=$(NETWORK_SUPPORT_MENU)
517 HIDDEN:=1
518 TITLE:=Serial Line Header Compression
519 DEPENDS:=+kmod-lib-crc-ccitt
520 KCONFIG:=CONFIG_SLHC
521 FILES:=$(LINUX_DIR)/drivers/net/slip/slhc.ko
522 endef
523
524 $(eval $(call KernelPackage,slhc))
525
526
527 define KernelPackage/ppp
528 SUBMENU:=$(NETWORK_SUPPORT_MENU)
529 TITLE:=PPP modules
530 DEPENDS:=+kmod-lib-crc-ccitt +kmod-slhc
531 KCONFIG:= \
532 CONFIG_PPP \
533 CONFIG_PPP_ASYNC
534 FILES:= \
535 $(LINUX_DIR)/drivers/net/ppp/ppp_async.ko \
536 $(LINUX_DIR)/drivers/net/ppp/ppp_generic.ko
537 AUTOLOAD:=$(call AutoProbe,ppp_async)
538 endef
539
540 define KernelPackage/ppp/description
541 Kernel modules for PPP support
542 endef
543
544 $(eval $(call KernelPackage,ppp))
545
546
547 define KernelPackage/ppp-synctty
548 SUBMENU:=$(NETWORK_SUPPORT_MENU)
549 TITLE:=PPP sync tty support
550 DEPENDS:=kmod-ppp
551 KCONFIG:=CONFIG_PPP_SYNC_TTY
552 FILES:=$(LINUX_DIR)/drivers/net/ppp/ppp_synctty.ko
553 AUTOLOAD:=$(call AutoProbe,ppp_synctty)
554 endef
555
556 define KernelPackage/ppp-synctty/description
557 Kernel modules for PPP sync tty support
558 endef
559
560 $(eval $(call KernelPackage,ppp-synctty))
561
562
563 define KernelPackage/pppox
564 SUBMENU:=$(NETWORK_SUPPORT_MENU)
565 TITLE:=PPPoX helper
566 DEPENDS:=kmod-ppp
567 KCONFIG:=CONFIG_PPPOE
568 FILES:=$(LINUX_DIR)/drivers/net/ppp/pppox.ko
569 endef
570
571 define KernelPackage/pppox/description
572 Kernel helper module for PPPoE and PPTP support
573 endef
574
575 $(eval $(call KernelPackage,pppox))
576
577
578 define KernelPackage/pppoe
579 SUBMENU:=$(NETWORK_SUPPORT_MENU)
580 TITLE:=PPPoE support
581 DEPENDS:=kmod-ppp +kmod-pppox
582 KCONFIG:=CONFIG_PPPOE
583 FILES:=$(LINUX_DIR)/drivers/net/ppp/pppoe.ko
584 AUTOLOAD:=$(call AutoProbe,pppoe)
585 endef
586
587 define KernelPackage/pppoe/description
588 Kernel module for PPPoE (PPP over Ethernet) support
589 endef
590
591 $(eval $(call KernelPackage,pppoe))
592
593
594 define KernelPackage/pppoa
595 SUBMENU:=$(NETWORK_SUPPORT_MENU)
596 TITLE:=PPPoA support
597 DEPENDS:=kmod-ppp +kmod-atm
598 KCONFIG:=CONFIG_PPPOATM CONFIG_ATM_DRIVERS=y
599 FILES:=$(LINUX_DIR)/net/atm/pppoatm.ko
600 AUTOLOAD:=$(call AutoLoad,40,pppoatm)
601 endef
602
603 define KernelPackage/pppoa/description
604 Kernel modules for PPPoA (PPP over ATM) support
605 endef
606
607 $(eval $(call KernelPackage,pppoa))
608
609
610 define KernelPackage/pptp
611 SUBMENU:=$(NETWORK_SUPPORT_MENU)
612 TITLE:=PPtP support
613 DEPENDS:=kmod-ppp +kmod-gre +kmod-pppox
614 KCONFIG:=CONFIG_PPTP
615 FILES:=$(LINUX_DIR)/drivers/net/ppp/pptp.ko
616 AUTOLOAD:=$(call AutoProbe,pptp)
617 endef
618
619 $(eval $(call KernelPackage,pptp))
620
621
622 define KernelPackage/pppol2tp
623 SUBMENU:=$(NETWORK_SUPPORT_MENU)
624 TITLE:=PPPoL2TP support
625 DEPENDS:=kmod-ppp +kmod-pppox +kmod-l2tp
626 KCONFIG:=CONFIG_PPPOL2TP
627 FILES:=$(LINUX_DIR)/net/l2tp/l2tp_ppp.ko
628 AUTOLOAD:=$(call AutoProbe,l2tp_ppp)
629 endef
630
631 define KernelPackage/pppol2tp/description
632 Kernel modules for PPPoL2TP (PPP over L2TP) support
633 endef
634
635 $(eval $(call KernelPackage,pppol2tp))
636
637
638 define KernelPackage/ipoa
639 SUBMENU:=$(NETWORK_SUPPORT_MENU)
640 TITLE:=IPoA support
641 DEPENDS:=kmod-atm
642 KCONFIG:=CONFIG_ATM_CLIP
643 FILES:=$(LINUX_DIR)/net/atm/clip.ko
644 AUTOLOAD:=$(call AutoProbe,clip)
645 endef
646
647 define KernelPackage/ipoa/description
648 Kernel modules for IPoA (IP over ATM) support
649 endef
650
651 $(eval $(call KernelPackage,ipoa))
652
653
654 define KernelPackage/mppe
655 SUBMENU:=$(NETWORK_SUPPORT_MENU)
656 TITLE:=Microsoft PPP compression/encryption
657 DEPENDS:=kmod-ppp +kmod-crypto-sha1 +kmod-crypto-ecb
658 KCONFIG:= \
659 CONFIG_PPP_MPPE_MPPC \
660 CONFIG_PPP_MPPE
661 FILES:=$(LINUX_DIR)/drivers/net/ppp/ppp_mppe.ko
662 AUTOLOAD:=$(call AutoProbe,ppp_mppe)
663 endef
664
665 define KernelPackage/mppe/description
666 Kernel modules for Microsoft PPP compression/encryption
667 endef
668
669 $(eval $(call KernelPackage,mppe))
670
671
672 SCHED_MODULES = $(patsubst $(LINUX_DIR)/net/sched/%.ko,%,$(wildcard $(LINUX_DIR)/net/sched/*.ko))
673 SCHED_MODULES_CORE = sch_ingress sch_fq_codel sch_hfsc sch_htb sch_tbf cls_fw cls_route cls_flow cls_tcindex cls_u32 em_u32 act_mirred act_skbedit
674 SCHED_MODULES_FILTER = $(SCHED_MODULES_CORE) act_connmark sch_netem
675 SCHED_MODULES_EXTRA = $(filter-out $(SCHED_MODULES_FILTER),$(SCHED_MODULES))
676 SCHED_FILES = $(patsubst %,$(LINUX_DIR)/net/sched/%.ko,$(filter $(SCHED_MODULES_CORE),$(SCHED_MODULES)))
677 SCHED_FILES_EXTRA = $(patsubst %,$(LINUX_DIR)/net/sched/%.ko,$(SCHED_MODULES_EXTRA))
678
679 define KernelPackage/sched-core
680 SUBMENU:=$(NETWORK_SUPPORT_MENU)
681 TITLE:=Traffic schedulers
682 KCONFIG:= \
683 CONFIG_NET_SCHED=y \
684 CONFIG_NET_SCH_HFSC \
685 CONFIG_NET_SCH_HTB \
686 CONFIG_NET_SCH_TBF \
687 CONFIG_NET_SCH_INGRESS \
688 CONFIG_NET_SCH_FQ_CODEL \
689 CONFIG_NET_CLS=y \
690 CONFIG_NET_CLS_ACT=y \
691 CONFIG_NET_CLS_FLOW \
692 CONFIG_NET_CLS_FW \
693 CONFIG_NET_CLS_ROUTE4 \
694 CONFIG_NET_CLS_TCINDEX \
695 CONFIG_NET_CLS_U32 \
696 CONFIG_NET_ACT_MIRRED \
697 CONFIG_NET_ACT_SKBEDIT \
698 CONFIG_NET_EMATCH=y \
699 CONFIG_NET_EMATCH_U32
700 FILES:=$(SCHED_FILES)
701 AUTOLOAD:=$(call AutoLoad,70, $(SCHED_MODULES_CORE))
702 endef
703
704 define KernelPackage/sched-core/description
705 Core kernel scheduler support for IP traffic
706 endef
707
708 $(eval $(call KernelPackage,sched-core))
709
710
711 define KernelPackage/sched-connmark
712 SUBMENU:=$(NETWORK_SUPPORT_MENU)
713 TITLE:=Traffic shaper conntrack mark support
714 DEPENDS:=+kmod-sched-core +kmod-ipt-core +kmod-ipt-conntrack-extra
715 KCONFIG:=CONFIG_NET_ACT_CONNMARK
716 FILES:=$(LINUX_DIR)/net/sched/act_connmark.ko
717 AUTOLOAD:=$(call AutoLoad,71, act_connmark)
718 endef
719 $(eval $(call KernelPackage,sched-connmark))
720
721 define KernelPackage/sched
722 SUBMENU:=$(NETWORK_SUPPORT_MENU)
723 TITLE:=Extra traffic schedulers
724 DEPENDS:=+kmod-sched-core +kmod-ipt-core
725 KCONFIG:= \
726 CONFIG_NET_SCH_CODEL \
727 CONFIG_NET_SCH_DSMARK \
728 CONFIG_NET_SCH_FIFO \
729 CONFIG_NET_SCH_GRED \
730 CONFIG_NET_SCH_PRIO \
731 CONFIG_NET_SCH_RED \
732 CONFIG_NET_SCH_SFQ \
733 CONFIG_NET_SCH_TEQL \
734 CONFIG_NET_SCH_FQ \
735 CONFIG_NET_SCH_PIE \
736 CONFIG_NET_CLS_BASIC \
737 CONFIG_NET_ACT_POLICE \
738 CONFIG_NET_ACT_IPT \
739 CONFIG_NET_EMATCH_CMP \
740 CONFIG_NET_EMATCH_NBYTE \
741 CONFIG_NET_EMATCH_META \
742 CONFIG_NET_EMATCH_TEXT
743 FILES:=$(SCHED_FILES_EXTRA)
744 AUTOLOAD:=$(call AutoLoad,73, $(SCHED_MODULES_EXTRA))
745 endef
746
747 define KernelPackage/sched/description
748 Extra kernel schedulers modules for IP traffic
749 endef
750
751 $(eval $(call KernelPackage,sched))
752
753
754 define KernelPackage/ax25
755 SUBMENU:=$(NETWORK_SUPPORT_MENU)
756 TITLE:=AX25 support
757 DEPENDS:=+kmod-lib-crc16
758 KCONFIG:= \
759 CONFIG_HAMRADIO=y \
760 CONFIG_AX25 \
761 CONFIG_MKISS
762 FILES:= \
763 $(LINUX_DIR)/net/ax25/ax25.ko \
764 $(LINUX_DIR)/drivers/net/hamradio/mkiss.ko
765 AUTOLOAD:=$(call AutoLoad,80,ax25 mkiss)
766 endef
767
768 define KernelPackage/ax25/description
769 Kernel modules for AX25 support
770 endef
771
772 $(eval $(call KernelPackage,ax25))
773
774
775 define KernelPackage/pktgen
776 SUBMENU:=$(NETWORK_SUPPORT_MENU)
777 DEPENDS:=@!TARGET_uml
778 TITLE:=Network packet generator
779 KCONFIG:=CONFIG_NET_PKTGEN
780 FILES:=$(LINUX_DIR)/net/core/pktgen.ko
781 AUTOLOAD:=$(call AutoLoad,99,pktgen)
782 endef
783
784 define KernelPackage/pktgen/description
785 Kernel modules for the Network Packet Generator
786 endef
787
788 $(eval $(call KernelPackage,pktgen))
789
790 define KernelPackage/l2tp
791 SUBMENU:=$(NETWORK_SUPPORT_MENU)
792 TITLE:=Layer Two Tunneling Protocol (L2TP)
793 DEPENDS:= \
794 +kmod-udptunnel4 \
795 +IPV6:kmod-udptunnel6
796 KCONFIG:=CONFIG_L2TP \
797 CONFIG_L2TP_V3=y \
798 CONFIG_L2TP_DEBUGFS=n
799 FILES:=$(LINUX_DIR)/net/l2tp/l2tp_core.ko \
800 $(LINUX_DIR)/net/l2tp/l2tp_netlink.ko
801 AUTOLOAD:=$(call AutoLoad,32,l2tp_core l2tp_netlink)
802 endef
803
804 define KernelPackage/l2tp/description
805 Kernel modules for L2TP V3 Support
806 endef
807
808 $(eval $(call KernelPackage,l2tp))
809
810
811 define KernelPackage/l2tp-eth
812 SUBMENU:=$(NETWORK_SUPPORT_MENU)
813 TITLE:=L2TP ethernet pseudowire support for L2TPv3
814 DEPENDS:=+kmod-l2tp
815 KCONFIG:=CONFIG_L2TP_ETH
816 FILES:=$(LINUX_DIR)/net/l2tp/l2tp_eth.ko
817 AUTOLOAD:=$(call AutoLoad,33,l2tp_eth)
818 endef
819
820 define KernelPackage/l2tp-eth/description
821 Kernel modules for L2TP ethernet pseudowire support for L2TPv3
822 endef
823
824 $(eval $(call KernelPackage,l2tp-eth))
825
826 define KernelPackage/l2tp-ip
827 SUBMENU:=$(NETWORK_SUPPORT_MENU)
828 TITLE:=L2TP IP encapsulation for L2TPv3
829 DEPENDS:=+kmod-l2tp
830 KCONFIG:=CONFIG_L2TP_IP
831 FILES:= \
832 $(LINUX_DIR)/net/l2tp/l2tp_ip.ko \
833 $(if $(CONFIG_IPV6),$(LINUX_DIR)/net/l2tp/l2tp_ip6.ko)
834 AUTOLOAD:=$(call AutoLoad,33,l2tp_ip $(if $(CONFIG_IPV6),l2tp_ip6))
835 endef
836
837 define KernelPackage/l2tp-ip/description
838 Kernel modules for L2TP IP encapsulation for L2TPv3
839 endef
840
841 $(eval $(call KernelPackage,l2tp-ip))
842
843
844 define KernelPackage/sctp
845 SUBMENU:=$(NETWORK_SUPPORT_MENU)
846 TITLE:=SCTP protocol kernel support
847 KCONFIG:=\
848 CONFIG_IP_SCTP \
849 CONFIG_SCTP_DBG_MSG=n \
850 CONFIG_SCTP_DBG_OBJCNT=n \
851 CONFIG_SCTP_HMAC_NONE=n \
852 CONFIG_SCTP_HMAC_SHA1=n \
853 CONFIG_SCTP_HMAC_MD5=y \
854 CONFIG_SCTP_COOKIE_HMAC_SHA1=n \
855 CONFIG_SCTP_COOKIE_HMAC_MD5=y \
856 CONFIG_SCTP_DEFAULT_COOKIE_HMAC_NONE=n \
857 CONFIG_SCTP_DEFAULT_COOKIE_HMAC_SHA1=n \
858 CONFIG_SCTP_DEFAULT_COOKIE_HMAC_MD5=y
859 FILES:= $(LINUX_DIR)/net/sctp/sctp.ko
860 AUTOLOAD:= $(call AutoLoad,32,sctp)
861 DEPENDS:=+kmod-lib-crc32c +kmod-crypto-md5 +kmod-crypto-hmac
862 endef
863
864 define KernelPackage/sctp/description
865 Kernel modules for SCTP protocol support
866 endef
867
868 $(eval $(call KernelPackage,sctp))
869
870
871 define KernelPackage/netem
872 SUBMENU:=$(NETWORK_SUPPORT_MENU)
873 TITLE:=Network emulation functionality
874 DEPENDS:=+kmod-sched
875 KCONFIG:=CONFIG_NET_SCH_NETEM
876 FILES:=$(LINUX_DIR)/net/sched/sch_netem.ko
877 AUTOLOAD:=$(call AutoLoad,99,netem)
878 endef
879
880 define KernelPackage/netem/description
881 Kernel modules for emulating the properties of wide area networks
882 endef
883
884 $(eval $(call KernelPackage,netem))
885
886 define KernelPackage/slip
887 SUBMENU:=$(NETWORK_SUPPORT_MENU)
888 DEPENDS:=+kmod-slhc
889 TITLE:=SLIP modules
890 KCONFIG:= \
891 CONFIG_SLIP \
892 CONFIG_SLIP_COMPRESSED=y \
893 CONFIG_SLIP_SMART=y \
894 CONFIG_SLIP_MODE_SLIP6=y
895
896 FILES:= \
897 $(LINUX_DIR)/drivers/net/slip/slip.ko
898 AUTOLOAD:=$(call AutoLoad,30,slip)
899 endef
900
901 define KernelPackage/slip/description
902 Kernel modules for SLIP support
903 endef
904
905 $(eval $(call KernelPackage,slip))
906
907 define KernelPackage/dnsresolver
908 SUBMENU:=$(NETWORK_SUPPORT_MENU)
909 TITLE:=In-kernel DNS Resolver
910 KCONFIG:= CONFIG_DNS_RESOLVER
911 FILES:=$(LINUX_DIR)/net/dns_resolver/dns_resolver.ko
912 AUTOLOAD:=$(call AutoLoad,30,dns_resolver)
913 endef
914
915 $(eval $(call KernelPackage,dnsresolver))
916
917 define KernelPackage/rxrpc
918 SUBMENU:=$(NETWORK_SUPPORT_MENU)
919 TITLE:=AF_RXRPC support
920 HIDDEN:=1
921 KCONFIG:= \
922 CONFIG_AF_RXRPC \
923 CONFIG_RXKAD=m \
924 CONFIG_AF_RXRPC_DEBUG=n
925 FILES:= \
926 $(LINUX_DIR)/net/rxrpc/af-rxrpc.ko \
927 $(LINUX_DIR)/net/rxrpc/rxkad.ko@lt4.7
928 AUTOLOAD:=$(call AutoLoad,30,rxkad@lt4.7 af-rxrpc)
929 DEPENDS:= +kmod-crypto-manager +kmod-crypto-pcbc +kmod-crypto-fcrypt
930 endef
931
932 define KernelPackage/rxrpc/description
933 Kernel support for AF_RXRPC; required for AFS client
934 endef
935
936 $(eval $(call KernelPackage,rxrpc))
937
938 define KernelPackage/mpls
939 SUBMENU:=$(NETWORK_SUPPORT_MENU)
940 TITLE:=MPLS support
941 DEPENDS:=@!(LINUX_3_18||LINUX_4_1)
942 KCONFIG:= \
943 CONFIG_MPLS=y \
944 CONFIG_LWTUNNEL=y \
945 CONFIG_NET_MPLS_GSO=m \
946 CONFIG_MPLS_ROUTING=m \
947 CONFIG_MPLS_IPTUNNEL=m
948 FILES:= \
949 $(LINUX_DIR)/net/mpls/mpls_gso.ko \
950 $(LINUX_DIR)/net/mpls/mpls_iptunnel.ko \
951 $(LINUX_DIR)/net/mpls/mpls_router.ko
952 AUTOLOAD:=$(call AutoLoad,30,mpls_router mpls_iptunnel mpls_gso)
953 endef
954
955 define KernelPackage/mpls/description
956 Kernel support for MPLS
957 endef
958
959 $(eval $(call KernelPackage,mpls))
960
961 define KernelPackage/9pnet
962 SUBMENU:=$(NETWORK_SUPPORT_MENU)
963 TITLE:=Plan 9 Resource Sharing Support (9P2000)
964 DEPENDS:=@VIRTIO_SUPPORT
965 KCONFIG:= \
966 CONFIG_NET_9P \
967 CONFIG_NET_9P_DEBUG=n \
968 CONFIG_NET_9P_VIRTIO
969 FILES:= \
970 $(LINUX_DIR)/net/9p/9pnet.ko \
971 $(LINUX_DIR)/net/9p/9pnet_virtio.ko
972 AUTOLOAD:=$(call AutoLoad,29,9pnet 9pnet_virtio)
973 endef
974
975 define KernelPackage/9pnet/description
976 Kernel support support for
977 Plan 9 resource sharing via the 9P2000 protocol.
978 endef
979
980 $(eval $(call KernelPackage,9pnet))
981
982
983 define KernelPackage/nlmon
984 SUBMENU:=$(NETWORK_SUPPORT_MENU)
985 TITLE:=Virtual netlink monitoring device
986 KCONFIG:=CONFIG_NLMON
987 FILES:=$(LINUX_DIR)/drivers/net/nlmon.ko
988 AUTOLOAD:=$(call AutoProbe,nlmon)
989 endef
990
991 define KernelPackage/nlmon/description
992 Kernel module which adds a monitoring device for netlink.
993 endef
994
995 $(eval $(call KernelPackage,nlmon))
996
997
998 define KernelPackage/mdio
999 SUBMENU:=$(NETWORK_SUPPORT_MENU)
1000 TITLE:=MDIO (clause 45) PHY support
1001 KCONFIG:=CONFIG_MDIO
1002 HIDDEN:=1
1003 FILES:=$(LINUX_DIR)/drivers/net/mdio.ko
1004 AUTOLOAD:=$(call AutoLoad,32,mdio)
1005 endef
1006
1007 define KernelPackage/mdio/description
1008 Kernel modules for MDIO (clause 45) PHY support
1009 endef
1010
1011 $(eval $(call KernelPackage,mdio))
1012
1013 define KernelPackage/macsec
1014 SUBMENU:=$(NETWORK_SUPPORT_MENU)
1015 TITLE:=IEEE 802.1AE MAC-level encryption (MAC)
1016 DEPENDS:=+kmod-crypto-gcm @!LINUX_3_18 @!LINUX_4_1 @!LINUX_4_4
1017 KCONFIG:=CONFIG_MACSEC
1018 FILES:=$(LINUX_DIR)/drivers/net/macsec.ko
1019 AUTOLOAD:=$(call AutoLoad,13,macsec)
1020 endef
1021
1022 define KernelPackage/macsec/description
1023 MACsec is an encryption standard for Ethernet.
1024 endef
1025
1026 $(eval $(call KernelPackage,macsec))