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