[kernel] include arpfilter and arp_mangle in the kmod-arptables modules (#5410)
[10.03/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_PIMSM_V2=n \
306         CONFIG_IPV6_SUBTREES=y
307   FILES:=$(LINUX_DIR)/net/ipv6/ipv6.$(LINUX_KMOD_SUFFIX)
308   AUTOLOAD:=$(call AutoLoad,20,ipv6)
309 endef
310
311 define KernelPackage/ipv6/description
312  Kernel modules for IPv6 support
313 endef
314
315 $(eval $(call KernelPackage,ipv6))
316
317
318 # sit is not selectable on 2.4, but built when ipv6 is enabled
319 define KernelPackage/sit
320   SUBMENU:=$(NETWORK_SUPPORT_MENU)
321   DEPENDS:=+kmod-ipv6 +LINUX_2_6:kmod-iptunnel4
322   TITLE:=IPv6-in-IPv4 tunnelling
323   KCONFIG:=CONFIG_IPV6 CONFIG_IPV6_SIT
324   FILES:=$(LINUX_DIR)/net/ipv6/sit.$(LINUX_KMOD_SUFFIX)
325   AUTOLOAD:=$(call AutoLoad,32,sit)
326 endef
327
328 define KernelPackage/sit/description
329  Kernel modules for IPv6-in-IPv4 tunnelling
330 endef
331
332 $(eval $(call KernelPackage,sit))
333
334
335 define KernelPackage/ip6-tunnel
336   SUBMENU:=$(NETWORK_SUPPORT_MENU)
337   TITLE:=IP-in-IPv6 tunnelling
338   DEPENDS:= @LINUX_2_6 +kmod-ipv6 +kmod-iptunnel6
339   KCONFIG:= CONFIG_IPV6_TUNNEL
340   FILES:= $(foreach mod,ip6_tunnel, \
341         $(LINUX_DIR)/net/ipv6/$(mod).$(LINUX_KMOD_SUFFIX) \
342   )
343   AUTOLOAD:=$(call AutoLoad,32,ip6_tunnel)
344 endef
345
346 define KernelPackage/ip6-tunnel/description
347  Kernel modules for IPv6-in-IPv6 and IPv4-in-IPv6 tunnelling
348 endef
349
350 $(eval $(call KernelPackage,ip6-tunnel))
351
352
353 define KernelPackage/gre
354   SUBMENU:=$(NETWORK_SUPPORT_MENU)
355   TITLE:=GRE support
356   KCONFIG:=CONFIG_NET_IPGRE
357   FILES=$(LINUX_DIR)/net/ipv4/ip_gre.$(LINUX_KMOD_SUFFIX)
358 endef
359
360 define KernelPackage/gre/description
361  Generic Routing Encapsulation support
362 endef
363
364 $(eval $(call KernelPackage,gre))
365
366
367 define KernelPackage/tun
368   SUBMENU:=$(NETWORK_SUPPORT_MENU)
369   TITLE:=Universal TUN/TAP driver
370   KCONFIG:=CONFIG_TUN
371   FILES:=$(LINUX_DIR)/drivers/net/tun.$(LINUX_KMOD_SUFFIX)
372   AUTOLOAD:=$(call AutoLoad,30,tun)
373 endef
374
375 define KernelPackage/tun/description
376  Kernel support for the TUN/TAP tunneling device
377 endef
378
379 $(eval $(call KernelPackage,tun))
380
381
382 define KernelPackage/ppp
383   SUBMENU:=$(NETWORK_SUPPORT_MENU)
384   TITLE:=PPP modules
385   DEPENDS:=+LINUX_2_6:kmod-crc-ccitt
386   KCONFIG:= \
387         CONFIG_PPP \
388         CONFIG_PPP_ASYNC \
389         CONFIG_SLHC
390   FILES:= \
391         $(LINUX_DIR)/drivers/net/ppp_async.$(LINUX_KMOD_SUFFIX) \
392         $(LINUX_DIR)/drivers/net/ppp_generic.$(LINUX_KMOD_SUFFIX) \
393         $(LINUX_DIR)/drivers/net/slhc.$(LINUX_KMOD_SUFFIX)
394   AUTOLOAD:=$(call AutoLoad,30,slhc ppp_generic ppp_async)
395 endef
396
397 define KernelPackage/ppp/description
398  Kernel modules for PPP support
399 endef
400
401 $(eval $(call KernelPackage,ppp))
402
403
404 define KernelPackage/ppp-synctty
405   SUBMENU:=$(NETWORK_SUPPORT_MENU)
406   TITLE:=PPP sync tty support
407   DEPENDS:=kmod-ppp
408   KCONFIG:=CONFIG_PPP_SYNC_TTY
409   FILES:=$(LINUX_DIR)/drivers/net/ppp_synctty.$(LINUX_KMOD_SUFFIX)
410   AUTOLOAD:=$(call AutoLoad,40,ppp_synctty)
411 endef
412
413 define KernelPackage/ppp-synctty/description
414  Kernel modules for PPP sync tty support
415 endef
416
417 $(eval $(call KernelPackage,ppp-synctty))
418
419
420 define KernelPackage/pppoe
421   SUBMENU:=$(NETWORK_SUPPORT_MENU)
422   TITLE:=PPPoE support
423   DEPENDS:=kmod-ppp
424   KCONFIG:=CONFIG_PPPOE
425   FILES:= \
426         $(LINUX_DIR)/drivers/net/pppoe.$(LINUX_KMOD_SUFFIX) \
427         $(LINUX_DIR)/drivers/net/pppox.$(LINUX_KMOD_SUFFIX)
428 endef
429
430 define KernelPackage/pppoe/description
431  Kernel modules for PPPoE (PPP over Ethernet) support
432 endef
433
434 $(eval $(call KernelPackage,pppoe))
435
436
437 define KernelPackage/pppoa
438   SUBMENU:=$(NETWORK_SUPPORT_MENU)
439   TITLE:=PPPoA support
440   DEPENDS:=kmod-ppp +kmod-atm
441   KCONFIG:=CONFIG_PPPOATM CONFIG_ATM_DRIVERS=y
442   FILES:=$(LINUX_DIR)/net/atm/pppoatm.$(LINUX_KMOD_SUFFIX)
443   AUTOLOAD:=$(call AutoLoad,40,pppoatm)
444 endef
445
446 define KernelPackage/pppoa/description
447  Kernel modules for PPPoA (PPP over ATM) support
448 endef
449
450 $(eval $(call KernelPackage,pppoa))
451
452
453 define KernelPackage/ipoa
454   SUBMENU:=$(NETWORK_SUPPORT_MENU)
455   TITLE:=IPoA support
456   DEPENDS:=kmod-atm
457   KCONFIG:=CONFIG_ATM_CLIP
458   FILES:=$(LINUX_DIR)/net/atm/clip.$(LINUX_KMOD_SUFFIX)
459   AUTOLOAD:=$(call AutoLoad,40,clip)
460 endef
461
462 define KernelPackage/ipoa/description
463   Kernel modules for IPoA (IP over ATM) support
464 endef
465
466 $(eval $(call KernelPackage,ipoa))
467
468
469 define KernelPackage/mppe
470   SUBMENU:=$(NETWORK_SUPPORT_MENU)
471   TITLE:=Microsoft PPP compression/encryption
472   DEPENDS:=kmod-ppp +kmod-crypto-arc4 +kmod-crypto-sha1
473   KCONFIG:= \
474         CONFIG_PPP_MPPE_MPPC \
475         CONFIG_PPP_MPPE
476 endef
477
478 define KernelPackage/mppe/2.4
479 #  KCONFIG:=CONFIG_PPP_MPPE_MPPC
480   FILES:=$(LINUX_DIR)/drivers/net/ppp_mppe_mppc.$(LINUX_KMOD_SUFFIX)
481   AUTOLOAD:=$(call AutoLoad,31,ppp_mppe_mppc)
482 endef
483
484 define KernelPackage/mppe/2.6
485 #  KCONFIG:=CONFIG_PPP_MPPE
486   FILES:=$(LINUX_DIR)/drivers/net/ppp_mppe.$(LINUX_KMOD_SUFFIX)
487   AUTOLOAD:=$(call AutoLoad,31,ppp_mppe)
488 endef
489
490 define KernelPackage/mppe/description
491  Kernel modules for Microsoft PPP compression/encryption
492 endef
493
494 $(eval $(call KernelPackage,mppe))
495
496
497 define KernelPackage/sched
498   SUBMENU:=$(NETWORK_SUPPORT_MENU)
499   TITLE:=Traffic schedulers
500   KCONFIG:= \
501         CONFIG_NET_SCHED=y \
502         CONFIG_NET_SCH_DSMARK \
503         CONFIG_NET_SCH_ESFQ \
504         CONFIG_NET_SCH_FIFO \
505         CONFIG_NET_SCH_GRED \
506         CONFIG_NET_SCH_HFSC \
507         CONFIG_NET_SCH_HTB \
508         CONFIG_NET_SCH_INGRESS \
509         CONFIG_NET_SCH_PRIO \
510         CONFIG_NET_SCH_RED \
511         CONFIG_NET_SCH_SFQ \
512         CONFIG_NET_SCH_TBF \
513         CONFIG_NET_SCH_TEQL \
514         CONFIG_NET_CLS=y \
515         CONFIG_NET_CLS_ACT=y \
516         CONFIG_NET_CLS_BASIC \
517         CONFIG_NET_CLS_FLOW \
518         CONFIG_NET_CLS_FW \
519         CONFIG_NET_CLS_ROUTE4 \
520         CONFIG_NET_CLS_TCINDEX \
521         CONFIG_NET_CLS_U32 \
522         CONFIG_NET_ACT_MIRRED \
523         CONFIG_NET_ACT_IPT
524   FILES:=$(LINUX_DIR)/net/sched/*.$(LINUX_KMOD_SUFFIX)
525 endef
526
527 define KernelPackage/sched/description
528  Kernel schedulers for IP traffic
529 endef
530
531 $(eval $(call KernelPackage,sched))
532
533
534 define KernelPackage/ax25
535   SUBMENU:=$(NETWORK_SUPPORT_MENU)
536   TITLE:=AX25 support
537   DEPENDS:=kmod-crc16
538   KCONFIG:= \
539         CONFIG_AX25 \
540         CONFIG_MKISS
541   FILES:= \
542         $(LINUX_DIR)/net/ax25/ax25.$(LINUX_KMOD_SUFFIX) \
543         $(LINUX_DIR)/drivers/net/hamradio/mkiss.$(LINUX_KMOD_SUFFIX)
544   AUTOLOAD:=$(call AutoLoad,80,ax25 mkiss)
545 endef
546
547 define KernelPackage/ax25/description
548  Kernel modules for AX25 support
549 endef
550
551 $(eval $(call KernelPackage,ax25))
552
553
554 define KernelPackage/mp-alg
555   SUBMENU:=$(NETWORK_SUPPORT_MENU)
556   TITLE:=ECMP caching algorithms
557   DEPENDS:=@LINUX_2_6
558   KCONFIG:= \
559         CONFIG_IP_ROUTE_MULTIPATH_RR \
560         CONFIG_IP_ROUTE_MULTIPATH_RANDOM \
561         CONFIG_IP_ROUTE_MULTIPATH_WRANDOM \
562         CONFIG_IP_ROUTE_MULTIPATH_DRR
563   FILES:= \
564         $(LINUX_DIR)/net/ipv4/multipath_rr.$(LINUX_KMOD_SUFFIX) \
565         $(LINUX_DIR)/net/ipv4/multipath_random.$(LINUX_KMOD_SUFFIX) \
566         $(LINUX_DIR)/net/ipv4/multipath_wrandom.$(LINUX_KMOD_SUFFIX) \
567         $(LINUX_DIR)/net/ipv4/multipath_drr.$(LINUX_KMOD_SUFFIX)
568   AUTOLOAD:=$(call AutoLoad,35,multipath_rr multipath_random multipath_wrandom multipath_drr)
569 endef
570
571 define KernelPackage/mp-alg/description
572  Kernel modules that provide several different algorithms for multipath
573  route selection from the route cache. The iproute "mpath" argument allows
574  specifying which algorithm to use for routes.
575  quagga (at least <=0.99.6) requires a multipath patch to support this
576  cached mp route feature.
577 endef
578
579 $(eval $(call KernelPackage,mp-alg))
580
581
582 define KernelPackage/pktgen
583   SUBMENU:=$(NETWORK_SUPPORT_MENU)
584   TITLE:=Network packet generator
585   DEPENDS:=@LINUX_2_6
586   KCONFIG:=CONFIG_NET_PKTGEN
587   FILES:=$(LINUX_DIR)/net/core/pktgen.$(LINUX_KMOD_SUFFIX)
588   AUTOLOAD:=$(call AutoLoad,99,pktgen)
589 endef
590
591 define KernelPackage/pktgen/description
592   Kernel modules for the Network Packet Generator
593 endef
594
595 $(eval $(call KernelPackage,pktgen))
596