656be4a0f10ee30ea1cd937a35f7e66894d613ea
[openwrt/svn-archive/archive.git] / package / kernel / 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 KCONFIG:= \
190 CONFIG_ISDN=y \
191 CONFIG_ISDN_I4L \
192 CONFIG_ISDN_PPP=y \
193 CONFIG_ISDN_PPP_VJ=y \
194 CONFIG_ISDN_MPP=y \
195 CONFIG_IPPP_FILTER=y \
196 CONFIG_ISDN_PPP_BSDCOMP \
197 CONFIG_ISDN_CAPI_MIDDLEWARE=y \
198 CONFIG_ISDN_CAPI_CAPIFS_BOOL=y \
199 CONFIG_ISDN_AUDIO=y \
200 CONFIG_ISDN_TTY_FAX=y \
201 CONFIG_ISDN_X25=y \
202 CONFIG_ISDN_DIVERSION
203 FILES:= \
204 $(LINUX_DIR)/drivers/isdn/divert/dss1_divert.ko \
205 $(LINUX_DIR)/drivers/isdn/i4l/isdn.ko \
206 $(LINUX_DIR)/drivers/isdn/i4l/isdn_bsdcomp.ko
207 AUTOLOAD:=$(call AutoLoad,40,isdn isdn_bsdcomp dss1_divert)
208 endef
209
210 define KernelPackage/isdn4linux/description
211 This driver allows you to use an ISDN adapter for networking
212 endef
213
214 $(eval $(call KernelPackage,isdn4linux))
215
216
217 define KernelPackage/ipip
218 SUBMENU:=$(NETWORK_SUPPORT_MENU)
219 TITLE:=IP-in-IP encapsulation
220 DEPENDS:=+kmod-iptunnel4
221 KCONFIG:=CONFIG_NET_IPIP
222 FILES:=$(LINUX_DIR)/net/ipv4/ipip.ko
223 AUTOLOAD:=$(call AutoLoad,32,ipip)
224 endef
225
226 define KernelPackage/ipip/description
227 Kernel modules for IP-in-IP encapsulation
228 endef
229
230 $(eval $(call KernelPackage,ipip))
231
232
233 IPSEC-m:= \
234 key/af_key \
235 xfrm/xfrm_ipcomp \
236 xfrm/xfrm_user \
237
238 define KernelPackage/ipsec
239 SUBMENU:=$(NETWORK_SUPPORT_MENU)
240 TITLE:=IPsec related modules (IPv4 and IPv6)
241 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
242 KCONFIG:= \
243 CONFIG_NET_KEY \
244 CONFIG_XFRM_USER \
245 CONFIG_INET_IPCOMP \
246 CONFIG_XFRM_IPCOMP
247 FILES:=$(foreach mod,$(IPSEC-m),$(LINUX_DIR)/net/$(mod).ko)
248 AUTOLOAD:=$(call AutoLoad,30,$(notdir $(IPSEC-m)))
249 endef
250
251 define KernelPackage/ipsec/description
252 Kernel modules for IPsec support in both IPv4 and IPv6.
253 Includes:
254 - af_key
255 - xfrm_ipcomp
256 - xfrm_user
257 endef
258
259 $(eval $(call KernelPackage,ipsec))
260
261
262 IPSEC4-m:= \
263 ipv4/ah4 \
264 ipv4/esp4 \
265 ipv4/xfrm4_mode_beet \
266 ipv4/xfrm4_mode_transport \
267 ipv4/xfrm4_mode_tunnel \
268 ipv4/xfrm4_tunnel \
269 ipv4/ipcomp \
270
271 define KernelPackage/ipsec4
272 SUBMENU:=$(NETWORK_SUPPORT_MENU)
273 TITLE:=IPsec related modules (IPv4)
274 DEPENDS:=kmod-ipsec +kmod-iptunnel4
275 KCONFIG:= \
276 CONFIG_INET_AH \
277 CONFIG_INET_ESP \
278 CONFIG_INET_IPCOMP \
279 CONFIG_INET_XFRM_MODE_BEET \
280 CONFIG_INET_XFRM_MODE_TRANSPORT \
281 CONFIG_INET_XFRM_MODE_TUNNEL \
282 CONFIG_INET_XFRM_TUNNEL
283 FILES:=$(foreach mod,$(IPSEC4-m),$(LINUX_DIR)/net/$(mod).ko)
284 AUTOLOAD:=$(call AutoLoad,32,$(notdir $(IPSEC4-m)))
285 endef
286
287 define KernelPackage/ipsec4/description
288 Kernel modules for IPsec support in IPv4.
289 Includes:
290 - ah4
291 - esp4
292 - ipcomp
293 - xfrm4_mode_beet
294 - xfrm4_mode_transport
295 - xfrm4_mode_tunnel
296 - xfrm4_tunnel
297 endef
298
299 $(eval $(call KernelPackage,ipsec4))
300
301
302 IPSEC6-m:= \
303 ipv6/ah6 \
304 ipv6/esp6 \
305 ipv6/xfrm6_mode_beet \
306 ipv6/xfrm6_mode_transport \
307 ipv6/xfrm6_mode_tunnel \
308 ipv6/xfrm6_tunnel \
309 ipv6/ipcomp6 \
310
311 define KernelPackage/ipsec6
312 SUBMENU:=$(NETWORK_SUPPORT_MENU)
313 TITLE:=IPsec related modules (IPv6)
314 DEPENDS:=kmod-ipsec +kmod-iptunnel6
315 KCONFIG:= \
316 CONFIG_INET6_AH \
317 CONFIG_INET6_ESP \
318 CONFIG_INET6_IPCOMP \
319 CONFIG_INET6_XFRM_MODE_BEET \
320 CONFIG_INET6_XFRM_MODE_TRANSPORT \
321 CONFIG_INET6_XFRM_MODE_TUNNEL \
322 CONFIG_INET6_XFRM_TUNNEL
323 FILES:=$(foreach mod,$(IPSEC6-m),$(LINUX_DIR)/net/$(mod).ko)
324 AUTOLOAD:=$(call AutoLoad,32,$(notdir $(IPSEC6-m)))
325 endef
326
327 define KernelPackage/ipsec6/description
328 Kernel modules for IPsec support in IPv6.
329 Includes:
330 - ah6
331 - esp6
332 - ipcomp6
333 - xfrm6_mode_beet
334 - xfrm6_mode_transport
335 - xfrm6_mode_tunnel
336 - xfrm6_tunnel
337 endef
338
339 $(eval $(call KernelPackage,ipsec6))
340
341
342 # NOTE: tunnel4 is not selectable by itself, so enable ipip for that
343 define KernelPackage/iptunnel4
344 SUBMENU:=$(NETWORK_SUPPORT_MENU)
345 TITLE:=IPv4 tunneling
346 KCONFIG:= \
347 CONFIG_NET_IPIP \
348 CONFIG_INET_TUNNEL
349 FILES:=$(LINUX_DIR)/net/ipv4/tunnel4.ko
350 AUTOLOAD:=$(call AutoLoad,31,tunnel4)
351 endef
352
353 define KernelPackage/iptunnel4/description
354 Kernel modules for IPv4 tunneling
355 endef
356
357 $(eval $(call KernelPackage,iptunnel4))
358
359
360 define KernelPackage/iptunnel6
361 SUBMENU:=$(NETWORK_SUPPORT_MENU)
362 TITLE:=IPv6 tunneling
363 DEPENDS:= +kmod-ipv6
364 KCONFIG:= \
365 CONFIG_INET6_TUNNEL
366 FILES:=$(LINUX_DIR)/net/ipv6/tunnel6.ko
367 AUTOLOAD:=$(call AutoLoad,31,tunnel6)
368 endef
369
370 define KernelPackage/iptunnel6/description
371 Kernel modules for IPv6 tunneling
372 endef
373
374 $(eval $(call KernelPackage,iptunnel6))
375
376
377 define KernelPackage/ipv6
378 SUBMENU:=$(NETWORK_SUPPORT_MENU)
379 TITLE:=IPv6 support
380 KCONFIG:= \
381 CONFIG_IPV6 \
382 CONFIG_IPV6_PRIVACY=y \
383 CONFIG_IPV6_MULTIPLE_TABLES=y \
384 CONFIG_IPV6_MROUTE=y \
385 CONFIG_IPV6_PIMSM_V2=n \
386 CONFIG_IPV6_SUBTREES=y
387 FILES:=$(LINUX_DIR)/net/ipv6/ipv6.ko
388 AUTOLOAD:=$(call AutoLoad,20,ipv6)
389 endef
390
391 define KernelPackage/ipv6/description
392 Kernel modules for IPv6 support
393 endef
394
395 $(eval $(call KernelPackage,ipv6))
396
397
398 define KernelPackage/sit
399 SUBMENU:=$(NETWORK_SUPPORT_MENU)
400 DEPENDS:=+kmod-ipv6 +kmod-iptunnel4
401 TITLE:=IPv6-in-IPv4 tunnel
402 KCONFIG:=CONFIG_IPV6_SIT \
403 CONFIG_IPV6_SIT_6RD=y
404 FILES:=$(LINUX_DIR)/net/ipv6/sit.ko
405 AUTOLOAD:=$(call AutoLoad,32,sit)
406 endef
407
408 define KernelPackage/sit/description
409 Kernel modules for IPv6-in-IPv4 tunnelling
410 endef
411
412 $(eval $(call KernelPackage,sit))
413
414
415 define KernelPackage/ip6-tunnel
416 SUBMENU:=$(NETWORK_SUPPORT_MENU)
417 TITLE:=IP-in-IPv6 tunnelling
418 DEPENDS:= +kmod-ipv6 +kmod-iptunnel6
419 KCONFIG:= CONFIG_IPV6_TUNNEL
420 FILES:=$(LINUX_DIR)/net/ipv6/ip6_tunnel.ko
421 AUTOLOAD:=$(call AutoLoad,32,ip6_tunnel)
422 endef
423
424 define KernelPackage/ip6-tunnel/description
425 Kernel modules for IPv6-in-IPv6 and IPv4-in-IPv6 tunnelling
426 endef
427
428 $(eval $(call KernelPackage,ip6-tunnel))
429
430
431 define KernelPackage/gre
432 SUBMENU:=$(NETWORK_SUPPORT_MENU)
433 TITLE:=GRE support
434 DEPENDS:=+PACKAGE_kmod-ipv6:kmod-ipv6
435 KCONFIG:=CONFIG_NET_IPGRE CONFIG_NET_IPGRE_DEMUX
436 FILES:=$(LINUX_DIR)/net/ipv4/ip_gre.ko $(LINUX_DIR)/net/ipv4/gre.ko
437 AUTOLOAD:=$(call AutoLoad,39,gre ip_gre)
438 endef
439
440 define KernelPackage/gre/description
441 Generic Routing Encapsulation support
442 endef
443
444 $(eval $(call KernelPackage,gre))
445
446
447 define KernelPackage/tun
448 SUBMENU:=$(NETWORK_SUPPORT_MENU)
449 TITLE:=Universal TUN/TAP driver
450 KCONFIG:=CONFIG_TUN
451 FILES:=$(LINUX_DIR)/drivers/net/tun.ko
452 AUTOLOAD:=$(call AutoLoad,30,tun)
453 endef
454
455 define KernelPackage/tun/description
456 Kernel support for the TUN/TAP tunneling device
457 endef
458
459 $(eval $(call KernelPackage,tun))
460
461
462 define KernelPackage/ppp
463 SUBMENU:=$(NETWORK_SUPPORT_MENU)
464 TITLE:=PPP modules
465 DEPENDS:=+kmod-lib-crc-ccitt
466 KCONFIG:= \
467 CONFIG_PPP \
468 CONFIG_PPP_ASYNC \
469 CONFIG_SLHC
470 ifndef CONFIG_LINUX_3_1
471 FILES:= \
472 $(LINUX_DIR)/drivers/net/ppp/ppp_async.ko \
473 $(LINUX_DIR)/drivers/net/ppp/ppp_generic.ko \
474 $(LINUX_DIR)/drivers/net/slip/slhc.ko
475 else
476 FILES:= \
477 $(LINUX_DIR)/drivers/net/ppp_async.ko \
478 $(LINUX_DIR)/drivers/net/ppp_generic.ko \
479 $(LINUX_DIR)/drivers/net/slhc.ko
480 endif
481 AUTOLOAD:=$(call AutoLoad,30,slhc ppp_generic ppp_async)
482 endef
483
484 define KernelPackage/ppp/description
485 Kernel modules for PPP support
486 endef
487
488 $(eval $(call KernelPackage,ppp))
489
490
491 define KernelPackage/ppp-synctty
492 SUBMENU:=$(NETWORK_SUPPORT_MENU)
493 TITLE:=PPP sync tty support
494 DEPENDS:=kmod-ppp
495 KCONFIG:=CONFIG_PPP_SYNC_TTY
496 ifndef CONFIG_LINUX_3_1
497 FILES:=$(LINUX_DIR)/drivers/net/ppp/ppp_synctty.ko
498 else
499 FILES:=$(LINUX_DIR)/drivers/net/ppp_synctty.ko
500 endif
501 AUTOLOAD:=$(call AutoLoad,40,ppp_synctty)
502 endef
503
504 define KernelPackage/ppp-synctty/description
505 Kernel modules for PPP sync tty support
506 endef
507
508 $(eval $(call KernelPackage,ppp-synctty))
509
510
511 define KernelPackage/pppoe
512 SUBMENU:=$(NETWORK_SUPPORT_MENU)
513 TITLE:=PPPoE support
514 DEPENDS:=kmod-ppp
515 KCONFIG:=CONFIG_PPPOE
516 ifndef CONFIG_LINUX_3_1
517 FILES:= \
518 $(LINUX_DIR)/drivers/net/ppp/pppoe.ko \
519 $(LINUX_DIR)/drivers/net/ppp/pppox.ko
520 else
521 FILES:= \
522 $(LINUX_DIR)/drivers/net/pppoe.ko \
523 $(LINUX_DIR)/drivers/net/pppox.ko
524 endif
525 AUTOLOAD:=$(call AutoLoad,40,pppox pppoe)
526 endef
527
528 define KernelPackage/pppoe/description
529 Kernel modules for PPPoE (PPP over Ethernet) support
530 endef
531
532 $(eval $(call KernelPackage,pppoe))
533
534
535 define KernelPackage/pppoa
536 SUBMENU:=$(NETWORK_SUPPORT_MENU)
537 TITLE:=PPPoA support
538 DEPENDS:=kmod-ppp +kmod-atm
539 KCONFIG:=CONFIG_PPPOATM CONFIG_ATM_DRIVERS=y
540 FILES:=$(LINUX_DIR)/net/atm/pppoatm.ko
541 AUTOLOAD:=$(call AutoLoad,40,pppoatm)
542 endef
543
544 define KernelPackage/pppoa/description
545 Kernel modules for PPPoA (PPP over ATM) support
546 endef
547
548 $(eval $(call KernelPackage,pppoa))
549
550
551 define KernelPackage/pptp
552 SUBMENU:=$(NETWORK_SUPPORT_MENU)
553 TITLE:=PPtP support
554 DEPENDS:=kmod-ppp +kmod-gre
555 KCONFIG:=CONFIG_PPTP
556 ifndef CONFIG_LINUX_3_1
557 FILES:=$(LINUX_DIR)/drivers/net/ppp/pptp.ko
558 else
559 FILES:=$(LINUX_DIR)/drivers/net/pptp.ko
560 endif
561 AUTOLOAD:=$(call AutoLoad,41,pptp)
562 endef
563
564 $(eval $(call KernelPackage,pptp))
565
566
567 define KernelPackage/pppol2tp
568 SUBMENU:=$(NETWORK_SUPPORT_MENU)
569 TITLE:=PPPoL2TP support
570 DEPENDS:=kmod-ppp +kmod-pppoe +kmod-l2tp
571 KCONFIG:=CONFIG_PPPOL2TP
572 FILES:=$(LINUX_DIR)/net/l2tp/l2tp_ppp.ko
573 AUTOLOAD:=$(call AutoLoad,40,l2tp_ppp)
574 endef
575
576 define KernelPackage/pppol2tp/description
577 Kernel modules for PPPoL2TP (PPP over L2TP) support
578 endef
579
580 $(eval $(call KernelPackage,pppol2tp))
581
582
583 define KernelPackage/ipoa
584 SUBMENU:=$(NETWORK_SUPPORT_MENU)
585 TITLE:=IPoA support
586 DEPENDS:=kmod-atm
587 KCONFIG:=CONFIG_ATM_CLIP
588 FILES:=$(LINUX_DIR)/net/atm/clip.ko
589 AUTOLOAD:=$(call AutoLoad,40,clip)
590 endef
591
592 define KernelPackage/ipoa/description
593 Kernel modules for IPoA (IP over ATM) support
594 endef
595
596 $(eval $(call KernelPackage,ipoa))
597
598
599 define KernelPackage/mppe
600 SUBMENU:=$(NETWORK_SUPPORT_MENU)
601 TITLE:=Microsoft PPP compression/encryption
602 DEPENDS:=kmod-ppp +kmod-crypto-core +kmod-crypto-arc4 +kmod-crypto-sha1 +kmod-crypto-ecb
603 KCONFIG:= \
604 CONFIG_PPP_MPPE_MPPC \
605 CONFIG_PPP_MPPE
606 ifndef CONFIG_LINUX_3_1
607 FILES:=$(LINUX_DIR)/drivers/net/ppp/ppp_mppe.ko
608 else
609 FILES:=$(LINUX_DIR)/drivers/net/ppp_mppe.ko
610 endif
611 AUTOLOAD:=$(call AutoLoad,31,ppp_mppe)
612 endef
613
614 define KernelPackage/mppe/description
615 Kernel modules for Microsoft PPP compression/encryption
616 endef
617
618 $(eval $(call KernelPackage,mppe))
619
620
621 SCHED_MODULES = $(patsubst $(LINUX_DIR)/net/sched/%.ko,%,$(wildcard $(LINUX_DIR)/net/sched/*.ko))
622 SCHED_MODULES_CORE = sch_ingress sch_codel sch_fq_codel sch_hfsc cls_fw cls_route cls_flow cls_tcindex cls_u32 em_u32 act_mirred act_skbedit
623 SCHED_MODULES_EXTRA = $(filter-out $(SCHED_MODULES_CORE) act_connmark,$(SCHED_MODULES))
624 SCHED_FILES = $(patsubst %,$(LINUX_DIR)/net/sched/%.ko,$(filter $(SCHED_MODULES_CORE),$(SCHED_MODULES)))
625 SCHED_FILES_EXTRA = $(patsubst %,$(LINUX_DIR)/net/sched/%.ko,$(SCHED_MODULES_EXTRA))
626
627 define KernelPackage/sched-core
628 SUBMENU:=$(NETWORK_SUPPORT_MENU)
629 TITLE:=Traffic schedulers
630 KCONFIG:= \
631 CONFIG_NET_SCHED=y \
632 CONFIG_NET_SCH_HFSC \
633 CONFIG_NET_SCH_INGRESS \
634 CONFIG_NET_SCH_CODEL \
635 CONFIG_NET_SCH_FQ_CODEL \
636 CONFIG_NET_CLS=y \
637 CONFIG_NET_CLS_ACT=y \
638 CONFIG_NET_CLS_FLOW \
639 CONFIG_NET_CLS_FW \
640 CONFIG_NET_CLS_ROUTE4 \
641 CONFIG_NET_CLS_TCINDEX \
642 CONFIG_NET_CLS_U32 \
643 CONFIG_NET_ACT_MIRRED \
644 CONFIG_NET_ACT_SKBEDIT \
645 CONFIG_NET_EMATCH=y \
646 CONFIG_NET_EMATCH_U32
647 FILES:=$(SCHED_FILES)
648 endef
649
650 define KernelPackage/sched-core/description
651 Core kernel scheduler support for IP traffic
652 endef
653
654 $(eval $(call KernelPackage,sched-core))
655
656
657 define KernelPackage/sched-connmark
658 SUBMENU:=$(NETWORK_SUPPORT_MENU)
659 TITLE:=Traffic shaper conntrack mark support
660 DEPENDS:=+kmod-sched-core +kmod-ipt-core +kmod-ipt-conntrack-extra
661 KCONFIG:=CONFIG_NET_ACT_CONNMARK
662 FILES:=$(LINUX_DIR)/net/sched/act_connmark.ko
663 endef
664 $(eval $(call KernelPackage,sched-connmark))
665
666 define KernelPackage/sched
667 SUBMENU:=$(NETWORK_SUPPORT_MENU)
668 TITLE:=Extra traffic schedulers
669 DEPENDS:=+kmod-sched-core
670 KCONFIG:= \
671 CONFIG_NET_SCH_DSMARK \
672 CONFIG_NET_SCH_HTB \
673 CONFIG_NET_SCH_ESFQ \
674 CONFIG_NET_SCH_ESFQ_NFCT=y \
675 CONFIG_NET_SCH_FIFO \
676 CONFIG_NET_SCH_GRED \
677 CONFIG_NET_SCH_PRIO \
678 CONFIG_NET_SCH_RED \
679 CONFIG_NET_SCH_TBF \
680 CONFIG_NET_SCH_SFQ \
681 CONFIG_NET_SCH_TEQL \
682 CONFIG_NET_CLS_BASIC \
683 CONFIG_NET_ACT_POLICE \
684 CONFIG_NET_ACT_IPT \
685 CONFIG_NET_EMATCH_CMP \
686 CONFIG_NET_EMATCH_NBYTE \
687 CONFIG_NET_EMATCH_META \
688 CONFIG_NET_EMATCH_TEXT
689 FILES:=$(SCHED_FILES_EXTRA)
690 endef
691
692 define KernelPackage/sched/description
693 Extra kernel schedulers modules for IP traffic
694 endef
695
696 $(eval $(call KernelPackage,sched))
697
698
699 define KernelPackage/ax25
700 SUBMENU:=$(NETWORK_SUPPORT_MENU)
701 TITLE:=AX25 support
702 KCONFIG:= \
703 CONFIG_AX25 \
704 CONFIG_MKISS
705 FILES:= \
706 $(LINUX_DIR)/net/ax25/ax25.ko \
707 $(LINUX_DIR)/drivers/net/hamradio/mkiss.ko
708 AUTOLOAD:=$(call AutoLoad,80,ax25 mkiss)
709 $(call AddDepends/crc16)
710 endef
711
712 define KernelPackage/ax25/description
713 Kernel modules for AX25 support
714 endef
715
716 $(eval $(call KernelPackage,ax25))
717
718
719 define KernelPackage/mp-alg
720 SUBMENU:=$(NETWORK_SUPPORT_MENU)
721 TITLE:=ECMP caching algorithms
722 KCONFIG:= \
723 CONFIG_IP_ROUTE_MULTIPATH_RR \
724 CONFIG_IP_ROUTE_MULTIPATH_RANDOM \
725 CONFIG_IP_ROUTE_MULTIPATH_WRANDOM \
726 CONFIG_IP_ROUTE_MULTIPATH_DRR
727 FILES:= \
728 $(LINUX_DIR)/net/ipv4/multipath_rr.ko \
729 $(LINUX_DIR)/net/ipv4/multipath_random.ko \
730 $(LINUX_DIR)/net/ipv4/multipath_wrandom.ko \
731 $(LINUX_DIR)/net/ipv4/multipath_drr.ko
732 AUTOLOAD:=$(call AutoLoad,35,multipath_rr multipath_random multipath_wrandom multipath_drr)
733 endef
734
735 define KernelPackage/mp-alg/description
736 Kernel modules that provide several different algorithms for multipath
737 route selection from the route cache. The iproute "mpath" argument allows
738 specifying which algorithm to use for routes.
739 quagga (at least <=0.99.6) requires a multipath patch to support this
740 cached mp route feature.
741 endef
742
743 $(eval $(call KernelPackage,mp-alg))
744
745
746 define KernelPackage/pktgen
747 SUBMENU:=$(NETWORK_SUPPORT_MENU)
748 DEPENDS:=@!TARGET_uml
749 TITLE:=Network packet generator
750 KCONFIG:=CONFIG_NET_PKTGEN
751 FILES:=$(LINUX_DIR)/net/core/pktgen.ko
752 AUTOLOAD:=$(call AutoLoad,99,pktgen)
753 endef
754
755 define KernelPackage/pktgen/description
756 Kernel modules for the Network Packet Generator
757 endef
758
759 $(eval $(call KernelPackage,pktgen))
760
761 define KernelPackage/l2tp
762 SUBMENU:=$(NETWORK_SUPPORT_MENU)
763 TITLE:=Layer Two Tunneling Protocol (L2TP)
764 KCONFIG:=CONFIG_L2TP \
765 CONFIG_L2TP_V3=y \
766 CONFIG_L2TP_DEBUGFS=n
767 FILES:=$(LINUX_DIR)/net/l2tp/l2tp_core.ko \
768 $(LINUX_DIR)/net/l2tp/l2tp_netlink.ko
769 AUTOLOAD:=$(call AutoLoad,32,l2tp_core l2tp_netlink)
770 endef
771
772 define KernelPackage/l2tp/description
773 Kernel modules for L2TP V3 Support
774 endef
775
776 $(eval $(call KernelPackage,l2tp))
777
778
779 define KernelPackage/l2tp-eth
780 SUBMENU:=$(NETWORK_SUPPORT_MENU)
781 TITLE:=L2TP ethernet pseudowire support for L2TPv3
782 DEPENDS:=+kmod-l2tp
783 KCONFIG:=CONFIG_L2TP_ETH
784 FILES:=$(LINUX_DIR)/net/l2tp/l2tp_eth.ko
785 AUTOLOAD:=$(call AutoLoad,33,l2tp_eth)
786 endef
787
788 define KernelPackage/l2tp-eth/description
789 Kernel modules for L2TP ethernet pseudowire support for L2TPv3
790 endef
791
792 $(eval $(call KernelPackage,l2tp-eth))
793
794 define KernelPackage/l2tp-ip
795 SUBMENU:=$(NETWORK_SUPPORT_MENU)
796 TITLE:=L2TP IP encapsulation for L2TPv3
797 DEPENDS:=+kmod-l2tp
798 KCONFIG:=CONFIG_L2TP_IP
799 FILES:=$(LINUX_DIR)/net/l2tp/l2tp_ip.ko
800 AUTOLOAD:=$(call AutoLoad,33,l2tp_ip)
801 endef
802
803 define KernelPackage/l2tp-ip/description
804 Kernel modules for L2TP IP encapsulation for L2TPv3
805 endef
806
807 $(eval $(call KernelPackage,l2tp-ip))
808
809
810 define KernelPackage/sctp
811 SUBMENU:=$(NETWORK_SUPPORT_MENU)
812 TITLE:=SCTP protocol kernel support
813 KCONFIG:=\
814 CONFIG_IP_SCTP \
815 CONFIG_SCTP_DBG_MSG=n \
816 CONFIG_SCTP_DBG_OBJCNT=n \
817 CONFIG_SCTP_HMAC_NONE=n \
818 CONFIG_SCTP_HMAC_SHA1=n \
819 CONFIG_SCTP_HMAC_MD5=y
820 FILES:= $(LINUX_DIR)/net/sctp/sctp.ko
821 AUTOLOAD:= $(call AutoLoad,32,sctp)
822 DEPENDS:=+kmod-lib-crc32c +kmod-crypto-md5 +kmod-crypto-hmac
823 endef
824
825 define KernelPackage/sctp/description
826 Kernel modules for SCTP protocol support
827 endef
828
829 $(eval $(call KernelPackage,sctp))
830
831
832 define KernelPackage/netem
833 SUBMENU:=$(NETWORK_SUPPORT_MENU)
834 TITLE:=Network emulation functionality
835 DEPENDS:=+kmod-sched
836 KCONFIG:=CONFIG_NET_SCH_NETEM
837 FILES:=$(LINUX_DIR)/net/sched/sch_netem.ko
838 AUTOLOAD:=$(call AutoLoad,99,netem)
839 endef
840
841 define KernelPackage/netem/description
842 Kernel modules for emulating the properties of wide area networks
843 endef
844
845 $(eval $(call KernelPackage,netem))
846
847 define KernelPackage/slip
848 SUBMENU:=$(NETWORK_SUPPORT_MENU)
849 TITLE:=SLIP modules
850 KCONFIG:= \
851 CONFIG_SLIP \
852 CONFIG_SLIP_COMPRESSED=y \
853 CONFIG_SLIP_SMART=y \
854 CONFIG_SLIP_MODE_SLIP6=y
855
856 ifndef CONFIG_LINUX_3_1
857 FILES:= \
858 $(LINUX_DIR)/drivers/net/slip/slip.ko
859 else
860 FILES:= \
861 $(LINUX_DIR)/drivers/net/slip.ko
862 endif
863 AUTOLOAD:=$(call AutoLoad,30,slip)
864 endef
865
866 define KernelPackage/slip/description
867 Kernel modules for SLIP support
868 endef
869
870 $(eval $(call KernelPackage,slip))
871