This Makefile patch adds support for the "Privacy Extensions",
[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
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
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   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   KCONFIG:= \
322         CONFIG_PPP \
323         CONFIG_PPP_ASYNC \
324         CONFIG_SLHC \
325         CONFIG_CRC_CCITT
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 endef
331
332 define KernelPackage/ppp/2.4
333   AUTOLOAD:=$(call AutoLoad,30,slhc ppp_generic ppp_async)
334 endef
335
336 define KernelPackage/ppp/2.6
337 #  KCONFIG+= \
338 #       CONFIG_SLHC \
339 #       CONFIG_CRC_CCITT
340   FILES+= \
341         $(LINUX_DIR)/lib/crc-ccitt.$(LINUX_KMOD_SUFFIX)
342   AUTOLOAD:=$(call AutoLoad,30,crc-ccitt slhc ppp_generic ppp_async)
343 endef
344
345 define KernelPackage/ppp/description
346  Kernel modules for PPP support
347 endef
348
349 $(eval $(call KernelPackage,ppp))
350
351
352 define KernelPackage/ppp-synctty
353   SUBMENU:=$(NETWORK_SUPPORT_MENU)
354   TITLE:=PPP sync tty support
355   DEPENDS:=kmod-ppp
356   KCONFIG:=CONFIG_PPP_SYNC_TTY
357   FILES:=$(LINUX_DIR)/drivers/net/ppp_synctty.$(LINUX_KMOD_SUFFIX)
358   AUTOLOAD:=$(call AutoLoad,40,ppp_synctty)
359 endef
360
361 define KernelPackage/ppp-synctty/description
362  Kernel modules for PPP sync tty support
363 endef
364
365 $(eval $(call KernelPackage,ppp-synctty))
366
367
368 define KernelPackage/pppoe
369   SUBMENU:=$(NETWORK_SUPPORT_MENU)
370   TITLE:=PPPoE support
371   DEPENDS:=kmod-ppp
372   KCONFIG:=CONFIG_PPPOE
373   FILES:= \
374         $(LINUX_DIR)/drivers/net/pppoe.$(LINUX_KMOD_SUFFIX) \
375         $(LINUX_DIR)/drivers/net/pppox.$(LINUX_KMOD_SUFFIX)
376 endef
377
378 define KernelPackage/pppoe/description
379  Kernel modules for PPPoE (PPP over Ethernet) support
380 endef
381
382 $(eval $(call KernelPackage,pppoe))
383
384
385 define KernelPackage/pppoa
386   SUBMENU:=$(NETWORK_SUPPORT_MENU)
387   TITLE:=PPPoA support
388   DEPENDS:=kmod-ppp +kmod-atm
389   KCONFIG:=CONFIG_PPPOATM CONFIG_ATM_DRIVERS=y
390   FILES:=$(LINUX_DIR)/net/atm/pppoatm.$(LINUX_KMOD_SUFFIX)
391   AUTOLOAD:=$(call AutoLoad,40,pppoatm)
392 endef
393
394 define KernelPackage/pppoa/description
395  Kernel modules for PPPoA (PPP over ATM) support
396 endef
397
398 $(eval $(call KernelPackage,pppoa))
399
400
401 define KernelPackage/ipoa
402   SUBMENU:=$(NETWORK_SUPPORT_MENU)
403   TITLE:=IPoA support
404   DEPENDS:=kmod-atm
405   KCONFIG:=CONFIG_ATM_CLIP
406   FILES:=$(LINUX_DIR)/net/atm/clip.$(LINUX_KMOD_SUFFIX)
407   AUTOLOAD:=$(call AutoLoad,40,clip)
408 endef
409
410 define KernelPackage/ipoa/description
411   Kernel modules for IPoA (IP over ATM) support
412 endef
413
414 $(eval $(call KernelPackage,ipoa))
415
416
417 define KernelPackage/mppe
418   SUBMENU:=$(NETWORK_SUPPORT_MENU)
419   TITLE:=Microsoft PPP compression/encryption
420   DEPENDS:=kmod-ppp +kmod-crypto-arc4 +kmod-crypto-sha1
421   KCONFIG:= \
422         CONFIG_PPP_MPPE_MPPC \
423         CONFIG_PPP_MPPE
424 endef
425
426 define KernelPackage/mppe/2.4
427 #  KCONFIG:=CONFIG_PPP_MPPE_MPPC
428   FILES:=$(LINUX_DIR)/drivers/net/ppp_mppe_mppc.$(LINUX_KMOD_SUFFIX)
429   AUTOLOAD:=$(call AutoLoad,31,ppp_mppe_mppc)
430 endef
431
432 define KernelPackage/mppe/2.6
433 #  KCONFIG:=CONFIG_PPP_MPPE
434   FILES:=$(LINUX_DIR)/drivers/net/ppp_mppe.$(LINUX_KMOD_SUFFIX)
435   AUTOLOAD:=$(call AutoLoad,31,ppp_mppe)
436 endef
437
438 define KernelPackage/mppe/description
439  Kernel modules for Microsoft PPP compression/encryption
440 endef
441
442 $(eval $(call KernelPackage,mppe))
443
444
445 define KernelPackage/sched
446   SUBMENU:=$(NETWORK_SUPPORT_MENU)
447   TITLE:=Traffic schedulers
448   KCONFIG:= \
449         CONFIG_NET_SCHED=y \
450         CONFIG_NET_SCH_DSMARK \
451         CONFIG_NET_SCH_ESFQ \
452         CONFIG_NET_SCH_FIFO \
453         CONFIG_NET_SCH_GRED \
454         CONFIG_NET_SCH_HFSC \
455         CONFIG_NET_SCH_HTB \
456         CONFIG_NET_SCH_INGRESS \
457         CONFIG_NET_SCH_PRIO \
458         CONFIG_NET_SCH_RED \
459         CONFIG_NET_SCH_SFQ \
460         CONFIG_NET_SCH_TBF \
461         CONFIG_NET_SCH_TEQL
462   FILES:=$(LINUX_DIR)/net/sched/*.$(LINUX_KMOD_SUFFIX)
463 endef
464
465 define KernelPackage/sched/description
466  Kernel schedulers for IP traffic
467 endef
468
469 $(eval $(call KernelPackage,sched))
470
471
472 define KernelPackage/ax25
473   SUBMENU:=$(NETWORK_SUPPORT_MENU)
474   TITLE:=AX25 support
475   KCONFIG:= \
476         CONFIG_AX25 \
477         CONFIG_MKISS
478   FILES:= \
479         $(LINUX_DIR)/net/ax25/ax25.$(LINUX_KMOD_SUFFIX) \
480         $(LINUX_DIR)/drivers/net/hamradio/mkiss.$(LINUX_KMOD_SUFFIX)
481   AUTOLOAD:=$(call AutoLoad,80,ax25 mkiss)
482 endef
483
484 define KernelPackage/ax25/description
485  Kernel modules for AX25 support
486 endef
487
488 $(eval $(call KernelPackage,ax25))
489
490
491 define KernelPackage/mp-alg
492   SUBMENU:=$(NETWORK_SUPPORT_MENU)
493   TITLE:=ECMP caching algorithms
494   DEPENDS:=@LINUX_2_6
495   KCONFIG:= \
496         CONFIG_IP_ROUTE_MULTIPATH_RR \
497         CONFIG_IP_ROUTE_MULTIPATH_RANDOM \
498         CONFIG_IP_ROUTE_MULTIPATH_WRANDOM \
499         CONFIG_IP_ROUTE_MULTIPATH_DRR
500   FILES:= \
501         $(LINUX_DIR)/net/ipv4/multipath_rr.$(LINUX_KMOD_SUFFIX) \
502         $(LINUX_DIR)/net/ipv4/multipath_random.$(LINUX_KMOD_SUFFIX) \
503         $(LINUX_DIR)/net/ipv4/multipath_wrandom.$(LINUX_KMOD_SUFFIX) \
504         $(LINUX_DIR)/net/ipv4/multipath_drr.$(LINUX_KMOD_SUFFIX)
505   AUTOLOAD:=$(call AutoLoad,35,multipath_rr multipath_random multipath_wrandom multipath_drr)
506 endef
507
508 define KernelPackage/mp-alg/description
509  Kernel modules that provide several different algorithms for multipath 
510  route selection from the route cache. The iproute "mpath" argument allows 
511  specifying which algorithm to use for routes. 
512  quagga (at least <=0.99.6) requires a multipath patch to support this 
513  cached mp route feature.
514 endef
515
516 $(eval $(call KernelPackage,mp-alg))
517
518
519 define KernelPackage/pktgen
520   SUBMENU:=$(NETWORK_SUPPORT_MENU)
521   TITLE:=Network packet generator
522   DEPENDS:=@LINUX_2_6
523   KCONFIG:=CONFIG_NET_PKTGEN
524   FILES:=$(LINUX_DIR)/net/core/pktgen.$(LINUX_KMOD_SUFFIX)
525   AUTOLOAD:=$(call AutoLoad,99,pktgen)
526 endef
527
528 define KernelPackage/pktgen/description
529   Kernel modules for the Network Packet Generator
530 endef
531
532 $(eval $(call KernelPackage,pktgen))
533
534
535 NETWORK_DEVICES_MENU:=Network Devices
536
537 define KernelPackage/natsemi
538   SUBMENU:=$(NETWORK_DEVICES_MENU)
539   TITLE:=National Semiconductor DP8381x series 
540   DEPENDS:=@TARGET_x86
541   KCONFIG:=CONFIG_NATSEMI
542   FILES:=$(LINUX_DIR)/drivers/net/natsemi.$(LINUX_KMOD_SUFFIX)
543   AUTOLOAD:=$(call AutoLoad,20,natsemi)
544 endef
545
546 define KernelPackage/natsemi/description
547  Kernel modules for National Semiconductor DP8381x series PCI Ethernet 
548  adapters.
549 endef
550
551 $(eval $(call KernelPackage,natsemi))
552
553
554 define KernelPackage/r6040
555   SUBMENU:=$(NETWORK_DEVICES_MENU)
556   TITLE:=RDC Fast-Ethernet support
557   DEPENDS:=@TARGET_rdc
558   KCONFIG:=CONFIG_R6040
559   FILES:=$(LINUX_DIR)/drivers/net/r6040.$(LINUX_KMOD_SUFFIX)
560 endef
561
562 define KernelPackage/r6040/description
563  Kernel modules for RDC Fast-Ethernet adapters.
564 endef
565
566 $(eval $(call KernelPackage,r6040))
567
568
569 define KernelPackage/sis900
570   SUBMENU:=$(NETWORK_DEVICES_MENU)
571   TITLE:=SiS 900 Ethernet support
572   DEPENDS:=@TARGET_x86
573   KCONFIG:=CONFIG_SIS900
574   FILES:=$(LINUX_DIR)/drivers/net/sis900.$(LINUX_KMOD_SUFFIX)
575   AUTOLOAD:=$(call AutoLoad,50,sis900)
576 endef
577
578 define KernelPackage/sis900/description
579  Kernel modules for Sis 900 Ethernet adapters.
580 endef
581
582 $(eval $(call KernelPackage,sis900))
583
584
585 define KernelPackage/via-rhine
586   SUBMENU:=$(NETWORK_DEVICES_MENU)
587   TITLE:=Via Rhine ethernet support
588   DEPENDS:=@TARGET_x86
589   KCONFIG:=CONFIG_VIA_RHINE
590   FILES:=$(LINUX_DIR)/drivers/net/via-rhine.$(LINUX_KMOD_SUFFIX)
591   AUTOLOAD:=$(call AutoLoad,50,via-rhine)
592 endef
593
594 define KernelPackage/via-rhine/description
595  Kernel modules for Via Rhine Ethernet chipsets.
596 endef
597
598 $(eval $(call KernelPackage,via-rhine))
599
600
601 define KernelPackage/via-velocity
602   SUBMENU:=$(NETWORK_DEVICES_MENU)
603   TITLE:=VIA Velocity Gigabit Ethernet Adapter kernel support
604   DEPENDS:=@TARGET_ixp4xx
605   KCONFIG:=CONFIG_VIA_VELOCITY
606   FILES:=$(LINUX_DIR)/drivers/net/via-velocity.$(LINUX_KMOD_SUFFIX)
607   AUTOLOAD:=$(call AutoLoad,50,via-velocity)
608 endef
609
610 define KernelPackage/via-velocity/description
611  Kernel modules for VIA Velocity Gigabit Ethernet chipsets.
612 endef
613
614 $(eval $(call KernelPackage,via-velocity))
615
616
617 define KernelPackage/8139too
618   SUBMENU:=$(NETWORK_DEVICES_MENU)
619   TITLE:=RealTek RTL-8139 PCI Fast Ethernet Adapter kernel support
620   DEPENDS:=@TARGET_x86
621   KCONFIG:=CONFIG_8139TOO
622   FILES:=$(LINUX_DIR)/drivers/net/8139too.$(LINUX_KMOD_SUFFIX)
623   AUTOLOAD:=$(call AutoLoad,50,8139too)
624 endef
625
626 define KernelPackage/8139too/description
627  Kernel modules for RealTek RTL-8139 PCI Fast Ethernet adapters.
628 endef
629
630 $(eval $(call KernelPackage,8139too))
631
632
633 define KernelPackage/r8169
634   SUBMENU:=$(NETWORK_DEVICES_MENU)
635   TITLE:=RealTek RTL-8169 PCI Gigabit Ethernet Adapter kernel support
636   DEPENDS:=@TARGET_x86 
637   KCONFIG:=CONFIG_R8169 CONFIG_R8169_NAPI=y CONFIG_R8169_VLAN=n
638   FILES:=$(LINUX_DIR)/drivers/net/r8169.$(LINUX_KMOD_SUFFIX)
639   AUTOLOAD:=$(call AutoLoad,50,r8169)
640 endef
641
642 define KernelPackage/r8169/description
643  Kernel modules for RealTek RTL-8169 PCI Gigabit Ethernet adapters.
644 endef
645
646 $(eval $(call KernelPackage,r8169))
647
648
649 define KernelPackage/ne2k-pci
650   SUBMENU:=$(NETWORK_DEVICES_MENU)
651   TITLE:=ne2k-pci Ethernet Adapter kernel support
652   DEPENDS:=@TARGET_x86
653   KCONFIG:=CONFIG_NE2K_PCI
654   FILES:= \
655         $(LINUX_DIR)/drivers/net/ne2k-pci.$(LINUX_KMOD_SUFFIX) \
656         $(LINUX_DIR)/drivers/net/8390.$(LINUX_KMOD_SUFFIX)
657   AUTOLOAD:=$(call AutoLoad,50,8390 ne2k-pci)
658 endef
659
660 define KernelPackage/ne2k-pci/description
661  Kernel modules for NE2000 PCI Ethernet Adapter kernel.
662 endef
663
664 $(eval $(call KernelPackage,ne2k-pci))
665
666
667 define KernelPackage/ixp4xx-npe
668   SUBMENU:=$(NETWORK_DEVICES_MENU)
669   TITLE:=Intel(R) IXP4xx ethernet support
670   DEPENDS:=@TARGET_ixp4xx
671   KCONFIG:=CONFIG_IXP4XX_MAC
672   FILES:= \
673         $(LINUX_DIR)/drivers/net/ixp4xx/ixp4xx_npe.$(LINUX_KMOD_SUFFIX) \
674         $(LINUX_DIR)/drivers/net/ixp4xx/ixp4xx_qmgr.$(LINUX_KMOD_SUFFIX) \
675         $(LINUX_DIR)/drivers/net/ixp4xx/ixp4xx_mac.$(LINUX_KMOD_SUFFIX)
676   AUTOLOAD:=$(call AutoLoad,20,ixp4xx_npe ixp4xx_qmgr ixp4xx_mac)
677 endef
678
679 define KernelPackage/ixp4xx-npe/description
680  Kernel modules for Intel(R) IXP4xx onboard ethernet.
681 endef
682
683 $(eval $(call KernelPackage,ixp4xx-npe))
684
685
686 define KernelPackage/e100
687   SUBMENU:=$(NETWORK_DEVICES_MENU)
688   TITLE:=Intel(R) PRO/100+ cards kernel support
689   DEPENDS:=@TARGET_x86
690   KCONFIG:=CONFIG_E100
691   FILES:=$(LINUX_DIR)/drivers/net/e100.$(LINUX_KMOD_SUFFIX)
692   AUTOLOAD:=$(call AutoLoad,50,e100)
693 endef
694
695 define KernelPackage/e100/description
696  Kernel modules for Intel(R) PRO/100+ Ethernet adapters.
697 endef
698
699 $(eval $(call KernelPackage,e100))
700
701
702 define KernelPackage/e1000
703   SUBMENU:=$(NETWORK_DEVICES_MENU)
704   TITLE:=Intel(R) PRO/1000 cards kernel support
705   DEPENDS:=@TARGET_x86
706   KCONFIG:=CONFIG_E1000
707   FILES:=$(LINUX_DIR)/drivers/net/e1000/e1000.$(LINUX_KMOD_SUFFIX)
708   AUTOLOAD:=$(call AutoLoad,50,e1000)
709 endef
710
711 define KernelPackage/e1000/description
712  Kernel modules for Intel(R) PRO/1000 Ethernet adapters.
713 endef
714
715 $(eval $(call KernelPackage,e1000))
716
717 define KernelPackage/b44
718   TITLE:=Broadcom 44xx driver
719   FILES:=$(LINUX_DIR)/drivers/net/b44.$(LINUX_KMOD_SUFFIX)
720   KCONFIG:=CONFIG_B44
721   DEPENDS:=@TARGET_x86 @BROKEN
722   SUBMENU:=$(NETWORK_DEVICES_MENU)
723   AUTOLOAD:=$(call AutoLoad,50,b44)
724 endef
725
726 define KernelPackage/b44/description
727  Kernel modules for Broadcom 44xx Ethernet adapters.
728 endef
729 $(eval $(call KernelPackage,b44))
730
731 define KernelPackage/3c59x
732   SUBMENU:=$(NETWORK_DEVICES_MENU)
733   TITLE:=3Com 3c590/3c900 series (592/595/597) Vortex/Boomerang
734   DEPENDS:=@TARGET_x86
735   KCONFIG:=CONFIG_VORTEX
736   FILES:=$(LINUX_DIR)/drivers/net/3c59x.$(LINUX_KMOD_SUFFIX)
737   AUTOLOAD:=$(call AutoLoad,50,3c59x)
738 endef
739
740 define KernelPackage/3c59x/description
741  This option enables driver support for a large number of 10mbps and 
742  10/100mbps EISA, PCI and PCMCIA 3Com Ethernet adapters: 
743  - "Vortex"    (Fast EtherLink 3c590/3c592/3c595/3c597) EISA and PCI 
744  - "Boomerang" (EtherLink XL 3c900 or 3c905)            PCI 
745  - "Cyclone"   (3c540/3c900/3c905/3c980/3c575/3c656)    PCI and Cardbus 
746  - "Tornado"   (3c905)                                  PCI  
747  - "Hurricane" (3c555/3cSOHO)                           PCI 
748 endef
749
750 $(eval $(call KernelPackage,3c59x))
751
752 define KernelPackage/pcnet32
753   SUBMENU:=$(NETWORK_DEVICES_MENU)
754   TITLE:=AMD PCnet32 PCI support
755   DEPENDS:=@TARGET_x86
756   KCONFIG:=CONFIG_PCNET32
757   FILES:=$(LINUX_DIR)/drivers/net/pcnet32.$(LINUX_KMOD_SUFFIX)
758   AUTOLOAD:=$(call AutoLoad,50,pcnet32)
759 endef
760
761 define KernelPackage/pcnet32/description
762  Kernel modules for AMD PCnet32 Ethernet adapters.
763 endef
764
765 $(eval $(call KernelPackage,pcnet32))
766
767
768 define KernelPackage/tg3
769   TITLE:=Broadcom Tigon3 Gigabit Ethernet
770   FILES:=$(LINUX_DIR)/drivers/net/tg3.$(LINUX_KMOD_SUFFIX)
771   KCONFIG:=CONFIG_TIGON3
772   DEPENDS:=@LINUX_2_6
773   SUBMENU:=$(NETWORK_DEVICES_MENU)
774   AUTOLOAD:=$(call AutoLoad,50,tg3)
775 endef
776
777 define KernelPackage/tg3/description
778  Kernel modules for Broadcom Tigon3 Gigabit Ethernet adapters.
779 endef
780 $(eval $(call KernelPackage,tg3))
781
782 define KernelPackage/ssb-gige
783   TITLE:=Broadcom SSB Gigabit Ethernet
784   KCONFIG:=CONFIG_SSB_DRIVER_GIGE=y
785   DEPENDS:=@TARGET_brcm47xx +kmod-tg3
786   SUBMENU:=$(NETWORK_DEVICES_MENU)
787 endef
788
789 define KernelPackage/ssb-gige/description
790  Kernel modules for Broadcom SSB Gigabit Ethernet adapters.
791 endef
792 $(eval $(call KernelPackage,ssb-gige))