kernel: split slhc into a separate package and make slip depend on it
[openwrt/svn-archive/archive.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/bridge
83 SUBMENU:=$(NETWORK_SUPPORT_MENU)
84 TITLE:=Ethernet bridging support
85 DEPENDS:=+kmod-stp
86 KCONFIG:= \
87 CONFIG_BRIDGE \
88 CONFIG_BRIDGE_IGMP_SNOOPING=y
89 FILES:=$(LINUX_DIR)/net/bridge/bridge.ko
90 AUTOLOAD:=$(call AutoLoad,11,bridge)
91 endef
92
93 define KernelPackage/bridge/description
94 Kernel module for Ethernet bridging.
95 endef
96
97 $(eval $(call KernelPackage,bridge))
98
99 define KernelPackage/llc
100 SUBMENU:=$(NETWORK_SUPPORT_MENU)
101 TITLE:=ANSI/IEEE 802.2 LLC support
102 KCONFIG:=CONFIG_LLC
103 FILES:=$(LINUX_DIR)/net/llc/llc.ko
104 AUTOLOAD:=$(call AutoLoad,09,llc)
105 endef
106
107 define KernelPackage/llc/description
108 Kernel module for ANSI/IEEE 802.2 LLC support.
109 endef
110
111 $(eval $(call KernelPackage,llc))
112
113 define KernelPackage/stp
114 SUBMENU:=$(NETWORK_SUPPORT_MENU)
115 TITLE:=Ethernet Spanning Tree Protocol support
116 DEPENDS:=+kmod-llc
117 KCONFIG:=CONFIG_STP
118 FILES:=$(LINUX_DIR)/net/802/stp.ko
119 AUTOLOAD:=$(call AutoLoad,10,stp)
120 endef
121
122 define KernelPackage/stp/description
123 Kernel module for Ethernet Spanning Tree Protocol support.
124 endef
125
126 $(eval $(call KernelPackage,stp))
127
128 define KernelPackage/8021q
129 SUBMENU:=$(NETWORK_SUPPORT_MENU)
130 TITLE:=802.1Q VLAN support
131 KCONFIG:=CONFIG_VLAN_8021Q \
132 CONFIG_VLAN_8021Q_GVRP=n
133 FILES:=$(LINUX_DIR)/net/8021q/8021q.ko
134 AUTOLOAD:=$(call AutoLoad,12,8021q)
135 endef
136
137 define KernelPackage/8021q/description
138 Kernel module for 802.1Q VLAN support
139 endef
140
141 $(eval $(call KernelPackage,8021q))
142
143
144 define KernelPackage/capi
145 SUBMENU:=$(NETWORK_SUPPORT_MENU)
146 TITLE:=CAPI (ISDN) Support
147 KCONFIG:= \
148 CONFIG_ISDN_CAPI \
149 CONFIG_ISDN_CAPI_CAPI20 \
150 CONFIG_ISDN_CAPIFS \
151 CONFIG_ISDN_CAPI_CAPIFS
152 FILES:= \
153 $(LINUX_DIR)/drivers/isdn/capi/kernelcapi.ko \
154 $(LINUX_DIR)/drivers/isdn/capi/capi.ko
155 AUTOLOAD:=$(call AutoLoad,30,kernelcapi capi)
156 endef
157
158 define KernelPackage/capi/description
159 Kernel module for basic CAPI (ISDN) support
160 endef
161
162 $(eval $(call KernelPackage,capi))
163
164 define KernelPackage/misdn
165 SUBMENU:=$(NETWORK_SUPPORT_MENU)
166 TITLE:=mISDN (ISDN) Support
167 KCONFIG:= \
168 CONFIG_ISDN=y \
169 CONFIG_MISDN \
170 CONFIG_MISDN_DSP \
171 CONFIG_MISDN_L1OIP
172 FILES:= \
173 $(LINUX_DIR)/drivers/isdn/mISDN/mISDN_core.ko \
174 $(LINUX_DIR)/drivers/isdn/mISDN/mISDN_dsp.ko \
175 $(LINUX_DIR)/drivers/isdn/mISDN/l1oip.ko
176 AUTOLOAD:=$(call AutoLoad,30,mISDN_core mISDN_dsp l1oip)
177 endef
178
179 define KernelPackage/misdn/description
180 Modular ISDN driver support
181 endef
182
183 $(eval $(call KernelPackage,misdn))
184
185
186 define KernelPackage/isdn4linux
187 SUBMENU:=$(NETWORK_SUPPORT_MENU)
188 TITLE:=Old ISDN4Linux (deprecated)
189 DEPENDS:=+kmod-ppp
190 KCONFIG:= \
191 CONFIG_ISDN=y \
192 CONFIG_ISDN_I4L \
193 CONFIG_ISDN_PPP=y \
194 CONFIG_ISDN_PPP_VJ=y \
195 CONFIG_ISDN_MPP=y \
196 CONFIG_IPPP_FILTER=y \
197 CONFIG_ISDN_PPP_BSDCOMP \
198 CONFIG_ISDN_CAPI_MIDDLEWARE=y \
199 CONFIG_ISDN_CAPI_CAPIFS_BOOL=y \
200 CONFIG_ISDN_AUDIO=y \
201 CONFIG_ISDN_TTY_FAX=y \
202 CONFIG_ISDN_X25=y \
203 CONFIG_ISDN_DIVERSION
204 FILES:= \
205 $(LINUX_DIR)/drivers/isdn/divert/dss1_divert.ko \
206 $(LINUX_DIR)/drivers/isdn/i4l/isdn.ko \
207 $(LINUX_DIR)/drivers/isdn/i4l/isdn_bsdcomp.ko
208 AUTOLOAD:=$(call AutoLoad,40,isdn isdn_bsdcomp dss1_divert)
209 endef
210
211 define KernelPackage/isdn4linux/description
212 This driver allows you to use an ISDN adapter for networking
213 endef
214
215 $(eval $(call KernelPackage,isdn4linux))
216
217
218 define KernelPackage/ipip
219 SUBMENU:=$(NETWORK_SUPPORT_MENU)
220 TITLE:=IP-in-IP encapsulation
221 DEPENDS:=+kmod-iptunnel +kmod-iptunnel4
222 KCONFIG:=CONFIG_NET_IPIP
223 FILES:=$(LINUX_DIR)/net/ipv4/ipip.ko
224 AUTOLOAD:=$(call AutoLoad,32,ipip)
225 endef
226
227 define KernelPackage/ipip/description
228 Kernel modules for IP-in-IP encapsulation
229 endef
230
231 $(eval $(call KernelPackage,ipip))
232
233
234 IPSEC-m:= \
235 $(if $(CONFIG_LINUX_3_3),,xfrm/xfrm_algo) \
236 xfrm/xfrm_ipcomp \
237 xfrm/xfrm_user \
238 key/af_key \
239
240 define KernelPackage/ipsec
241 SUBMENU:=$(NETWORK_SUPPORT_MENU)
242 TITLE:=IPsec related modules (IPv4 and IPv6)
243 DEPENDS:=+kmod-crypto-authenc +kmod-crypto-iv +kmod-crypto-des +kmod-crypto-hmac +kmod-crypto-md5 +kmod-crypto-sha1 +kmod-crypto-deflate +kmod-crypto-cbc
244 KCONFIG:= \
245 CONFIG_NET_KEY \
246 CONFIG_XFRM_USER \
247 CONFIG_INET_IPCOMP \
248 CONFIG_XFRM_IPCOMP
249 FILES:=$(foreach mod,$(IPSEC-m),$(LINUX_DIR)/net/$(mod).ko)
250 AUTOLOAD:=$(call AutoLoad,30,$(notdir $(IPSEC-m)))
251 endef
252
253 define KernelPackage/ipsec/description
254 Kernel modules for IPsec support in both IPv4 and IPv6.
255 Includes:
256 - af_key
257 - xfrm_ipcomp
258 - xfrm_user
259 endef
260
261 $(eval $(call KernelPackage,ipsec))
262
263
264 IPSEC4-m:= \
265 ipv4/ah4 \
266 ipv4/esp4 \
267 ipv4/xfrm4_mode_beet \
268 ipv4/xfrm4_mode_transport \
269 ipv4/xfrm4_mode_tunnel \
270 ipv4/xfrm4_tunnel \
271 ipv4/ipcomp \
272
273 define KernelPackage/ipsec4
274 SUBMENU:=$(NETWORK_SUPPORT_MENU)
275 TITLE:=IPsec related modules (IPv4)
276 DEPENDS:=kmod-ipsec +kmod-iptunnel4
277 KCONFIG:= \
278 CONFIG_INET_AH \
279 CONFIG_INET_ESP \
280 CONFIG_INET_IPCOMP \
281 CONFIG_INET_XFRM_MODE_BEET \
282 CONFIG_INET_XFRM_MODE_TRANSPORT \
283 CONFIG_INET_XFRM_MODE_TUNNEL \
284 CONFIG_INET_XFRM_TUNNEL
285 FILES:=$(foreach mod,$(IPSEC4-m),$(LINUX_DIR)/net/$(mod).ko)
286 AUTOLOAD:=$(call AutoLoad,32,$(notdir $(IPSEC4-m)))
287 endef
288
289 define KernelPackage/ipsec4/description
290 Kernel modules for IPsec support in IPv4.
291 Includes:
292 - ah4
293 - esp4
294 - ipcomp4
295 - xfrm4_mode_beet
296 - xfrm4_mode_transport
297 - xfrm4_mode_tunnel
298 - xfrm4_tunnel
299 endef
300
301 $(eval $(call KernelPackage,ipsec4))
302
303
304 IPSEC6-m:= \
305 ipv6/ah6 \
306 ipv6/esp6 \
307 ipv6/xfrm6_mode_beet \
308 ipv6/xfrm6_mode_transport \
309 ipv6/xfrm6_mode_tunnel \
310 ipv6/xfrm6_tunnel \
311 ipv6/ipcomp6 \
312
313 define KernelPackage/ipsec6
314 SUBMENU:=$(NETWORK_SUPPORT_MENU)
315 TITLE:=IPsec related modules (IPv6)
316 DEPENDS:=kmod-ipsec +kmod-iptunnel6
317 KCONFIG:= \
318 CONFIG_INET6_AH \
319 CONFIG_INET6_ESP \
320 CONFIG_INET6_IPCOMP \
321 CONFIG_INET6_XFRM_MODE_BEET \
322 CONFIG_INET6_XFRM_MODE_TRANSPORT \
323 CONFIG_INET6_XFRM_MODE_TUNNEL \
324 CONFIG_INET6_XFRM_TUNNEL
325 FILES:=$(foreach mod,$(IPSEC6-m),$(LINUX_DIR)/net/$(mod).ko)
326 AUTOLOAD:=$(call AutoLoad,32,$(notdir $(IPSEC6-m)))
327 endef
328
329 define KernelPackage/ipsec6/description
330 Kernel modules for IPsec support in IPv6.
331 Includes:
332 - ah6
333 - esp6
334 - ipcomp6
335 - xfrm6_mode_beet
336 - xfrm6_mode_transport
337 - xfrm6_mode_tunnel
338 - xfrm6_tunnel
339 endef
340
341 $(eval $(call KernelPackage,ipsec6))
342
343
344 define KernelPackage/iptunnel
345 SUBMENU:=$(NETWORK_SUPPORT_MENU)
346 TITLE:=IP tunnel support
347 HIDDEN:=1
348 KCONFIG:= \
349 CONFIG_NET_IP_TUNNEL
350 FILES:=$(LINUX_DIR)/net/ipv4/ip_tunnel.ko
351 AUTOLOAD:=$(call AutoLoad,31,ip_tunnel)
352 endef
353
354 define KernelPackage/iptunnel/description
355 Kernel module for generic IP tunnel support
356 endef
357
358 $(eval $(call KernelPackage,iptunnel))
359
360
361 define KernelPackage/iptunnel4
362 SUBMENU:=$(NETWORK_SUPPORT_MENU)
363 TITLE:=IPv4 tunneling
364 HIDDEN:=1
365 KCONFIG:= \
366 CONFIG_INET_TUNNEL
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:= +kmod-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/ipv6
396 SUBMENU:=$(NETWORK_SUPPORT_MENU)
397 TITLE:=IPv6 support
398 KCONFIG:= \
399 CONFIG_IPV6 \
400 CONFIG_IPV6_PRIVACY=y \
401 CONFIG_IPV6_MULTIPLE_TABLES=y \
402 CONFIG_IPV6_MROUTE=y \
403 CONFIG_IPV6_PIMSM_V2=n \
404 CONFIG_IPV6_SUBTREES=y
405 FILES:=$(LINUX_DIR)/net/ipv6/ipv6.ko
406 AUTOLOAD:=$(call AutoLoad,20,ipv6)
407 endef
408
409 define KernelPackage/ipv6/description
410 Kernel modules for IPv6 support
411 endef
412
413 $(eval $(call KernelPackage,ipv6))
414
415
416 define KernelPackage/sit
417 SUBMENU:=$(NETWORK_SUPPORT_MENU)
418 DEPENDS:=+kmod-ipv6 +kmod-iptunnel +kmod-iptunnel4
419 TITLE:=IPv6-in-IPv4 tunnel
420 KCONFIG:=CONFIG_IPV6_SIT \
421 CONFIG_IPV6_SIT_6RD=y
422 FILES:=$(LINUX_DIR)/net/ipv6/sit.ko
423 AUTOLOAD:=$(call AutoLoad,32,sit)
424 endef
425
426 define KernelPackage/sit/description
427 Kernel modules for IPv6-in-IPv4 tunnelling
428 endef
429
430 $(eval $(call KernelPackage,sit))
431
432
433 define KernelPackage/ip6-tunnel
434 SUBMENU:=$(NETWORK_SUPPORT_MENU)
435 TITLE:=IP-in-IPv6 tunnelling
436 DEPENDS:= +kmod-ipv6 +kmod-iptunnel6
437 KCONFIG:= CONFIG_IPV6_TUNNEL
438 FILES:=$(LINUX_DIR)/net/ipv6/ip6_tunnel.ko
439 AUTOLOAD:=$(call AutoLoad,32,ip6_tunnel)
440 endef
441
442 define KernelPackage/ip6-tunnel/description
443 Kernel modules for IPv6-in-IPv6 and IPv4-in-IPv6 tunnelling
444 endef
445
446 $(eval $(call KernelPackage,ip6-tunnel))
447
448
449 define KernelPackage/gre
450 SUBMENU:=$(NETWORK_SUPPORT_MENU)
451 TITLE:=GRE support
452 DEPENDS:=+PACKAGE_kmod-ipv6:kmod-ipv6 +kmod-iptunnel
453 KCONFIG:=CONFIG_NET_IPGRE CONFIG_NET_IPGRE_DEMUX
454 FILES:=$(LINUX_DIR)/net/ipv4/ip_gre.ko $(LINUX_DIR)/net/ipv4/gre.ko
455 AUTOLOAD:=$(call AutoLoad,39,gre ip_gre)
456 endef
457
458 define KernelPackage/gre/description
459 Generic Routing Encapsulation support
460 endef
461
462 $(eval $(call KernelPackage,gre))
463
464
465 define KernelPackage/gre6
466 SUBMENU:=$(NETWORK_SUPPORT_MENU)
467 TITLE:=GRE support over IPV6
468 DEPENDS:=+kmod-ipv6 +kmod-iptunnel +kmod-ip6-tunnel @!LINUX_3_3 @!LINUX_3_6
469 KCONFIG:=CONFIG_IPV6_GRE
470 FILES:=$(LINUX_DIR)/net/ipv6/ip6_gre.ko
471 AUTOLOAD:=$(call AutoLoad,39,ip6_gre)
472 endef
473
474 define KernelPackage/gre6/description
475 Generic Routing Encapsulation support over IPv6
476 endef
477
478 $(eval $(call KernelPackage,gre6))
479
480
481 define KernelPackage/tun
482 SUBMENU:=$(NETWORK_SUPPORT_MENU)
483 TITLE:=Universal TUN/TAP driver
484 KCONFIG:=CONFIG_TUN
485 FILES:=$(LINUX_DIR)/drivers/net/tun.ko
486 AUTOLOAD:=$(call AutoLoad,30,tun)
487 endef
488
489 define KernelPackage/tun/description
490 Kernel support for the TUN/TAP tunneling device
491 endef
492
493 $(eval $(call KernelPackage,tun))
494
495
496 define KernelPackage/veth
497 SUBMENU:=$(NETWORK_SUPPORT_MENU)
498 TITLE:=Virtual ethernet pair device
499 KCONFIG:=CONFIG_VETH
500 FILES:=$(LINUX_DIR)/drivers/net/veth.ko
501 AUTOLOAD:=$(call AutoLoad,30,veth)
502 endef
503
504 define KernelPackage/veth/description
505 This device is a local ethernet tunnel. Devices are created in pairs.
506 When one end receives the packet it appears on its pair and vice
507 versa.
508 endef
509
510 $(eval $(call KernelPackage,veth))
511
512
513 define KernelPackage/slhc
514 SUBMENU:=$(NETWORK_SUPPORT_MENU)
515 HIDDEN:=1
516 TITLE:=Serial Line Header Compression
517 DEPENDS:=+kmod-lib-crc-ccitt
518 KCONFIG:=CONFIG_SLHC
519 FILES:=$(LINUX_DIR)/drivers/net/slip/slhc.ko
520 AUTOLOAD:=$(call AutoLoad,29,slhc)
521 endef
522
523 $(eval $(call KernelPackage,slhc))
524
525
526 define KernelPackage/ppp
527 SUBMENU:=$(NETWORK_SUPPORT_MENU)
528 TITLE:=PPP modules
529 DEPENDS:=+kmod-lib-crc-ccitt +kmod-slhc
530 KCONFIG:= \
531 CONFIG_PPP \
532 CONFIG_PPP_ASYNC
533 FILES:= \
534 $(LINUX_DIR)/drivers/net/ppp/ppp_async.ko \
535 $(LINUX_DIR)/drivers/net/ppp/ppp_generic.ko
536 AUTOLOAD:=$(call AutoLoad,30,ppp_generic ppp_async)
537 endef
538
539 define KernelPackage/ppp/description
540 Kernel modules for PPP support
541 endef
542
543 $(eval $(call KernelPackage,ppp))
544
545
546 define KernelPackage/ppp-synctty
547 SUBMENU:=$(NETWORK_SUPPORT_MENU)
548 TITLE:=PPP sync tty support
549 DEPENDS:=kmod-ppp
550 KCONFIG:=CONFIG_PPP_SYNC_TTY
551 FILES:=$(LINUX_DIR)/drivers/net/ppp/ppp_synctty.ko
552 AUTOLOAD:=$(call AutoLoad,40,ppp_synctty)
553 endef
554
555 define KernelPackage/ppp-synctty/description
556 Kernel modules for PPP sync tty support
557 endef
558
559 $(eval $(call KernelPackage,ppp-synctty))
560
561
562 define KernelPackage/pppox
563 SUBMENU:=$(NETWORK_SUPPORT_MENU)
564 TITLE:=PPPoX helper
565 DEPENDS:=kmod-ppp
566 KCONFIG:=CONFIG_PPPOE
567 FILES:=$(LINUX_DIR)/drivers/net/ppp/pppox.ko
568 AUTOLOAD:=$(call AutoLoad,40,pppox)
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 AutoLoad,41,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 AutoLoad,41,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 AutoLoad,41,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 AutoLoad,40,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-core +kmod-crypto-arc4 +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 AutoLoad,31,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 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_esfq
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_INGRESS \
686 CONFIG_NET_SCH_FQ_CODEL \
687 CONFIG_NET_CLS=y \
688 CONFIG_NET_CLS_ACT=y \
689 CONFIG_NET_CLS_FLOW \
690 CONFIG_NET_CLS_FW \
691 CONFIG_NET_CLS_ROUTE4 \
692 CONFIG_NET_CLS_TCINDEX \
693 CONFIG_NET_CLS_U32 \
694 CONFIG_NET_ACT_MIRRED \
695 CONFIG_NET_ACT_SKBEDIT \
696 CONFIG_NET_EMATCH=y \
697 CONFIG_NET_EMATCH_U32
698 FILES:=$(SCHED_FILES)
699 AUTOLOAD:=$(call AutoLoad,70, $(SCHED_MODULES_CORE))
700 endef
701
702 define KernelPackage/sched-core/description
703 Core kernel scheduler support for IP traffic
704 endef
705
706 $(eval $(call KernelPackage,sched-core))
707
708
709 define KernelPackage/sched-connmark
710 SUBMENU:=$(NETWORK_SUPPORT_MENU)
711 TITLE:=Traffic shaper conntrack mark support
712 DEPENDS:=+kmod-sched-core +kmod-ipt-core +kmod-ipt-conntrack-extra
713 KCONFIG:=CONFIG_NET_ACT_CONNMARK
714 FILES:=$(LINUX_DIR)/net/sched/act_connmark.ko
715 AUTOLOAD:=$(call AutoLoad,71, act_connmark)
716 endef
717 $(eval $(call KernelPackage,sched-connmark))
718
719 define KernelPackage/sched-esfq
720 SUBMENU:=$(NETWORK_SUPPORT_MENU)
721 TITLE:=Traffic shaper ESFQ support
722 DEPENDS:=+kmod-sched-core +kmod-ipt-core +kmod-ipt-conntrack
723 KCONFIG:= \
724 CONFIG_NET_SCH_ESFQ \
725 CONFIG_NET_SCH_ESFQ_NFCT=y
726 FILES:=$(LINUX_DIR)/net/sched/sch_esfq.ko
727 AUTOLOAD:=$(call AutoLoad,72, sch_esfq)
728 endef
729 $(eval $(call KernelPackage,sched-esfq))
730
731 define KernelPackage/sched
732 SUBMENU:=$(NETWORK_SUPPORT_MENU)
733 TITLE:=Extra traffic schedulers
734 DEPENDS:=+kmod-sched-core +kmod-ipt-core
735 KCONFIG:= \
736 CONFIG_NET_SCH_CODEL \
737 CONFIG_NET_SCH_DSMARK \
738 CONFIG_NET_SCH_HTB \
739 CONFIG_NET_SCH_FIFO \
740 CONFIG_NET_SCH_GRED \
741 CONFIG_NET_SCH_PRIO \
742 CONFIG_NET_SCH_RED \
743 CONFIG_NET_SCH_TBF \
744 CONFIG_NET_SCH_SFQ \
745 CONFIG_NET_SCH_TEQL \
746 CONFIG_NET_CLS_BASIC \
747 CONFIG_NET_ACT_POLICE \
748 CONFIG_NET_ACT_IPT \
749 CONFIG_NET_EMATCH_CMP \
750 CONFIG_NET_EMATCH_NBYTE \
751 CONFIG_NET_EMATCH_META \
752 CONFIG_NET_EMATCH_TEXT
753 FILES:=$(SCHED_FILES_EXTRA)
754 AUTOLOAD:=$(call AutoLoad,73, $(SCHED_MODULES_EXTRA))
755 endef
756
757 define KernelPackage/sched/description
758 Extra kernel schedulers modules for IP traffic
759 endef
760
761 $(eval $(call KernelPackage,sched))
762
763
764 define KernelPackage/ax25
765 SUBMENU:=$(NETWORK_SUPPORT_MENU)
766 TITLE:=AX25 support
767 KCONFIG:= \
768 CONFIG_AX25 \
769 CONFIG_MKISS
770 FILES:= \
771 $(LINUX_DIR)/net/ax25/ax25.ko \
772 $(LINUX_DIR)/drivers/net/hamradio/mkiss.ko
773 AUTOLOAD:=$(call AutoLoad,80,ax25 mkiss)
774 $(call AddDepends/crc16)
775 endef
776
777 define KernelPackage/ax25/description
778 Kernel modules for AX25 support
779 endef
780
781 $(eval $(call KernelPackage,ax25))
782
783
784 define KernelPackage/mp-alg
785 SUBMENU:=$(NETWORK_SUPPORT_MENU)
786 TITLE:=ECMP caching algorithms
787 KCONFIG:= \
788 CONFIG_IP_ROUTE_MULTIPATH_RR \
789 CONFIG_IP_ROUTE_MULTIPATH_RANDOM \
790 CONFIG_IP_ROUTE_MULTIPATH_WRANDOM \
791 CONFIG_IP_ROUTE_MULTIPATH_DRR
792 FILES:= \
793 $(LINUX_DIR)/net/ipv4/multipath_rr.ko \
794 $(LINUX_DIR)/net/ipv4/multipath_random.ko \
795 $(LINUX_DIR)/net/ipv4/multipath_wrandom.ko \
796 $(LINUX_DIR)/net/ipv4/multipath_drr.ko
797 AUTOLOAD:=$(call AutoLoad,35,multipath_rr multipath_random multipath_wrandom multipath_drr)
798 endef
799
800 define KernelPackage/mp-alg/description
801 Kernel modules that provide several different algorithms for multipath
802 route selection from the route cache. The iproute "mpath" argument allows
803 specifying which algorithm to use for routes.
804 quagga (at least <=0.99.6) requires a multipath patch to support this
805 cached mp route feature.
806 endef
807
808 $(eval $(call KernelPackage,mp-alg))
809
810
811 define KernelPackage/pktgen
812 SUBMENU:=$(NETWORK_SUPPORT_MENU)
813 DEPENDS:=@!TARGET_uml
814 TITLE:=Network packet generator
815 KCONFIG:=CONFIG_NET_PKTGEN
816 FILES:=$(LINUX_DIR)/net/core/pktgen.ko
817 AUTOLOAD:=$(call AutoLoad,99,pktgen)
818 endef
819
820 define KernelPackage/pktgen/description
821 Kernel modules for the Network Packet Generator
822 endef
823
824 $(eval $(call KernelPackage,pktgen))
825
826 define KernelPackage/l2tp
827 SUBMENU:=$(NETWORK_SUPPORT_MENU)
828 TITLE:=Layer Two Tunneling Protocol (L2TP)
829 DEPENDS:=+IPV6:kmod-ipv6
830 KCONFIG:=CONFIG_L2TP \
831 CONFIG_L2TP_V3=y \
832 CONFIG_L2TP_DEBUGFS=n
833 FILES:=$(LINUX_DIR)/net/l2tp/l2tp_core.ko \
834 $(LINUX_DIR)/net/l2tp/l2tp_netlink.ko
835 AUTOLOAD:=$(call AutoLoad,32,l2tp_core l2tp_netlink)
836 endef
837
838 define KernelPackage/l2tp/description
839 Kernel modules for L2TP V3 Support
840 endef
841
842 $(eval $(call KernelPackage,l2tp))
843
844
845 define KernelPackage/l2tp-eth
846 SUBMENU:=$(NETWORK_SUPPORT_MENU)
847 TITLE:=L2TP ethernet pseudowire support for L2TPv3
848 DEPENDS:=+kmod-l2tp
849 KCONFIG:=CONFIG_L2TP_ETH
850 FILES:=$(LINUX_DIR)/net/l2tp/l2tp_eth.ko
851 AUTOLOAD:=$(call AutoLoad,33,l2tp_eth)
852 endef
853
854 define KernelPackage/l2tp-eth/description
855 Kernel modules for L2TP ethernet pseudowire support for L2TPv3
856 endef
857
858 $(eval $(call KernelPackage,l2tp-eth))
859
860 define KernelPackage/l2tp-ip
861 SUBMENU:=$(NETWORK_SUPPORT_MENU)
862 TITLE:=L2TP IP encapsulation for L2TPv3
863 DEPENDS:=+kmod-l2tp
864 KCONFIG:=CONFIG_L2TP_IP
865 FILES:=$(LINUX_DIR)/net/l2tp/l2tp_ip.ko
866 AUTOLOAD:=$(call AutoLoad,33,l2tp_ip)
867 endef
868
869 define KernelPackage/l2tp-ip/description
870 Kernel modules for L2TP IP encapsulation for L2TPv3
871 endef
872
873 $(eval $(call KernelPackage,l2tp-ip))
874
875
876 define KernelPackage/sctp
877 SUBMENU:=$(NETWORK_SUPPORT_MENU)
878 TITLE:=SCTP protocol kernel support
879 KCONFIG:=\
880 CONFIG_IP_SCTP \
881 CONFIG_SCTP_DBG_MSG=n \
882 CONFIG_SCTP_DBG_OBJCNT=n \
883 CONFIG_SCTP_HMAC_NONE=n \
884 CONFIG_SCTP_HMAC_SHA1=n \
885 CONFIG_SCTP_HMAC_MD5=y \
886 CONFIG_SCTP_COOKIE_HMAC_SHA1=n \
887 CONFIG_SCTP_COOKIE_HMAC_MD5=y \
888 CONFIG_SCTP_DEFAULT_COOKIE_HMAC_NONE=n \
889 CONFIG_SCTP_DEFAULT_COOKIE_HMAC_SHA1=n \
890 CONFIG_SCTP_DEFAULT_COOKIE_HMAC_MD5=y
891 FILES:= $(LINUX_DIR)/net/sctp/sctp.ko
892 AUTOLOAD:= $(call AutoLoad,32,sctp)
893 DEPENDS:=+kmod-lib-crc32c +kmod-crypto-md5 +kmod-crypto-hmac +IPV6:kmod-ipv6
894 endef
895
896 define KernelPackage/sctp/description
897 Kernel modules for SCTP protocol support
898 endef
899
900 $(eval $(call KernelPackage,sctp))
901
902
903 define KernelPackage/netem
904 SUBMENU:=$(NETWORK_SUPPORT_MENU)
905 TITLE:=Network emulation functionality
906 DEPENDS:=+kmod-sched
907 KCONFIG:=CONFIG_NET_SCH_NETEM
908 FILES:=$(LINUX_DIR)/net/sched/sch_netem.ko
909 AUTOLOAD:=$(call AutoLoad,99,netem)
910 endef
911
912 define KernelPackage/netem/description
913 Kernel modules for emulating the properties of wide area networks
914 endef
915
916 $(eval $(call KernelPackage,netem))
917
918 define KernelPackage/slip
919 SUBMENU:=$(NETWORK_SUPPORT_MENU)
920 DEPENDS:=+kmod-slhc
921 TITLE:=SLIP modules
922 KCONFIG:= \
923 CONFIG_SLIP \
924 CONFIG_SLIP_COMPRESSED=y \
925 CONFIG_SLIP_SMART=y \
926 CONFIG_SLIP_MODE_SLIP6=y
927
928 FILES:= \
929 $(LINUX_DIR)/drivers/net/slip/slip.ko
930 AUTOLOAD:=$(call AutoLoad,30,slip)
931 endef
932
933 define KernelPackage/slip/description
934 Kernel modules for SLIP support
935 endef
936
937 $(eval $(call KernelPackage,slip))
938