c546d638ed0d28f9968a60594ffbe25e390a42c6
[openwrt.git] / package / kernel / modules / network.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 # $Id$
8
9 NETWORK_SUPPORT_MENU:=Network Support
10
11 define KernelPackage/atm
12   SUBMENU:=$(NETWORK_SUPPORT_MENU)
13   TITLE:=ATM support
14   DEPENDS:=@LINUX_2_6
15   KCONFIG:= \
16         CONFIG_ATM \
17         CONFIG_ATM_BR2684
18   FILES:= \
19         $(LINUX_DIR)/net/atm/atm.$(LINUX_KMOD_SUFFIX) \
20         $(LINUX_DIR)/net/atm/br2684.$(LINUX_KMOD_SUFFIX)
21   AUTOLOAD:=$(call AutoLoad,30,atm br2684)
22 endef
23
24 define KernelPackage/atm/description
25  Kernel modules for ATM support
26 endef
27
28 $(eval $(call KernelPackage,atm))
29
30
31 define KernelPackage/atmtcp
32   SUBMENU:=$(NETWORK_SUPPORT_MENU)
33   TITLE:=ATM over TCP
34   DEPENDS:=@LINUX_2_6 kmod-atm
35   KCONFIG:=CONFIG_ATM_TCP CONFIG_ATM_DRIVERS=y
36   FILES:=$(LINUX_DIR)/drivers/atm/atmtcp.$(LINUX_KMOD_SUFFIX)
37   AUTOLOAD:=$(call AutoLoad,40,atmtcp)
38 endef
39
40 define KernelPackage/atmtcp/description
41  Kernel module for ATM over TCP support
42 endef
43
44 $(eval $(call KernelPackage,atmtcp))
45
46
47 define KernelPackage/bonding
48   SUBMENU:=$(NETWORK_SUPPORT_MENU)
49   TITLE:=Ethernet bonding driver
50   KCONFIG:=CONFIG_BONDING
51   FILES:=$(LINUX_DIR)/drivers/net/bonding/bonding.$(LINUX_KMOD_SUFFIX)
52   AUTOLOAD:=$(call AutoLoad,40,bonding)
53 endef
54
55 define KernelPackage/bonding/description
56  Kernel module for NIC bonding.
57 endef
58
59 $(eval $(call KernelPackage,bonding))
60
61
62 define KernelPackage/capi
63   SUBMENU:=$(NETWORK_SUPPORT_MENU)
64   TITLE:=CAPI (ISDN) Support
65   DEPENDS:=@LINUX_2_6
66   KCONFIG:= \
67         CONFIG_ISDN \
68         CONFIG_ISDN_CAPI \
69         CONFIG_ISDN_CAPI_CAPI20 \
70         CONFIG_ISDN_CAPIFS
71   FILES:= \
72         $(LINUX_DIR)/drivers/isdn/capi/kernelcapi.$(LINUX_KMOD_SUFFIX) \
73         $(LINUX_DIR)/drivers/isdn/capi/capi.$(LINUX_KMOD_SUFFIX) \
74         $(LINUX_DIR)/drivers/isdn/capi/capifs.$(LINUX_KMOD_SUFFIX)
75   AUTOLOAD:=$(call AutoLoad,30,kernelcapi capi)
76 endef
77
78 define KernelPackage/capi/description
79  Kernel module for basic CAPI (ISDN) support
80 endef
81
82 $(eval $(call KernelPackage,capi))
83
84
85 define KernelPackage/ipip
86   SUBMENU:=$(NETWORK_SUPPORT_MENU)
87   TITLE:=IP-in-IP encapsulation
88   DEPENDS:=+kmod-iptunnel4
89   KCONFIG:=CONFIG_NET_IPIP
90   FILES:=$(LINUX_DIR)/net/ipv4/ipip.$(LINUX_KMOD_SUFFIX)
91   AUTOLOAD:=$(call AutoLoad,30,ipip)
92 endef
93
94 define KernelPackage/ipip/description
95  Kernel modules for IP-in-IP encapsulation
96 endef
97
98 $(eval $(call KernelPackage,ipip))
99
100
101 define KernelPackage/ipsec
102   SUBMENU:=$(NETWORK_SUPPORT_MENU)
103   TITLE:=IPsec related modules (IPv4 and IPv6)
104   DEPENDS:=@LINUX_2_6 +kmod-crypto-core +kmod-crypto-des +kmod-crypto-hmac +kmod-crypto-md5 +kmod-crypto-sha1
105   KCONFIG:= \
106         CONFIG_NET_KEY \
107         CONFIG_XFRM_USER
108   FILES:= \
109         $(LINUX_DIR)/net/key/af_key.$(LINUX_KMOD_SUFFIX) \
110         $(LINUX_DIR)/net/xfrm/xfrm_user.$(LINUX_KMOD_SUFFIX)
111 endef
112
113 define KernelPackage/ipsec/description
114  Kernel modules for IPsec support in both IPv4 and IPv6.
115  Includes:
116  - af_key
117  - xfrm_user
118 endef
119
120 $(eval $(call KernelPackage,ipsec))
121
122
123 define KernelPackage/ipsec4
124   SUBMENU:=$(NETWORK_SUPPORT_MENU)
125   TITLE:=IPsec related modules (IPv4)
126   DEPENDS:=kmod-ipsec +kmod-iptunnel4 +kmod-crypto-aead
127   KCONFIG:= \
128         CONFIG_INET_AH \
129         CONFIG_INET_ESP \
130         CONFIG_INET_IPCOMP \
131         CONFIG_INET_XFRM_MODE_BEET \
132         CONFIG_INET_XFRM_MODE_TRANSPORT \
133         CONFIG_INET_XFRM_MODE_TUNNEL \
134         CONFIG_INET_XFRM_TUNNEL
135   FILES:= $(foreach mod,ah4 esp4 ipcomp xfrm4_mode_beet xfrm4_mode_transport xfrm4_mode_tunnel xfrm4_tunnel , \
136         $(LINUX_DIR)/net/ipv4/$(mod).$(LINUX_KMOD_SUFFIX) \
137   )
138 endef
139
140 define KernelPackage/ipsec4/description
141  Kernel modules for IPsec support in IPv4.
142  Includes:
143  - ah4
144  - esp4
145  - ipcomp
146  - xfrm4_mode_beet
147  - xfrm4_mode_transport
148  - xfrm4_mode_tunnel
149  - xfrm4_tunnel
150 endef
151
152 $(eval $(call KernelPackage,ipsec4))
153
154
155 define KernelPackage/ipsec6
156   SUBMENU:=$(NETWORK_SUPPORT_MENU)
157   TITLE:=IPsec related modules (IPv6)
158   DEPENDS:=kmod-ipsec +kmod-iptunnel6 +kmod-crypto-aead
159   KCONFIG:= \
160         CONFIG_INET6_AH \
161         CONFIG_INET6_ESP \
162         CONFIG_INET6_IPCOMP \
163         CONFIG_INET6_XFRM_MODE_BEET \
164         CONFIG_INET6_XFRM_MODE_TRANSPORT \
165         CONFIG_INET6_XFRM_MODE_TUNNEL \
166         CONFIG_INET6_XFRM_TUNNEL
167   FILES:= $(foreach mod,ah6 esp6 ipcomp6 xfrm6_mode_beet xfrm6_mode_transport xfrm6_mode_tunnel xfrm6_tunnel, \
168         $(LINUX_DIR)/net/ipv6/$(mod).$(LINUX_KMOD_SUFFIX) \
169   )
170 endef
171
172 define KernelPackage/ipsec6/description
173  Kernel modules for IPsec support in IPv6.
174  Includes:
175  - ah6
176  - esp6
177  - ipcomp6
178  - xfrm6_mode_beet
179  - xfrm6_mode_transport
180  - xfrm6_mode_tunnel
181  - xfrm6_tunnel
182 endef
183
184 $(eval $(call KernelPackage,ipsec6))
185
186
187 # NOTE: tunnel4 is not selectable by itself, so enable ipip for that
188 define KernelPackage/iptunnel4
189   SUBMENU:=$(NETWORK_SUPPORT_MENU)
190   TITLE:=IPv4 tunneling
191   DEPENDS:= @LINUX_2_6
192   KCONFIG:= \
193         CONFIG_NET_IPIP \
194         CONFIG_INET_TUNNEL
195   FILES:= $(foreach mod,tunnel4, \
196         $(LINUX_DIR)/net/ipv4/$(mod).$(LINUX_KMOD_SUFFIX) \
197   )
198   AUTOLOAD:=$(call AutoLoad,31,tunnel4)
199 endef
200
201 define KernelPackage/iptunnel4/description
202  Kernel modules for IPv4 tunneling
203 endef
204
205 $(eval $(call KernelPackage,iptunnel4))
206
207
208 define KernelPackage/iptunnel6
209   SUBMENU:=$(NETWORK_SUPPORT_MENU)
210   TITLE:=IPv6 tunneling
211   DEPENDS:= @LINUX_2_6 +kmod-ipv6
212   KCONFIG:= \
213         CONFIG_INET6_TUNNEL
214   FILES:= $(foreach mod,tunnel6, \
215         $(LINUX_DIR)/net/ipv6/$(mod).$(LINUX_KMOD_SUFFIX) \
216   )
217   AUTOLOAD:=$(call AutoLoad,31,tunnel6)
218 endef
219
220 define KernelPackage/iptunnel6/description
221  Kernel modules for IPv6 tunneling
222 endef
223
224 $(eval $(call KernelPackage,iptunnel6))
225
226
227 define KernelPackage/ipv6
228   SUBMENU:=$(NETWORK_SUPPORT_MENU)
229   TITLE:=IPv6 support
230   KCONFIG:= \
231         CONFIG_IPV6 \
232         CONFIG_IPV6_PRIVACY=y \
233         CONFIG_IPV6_MULTIPLE_TABLES=y \
234         CONFIG_IPV6_SUBTREES=y
235   FILES:=$(LINUX_DIR)/net/ipv6/ipv6.$(LINUX_KMOD_SUFFIX)
236   AUTOLOAD:=$(call AutoLoad,20,ipv6)
237 endef
238
239 define KernelPackage/ipv6/description
240  Kernel modules for IPv6 support
241 endef
242
243 $(eval $(call KernelPackage,ipv6))
244
245
246 define KernelPackage/sit
247   SUBMENU:=$(NETWORK_SUPPORT_MENU)
248   DEPENDS:=+kmod-iptunnel4
249   TITLE:=IPv6-in-IPv4 tunnelling
250 endef
251
252 # sit is compiled in the 2.4 ipv6 stack
253 define KernelPackage/sit/2.4
254   DEPENDS:= @LINUX_2_4 +kmod-ipv6
255   KCONFIG:=CONFIG_IPV6
256 endef
257
258 define KernelPackage/sit/2.6
259   DEPENDS:= @LINUX_2_6 +kmod-ipv6 +kmod-iptunnel4
260   KCONFIG+=CONFIG_IPV6_SIT
261   FILES:=$(LINUX_DIR)/net/ipv6/sit.$(LINUX_KMOD_SUFFIX)
262   AUTOLOAD:=$(call AutoLoad,32,sit)
263 endef
264
265 define KernelPackage/sit/description
266  Kernel modules for IPv6-in-IPv4 tunnelling
267 endef
268
269 $(eval $(call KernelPackage,sit))
270
271
272 define KernelPackage/ip6-tunnel
273   SUBMENU:=$(NETWORK_SUPPORT_MENU)
274   TITLE:=IP-in-IPv6 tunnelling
275   DEPENDS:= @LINUX_2_6 +kmod-ipv6 +kmod-iptunnel6
276   KCONFIG:= CONFIG_IPV6_TUNNEL
277   FILES:= $(foreach mod,ip6_tunnel, \
278         $(LINUX_DIR)/net/ipv6/$(mod).$(LINUX_KMOD_SUFFIX) \
279   )
280   AUTOLOAD:=$(call AutoLoad,32,ip6_tunnel)
281 endef
282
283 define KernelPackage/ip6-tunnel/description
284  Kernel modules for IPv6-in-IPv6 and IPv4-in-IPv6 tunnelling
285 endef
286
287 $(eval $(call KernelPackage,ip6-tunnel))
288
289
290 define KernelPackage/gre
291   SUBMENU:=$(NETWORK_SUPPORT_MENU)
292   TITLE:=GRE support
293   KCONFIG:=CONFIG_NET_IPGRE
294   FILES=$(LINUX_DIR)/net/ipv4/ip_gre.$(LINUX_KMOD_SUFFIX)
295 endef
296
297 define KernelPackage/gre/description
298  Generic Routing Encapsulation support
299 endef
300
301 $(eval $(call KernelPackage,gre))
302
303
304 define KernelPackage/tun
305   SUBMENU:=$(NETWORK_SUPPORT_MENU)
306   TITLE:=Universal TUN/TAP driver
307   KCONFIG:=CONFIG_TUN
308   FILES:=$(LINUX_DIR)/drivers/net/tun.$(LINUX_KMOD_SUFFIX)
309   AUTOLOAD:=$(call AutoLoad,30,tun)
310 endef
311
312 define KernelPackage/tun/description
313  Kernel support for the TUN/TAP tunneling device
314 endef
315
316 $(eval $(call KernelPackage,tun))
317
318
319 define KernelPackage/ppp
320   SUBMENU:=$(NETWORK_SUPPORT_MENU)
321   TITLE:=PPP modules
322   KCONFIG:= \
323         CONFIG_PPP \
324         CONFIG_PPP_ASYNC \
325         CONFIG_SLHC \
326         CONFIG_CRC_CCITT
327   FILES:= \
328         $(LINUX_DIR)/drivers/net/ppp_async.$(LINUX_KMOD_SUFFIX) \
329         $(LINUX_DIR)/drivers/net/ppp_generic.$(LINUX_KMOD_SUFFIX) \
330         $(LINUX_DIR)/drivers/net/slhc.$(LINUX_KMOD_SUFFIX)
331 endef
332
333 define KernelPackage/ppp/2.4
334   AUTOLOAD:=$(call AutoLoad,30,slhc ppp_generic ppp_async)
335 endef
336
337 define KernelPackage/ppp/2.6
338 #  KCONFIG+= \
339 #       CONFIG_SLHC \
340 #       CONFIG_CRC_CCITT
341   FILES+= \
342         $(LINUX_DIR)/lib/crc-ccitt.$(LINUX_KMOD_SUFFIX)
343   AUTOLOAD:=$(call AutoLoad,30,crc-ccitt slhc ppp_generic ppp_async)
344 endef
345
346 define KernelPackage/ppp/description
347  Kernel modules for PPP support
348 endef
349
350 $(eval $(call KernelPackage,ppp))
351
352
353 define KernelPackage/ppp-synctty
354   SUBMENU:=$(NETWORK_SUPPORT_MENU)
355   TITLE:=PPP sync tty support
356   DEPENDS:=kmod-ppp
357   KCONFIG:=CONFIG_PPP_SYNC_TTY
358   FILES:=$(LINUX_DIR)/drivers/net/ppp_synctty.$(LINUX_KMOD_SUFFIX)
359   AUTOLOAD:=$(call AutoLoad,40,ppp_synctty)
360 endef
361
362 define KernelPackage/ppp-synctty/description
363  Kernel modules for PPP sync tty support
364 endef
365
366 $(eval $(call KernelPackage,ppp-synctty))
367
368
369 define KernelPackage/pppoe
370   SUBMENU:=$(NETWORK_SUPPORT_MENU)
371   TITLE:=PPPoE support
372   DEPENDS:=kmod-ppp
373   KCONFIG:=CONFIG_PPPOE
374   FILES:= \
375         $(LINUX_DIR)/drivers/net/pppoe.$(LINUX_KMOD_SUFFIX) \
376         $(LINUX_DIR)/drivers/net/pppox.$(LINUX_KMOD_SUFFIX)
377 endef
378
379 define KernelPackage/pppoe/description
380  Kernel modules for PPPoE (PPP over Ethernet) support
381 endef
382
383 $(eval $(call KernelPackage,pppoe))
384
385
386 define KernelPackage/pppoa
387   SUBMENU:=$(NETWORK_SUPPORT_MENU)
388   TITLE:=PPPoA support
389   DEPENDS:=kmod-ppp +kmod-atm
390   KCONFIG:=CONFIG_PPPOATM CONFIG_ATM_DRIVERS=y
391   FILES:=$(LINUX_DIR)/net/atm/pppoatm.$(LINUX_KMOD_SUFFIX)
392   AUTOLOAD:=$(call AutoLoad,40,pppoatm)
393 endef
394
395 define KernelPackage/pppoa/description
396  Kernel modules for PPPoA (PPP over ATM) support
397 endef
398
399 $(eval $(call KernelPackage,pppoa))
400
401
402 define KernelPackage/ipoa
403   SUBMENU:=$(NETWORK_SUPPORT_MENU)
404   TITLE:=IPoA support
405   DEPENDS:=kmod-atm
406   KCONFIG:=CONFIG_ATM_CLIP
407   FILES:=$(LINUX_DIR)/net/atm/clip.$(LINUX_KMOD_SUFFIX)
408   AUTOLOAD:=$(call AutoLoad,40,clip)
409 endef
410
411 define KernelPackage/ipoa/description
412   Kernel modules for IPoA (IP over ATM) support
413 endef
414
415 $(eval $(call KernelPackage,ipoa))
416
417
418 define KernelPackage/mppe
419   SUBMENU:=$(NETWORK_SUPPORT_MENU)
420   TITLE:=Microsoft PPP compression/encryption
421   DEPENDS:=kmod-ppp +kmod-crypto-arc4 +kmod-crypto-sha1
422   KCONFIG:= \
423         CONFIG_PPP_MPPE_MPPC \
424         CONFIG_PPP_MPPE
425 endef
426
427 define KernelPackage/mppe/2.4
428 #  KCONFIG:=CONFIG_PPP_MPPE_MPPC
429   FILES:=$(LINUX_DIR)/drivers/net/ppp_mppe_mppc.$(LINUX_KMOD_SUFFIX)
430   AUTOLOAD:=$(call AutoLoad,31,ppp_mppe_mppc)
431 endef
432
433 define KernelPackage/mppe/2.6
434 #  KCONFIG:=CONFIG_PPP_MPPE
435   FILES:=$(LINUX_DIR)/drivers/net/ppp_mppe.$(LINUX_KMOD_SUFFIX)
436   AUTOLOAD:=$(call AutoLoad,31,ppp_mppe)
437 endef
438
439 define KernelPackage/mppe/description
440  Kernel modules for Microsoft PPP compression/encryption
441 endef
442
443 $(eval $(call KernelPackage,mppe))
444
445
446 define KernelPackage/sched
447   SUBMENU:=$(NETWORK_SUPPORT_MENU)
448   TITLE:=Traffic schedulers
449   KCONFIG:= \
450         CONFIG_NET_SCHED=y \
451         CONFIG_NET_SCH_DSMARK \
452         CONFIG_NET_SCH_ESFQ \
453         CONFIG_NET_SCH_FIFO \
454         CONFIG_NET_SCH_GRED \
455         CONFIG_NET_SCH_HFSC \
456         CONFIG_NET_SCH_HTB \
457         CONFIG_NET_SCH_INGRESS \
458         CONFIG_NET_SCH_PRIO \
459         CONFIG_NET_SCH_RED \
460         CONFIG_NET_SCH_SFQ \
461         CONFIG_NET_SCH_TBF \
462         CONFIG_NET_SCH_TEQL
463   FILES:=$(LINUX_DIR)/net/sched/*.$(LINUX_KMOD_SUFFIX)
464 endef
465
466 define KernelPackage/sched/description
467  Kernel schedulers for IP traffic
468 endef
469
470 $(eval $(call KernelPackage,sched))
471
472
473 define KernelPackage/ax25
474   SUBMENU:=$(NETWORK_SUPPORT_MENU)
475   TITLE:=AX25 support
476   KCONFIG:= \
477         CONFIG_AX25 \
478         CONFIG_MKISS
479   FILES:= \
480         $(LINUX_DIR)/net/ax25/ax25.$(LINUX_KMOD_SUFFIX) \
481         $(LINUX_DIR)/drivers/net/hamradio/mkiss.$(LINUX_KMOD_SUFFIX)
482   AUTOLOAD:=$(call AutoLoad,80,ax25 mkiss)
483 endef
484
485 define KernelPackage/ax25/description
486  Kernel modules for AX25 support
487 endef
488
489 $(eval $(call KernelPackage,ax25))
490
491
492 define KernelPackage/mp-alg
493   SUBMENU:=$(NETWORK_SUPPORT_MENU)
494   TITLE:=ECMP caching algorithms
495   DEPENDS:=@LINUX_2_6
496   KCONFIG:= \
497         CONFIG_IP_ROUTE_MULTIPATH_RR \
498         CONFIG_IP_ROUTE_MULTIPATH_RANDOM \
499         CONFIG_IP_ROUTE_MULTIPATH_WRANDOM \
500         CONFIG_IP_ROUTE_MULTIPATH_DRR
501   FILES:= \
502         $(LINUX_DIR)/net/ipv4/multipath_rr.$(LINUX_KMOD_SUFFIX) \
503         $(LINUX_DIR)/net/ipv4/multipath_random.$(LINUX_KMOD_SUFFIX) \
504         $(LINUX_DIR)/net/ipv4/multipath_wrandom.$(LINUX_KMOD_SUFFIX) \
505         $(LINUX_DIR)/net/ipv4/multipath_drr.$(LINUX_KMOD_SUFFIX)
506   AUTOLOAD:=$(call AutoLoad,35,multipath_rr multipath_random multipath_wrandom multipath_drr)
507 endef
508
509 define KernelPackage/mp-alg/description
510  Kernel modules that provide several different algorithms for multipath 
511  route selection from the route cache. The iproute "mpath" argument allows 
512  specifying which algorithm to use for routes. 
513  quagga (at least <=0.99.6) requires a multipath patch to support this 
514  cached mp route feature.
515 endef
516
517 $(eval $(call KernelPackage,mp-alg))
518
519
520 define KernelPackage/pktgen
521   SUBMENU:=$(NETWORK_SUPPORT_MENU)
522   TITLE:=Network packet generator
523   DEPENDS:=@LINUX_2_6
524   KCONFIG:=CONFIG_NET_PKTGEN
525   FILES:=$(LINUX_DIR)/net/core/pktgen.$(LINUX_KMOD_SUFFIX)
526   AUTOLOAD:=$(call AutoLoad,99,pktgen)
527 endef
528
529 define KernelPackage/pktgen/description
530   Kernel modules for the Network Packet Generator
531 endef
532
533 $(eval $(call KernelPackage,pktgen))
534
535
536 NETWORK_DEVICES_MENU:=Network Devices
537
538 define KernelPackage/natsemi
539   SUBMENU:=$(NETWORK_DEVICES_MENU)
540   TITLE:=National Semiconductor DP8381x series 
541   DEPENDS:=@TARGET_x86
542   KCONFIG:=CONFIG_NATSEMI
543   FILES:=$(LINUX_DIR)/drivers/net/natsemi.$(LINUX_KMOD_SUFFIX)
544   AUTOLOAD:=$(call AutoLoad,20,natsemi)
545 endef
546
547 define KernelPackage/natsemi/description
548  Kernel modules for National Semiconductor DP8381x series PCI Ethernet 
549  adapters.
550 endef
551
552 $(eval $(call KernelPackage,natsemi))
553
554
555 define KernelPackage/r6040
556   SUBMENU:=$(NETWORK_DEVICES_MENU)
557   TITLE:=RDC Fast-Ethernet support
558   DEPENDS:=@TARGET_rdc
559   KCONFIG:=CONFIG_R6040
560   FILES:=$(LINUX_DIR)/drivers/net/r6040.$(LINUX_KMOD_SUFFIX)
561   AUTOLOAD:=$(call AutoLoad,99,r6040)
562 endef
563
564 define KernelPackage/r6040/description
565  Kernel modules for RDC Fast-Ethernet adapters.
566 endef
567
568 $(eval $(call KernelPackage,r6040))
569
570
571 define KernelPackage/sis900
572   SUBMENU:=$(NETWORK_DEVICES_MENU)
573   TITLE:=SiS 900 Ethernet support
574   DEPENDS:=@TARGET_x86
575   KCONFIG:=CONFIG_SIS900
576   FILES:=$(LINUX_DIR)/drivers/net/sis900.$(LINUX_KMOD_SUFFIX)
577   AUTOLOAD:=$(call AutoLoad,50,sis900)
578 endef
579
580 define KernelPackage/sis900/description
581  Kernel modules for Sis 900 Ethernet adapters.
582 endef
583
584 $(eval $(call KernelPackage,sis900))
585
586 define KernelPackage/sky2
587   SUBMENU:=$(NETWORK_DEVICES_MENU)
588   TITLE:=SysKonnect Yukon2 support
589   DEPENDS:=@TARGET_x86
590   KCONFIG:=CONFIG_SKY2
591   FILES:=$(LINUX_DIR)/drivers/net/sky2.$(LINUX_KMOD_SUFFIX)
592   AUTOLOAD:=$(call AutoLoad,50,sky2)
593 endef
594
595 define KernelPackage/sky2/description
596   This driver supports Gigabit Ethernet adapters based on the
597   Marvell Yukon 2 chipset:
598   Marvell 88E8021/88E8022/88E8035/88E8036/88E8038/88E8050/88E8052/
599   88E8053/88E8055/88E8061/88E8062, SysKonnect SK-9E21D/SK-9S21
600
601   There is companion driver for the older Marvell Yukon and
602   Genesis based adapters: skge.
603 endef
604
605 $(eval $(call KernelPackage,sky2))
606
607
608 define KernelPackage/via-rhine
609   SUBMENU:=$(NETWORK_DEVICES_MENU)
610   TITLE:=Via Rhine ethernet support
611   DEPENDS:=@TARGET_x86
612   KCONFIG:=CONFIG_VIA_RHINE
613   FILES:=$(LINUX_DIR)/drivers/net/via-rhine.$(LINUX_KMOD_SUFFIX)
614   AUTOLOAD:=$(call AutoLoad,50,via-rhine)
615 endef
616
617 define KernelPackage/via-rhine/description
618  Kernel modules for Via Rhine Ethernet chipsets.
619 endef
620
621 $(eval $(call KernelPackage,via-rhine))
622
623
624 define KernelPackage/via-velocity
625   SUBMENU:=$(NETWORK_DEVICES_MENU)
626   TITLE:=VIA Velocity Gigabit Ethernet Adapter kernel support
627   DEPENDS:=@TARGET_ixp4xx
628   KCONFIG:=CONFIG_VIA_VELOCITY
629   FILES:=$(LINUX_DIR)/drivers/net/via-velocity.$(LINUX_KMOD_SUFFIX)
630   AUTOLOAD:=$(call AutoLoad,50,via-velocity)
631 endef
632
633 define KernelPackage/via-velocity/description
634  Kernel modules for VIA Velocity Gigabit Ethernet chipsets.
635 endef
636
637 $(eval $(call KernelPackage,via-velocity))
638
639
640 define KernelPackage/8139too
641   SUBMENU:=$(NETWORK_DEVICES_MENU)
642   TITLE:=RealTek RTL-8139 PCI Fast Ethernet Adapter kernel support
643   DEPENDS:=@TARGET_x86
644   KCONFIG:=CONFIG_8139TOO
645   FILES:=$(LINUX_DIR)/drivers/net/8139too.$(LINUX_KMOD_SUFFIX)
646   AUTOLOAD:=$(call AutoLoad,50,8139too)
647 endef
648
649 define KernelPackage/8139too/description
650  Kernel modules for RealTek RTL-8139 PCI Fast Ethernet adapters.
651 endef
652
653 $(eval $(call KernelPackage,8139too))
654
655
656 define KernelPackage/r8169
657   SUBMENU:=$(NETWORK_DEVICES_MENU)
658   TITLE:=RealTek RTL-8169 PCI Gigabit Ethernet Adapter kernel support
659   DEPENDS:=@TARGET_x86 
660   KCONFIG:=CONFIG_R8169 CONFIG_R8169_NAPI=y CONFIG_R8169_VLAN=n
661   FILES:=$(LINUX_DIR)/drivers/net/r8169.$(LINUX_KMOD_SUFFIX)
662   AUTOLOAD:=$(call AutoLoad,50,r8169)
663 endef
664
665 define KernelPackage/r8169/description
666  Kernel modules for RealTek RTL-8169 PCI Gigabit Ethernet adapters.
667 endef
668
669 $(eval $(call KernelPackage,r8169))
670
671
672 define KernelPackage/ne2k-pci
673   SUBMENU:=$(NETWORK_DEVICES_MENU)
674   TITLE:=ne2k-pci Ethernet Adapter kernel support
675   DEPENDS:=@TARGET_x86
676   KCONFIG:=CONFIG_NE2K_PCI
677   FILES:= \
678         $(LINUX_DIR)/drivers/net/ne2k-pci.$(LINUX_KMOD_SUFFIX) \
679         $(LINUX_DIR)/drivers/net/8390.$(LINUX_KMOD_SUFFIX)
680   AUTOLOAD:=$(call AutoLoad,50,8390 ne2k-pci)
681 endef
682
683 define KernelPackage/ne2k-pci/description
684  Kernel modules for NE2000 PCI Ethernet Adapter kernel.
685 endef
686
687 $(eval $(call KernelPackage,ne2k-pci))
688
689
690 define KernelPackage/ixp4xx-npe
691   SUBMENU:=$(NETWORK_DEVICES_MENU)
692   TITLE:=Intel(R) IXP4xx ethernet support
693   DEPENDS:=@TARGET_ixp4xx
694   KCONFIG:=CONFIG_IXP4XX_MAC
695   FILES:= \
696         $(LINUX_DIR)/drivers/net/ixp4xx/ixp4xx_npe.$(LINUX_KMOD_SUFFIX) \
697         $(LINUX_DIR)/drivers/net/ixp4xx/ixp4xx_qmgr.$(LINUX_KMOD_SUFFIX) \
698         $(LINUX_DIR)/drivers/net/ixp4xx/ixp4xx_mac.$(LINUX_KMOD_SUFFIX)
699   AUTOLOAD:=$(call AutoLoad,20,ixp4xx_npe ixp4xx_qmgr ixp4xx_mac)
700 endef
701
702 define KernelPackage/ixp4xx-npe/description
703  Kernel modules for Intel(R) IXP4xx onboard ethernet.
704 endef
705
706 $(eval $(call KernelPackage,ixp4xx-npe))
707
708
709 define KernelPackage/e100
710   SUBMENU:=$(NETWORK_DEVICES_MENU)
711   TITLE:=Intel(R) PRO/100+ cards kernel support
712   DEPENDS:=@TARGET_x86
713   KCONFIG:=CONFIG_E100
714   FILES:=$(LINUX_DIR)/drivers/net/e100.$(LINUX_KMOD_SUFFIX)
715   AUTOLOAD:=$(call AutoLoad,50,e100)
716 endef
717
718 define KernelPackage/e100/description
719  Kernel modules for Intel(R) PRO/100+ Ethernet adapters.
720 endef
721
722 $(eval $(call KernelPackage,e100))
723
724
725 define KernelPackage/e1000
726   SUBMENU:=$(NETWORK_DEVICES_MENU)
727   TITLE:=Intel(R) PRO/1000 cards kernel support
728   DEPENDS:=@TARGET_x86
729   KCONFIG:=CONFIG_E1000
730   FILES:=$(LINUX_DIR)/drivers/net/e1000/e1000.$(LINUX_KMOD_SUFFIX)
731   AUTOLOAD:=$(call AutoLoad,50,e1000)
732 endef
733
734 define KernelPackage/e1000/description
735  Kernel modules for Intel(R) PRO/1000 Ethernet adapters.
736 endef
737
738 $(eval $(call KernelPackage,e1000))
739
740 define KernelPackage/b44
741   TITLE:=Broadcom 44xx driver
742   FILES:=$(LINUX_DIR)/drivers/net/b44.$(LINUX_KMOD_SUFFIX)
743   KCONFIG:=CONFIG_B44
744   DEPENDS:=@TARGET_x86 @BROKEN
745   SUBMENU:=$(NETWORK_DEVICES_MENU)
746   AUTOLOAD:=$(call AutoLoad,50,b44)
747 endef
748
749 define KernelPackage/b44/description
750  Kernel modules for Broadcom 44xx Ethernet adapters.
751 endef
752 $(eval $(call KernelPackage,b44))
753
754 define KernelPackage/3c59x
755   SUBMENU:=$(NETWORK_DEVICES_MENU)
756   TITLE:=3Com 3c590/3c900 series (592/595/597) Vortex/Boomerang
757   DEPENDS:=@TARGET_x86
758   KCONFIG:=CONFIG_VORTEX
759   FILES:=$(LINUX_DIR)/drivers/net/3c59x.$(LINUX_KMOD_SUFFIX)
760   AUTOLOAD:=$(call AutoLoad,50,3c59x)
761 endef
762
763 define KernelPackage/3c59x/description
764  This option enables driver support for a large number of 10mbps and 
765  10/100mbps EISA, PCI and PCMCIA 3Com Ethernet adapters: 
766  - "Vortex"    (Fast EtherLink 3c590/3c592/3c595/3c597) EISA and PCI 
767  - "Boomerang" (EtherLink XL 3c900 or 3c905)            PCI 
768  - "Cyclone"   (3c540/3c900/3c905/3c980/3c575/3c656)    PCI and Cardbus 
769  - "Tornado"   (3c905)                                  PCI  
770  - "Hurricane" (3c555/3cSOHO)                           PCI 
771 endef
772
773 $(eval $(call KernelPackage,3c59x))
774
775 define KernelPackage/pcnet32
776   SUBMENU:=$(NETWORK_DEVICES_MENU)
777   TITLE:=AMD PCnet32 PCI support
778   DEPENDS:=@TARGET_x86
779   KCONFIG:=CONFIG_PCNET32
780   FILES:=$(LINUX_DIR)/drivers/net/pcnet32.$(LINUX_KMOD_SUFFIX)
781   AUTOLOAD:=$(call AutoLoad,50,pcnet32)
782 endef
783
784 define KernelPackage/pcnet32/description
785  Kernel modules for AMD PCnet32 Ethernet adapters.
786 endef
787
788 $(eval $(call KernelPackage,pcnet32))
789
790
791 define KernelPackage/tg3
792   TITLE:=Broadcom Tigon3 Gigabit Ethernet
793   FILES:=$(LINUX_DIR)/drivers/net/tg3.$(LINUX_KMOD_SUFFIX)
794   KCONFIG:=CONFIG_TIGON3
795   DEPENDS:=@LINUX_2_6
796   SUBMENU:=$(NETWORK_DEVICES_MENU)
797   AUTOLOAD:=$(call AutoLoad,50,tg3)
798 endef
799
800 define KernelPackage/tg3/description
801  Kernel modules for Broadcom Tigon3 Gigabit Ethernet adapters.
802 endef
803 $(eval $(call KernelPackage,tg3))
804
805 define KernelPackage/ssb-gige
806   TITLE:=Broadcom SSB Gigabit Ethernet
807   KCONFIG:=CONFIG_SSB_DRIVER_GIGE=y
808   DEPENDS:=@TARGET_brcm47xx +kmod-tg3
809   SUBMENU:=$(NETWORK_DEVICES_MENU)
810 endef
811
812 define KernelPackage/ssb-gige/description
813  Kernel modules for Broadcom SSB Gigabit Ethernet adapters.
814 endef
815 $(eval $(call KernelPackage,ssb-gige))