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.
10 define KernelPackage/crypto
11 TITLE:=CryptoAPI modules
12 DESCRIPTION:=CryptoAPI modules
14 $(CONFIG_CRYPTO_HMAC) \
15 $(CONFIG_CRYPTO_NULL) \
16 $(CONFIG_CRYPTO_MD4) \
17 $(CONFIG_CRYPTO_MD5) \
18 $(CONFIG_CRYPTO_SHA1) \
19 $(CONFIG_CRYPTO_SHA256) \
20 $(CONFIG_CRYPTO_SHA512) \
21 $(CONFIG_CRYPTO_WP512) \
22 $(CONFIG_CRYPTO_TGR192) \
23 $(CONFIG_CRYPTO_DES) \
24 $(CONFIG_CRYPTO_BLOWFISH) \
25 $(CONFIG_CRYPTO_TWOFISH) \
26 $(CONFIG_CRYPTO_SERPENT) \
27 $(CONFIG_CRYPTO_AES) \
28 $(CONFIG_CRYPTO_CAST5) \
29 $(CONFIG_CRYPTO_CAST6) \
30 $(CONFIG_CRYPTO_TEA) \
31 $(CONFIG_CRYPTO_ARC4) \
32 $(CONFIG_CRYPTO_KHAZAD) \
33 $(CONFIG_CRYPTO_ANUBIS) \
34 $(CONFIG_CRYPTO_DEFLATE) \
35 $(CONFIG_CRYPTO_MICHAEL_MIC) \
36 $(CONFIG_CRYPTO_CRC32C)
37 FILES:=$(MODULES_DIR)/kernel/crypto/*.$(LINUX_KMOD_SUFFIX)
39 $(eval $(call KernelPackage,crypto))
41 define KernelPackage/ide-core
42 TITLE:=Kernel support for IDE
43 DESCRIPTION:=Kernel modules for IDE support\\\
44 useful for usb mass storage devices (e.g. on WL-HDD)\\\
51 KCONFIG:=$(CONFIG_IDE)
52 FILES:=$(MODULES_DIR)/kernel/drivers/ide/*.$(LINUX_KMOD_SUFFIX)
53 AUTOLOAD:=$(call AutoLoad,20,ide-core) $(call AutoLoad,90,ide-detect ide-disk)
55 $(eval $(call KernelPackage,ide-core))
57 define KernelPackage/ide-pdc202xx
58 TITLE:=PDC202xx IDE driver
59 DESCRIPTION:=PDC202xx IDE driver
60 KCONFIG:=$(CONFIG_BLK_DEV_PDC202XX_OLD)
61 FILES:=$(MODULES_DIR)/kernel/drivers/ide/pci/pdc202xx_old.$(LINUX_KMOD_SUFFIX)
62 AUTOLOAD:=$(call AutoLoad,30,pdc202xx_old)
64 $(eval $(call KernelPackage,ide-pdc202xx))
66 define KernelPackage/ieee80211softmac
67 TITLE:=802.11 Networking stack
68 DESCRIPTION:=802.11 Networking stack\\\
72 * ieee80211_crypt_wep \\\
73 * ieee80211_crypt_tkip \\\
74 * ieee80211_crytp_ccmp \\\
76 KCONFIG:=$(CONFIG_IEEE80211_SOFTMAC)
77 FILES:=$(MODULES_DIR)/kernel/net/ieee80211/*.$(LINUX_KMOD_SUFFIX) $(MODULES_DIR)/kernel/net/ieee80211/softmac/*.$(LINUX_KMOD_SUFFIX)
78 AUTOLOAD:=$(call AutoLoad,10,ieee80211_crypt \
81 ieee80211_crypt_tkip \
82 ieee80211_crypt_ccmp \
85 $(eval $(call KernelPackage,ieee80211softmac))
87 WIMENU:=Wireless drivers
89 define KernelPackage/bcm43xx
90 TITLE:=Broadcom BCM43xx driver
91 DESCRIPTION:=Open source BCM43xx driver\\\
94 KCONFIG:=$(CONFIG_BCM43XX)
96 FILES:=$(MODULES_DIR)/kernel/drivers/net/wireless/bcm43xx/bcm43xx.$(LINUX_KMOD_SUFFIX)
97 AUTOLOAD:=$(call Autoload,50,bcm43xx)
99 $(eval $(call KernelPackage,bcm43xx))
101 define KernelPackage/ipw2100
102 TITLE:=Intel IPw2100 driver
103 DESCRIPTION:=Intel IPW2100 driver\\\
106 KCONFIG:=$(CONFIG_IPW2100)
108 FILES:=$(MODULES_DIR)/kernel/drivers/net/wireless/ipw2100.$(LINUX_KMOD_SUFFIX)
109 AUTOLOAD:=$(call Autoload,50,ipw2100)
111 $(eval $(call KernelPackage,ipw2100))
113 define KernelPackage/ipw2200
114 TITLE:=Intel IPw2200 driver
115 DESCRIPTION:=Intel IPW2200 driver\\\
118 KCONFIG:=$(CONFIG_IPW2200)
120 FILES:=$(MODULES_DIR)/kernel/drivers/net/wireless/ipw2200.$(LINUX_KMOD_SUFFIX)
121 AUTOLOAD:=$(call Autoload,50,ipw2200)
123 $(eval $(call KernelPackage,ipw2200))
125 NFMENU:=Netfilter Extensions
127 define KernelPackage/ipt-conntrack
128 TITLE:=Modules for connection tracking
129 DESCRIPTION:=Netfilter (IPv4) kernel modules for connection tracking\\\
133 * ipt_connmark/CONNMARK
135 FILES:=$(foreach mod,$(IPT_CONNTRACK-m),$(MODULES_DIR)/kernel/net/$(mod).$(LINUX_KMOD_SUFFIX))
137 $(eval $(call KernelPackage,ipt-conntrack))
140 define KernelPackage/ipt-filter
141 TITLE:=Modules for packet content inspection
142 DESCRIPTION:=Netfilter (IPv4) kernel modules for packet content inspection \\\
147 FILES:=$(foreach mod,$(IPT_FILTER-m),$(MODULES_DIR)/kernel/net/$(mod).$(LINUX_KMOD_SUFFIX))
149 $(eval $(call KernelPackage,ipt-filter))
152 define KernelPackage/ipt-ipopt
153 TITLE:=Modules for matching/changing IP packet options
154 DESCRIPTION:=Netfilter (IPv4) modules for matching/changing IP packet options \\\
165 FILES:=$(foreach mod,$(IPT_IPOPT-m),$(MODULES_DIR)/kernel/net/$(mod).$(LINUX_KMOD_SUFFIX))
167 $(eval $(call KernelPackage,ipt-ipopt))
170 define KernelPackage/ipt-ipsec
171 TITLE:=Modules for matching IPSec packets
172 DESCRIPTION:=Netfilter (IPv4) modules for matching IPSec packets \\\
177 FILES:=$(foreach mod,$(IPT_IPSEC-m),$(MODULES_DIR)/kernel/net/$(mod).$(LINUX_KMOD_SUFFIX))
179 $(eval $(call KernelPackage,ipt-ipsec))
182 define KernelPackage/ipt-nat
183 TITLE:=Modules for extra NAT targets
184 DESCRIPTION:=Netfilter (IPv4) modules for extra NAT targets \\\
189 FILES:=$(foreach mod,$(IPT_NAT-m),$(MODULES_DIR)/kernel/net/$(mod).$(LINUX_KMOD_SUFFIX))
191 $(eval $(call KernelPackage,ipt-nat))
193 define KernelPackage/ipt-nathelper
194 TITLE:=Extra Conntrack and NAT helpers
195 DESCRIPTION:=Extra Conntrack and NAT helpers (IPv4) \\\
197 * ip_conntrack_amanda \\\
198 * ip_conntrack_proto_gre \\\
199 * ip_nat_proto_gre \\\
200 * ip_conntrack_pptp \\\
202 * ip_conntrack_sip \\\
204 * ip_nat_snmp_basic \\\
207 FILES:=$(foreach mod,$(IPT_NAT_EXTRA-m),$(MODULES_DIR)/kernel/net/$(mod).$(LINUX_KMOD_SUFFIX))
209 $(eval $(call KernelPackage,ipt-nathelper))
211 define KernelPackage/ipt-imq
212 TITLE:=Intermediate Queueing support
213 DESCRIPTION:=Kernel support for Intermediate Queueing devices
214 KCONFIG:=$(CONFIG_IP_NF_TARGET_IMQ)
216 FILES:=$(MODULES_DIR)/kernel/net/ipv4/netfilter/*IMQ*.$(LINUX_KMOD_SUFFIX) $(MODULES_DIR)/kernel/drivers/net/imq.$(LINUX_KMOD_SUFFIX)
218 $(eval $(call KernelPackage,ipt-imq))
221 define KernelPackage/ipt-queue
222 TITLE:=Module for user-space packet queueing
223 DESCRIPTION:=Netfilter (IPv4) module for user-space packet queueing \\\
227 FILES:=$(foreach mod,$(IPT_QUEUE-m),$(MODULES_DIR)/kernel/net/$(mod).$(LINUX_KMOD_SUFFIX))
229 $(eval $(call KernelPackage,ipt-queue))
231 define KernelPackage/ipt-ulog
232 TITLE:=Module for user-space packet logging
233 DESCRIPTION:=Netfilter (IPv4) module for user-space packet logging \\\
237 FILES:=$(foreach mod,$(IPT_ULOG-m),$(MODULES_DIR)/kernel/net/$(mod).$(LINUX_KMOD_SUFFIX))
239 $(eval $(call KernelPackage,ipt-ulog))
241 define KernelPackage/ipt-extra
243 DESCRIPTION:=Other Netfilter (IPv4) kernel modules\\\
251 FILES:=$(foreach mod,$(IPT_EXTRA-m),$(MODULES_DIR)/kernel/net/$(mod).$(LINUX_KMOD_SUFFIX))
253 $(eval $(call KernelPackage,ipt-extra))
255 define KernelPackage/ip6tables
257 DESCRIPTION:=Netfilter IPv6 firewalling support
259 KCONFIG:=$(CONFIG_IP6_NF_IPTABLES)
260 FILES:=$(MODULES_DIR)/kernel/net/ipv6/netfilter/ip*.$(LINUX_KMOD_SUFFIX)
262 $(eval $(call KernelPackage,ip6tables))
265 define KernelPackage/arptables
266 TITLE:=ARP firewalling modules
267 DESCRIPTION:=Kernel modules for ARP firewalling
269 FILES:=$(MODULES_DIR)/kernel/net/ipv4/netfilter/arp*.$(LINUX_KMOD_SUFFIX)
270 KCONFIG:=$(CONFIG_IP_NF_ARPTABLES)
272 $(eval $(call KernelPackage,arptables))
275 define KernelPackage/ebtables
276 TITLE:=Bridge firewalling modules
277 DESCRIPTION:=Kernel modules for Ethernet Bridge firewalling
279 FILES:=$(MODULES_DIR)/kernel/net/bridge/netfilter/*.$(LINUX_KMOD_SUFFIX)
280 KCONFIG:=$(CONFIG_BRIDGE_NF_EBTABLES)
282 $(eval $(call KernelPackage,ebtables))
284 define KernelPackage/ipv6
286 DESCRIPTION:=Kernel modules for IPv6 support
287 KCONFIG:=$(CONFIG_IPV6)
288 FILES:=$(MODULES_DIR)/kernel/net/ipv6/ipv6.$(LINUX_KMOD_SUFFIX)
290 $(eval $(call KernelPackage,ipv6))
292 define KernelPackage/gre
294 DESCRIPTION:=Generic Routing Encapsulation support
295 KCONFIG=$(CONFIG_NET_IPGRE)
296 FILES=$(MODULES_DIR)/kernel/net/ipv4/ip_gre.$(LINUX_KMOD_SUFFIX)
298 $(eval $(call KernelPackage,gre))
300 define KernelPackage/tun
301 TITLE:=Universal TUN/TAP driver
302 DESCRIPTION:=Kernel support for the TUN/TAP tunneling device
303 KCONFIG:=$(CONFIG_TUN)
304 FILES:=$(MODULES_DIR)/kernel/drivers/net/tun.$(LINUX_KMOD_SUFFIX)
306 $(eval $(call KernelPackage,tun))
308 define KernelPackage/ppp
310 DESCRIPTION:=Kernel modules for PPP support
311 KCONFIG:=$(CONFIG_PPP)
314 define KernelPackage/ppp/2.6
315 FILES:=$(MODULES_DIR)/kernel/drivers/net/ppp_async.ko $(MODULES_DIR)/kernel/drivers/net/ppp_generic.ko $(MODULES_DIR)/kernel/drivers/net/slhc.ko $(MODULES_DIR)/kernel/lib/crc-ccitt.ko
316 AUTOLOAD:=$(call AutoLoad,30,crc-ccitt)
319 define KernelPackage/ppp/2.4
320 FILES:=$(MODULES_DIR)/kernel/drivers/net/ppp_async.o $(MODULES_DIR)/kernel/drivers/net/ppp_generic.o $(MODULES_DIR)/kernel/drivers/net/slhc.o
322 $(eval $(call KernelPackage,ppp))
324 define KernelPackage/pppoe
326 DESCRIPTION:=Kernel modules for PPP over Ethernet support
328 KCONFIG:=$(CONFIG_PPPOE)
329 FILES:=$(MODULES_DIR)/kernel/drivers/net/pppoe.$(LINUX_KMOD_SUFFIX) $(MODULES_DIR)/kernel/drivers/net/pppox.$(LINUX_KMOD_SUFFIX)
331 $(eval $(call KernelPackage,pppoe))
333 define KernelPackage/pppoa
335 DESCRIPTION:=Kernel modules for PPP over ATM support
337 KCONFIG:=$(CONFIG_PPPOATM)
338 FILES:=$(MODULES_DIR)/kernel/net/atm/pppoatm.$(LINUX_KMOD_SUFFIX)
340 $(eval $(call KernelPackage,pppoa))
343 define KernelPackage/mppe
344 TITLE:=Microsoft PPP compression/encryption
345 DESCRIPTION:=Kernel modules for Microsoft PPP compression/encryption
347 KCONFIG:=$(CONFIG_PPP_MPPE)
350 define KernelPackage/mppe/2.4
351 FILES:=$(MODULES_DIR)/kernel/drivers/net/ppp_mppe_mppc.$(LINUX_KMOD_SUFFIX)
354 define KernelPackage/mppe/2.6
355 FILES:=$(MODULES_DIR)/kernel/drivers/net/ppp_mppe.$(LINUX_KMOD_SUFFIX)
357 $(eval $(call KernelPackage,mppe))
361 NDMENU:=Network Devices
364 define KernelPackage/natsemi
365 TITLE:=National Semiconductor DP8381x series
366 DESCRIPTION:=National Semiconductor DP8381x series PCI Ethernet kernel support
368 FILES:=$(MODULES_DIR)/kernel/drivers/net/natsemi.$(LINUX_KMOD_SUFFIX)
369 KCONFIG:=$(CONFIG_NATSEMI)
370 DEPENDS:=@LINUX_2_6_X86||LINUX_2_4_X86
372 $(eval $(call KernelPackage,natsemi))
374 define KernelPackage/sis900
375 TITLE:=SiS 900 Ethernet support
376 DESCRIPTION:=Sis 900 kernel ethernet support
378 FILES:=$(MODULES_DIR)/kernel/drivers/net/sis900.$(LINUX_KMOD_SUFFIX)
379 KCONFIG:=$(CONFIG_SIS900)
380 DEPENDS:=@LINUX_2_6_X86||LINUX_2_4_X86
382 $(eval $(call KernelPackage,sis900))
385 define KernelPackage/via-rhine
386 TITLE:=Via Rhine ethernet support
387 DESCRIPTION:=Kernel modules for Via Rhine ethernet chipsets
389 FILES:=$(MODULES_DIR)/kernel/drivers/net/via-rhine.$(LINUX_KMOD_SUFFIX)
390 KCONFIG:=$(CONFIG_VIA_RHINE)
391 DEPENDS:=@LINUX_2_6_X86||LINUX_2_4_X86
393 $(eval $(call KernelPackage,via-rhine))
395 define KernelPackage/8139too
396 TITLE:=RealTek RTL-8139 PCI Fast Ethernet Adapter kernel support
397 DESCRIPTION:=Kernel modules for RealTek RTL-8139 PCI Fast Ethernet Adapter kernel support
399 FILES:=$(MODULES_DIR)/kernel/drivers/net/8139too.$(LINUX_KMOD_SUFFIX)
400 KCONFIG:=$(CONFIG_8139TOO)
401 DEPENDS:=@LINUX_2_6_X86||LINUX_2_4_X86
403 $(eval $(call KernelPackage,8139too))
405 define KernelPackage/e100
406 TITLE:=Intel(R) PRO/100+ cards kernel support
407 DESCRIPTION:=Kernel modules for Intel(R) PRO/100+ cards kernel support
409 FILES:=$(MODULES_DIR)/kernel/drivers/net/e100.$(LINUX_KMOD_SUFFIX)
410 KCONFIG:=$(CONFIG_E100)
411 DEPENDS:=@LINUX_2_6_X86||LINUX_2_4_X86
413 $(eval $(call KernelPackage,e100))
415 define KernelPackage/3c59x
416 TITLE:=3Com 3c590/3c900 series (592/595/597) Vortex/Boomerang
418 This option enables driver support for a large number of 10mbps and \
419 10/100mbps EISA, PCI and PCMCIA 3Com network cards: \
421 * "Vortex" (Fast EtherLink 3c590/3c592/3c595/3c597) EISA and PCI \
422 * "Boomerang" (EtherLink XL 3c900 or 3c905) PCI \
423 * "Cyclone" (3c540/3c900/3c905/3c980/3c575/3c656) PCI and Cardbus \
424 * "Tornado" (3c905) PCI \
425 * "Hurricane" (3c555/3cSOHO) PCI
427 FILES:=$(MODULES_DIR)/kernel/drivers/net/3c59x.$(LINUX_KMOD_SUFFIX)
428 KCONFIG:=$(CONFIG_3C59X)
429 DEPENDS:=@LINUX_2_6_X86||LINUX_2_4_X86
431 $(eval $(call KernelPackage,3c59x))