2 # Copyright (C) 2006 OpenWrt.org
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
9 NETWORK_SUPPORT_MENU
:=Network Support
11 define KernelPackage
/atm
12 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
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
)
24 define KernelPackage
/atm
/description
25 Kernel modules for ATM support
28 $(eval
$(call KernelPackage
,atm
))
31 define KernelPackage
/atmtcp
32 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
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
)
40 define KernelPackage
/atmtcp
/description
41 Kernel module for ATM over TCP support
44 $(eval
$(call KernelPackage
,atmtcp
))
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
)
55 define KernelPackage
/bonding
/description
56 Kernel module for NIC bonding.
59 $(eval
$(call KernelPackage
,bonding
))
62 define KernelPackage
/capi
63 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
64 TITLE
:=CAPI
(ISDN
) Support
69 CONFIG_ISDN_CAPI_CAPI20
71 $(LINUX_DIR
)/drivers
/isdn
/capi
/kernelcapi.
$(LINUX_KMOD_SUFFIX
) \
72 $(LINUX_DIR
)/drivers
/isdn
/capi
/capi.
$(LINUX_KMOD_SUFFIX
)
73 AUTOLOAD
:=$(call AutoLoad
,30,kernelcapi capi
)
76 define KernelPackage
/capi
/description
77 Kernel module for basic CAPI
(ISDN
) support
80 $(eval
$(call KernelPackage
,capi
))
83 define KernelPackage
/ipip
84 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
85 TITLE
:=IP in IP encapsulation support
89 FILES
:=$(LINUX_DIR
)/net
/ipv4
/ipip.
$(LINUX_KMOD_SUFFIX
)
90 AUTOLOAD
:=$(call AutoLoad
,30,ipip
)
93 define KernelPackage
/ipip
/2.6
94 # KCONFIG+=CONFIG_INET_TUNNEL
95 FILES
+=$(LINUX_DIR
)/net
/ipv4
/tunnel4.
$(LINUX_KMOD_SUFFIX
)
96 AUTOLOAD
+=$(call AutoLoad
,31,tunnel4
)
99 define KernelPackage
/ipip
/description
100 Kernel modules for IP in IP encapsulation
103 $(eval
$(call KernelPackage
,ipip
))
106 define KernelPackage
/ipsec
107 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
108 TITLE
:=IPsec related modules
(IPv4 and IPv6
)
109 DEPENDS
:=@LINUX_2_6
+kmod-crypto
114 $(LINUX_DIR
)/net
/key
/af_key.
$(LINUX_KMOD_SUFFIX
) \
115 $(LINUX_DIR
)/net
/xfrm
/xfrm_user.
$(LINUX_KMOD_SUFFIX
)
118 define KernelPackage
/ipsec
/description
119 Kernel modules for IPsec support in both IPv4 and IPv6.
125 $(eval
$(call KernelPackage
,ipsec
))
128 define KernelPackage
/ipsec4
129 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
130 TITLE
:=IPsec related modules
(IPv4
)
136 CONFIG_INET_XFRM_TUNNEL
137 FILES
:= $(foreach mod
,ah4 esp4 ipcomp xfrm4_tunnel
, \
138 $(LINUX_DIR
)/net
/ipv4
/$(mod
).
$(LINUX_KMOD_SUFFIX
) \
142 define KernelPackage
/ipsec4
/description
143 Kernel modules for IPsec support in IPv4.
151 $(eval
$(call KernelPackage
,ipsec4
))
154 define KernelPackage
/ipsec6
155 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
156 TITLE
:=IPsec related modules
(IPv6
)
161 CONFIG_INET6_IPCOMP \
162 CONFIG_INET6_XFRM_TUNNEL \
164 FILES
:= $(foreach mod
,ah6 esp6 ipcomp6 xfrm6_tunnel tunnel6
, \
165 $(LINUX_DIR
)/net
/ipv6
/$(mod
).
$(LINUX_KMOD_SUFFIX
) \
169 define KernelPackage
/ipsec6
/description
170 Kernel modules for IPsec support in IPv6.
179 $(eval
$(call KernelPackage
,ipsec6
))
182 define KernelPackage
/ipv6
183 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
188 FILES
:=$(LINUX_DIR
)/net
/ipv6
/ipv6.
$(LINUX_KMOD_SUFFIX
)
189 AUTOLOAD
:=$(call AutoLoad
,20,ipv6
)
192 define KernelPackage
/ipv6
/2.6
193 # KCONFIG+=CONFIG_IPV6_SIT
194 FILES
+=$(LINUX_DIR
)/net
/ipv6
/sit.
$(LINUX_KMOD_SUFFIX
)
195 AUTOLOAD
+=$(call AutoLoad
,21,sit
)
198 define KernelPackage
/ipv6
/description
199 Kernel modules for IPv6 support
202 $(eval
$(call KernelPackage
,ipv6
))
205 define KernelPackage
/gre
206 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
208 KCONFIG
:=CONFIG_NET_IPGRE
209 FILES
=$(LINUX_DIR
)/net
/ipv4
/ip_gre.
$(LINUX_KMOD_SUFFIX
)
212 define KernelPackage
/gre
/description
213 Generic Routing Encapsulation support
216 $(eval
$(call KernelPackage
,gre
))
219 define KernelPackage
/tun
220 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
221 TITLE
:=Universal TUN
/TAP driver
223 FILES
:=$(LINUX_DIR
)/drivers
/net
/tun.
$(LINUX_KMOD_SUFFIX
)
224 AUTOLOAD
:=$(call AutoLoad
,30,tun
)
227 define KernelPackage
/tun
/description
228 Kernel support for the TUN
/TAP tunneling device
231 $(eval
$(call KernelPackage
,tun
))
234 define KernelPackage
/ppp
235 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
243 $(LINUX_DIR
)/drivers
/net
/ppp_async.
$(LINUX_KMOD_SUFFIX
) \
244 $(LINUX_DIR
)/drivers
/net
/ppp_generic.
$(LINUX_KMOD_SUFFIX
) \
245 $(LINUX_DIR
)/drivers
/net
/slhc.
$(LINUX_KMOD_SUFFIX
)
248 define KernelPackage
/ppp
/2.4
249 AUTOLOAD
:=$(call AutoLoad
,30,slhc ppp_generic ppp_async
)
252 define KernelPackage
/ppp
/2.6
257 $(LINUX_DIR
)/lib
/crc-ccitt.
$(LINUX_KMOD_SUFFIX
)
258 AUTOLOAD
:=$(call AutoLoad
,30,crc-ccitt slhc ppp_generic ppp_async
)
261 define KernelPackage
/ppp
/description
262 Kernel modules for PPP support
265 $(eval
$(call KernelPackage
,ppp
))
268 define KernelPackage
/ppp-synctty
269 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
270 TITLE
:=PPP sync tty support
272 KCONFIG
:=CONFIG_PPP_SYNC_TTY
273 FILES
:=$(LINUX_DIR
)/drivers
/net
/ppp_synctty.
$(LINUX_KMOD_SUFFIX
)
274 AUTOLOAD
:=$(call AutoLoad
,40,ppp_synctty
)
277 define KernelPackage
/ppp-synctty
/description
278 Kernel modules for PPP sync tty support
281 $(eval
$(call KernelPackage
,ppp-synctty
))
284 define KernelPackage
/pppoe
285 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
288 KCONFIG
:=CONFIG_PPPOE
290 $(LINUX_DIR
)/drivers
/net
/pppoe.
$(LINUX_KMOD_SUFFIX
) \
291 $(LINUX_DIR
)/drivers
/net
/pppox.
$(LINUX_KMOD_SUFFIX
)
294 define KernelPackage
/pppoe
/description
295 Kernel modules for PPPoE
(PPP over Ethernet
) support
298 $(eval
$(call KernelPackage
,pppoe
))
301 define KernelPackage
/pppoa
302 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
304 DEPENDS
:=kmod-ppp
+kmod-atm
305 KCONFIG
:=CONFIG_PPPOATM
306 FILES
:=$(LINUX_DIR
)/net
/atm
/pppoatm.
$(LINUX_KMOD_SUFFIX
)
307 AUTOLOAD
:=$(call AutoLoad
,40,pppoatm
)
310 define KernelPackage
/pppoa
/description
311 Kernel modules for PPPoA
(PPP over ATM
) support
314 $(eval
$(call KernelPackage
,pppoa
))
317 define KernelPackage
/ipoa
318 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
321 KCONFIG
:=CONFIG_ATM_CLIP
322 FILES
:=$(LINUX_DIR
)/net
/atm
/clip.
$(LINUX_KMOD_SUFFIX
)
323 AUTOLOAD
:=$(call AutoLoad
,40,clip
)
326 define KernelPackage
/ipoa
/description
327 Kernel modules for IPoA
(IP over ATM
) support
330 $(eval
$(call KernelPackage
,ipoa
))
333 define KernelPackage
/mppe
334 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
335 TITLE
:=Microsoft PPP compression
/encryption
336 DEPENDS
:=kmod-ppp
+kmod-crypto
338 CONFIG_PPP_MPPE_MPPC \
342 define KernelPackage
/mppe
/2.4
343 # KCONFIG:=CONFIG_PPP_MPPE_MPPC
344 FILES
:=$(LINUX_DIR
)/drivers
/net
/ppp_mppe_mppc.
$(LINUX_KMOD_SUFFIX
)
345 AUTOLOAD
:=$(call AutoLoad
,31,ppp_mppe_mppc
)
348 define KernelPackage
/mppe
/2.6
349 # KCONFIG:=CONFIG_PPP_MPPE
350 FILES
:=$(LINUX_DIR
)/drivers
/net
/ppp_mppe.
$(LINUX_KMOD_SUFFIX
)
351 AUTOLOAD
:=$(call AutoLoad
,31,ppp_mppe
)
354 define KernelPackage
/mppe
/description
355 Kernel modules for Microsoft PPP compression
/encryption
358 $(eval
$(call KernelPackage
,mppe
))
361 define KernelPackage
/sched
362 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
363 TITLE
:=Traffic schedulers
366 CONFIG_NET_SCH_DSMARK \
367 CONFIG_NET_SCH_ESFQ \
368 CONFIG_NET_SCH_FIFO \
369 CONFIG_NET_SCH_GRED \
370 CONFIG_NET_SCH_HFSC \
372 CONFIG_NET_SCH_INGRESS \
373 CONFIG_NET_SCH_PRIO \
378 FILES
:=$(LINUX_DIR
)/net
/sched
/*.
$(LINUX_KMOD_SUFFIX
)
381 define KernelPackage
/sched
/description
382 Kernel schedulers for IP traffic
385 $(eval
$(call KernelPackage
,sched
))
388 define KernelPackage
/ax25
389 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
395 $(LINUX_DIR
)/net
/ax25
/ax25.
$(LINUX_KMOD_SUFFIX
) \
396 $(LINUX_DIR
)/drivers
/net
/hamradio
/mkiss.
$(LINUX_KMOD_SUFFIX
)
397 AUTOLOAD
:=$(call AutoLoad
,80,ax25 mkiss
)
400 define KernelPackage
/ax25
/description
401 Kernel modules for AX25 support
404 $(eval
$(call KernelPackage
,ax25
))
407 define KernelPackage
/mp-alg
408 SUBMENU
:=$(NETWORK_SUPPORT_MENU
)
409 TITLE
:=ECMP caching algorithms
412 CONFIG_IP_ROUTE_MULTIPATH_RR \
413 CONFIG_IP_ROUTE_MULTIPATH_RANDOM \
414 CONFIG_IP_ROUTE_MULTIPATH_WRANDOM \
415 CONFIG_IP_ROUTE_MULTIPATH_DRR
417 $(LINUX_DIR
)/net
/ipv4
/multipath_rr.
$(LINUX_KMOD_SUFFIX
) \
418 $(LINUX_DIR
)/net
/ipv4
/multipath_random.
$(LINUX_KMOD_SUFFIX
) \
419 $(LINUX_DIR
)/net
/ipv4
/multipath_wrandom.
$(LINUX_KMOD_SUFFIX
) \
420 $(LINUX_DIR
)/net
/ipv4
/multipath_drr.
$(LINUX_KMOD_SUFFIX
)
421 AUTOLOAD
:=$(call AutoLoad
,35,multipath_rr multipath_random multipath_wrandom multipath_drr
)
424 define KernelPackage
/mp-alg
/description
425 Kernel modules that provide several different algorithms for multipath
426 route selection from the route cache. The iproute
"mpath" argument allows
427 specifying which algorithm to use for routes.
428 quagga
(at least
<=0.99.6) requires a multipath patch to support this
429 cached mp route feature.
432 $(eval
$(call KernelPackage
,mp-alg
))
435 NETWORK_DEVICES_MENU
:=Network Devices
437 define KernelPackage
/natsemi
438 SUBMENU
:=$(NETWORK_DEVICES_MENU
)
439 TITLE
:=National Semiconductor DP8381x series
441 KCONFIG
:=CONFIG_NATSEMI
442 FILES
:=$(LINUX_DIR
)/drivers
/net
/natsemi.
$(LINUX_KMOD_SUFFIX
)
443 AUTOLOAD
:=$(call AutoLoad
,20,natsemi
)
446 define KernelPackage
/natsemi
/description
447 Kernel modules for National Semiconductor DP8381x series PCI Ethernet
451 $(eval
$(call KernelPackage
,natsemi
))
454 define KernelPackage
/r6040
455 SUBMENU
:=$(NETWORK_DEVICES_MENU
)
456 TITLE
:=RDC Fast-Ethernet support
458 KCONFIG
:=CONFIG_R6040
459 FILES
:=$(LINUX_DIR
)/drivers
/net
/r6040.
$(LINUX_KMOD_SUFFIX
)
462 define KernelPackage
/r6040
/description
463 Kernel modules for RDC Fast-Ethernet adapters.
466 $(eval
$(call KernelPackage
,r6040
))
469 define KernelPackage
/sis900
470 SUBMENU
:=$(NETWORK_DEVICES_MENU
)
471 TITLE
:=SiS
900 Ethernet support
473 KCONFIG
:=CONFIG_SIS900
474 FILES
:=$(LINUX_DIR
)/drivers
/net
/sis900.
$(LINUX_KMOD_SUFFIX
)
475 AUTOLOAD
:=$(call AutoLoad
,50,sis900
)
478 define KernelPackage
/sis900
/description
479 Kernel modules for Sis
900 Ethernet adapters.
482 $(eval
$(call KernelPackage
,sis900
))
485 define KernelPackage
/via-rhine
486 SUBMENU
:=$(NETWORK_DEVICES_MENU
)
487 TITLE
:=Via Rhine ethernet support
489 KCONFIG
:=CONFIG_VIA_RHINE
490 FILES
:=$(LINUX_DIR
)/drivers
/net
/via-rhine.
$(LINUX_KMOD_SUFFIX
)
491 AUTOLOAD
:=$(call AutoLoad
,50,via-rhine
)
494 define KernelPackage
/via-rhine
/description
495 Kernel modules for Via Rhine Ethernet chipsets.
498 $(eval
$(call KernelPackage
,via-rhine
))
501 define KernelPackage
/via-velocity
502 SUBMENU
:=$(NETWORK_DEVICES_MENU
)
503 TITLE
:=VIA Velocity Gigabit Ethernet Adapter kernel support
504 DEPENDS
:=@TARGET_ixp4xx
505 KCONFIG
:=CONFIG_VIA_VELOCITY
506 FILES
:=$(LINUX_DIR
)/drivers
/net
/via-velocity.
$(LINUX_KMOD_SUFFIX
)
507 AUTOLOAD
:=$(call AutoLoad
,50,via-velocity
)
510 define KernelPackage
/via-velocity
/description
511 Kernel modules for VIA Velocity Gigabit Ethernet chipsets.
514 $(eval
$(call KernelPackage
,via-velocity
))
517 define KernelPackage
/8139too
518 SUBMENU
:=$(NETWORK_DEVICES_MENU
)
519 TITLE
:=RealTek RTL-8139 PCI Fast Ethernet Adapter kernel support
521 KCONFIG
:=CONFIG_8139TOO
522 FILES
:=$(LINUX_DIR
)/drivers
/net
/8139too.
$(LINUX_KMOD_SUFFIX
)
523 AUTOLOAD
:=$(call AutoLoad
,50,8139too
)
526 define KernelPackage
/8139too
/description
527 Kernel modules for RealTek RTL-8139 PCI Fast Ethernet adapters.
530 $(eval
$(call KernelPackage
,8139too
))
533 define KernelPackage
/r8169
534 SUBMENU
:=$(NETWORK_DEVICES_MENU
)
535 TITLE
:=RealTek RTL-8169 PCI Gigabit Ethernet Adapter kernel support
537 KCONFIG
:=CONFIG_R8169 CONFIG_R8169_NAPI
=y CONFIG_R8169_VLAN
=n
538 FILES
:=$(LINUX_DIR
)/drivers
/net
/r8169.
$(LINUX_KMOD_SUFFIX
)
539 AUTOLOAD
:=$(call AutoLoad
,50,r8169
)
542 define KernelPackage
/r8169
/description
543 Kernel modules for RealTek RTL-8169 PCI Gigabit Ethernet adapters.
546 $(eval
$(call KernelPackage
,r8169
))
549 define KernelPackage
/ne2k-pci
550 SUBMENU
:=$(NETWORK_DEVICES_MENU
)
551 TITLE
:=ne2k-pci Ethernet Adapter kernel support
553 KCONFIG
:=CONFIG_NE2K_PCI
555 $(LINUX_DIR
)/drivers
/net
/ne2k-pci.
$(LINUX_KMOD_SUFFIX
) \
556 $(LINUX_DIR
)/drivers
/net
/8390.
$(LINUX_KMOD_SUFFIX
)
557 AUTOLOAD
:=$(call AutoLoad
,50,8390 ne2k-pci
)
560 define KernelPackage
/ne2k-pci
/description
561 Kernel modules for NE2000 PCI Ethernet Adapter kernel.
564 $(eval
$(call KernelPackage
,ne2k-pci
))
567 define KernelPackage
/ixp4xx-npe
568 SUBMENU
:=$(NETWORK_DEVICES_MENU
)
569 TITLE
:=Intel
(R
) IXP4xx ethernet support
570 DEPENDS
:=@TARGET_ixp4xx
571 KCONFIG
:=CONFIG_IXP4XX_MAC
573 $(LINUX_DIR
)/drivers
/net
/ixp4xx
/ixp4xx_npe.
$(LINUX_KMOD_SUFFIX
) \
574 $(LINUX_DIR
)/drivers
/net
/ixp4xx
/ixp4xx_qmgr.
$(LINUX_KMOD_SUFFIX
) \
575 $(LINUX_DIR
)/drivers
/net
/ixp4xx
/ixp4xx_mac.
$(LINUX_KMOD_SUFFIX
)
576 AUTOLOAD
:=$(call AutoLoad
,20,ixp4xx_npe ixp4xx_qmgr ixp4xx_mac
)
579 define KernelPackage
/ixp4xx-npe
/description
580 Kernel modules for Intel
(R
) IXP4xx onboard ethernet.
583 $(eval
$(call KernelPackage
,ixp4xx-npe
))
586 define KernelPackage
/e100
587 SUBMENU
:=$(NETWORK_DEVICES_MENU
)
588 TITLE
:=Intel
(R
) PRO
/100+ cards kernel support
591 FILES
:=$(LINUX_DIR
)/drivers
/net
/e100.
$(LINUX_KMOD_SUFFIX
)
592 AUTOLOAD
:=$(call AutoLoad
,50,e100
)
595 define KernelPackage
/e100
/description
596 Kernel modules for Intel
(R
) PRO
/100+ Ethernet adapters.
599 $(eval
$(call KernelPackage
,e100
))
602 define KernelPackage
/e1000
603 SUBMENU
:=$(NETWORK_DEVICES_MENU
)
604 TITLE
:=Intel
(R
) PRO
/1000 cards kernel support
606 KCONFIG
:=CONFIG_E1000
607 FILES
:=$(LINUX_DIR
)/drivers
/net
/e1000
/e1000.
$(LINUX_KMOD_SUFFIX
)
608 AUTOLOAD
:=$(call AutoLoad
,50,e1000
)
611 define KernelPackage
/e1000
/description
612 Kernel modules for Intel
(R
) PRO
/1000 Ethernet adapters.
615 $(eval
$(call KernelPackage
,e1000
))
618 define KernelPackage
/3c59x
619 SUBMENU
:=$(NETWORK_DEVICES_MENU
)
620 TITLE
:=3Com
3c590
/3c900 series
(592/595/597) Vortex
/Boomerang
622 KCONFIG
:=CONFIG_3C59X
623 FILES
:=$(LINUX_DIR
)/drivers
/net
/3c59x.
$(LINUX_KMOD_SUFFIX
)
624 AUTOLOAD
:=$(call AutoLoad
,50,3c59x
)
627 define KernelPackage
/3c59x
/description
628 This option enables driver support for a large number of
10mbps and
629 10/100mbps EISA
, PCI and PCMCIA
3Com Ethernet adapters
:
630 - "Vortex" (Fast EtherLink
3c590
/3c592
/3c595
/3c597
) EISA and PCI
631 - "Boomerang" (EtherLink XL
3c900 or
3c905
) PCI
632 - "Cyclone" (3c540
/3c900
/3c905
/3c980
/3c575
/3c656
) PCI and Cardbus
633 - "Tornado" (3c905
) PCI
634 - "Hurricane" (3c555
/3cSOHO
) PCI
637 $(eval
$(call KernelPackage
,3c59x
))