enable multicast routing by default
[openwrt.git] / package / kernel / modules / netsupport.mk
1 #
2 # Copyright (C) 2006-2008 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   DEPENDS:=@LINUX_2_6
14   KCONFIG:= \
15         CONFIG_ATM \
16         CONFIG_ATM_BR2684
17   FILES:= \
18         $(LINUX_DIR)/net/atm/atm.$(LINUX_KMOD_SUFFIX) \
19         $(LINUX_DIR)/net/atm/br2684.$(LINUX_KMOD_SUFFIX)
20   AUTOLOAD:=$(call AutoLoad,30,atm br2684)
21 endef
22
23 define KernelPackage/atm/description
24  Kernel modules for ATM support
25 endef
26
27 $(eval $(call KernelPackage,atm))
28
29
30 define KernelPackage/atmtcp
31   SUBMENU:=$(NETWORK_SUPPORT_MENU)
32   TITLE:=ATM over TCP
33   DEPENDS:=@LINUX_2_6 kmod-atm
34   KCONFIG:=CONFIG_ATM_TCP CONFIG_ATM_DRIVERS=y
35   FILES:=$(LINUX_DIR)/drivers/atm/atmtcp.$(LINUX_KMOD_SUFFIX)
36   AUTOLOAD:=$(call AutoLoad,40,atmtcp)
37 endef
38
39 define KernelPackage/atmtcp/description
40  Kernel module for ATM over TCP support
41 endef
42
43 $(eval $(call KernelPackage,atmtcp))
44
45
46 define KernelPackage/bonding
47   SUBMENU:=$(NETWORK_SUPPORT_MENU)
48   TITLE:=Ethernet bonding driver
49   KCONFIG:=CONFIG_BONDING
50   FILES:=$(LINUX_DIR)/drivers/net/bonding/bonding.$(LINUX_KMOD_SUFFIX)
51   AUTOLOAD:=$(call AutoLoad,40,bonding)
52 endef
53
54 define KernelPackage/bonding/description
55  Kernel module for NIC bonding.
56 endef
57
58 $(eval $(call KernelPackage,bonding))
59
60
61 define KernelPackage/capi
62   SUBMENU:=$(NETWORK_SUPPORT_MENU)
63   TITLE:=CAPI (ISDN) Support
64   DEPENDS:=@LINUX_2_6
65   KCONFIG:= \
66         CONFIG_ISDN_CAPI \
67         CONFIG_ISDN_CAPI_CAPI20 \
68         CONFIG_ISDN_CAPIFS
69   FILES:= \
70         $(LINUX_DIR)/drivers/isdn/capi/kernelcapi.$(LINUX_KMOD_SUFFIX) \
71         $(LINUX_DIR)/drivers/isdn/capi/capifs.$(LINUX_KMOD_SUFFIX)
72         $(LINUX_DIR)/drivers/isdn/capi/capi.$(LINUX_KMOD_SUFFIX) \
73   AUTOLOAD:=$(call AutoLoad,30,kernelcapi capifs capi)
74 endef
75
76 define KernelPackage/capi/description
77  Kernel module for basic CAPI (ISDN) support
78 endef
79
80 $(eval $(call KernelPackage,capi))
81
82 define KernelPackage/misdn
83   SUBMENU:=$(NETWORK_SUPPORT_MENU)
84   TITLE:=mISDN (ISDN) Support
85   KCONFIG:= \
86         CONFIG_ISDN=y \
87         CONFIG_MISDN \
88         CONFIG_MISDN_DSP \
89         CONFIG_MISDN_L1OIP \
90         CONFIG_ISDN_PPP=n \
91         CONFIG_ISDN_AUDIO=n \
92         CONFIG_ISDN_WITH_ABC=n \
93         CONFIG_ISDN_DRV_LOOP=n \
94         CONFIG_ISDN_DIVERSION=n \
95         CONFIG_ISDN_DRV_HISAX=n \
96         CONFIG_ISDN_DRV_ICN=n \
97         CONFIG_ISDN_DRV_PCBIT=n \
98         CONFIG_ISDN_DRV_SC=n \
99         CONFIG_ISDN_DRV_ACT2000=n \
100         CONFIG_ISDN_DRV_EICON=n \
101         CONFIG_ISDN_DRV_TPAM=n \
102         CONFIG_HYSDN=n
103   FILES:= \
104         $(LINUX_DIR)/drivers/isdn/mISDN/mISDN_core.$(LINUX_KMOD_SUFFIX) \
105         $(LINUX_DIR)/drivers/isdn/mISDN/mISDN_dsp.$(LINUX_KMOD_SUFFIX) \
106         $(LINUX_DIR)/drivers/isdn/mISDN/l1oip.$(LINUX_KMOD_SUFFIX)
107   AUTOLOAD:=$(call AutoLoad,30,mISDN_core mISDN_dsp l1oip)
108 endef
109
110 define KernelPackage/misdn/description
111   Modular ISDN driver support
112 endef
113
114 $(eval $(call KernelPackage,misdn))
115
116
117 define KernelPackage/isdn4linux
118   SUBMENU:=$(NETWORK_SUPPORT_MENU)
119   TITLE:=Old ISDN4Linux (deprecated)
120   KCONFIG:= \
121     CONFIG_ISDN=y \
122     CONFIG_ISDN_I4L \
123     CONFIG_ISDN_PPP=y \
124     CONFIG_ISDN_PPP_VJ=y \
125     CONFIG_ISDN_MPP=y \
126     CONFIG_IPPP_FILTER=y \
127     CONFIG_ISDN_PPP_BSDCOMP \
128     CONFIG_ISDN_AUDIO=y \
129     CONFIG_ISDN_TTY_FAX=y \
130     CONFIG_ISDN_X25=y \
131     CONFIG_ISDN_DIVERSION \
132     CONFIG_ISDN_CAPI_CAPIDRV=n \
133     CONFIG_ISDN_DRV_ACT2000=n \
134     CONFIG_ISDN_DRV_GIGASET=n \
135     CONFIG_ISDN_DRV_HISAX=n \
136     CONFIG_ISDN_DRV_ICN=n \
137     CONFIG_ISDN_DRV_LOOP=n \
138     CONFIG_ISDN_DRV_PCBIT=n \
139     CONFIG_ISDN_DRV_SC=n \
140     CONFIG_HYSDN=n
141   FILES:= \
142     $(LINUX_DIR)/drivers/isdn/i4l/isdn.$(LINUX_KMOD_SUFFIX) \
143     $(LINUX_DIR)/drivers/isdn/i4l/isdn_bsdcomp.$(LINUX_KMOD_SUFFIX) \
144     $(LINUX_DIR)/drivers/isdn/divert/dss1_divert.$(LINUX_KMOD_SUFFIX)
145   AUTOLOAD:=$(call AutoLoad,40,isdn isdn_bsdcomp dss1_divert)
146 endef
147
148 define KernelPackage/isdn4linux/description
149   This driver allows you to use an ISDN adapter for networking
150 endef
151
152 $(eval $(call KernelPackage,isdn4linux))
153
154
155 define KernelPackage/ipip
156   SUBMENU:=$(NETWORK_SUPPORT_MENU)
157   TITLE:=IP-in-IP encapsulation
158   DEPENDS:=+LINUX_2_6:kmod-iptunnel4
159   KCONFIG:=CONFIG_NET_IPIP
160   FILES:=$(LINUX_DIR)/net/ipv4/ipip.$(LINUX_KMOD_SUFFIX)
161   AUTOLOAD:=$(call AutoLoad,32,ipip)
162 endef
163
164 define KernelPackage/ipip/description
165  Kernel modules for IP-in-IP encapsulation
166 endef
167
168 $(eval $(call KernelPackage,ipip))
169
170
171 define KernelPackage/ipsec
172   SUBMENU:=$(NETWORK_SUPPORT_MENU)
173   TITLE:=IPsec related modules (IPv4 and IPv6)
174   DEPENDS:=@LINUX_2_6 +kmod-crypto-core +kmod-crypto-des +kmod-crypto-hmac +kmod-crypto-md5 +kmod-crypto-sha1
175   KCONFIG:= \
176         CONFIG_NET_KEY \
177         CONFIG_XFRM_USER
178   FILES:= \
179         $(LINUX_DIR)/net/key/af_key.$(LINUX_KMOD_SUFFIX) \
180         $(LINUX_DIR)/net/xfrm/xfrm_user.$(LINUX_KMOD_SUFFIX)
181 endef
182
183 define KernelPackage/ipsec/description
184  Kernel modules for IPsec support in both IPv4 and IPv6.
185  Includes:
186  - af_key
187  - xfrm_user
188 endef
189
190 $(eval $(call KernelPackage,ipsec))
191
192
193 define KernelPackage/ipsec4
194   SUBMENU:=$(NETWORK_SUPPORT_MENU)
195   TITLE:=IPsec related modules (IPv4)
196   DEPENDS:=kmod-ipsec +kmod-iptunnel4
197   KCONFIG:= \
198         CONFIG_INET_AH \
199         CONFIG_INET_ESP \
200         CONFIG_INET_IPCOMP \
201         CONFIG_INET_XFRM_MODE_BEET \
202         CONFIG_INET_XFRM_MODE_TRANSPORT \
203         CONFIG_INET_XFRM_MODE_TUNNEL \
204         CONFIG_INET_XFRM_TUNNEL
205   FILES:= $(foreach mod,ah4 esp4 ipcomp xfrm4_mode_beet xfrm4_mode_transport xfrm4_mode_tunnel xfrm4_tunnel , \
206         $(LINUX_DIR)/net/ipv4/$(mod).$(LINUX_KMOD_SUFFIX) \
207   )
208 endef
209
210 define KernelPackage/ipsec4/description
211  Kernel modules for IPsec support in IPv4.
212  Includes:
213  - ah4
214  - esp4
215  - ipcomp
216  - xfrm4_mode_beet
217  - xfrm4_mode_transport
218  - xfrm4_mode_tunnel
219  - xfrm4_tunnel
220 endef
221
222 $(eval $(call KernelPackage,ipsec4))
223
224
225 define KernelPackage/ipsec6
226   SUBMENU:=$(NETWORK_SUPPORT_MENU)
227   TITLE:=IPsec related modules (IPv6)
228   DEPENDS:=kmod-ipsec +kmod-iptunnel6
229   KCONFIG:= \
230         CONFIG_INET6_AH \
231         CONFIG_INET6_ESP \
232         CONFIG_INET6_IPCOMP \
233         CONFIG_INET6_XFRM_MODE_BEET \
234         CONFIG_INET6_XFRM_MODE_TRANSPORT \
235         CONFIG_INET6_XFRM_MODE_TUNNEL \
236         CONFIG_INET6_XFRM_TUNNEL
237   FILES:= $(foreach mod,ah6 esp6 ipcomp6 xfrm6_mode_beet xfrm6_mode_transport xfrm6_mode_tunnel xfrm6_tunnel, \
238         $(LINUX_DIR)/net/ipv6/$(mod).$(LINUX_KMOD_SUFFIX) \
239   )
240 endef
241
242 define KernelPackage/ipsec6/description
243  Kernel modules for IPsec support in IPv6.
244  Includes:
245  - ah6
246  - esp6
247  - ipcomp6
248  - xfrm6_mode_beet
249  - xfrm6_mode_transport
250  - xfrm6_mode_tunnel
251  - xfrm6_tunnel
252 endef
253
254 $(eval $(call KernelPackage,ipsec6))
255
256
257 # NOTE: tunnel4 is not selectable by itself, so enable ipip for that
258 define KernelPackage/iptunnel4
259   SUBMENU:=$(NETWORK_SUPPORT_MENU)
260   TITLE:=IPv4 tunneling
261   DEPENDS:=@LINUX_2_6
262   KCONFIG:= \
263         CONFIG_NET_IPIP \
264         CONFIG_INET_TUNNEL
265   FILES:= $(foreach mod,tunnel4, \
266         $(LINUX_DIR)/net/ipv4/$(mod).$(LINUX_KMOD_SUFFIX) \
267   )
268   AUTOLOAD:=$(call AutoLoad,31,tunnel4)
269 endef
270
271 define KernelPackage/iptunnel4/description
272  Kernel modules for IPv4 tunneling
273 endef
274
275 $(eval $(call KernelPackage,iptunnel4))
276
277
278 define KernelPackage/iptunnel6
279   SUBMENU:=$(NETWORK_SUPPORT_MENU)
280   TITLE:=IPv6 tunneling
281   DEPENDS:= @LINUX_2_6 +kmod-ipv6
282   KCONFIG:= \
283         CONFIG_INET6_TUNNEL
284   FILES:= $(foreach mod,tunnel6, \
285         $(LINUX_DIR)/net/ipv6/$(mod).$(LINUX_KMOD_SUFFIX) \
286   )
287   AUTOLOAD:=$(call AutoLoad,31,tunnel6)
288 endef
289
290 define KernelPackage/iptunnel6/description
291  Kernel modules for IPv6 tunneling
292 endef
293
294 $(eval $(call KernelPackage,iptunnel6))
295
296
297 define KernelPackage/ipv6
298   SUBMENU:=$(NETWORK_SUPPORT_MENU)
299   TITLE:=IPv6 support
300   KCONFIG:= \
301         CONFIG_IPV6 \
302         CONFIG_IPV6_PRIVACY=y \
303         CONFIG_IPV6_MULTIPLE_TABLES=y \
304         CONFIG_IPV6_MROUTE=y \
305         CONFIG_IPV6_SUBTREES=y
306   FILES:=$(LINUX_DIR)/net/ipv6/ipv6.$(LINUX_KMOD_SUFFIX)
307   AUTOLOAD:=$(call AutoLoad,20,ipv6)
308 endef
309
310 define KernelPackage/ipv6/description
311  Kernel modules for IPv6 support
312 endef
313
314 $(eval $(call KernelPackage,ipv6))
315
316
317 # sit is not selectable on 2.4, but built when ipv6 is enabled
318 define KernelPackage/sit
319   SUBMENU:=$(NETWORK_SUPPORT_MENU)
320   DEPENDS:=+kmod-ipv6 +LINUX_2_6:kmod-iptunnel4
321   TITLE:=IPv6-in-IPv4 tunnelling
322   KCONFIG:=CONFIG_IPV6 CONFIG_IPV6_SIT
323   FILES:=$(LINUX_DIR)/net/ipv6/sit.$(LINUX_KMOD_SUFFIX)
324   AUTOLOAD:=$(call AutoLoad,32,sit)
325 endef
326
327 define KernelPackage/sit/description
328  Kernel modules for IPv6-in-IPv4 tunnelling
329 endef
330
331 $(eval $(call KernelPackage,sit))
332
333
334 define KernelPackage/ip6-tunnel
335   SUBMENU:=$(NETWORK_SUPPORT_MENU)
336   TITLE:=IP-in-IPv6 tunnelling
337   DEPENDS:= @LINUX_2_6 +kmod-ipv6 +kmod-iptunnel6
338   KCONFIG:= CONFIG_IPV6_TUNNEL
339   FILES:= $(foreach mod,ip6_tunnel, \
340         $(LINUX_DIR)/net/ipv6/$(mod).$(LINUX_KMOD_SUFFIX) \
341   )
342   AUTOLOAD:=$(call AutoLoad,32,ip6_tunnel)
343 endef
344
345 define KernelPackage/ip6-tunnel/description
346  Kernel modules for IPv6-in-IPv6 and IPv4-in-IPv6 tunnelling
347 endef
348
349 $(eval $(call KernelPackage,ip6-tunnel))
350
351
352 define KernelPackage/gre
353   SUBMENU:=$(NETWORK_SUPPORT_MENU)
354   TITLE:=GRE support
355   KCONFIG:=CONFIG_NET_IPGRE
356   FILES=$(LINUX_DIR)/net/ipv4/ip_gre.$(LINUX_KMOD_SUFFIX)
357 endef
358
359 define KernelPackage/gre/description
360  Generic Routing Encapsulation support
361 endef
362
363 $(eval $(call KernelPackage,gre))
364
365
366 define KernelPackage/tun
367   SUBMENU:=$(NETWORK_SUPPORT_MENU)
368   TITLE:=Universal TUN/TAP driver
369   KCONFIG:=CONFIG_TUN
370   FILES:=$(LINUX_DIR)/drivers/net/tun.$(LINUX_KMOD_SUFFIX)
371   AUTOLOAD:=$(call AutoLoad,30,tun)
372 endef
373
374 define KernelPackage/tun/description
375  Kernel support for the TUN/TAP tunneling device
376 endef
377
378 $(eval $(call KernelPackage,tun))
379
380
381 define KernelPackage/ppp
382   SUBMENU:=$(NETWORK_SUPPORT_MENU)
383   TITLE:=PPP modules
384   DEPENDS:=+LINUX_2_6:kmod-crc-ccitt
385   KCONFIG:= \
386         CONFIG_PPP \
387         CONFIG_PPP_ASYNC \
388         CONFIG_SLHC
389   FILES:= \
390         $(LINUX_DIR)/drivers/net/ppp_async.$(LINUX_KMOD_SUFFIX) \
391         $(LINUX_DIR)/drivers/net/ppp_generic.$(LINUX_KMOD_SUFFIX) \
392         $(LINUX_DIR)/drivers/net/slhc.$(LINUX_KMOD_SUFFIX)
393   AUTOLOAD:=$(call AutoLoad,30,slhc ppp_generic ppp_async)
394 endef
395
396 define KernelPackage/ppp/description
397  Kernel modules for PPP support
398 endef
399
400 $(eval $(call KernelPackage,ppp))
401
402
403 define KernelPackage/ppp-synctty
404   SUBMENU:=$(NETWORK_SUPPORT_MENU)
405   TITLE:=PPP sync tty support
406   DEPENDS:=kmod-ppp
407   KCONFIG:=CONFIG_PPP_SYNC_TTY
408   FILES:=$(LINUX_DIR)/drivers/net/ppp_synctty.$(LINUX_KMOD_SUFFIX)
409   AUTOLOAD:=$(call AutoLoad,40,ppp_synctty)
410 endef
411
412 define KernelPackage/ppp-synctty/description
413  Kernel modules for PPP sync tty support
414 endef
415
416 $(eval $(call KernelPackage,ppp-synctty))
417
418
419 define KernelPackage/pppoe
420   SUBMENU:=$(NETWORK_SUPPORT_MENU)
421   TITLE:=PPPoE support
422   DEPENDS:=kmod-ppp
423   KCONFIG:=CONFIG_PPPOE
424   FILES:= \
425         $(LINUX_DIR)/drivers/net/pppoe.$(LINUX_KMOD_SUFFIX) \
426         $(LINUX_DIR)/drivers/net/pppox.$(LINUX_KMOD_SUFFIX)
427 endef
428
429 define KernelPackage/pppoe/description
430  Kernel modules for PPPoE (PPP over Ethernet) support
431 endef
432
433 $(eval $(call KernelPackage,pppoe))
434
435
436 define KernelPackage/pppoa
437   SUBMENU:=$(NETWORK_SUPPORT_MENU)
438   TITLE:=PPPoA support
439   DEPENDS:=kmod-ppp +kmod-atm
440   KCONFIG:=CONFIG_PPPOATM CONFIG_ATM_DRIVERS=y
441   FILES:=$(LINUX_DIR)/net/atm/pppoatm.$(LINUX_KMOD_SUFFIX)
442   AUTOLOAD:=$(call AutoLoad,40,pppoatm)
443 endef
444
445 define KernelPackage/pppoa/description
446  Kernel modules for PPPoA (PPP over ATM) support
447 endef
448
449 $(eval $(call KernelPackage,pppoa))
450
451
452 define KernelPackage/ipoa
453   SUBMENU:=$(NETWORK_SUPPORT_MENU)
454   TITLE:=IPoA support
455   DEPENDS:=kmod-atm
456   KCONFIG:=CONFIG_ATM_CLIP
457   FILES:=$(LINUX_DIR)/net/atm/clip.$(LINUX_KMOD_SUFFIX)
458   AUTOLOAD:=$(call AutoLoad,40,clip)
459 endef
460
461 define KernelPackage/ipoa/description
462   Kernel modules for IPoA (IP over ATM) support
463 endef
464
465 $(eval $(call KernelPackage,ipoa))
466
467
468 define KernelPackage/mppe
469   SUBMENU:=$(NETWORK_SUPPORT_MENU)
470   TITLE:=Microsoft PPP compression/encryption
471   DEPENDS:=kmod-ppp +kmod-crypto-arc4 +kmod-crypto-sha1
472   KCONFIG:= \
473         CONFIG_PPP_MPPE_MPPC \
474         CONFIG_PPP_MPPE
475 endef
476
477 define KernelPackage/mppe/2.4
478 #  KCONFIG:=CONFIG_PPP_MPPE_MPPC
479   FILES:=$(LINUX_DIR)/drivers/net/ppp_mppe_mppc.$(LINUX_KMOD_SUFFIX)
480   AUTOLOAD:=$(call AutoLoad,31,ppp_mppe_mppc)
481 endef
482
483 define KernelPackage/mppe/2.6
484 #  KCONFIG:=CONFIG_PPP_MPPE
485   FILES:=$(LINUX_DIR)/drivers/net/ppp_mppe.$(LINUX_KMOD_SUFFIX)
486   AUTOLOAD:=$(call AutoLoad,31,ppp_mppe)
487 endef
488
489 define KernelPackage/mppe/description
490  Kernel modules for Microsoft PPP compression/encryption
491 endef
492
493 $(eval $(call KernelPackage,mppe))
494
495
496 define KernelPackage/sched
497   SUBMENU:=$(NETWORK_SUPPORT_MENU)
498   TITLE:=Traffic schedulers
499   KCONFIG:= \
500         CONFIG_NET_SCHED=y \
501         CONFIG_NET_SCH_DSMARK \
502         CONFIG_NET_SCH_ESFQ \
503         CONFIG_NET_SCH_FIFO \
504         CONFIG_NET_SCH_GRED \
505         CONFIG_NET_SCH_HFSC \
506         CONFIG_NET_SCH_HTB \
507         CONFIG_NET_SCH_INGRESS \
508         CONFIG_NET_SCH_PRIO \
509         CONFIG_NET_SCH_RED \
510         CONFIG_NET_SCH_SFQ \
511         CONFIG_NET_SCH_TBF \
512         CONFIG_NET_SCH_TEQL \
513         CONFIG_NET_CLS=y \
514         CONFIG_NET_CLS_ACT=y \
515         CONFIG_NET_CLS_BASIC \
516         CONFIG_NET_CLS_FLOW \
517         CONFIG_NET_CLS_FW \
518         CONFIG_NET_CLS_ROUTE4 \
519         CONFIG_NET_CLS_TCINDEX \
520         CONFIG_NET_CLS_U32 \
521         CONFIG_NET_ACT_MIRRED \
522         CONFIG_NET_ACT_IPT
523   FILES:=$(LINUX_DIR)/net/sched/*.$(LINUX_KMOD_SUFFIX)
524 endef
525
526 define KernelPackage/sched/description
527  Kernel schedulers for IP traffic
528 endef
529
530 $(eval $(call KernelPackage,sched))
531
532
533 define KernelPackage/ax25
534   SUBMENU:=$(NETWORK_SUPPORT_MENU)
535   TITLE:=AX25 support
536   DEPENDS:=kmod-crc16
537   KCONFIG:= \
538         CONFIG_AX25 \
539         CONFIG_MKISS
540   FILES:= \
541         $(LINUX_DIR)/net/ax25/ax25.$(LINUX_KMOD_SUFFIX) \
542         $(LINUX_DIR)/drivers/net/hamradio/mkiss.$(LINUX_KMOD_SUFFIX)
543   AUTOLOAD:=$(call AutoLoad,80,ax25 mkiss)
544 endef
545
546 define KernelPackage/ax25/description
547  Kernel modules for AX25 support
548 endef
549
550 $(eval $(call KernelPackage,ax25))
551
552
553 define KernelPackage/mp-alg
554   SUBMENU:=$(NETWORK_SUPPORT_MENU)
555   TITLE:=ECMP caching algorithms
556   DEPENDS:=@LINUX_2_6
557   KCONFIG:= \
558         CONFIG_IP_ROUTE_MULTIPATH_RR \
559         CONFIG_IP_ROUTE_MULTIPATH_RANDOM \
560         CONFIG_IP_ROUTE_MULTIPATH_WRANDOM \
561         CONFIG_IP_ROUTE_MULTIPATH_DRR
562   FILES:= \
563         $(LINUX_DIR)/net/ipv4/multipath_rr.$(LINUX_KMOD_SUFFIX) \
564         $(LINUX_DIR)/net/ipv4/multipath_random.$(LINUX_KMOD_SUFFIX) \
565         $(LINUX_DIR)/net/ipv4/multipath_wrandom.$(LINUX_KMOD_SUFFIX) \
566         $(LINUX_DIR)/net/ipv4/multipath_drr.$(LINUX_KMOD_SUFFIX)
567   AUTOLOAD:=$(call AutoLoad,35,multipath_rr multipath_random multipath_wrandom multipath_drr)
568 endef
569
570 define KernelPackage/mp-alg/description
571  Kernel modules that provide several different algorithms for multipath
572  route selection from the route cache. The iproute "mpath" argument allows
573  specifying which algorithm to use for routes.
574  quagga (at least <=0.99.6) requires a multipath patch to support this
575  cached mp route feature.
576 endef
577
578 $(eval $(call KernelPackage,mp-alg))
579
580
581 define KernelPackage/pktgen
582   SUBMENU:=$(NETWORK_SUPPORT_MENU)
583   TITLE:=Network packet generator
584   DEPENDS:=@LINUX_2_6
585   KCONFIG:=CONFIG_NET_PKTGEN
586   FILES:=$(LINUX_DIR)/net/core/pktgen.$(LINUX_KMOD_SUFFIX)
587   AUTOLOAD:=$(call AutoLoad,99,pktgen)
588 endef
589
590 define KernelPackage/pktgen/description
591   Kernel modules for the Network Packet Generator
592 endef
593
594 $(eval $(call KernelPackage,pktgen))
595