build eeprom_93cx6 as a module, add a KernelPackage for it and for crc-itu-t
[openwrt.git] / package / kernel / modules / other.mk
1 #
2 # Copyright (C) 2006 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 EMENU:=Other modules
10
11 define KernelPackage/crc-itu-t
12   SUBMENU:=$(EMENU)
13   TITLE:=CRC ITU-T V.41 support
14   DESCRIPTION:=Kernel module for CRC ITU-T V.41 support
15   KCONFIG:=CONFIG_CRC_ITU_T
16   FILES:=$(LINUX_DIR)/lib/crc-itu-t.$(LINUX_KMOD_SUFFIX)
17   AUTOLOAD:=$(call AutoLoad,20,crc-itu-t)
18 endef
19
20 $(eval $(call KernelPackage,crc-itu-t))
21
22
23 define KernelPackage/crypto
24   SUBMENU:=$(EMENU)
25   TITLE:=CryptoAPI modules
26   KCONFIG:= \
27         CONFIG_CRYPTO_HMAC \
28         CONFIG_CRYPTO_NULL \
29         CONFIG_CRYPTO_MD4 \
30         CONFIG_CRYPTO_MD5 \
31         CONFIG_CRYPTO_SHA1 \
32         CONFIG_CRYPTO_SHA256 \
33         CONFIG_CRYPTO_SHA512 \
34         CONFIG_CRYPTO_WP512 \
35         CONFIG_CRYPTO_TGR192 \
36         CONFIG_CRYPTO_DES \
37         CONFIG_CRYPTO_BLOWFISH \
38         CONFIG_CRYPTO_TWOFISH \
39         CONFIG_CRYPTO_SERPENT \
40         CONFIG_CRYPTO_AES \
41         CONFIG_CRYPTO_CAST5 \
42         CONFIG_CRYPTO_CAST6 \
43         CONFIG_CRYPTO_TEA \
44         CONFIG_CRYPTO_ARC4 \
45         CONFIG_CRYPTO_KHAZAD \
46         CONFIG_CRYPTO_ANUBIS \
47         CONFIG_CRYPTO_DEFLATE \
48         CONFIG_CRYPTO_MICHAEL_MIC \
49         CONFIG_CRYPTO_CRC32C \
50         CONFIG_CRYPTO_ECB \
51         CONFIG_CRYPTO_BLKCIPHER 
52   FILES:=$(LINUX_DIR)/crypto/*.$(LINUX_KMOD_SUFFIX)
53 endef
54
55 $(eval $(call KernelPackage,crypto))
56
57
58 define KernelPackage/eeprom-93cx6
59   SUBMENU:=$(EMENU)
60   TITLE:=EEPROM 93CX6 support
61   DESCRIPTION:=Kernel module for EEPROM 93CX6 support
62   DEPENDS:=@LINUX_2_6
63   KCONFIG:=CONFIG_EEPROM_93CX6
64   FILES:=$(LINUX_DIR)/drivers/misc/eeprom_93cx6.$(LINUX_KMOD_SUFFIX)
65   AUTOLOAD:=$(call AutoLoad,20,eeprom_93cx6)
66 endef
67
68 $(eval $(call KernelPackage,eeprom-93cx6))
69
70
71 define KernelPackage/lp
72   SUBMENU:=$(EMENU)
73   TITLE:=Parallel port and line printer support
74   DEPENDS:=@LINUX_2_4
75   KCONFIG:=CONFIG_PARPORT
76   FILES:= \
77         $(LINUX_DIR)/drivers/parport/parport.$(LINUX_KMOD_SUFFIX) \
78         $(LINUX_DIR)/drivers/char/lp.$(LINUX_KMOD_SUFFIX) \
79         $(LINUX_DIR)/drivers/char/ppdev.$(LINUX_KMOD_SUFFIX)
80   AUTOLOAD:=$(call AutoLoad,50,parport lp)
81 endef
82
83 $(eval $(call KernelPackage,lp))
84
85
86 define KernelPackage/soundcore
87   SUBMENU:=$(EMENU)
88   TITLE:=Sound support
89   DESCRIPTION:=Kernel modules for sound support
90   KCONFIG:=CONFIG_SOUND
91 endef
92
93 define KernelPackage/soundcore/2.4
94   FILES:=$(LINUX_DIR)/drivers/sound/soundcore.$(LINUX_KMOD_SUFFIX)
95   AUTOLOAD:=$(call AutoLoad,30,soundcore)
96 endef
97
98 define KernelPackage/soundcore/2.6
99   FILES:= \
100         $(LINUX_DIR)/sound/soundcore.$(LINUX_KMOD_SUFFIX) \
101         $(LINUX_DIR)/sound/core/*.$(LINUX_KMOD_SUFFIX) \
102         $(if $(CONFIG_SND_MIXER_OSS)$(CONFIG_SND_PCM_OSS),$(LINUX_DIR)/sound/core/oss/*.$(LINUX_KMOD_SUFFIX))
103   AUTOLOAD:=$(call AutoLoad,30,soundcore snd snd-page-alloc snd-hwdep snd-rawmidi snd-timer snd-pcm $(if $(CONFIG_SND_MIXER_OSS),snd-mixer-oss) $(if $(CONFIG_SND_PCM_OSS),snd-pcm-oss))
104 endef
105
106 define KernelPackage/soundcore/uml-2.6
107   FILES:= \
108         $(LINUX_DIR)/arch/um/drivers/hostaudio.$(LINUX_KMOD_SUFFIX) \
109         $(LINUX_DIR)/sound/soundcore.$(LINUX_KMOD_SUFFIX)
110   AUTOLOAD:=$(call AutoLoad,30,soundcore hostaudio)
111 endef
112
113 $(eval $(call KernelPackage,soundcore))
114
115
116 define KernelPackage/loop
117   SUBMENU:=$(EMENU)
118   TITLE:=Loopback device support
119   DESCRIPTION:=Kernel module for loopback device support
120   KCONFIG:=CONFIG_BLK_DEV_LOOP
121   FILES:=$(LINUX_DIR)/drivers/block/loop.$(LINUX_KMOD_SUFFIX)
122   AUTOLOAD:=$(call AutoLoad,30,loop)
123 endef
124
125 $(eval $(call KernelPackage,loop))
126
127
128 define KernelPackage/nbd
129   SUBMENU:=$(EMENU)
130   TITLE:=Network block device support
131   DESCRIPTION:=Kernel module for network block device support
132   KCONFIG:=CONFIG_BLK_DEV_NBD
133   FILES:=$(LINUX_DIR)/drivers/block/nbd.$(LINUX_KMOD_SUFFIX)
134   AUTOLOAD:=$(call AutoLoad,30,nbd)
135 endef
136
137 $(eval $(call KernelPackage,nbd))
138
139
140 define KernelPackage/capi
141   SUBMENU:=$(EMENU)
142   TITLE:=CAPI Support
143   DESCRIPTION:=Kernel module for basic CAPI support
144   DEPENDS:=@LINUX_2_6
145   KCONFIG:=CONFIG_ISDN CONFIG_ISDN_CAPI CONFIG_ISDN_CAPI_CAPI20
146   FILES:=$(LINUX_DIR)/drivers/isdn/capi/*capi.$(LINUX_KMOD_SUFFIX)
147   AUTOLOAD:=$(call AutoLoad,30,kernelcapi capi)
148 endef
149
150 $(eval $(call KernelPackage,capi))
151
152
153 define KernelPackage/pcmcia-core
154   SUBMENU:=$(EMENU)
155   TITLE:=PCMCIA/CardBus support
156   DESCRIPTION:=Kernel support for PCMCIA/CardBus controllers
157   DEPENDS:=@PCMCIA_SUPPORT
158   KCONFIG:=CONFIG_PCMCIA CONFIG_PCCARD CONFIG_PCMCIA_AU1X00
159 endef
160
161 ifneq ($(CONFIG_LINUX_2_6_AU1000),)
162   PCMCIA_SOCKET_DRIVER:=au1x00_ss
163 else
164   PCMCIA_SOCKET_DRIVER:=yenta_socket
165 endif
166
167 define KernelPackage/pcmcia-core/2.4
168   FILES:= \
169         $(LINUX_DIR)/drivers/pcmcia/pcmcia_core.$(LINUX_KMOD_SUFFIX) \
170         $(LINUX_DIR)/drivers/pcmcia/$(PCMCIA_SOCKET_DRIVER).$(LINUX_KMOD_SUFFIX) \
171         $(LINUX_DIR)/drivers/pcmcia/ds.$(LINUX_KMOD_SUFFIX)
172   AUTOLOAD:=$(call AutoLoad,40,pcmcia_core $(PCMCIA_SOCKET_DRIVER) ds)
173 endef
174
175 define KernelPackage/pcmcia-core/2.6
176   FILES:= \
177         $(LINUX_DIR)/drivers/pcmcia/pcmcia_core.$(LINUX_KMOD_SUFFIX) \
178         $(LINUX_DIR)/drivers/pcmcia/$(PCMCIA_SOCKET_DRIVER).$(LINUX_KMOD_SUFFIX) \
179         $(LINUX_DIR)/drivers/pcmcia/rsrc_nonstatic.$(LINUX_KMOD_SUFFIX)
180   AUTOLOAD:=$(call AutoLoad,40,pcmcia_core pcmcia rsrc_nonstatic $(PCMCIA_SOCKET_DRIVER))
181 endef
182
183 $(eval $(call KernelPackage,pcmcia-core))
184
185
186 define KernelPackage/pcmcia-serial
187   SUBMENU:=$(EMENU)
188   TITLE:=Serial devices support
189   DESCRIPTION:=Kernel support for PCMCIA/CardBus serial devices
190   DEPENDS:=kmod-pcmcia-core
191   KCONFIG:=CONFIG_PCMCIA_SERIAL_CS CONFIG_SERIAL_8250_CS
192   AUTOLOAD:=$(call AutoLoad,45,serial_cs)
193 endef
194
195 define KernelPackage/pcmcia-serial/2.4
196   FILES:=$(LINUX_DIR)/drivers/char/pcmcia/serial_cs.$(LINUX_KMOD_SUFFIX)
197 endef
198
199 define KernelPackage/pcmcia-serial/2.6
200   FILES:=$(LINUX_DIR)/drivers/serial/serial_cs.$(LINUX_KMOD_SUFFIX)
201 endef
202
203 $(eval $(call KernelPackage,pcmcia-serial))
204
205
206 define KernelPackage/bluetooth
207   SUBMENU:=$(EMENU)
208   TITLE:=Bluetooth support
209   DEPENDS:=@USB_SUPPORT
210   DESCRIPTION:=Kernel support for Bluetooth devices
211   KCONFIG:=CONFIG_BLUEZ CONFIG_BT CONFIG_USB_BLUETOOTH
212  endef
213
214  define KernelPackage/bluetooth/2.4
215   FILES:= \
216         $(LINUX_DIR)/net/bluetooth/bluez.$(LINUX_KMOD_SUFFIX) \
217         $(LINUX_DIR)/net/bluetooth/l2cap.$(LINUX_KMOD_SUFFIX) \
218         $(LINUX_DIR)/net/bluetooth/sco.$(LINUX_KMOD_SUFFIX) \
219         $(LINUX_DIR)/net/bluetooth/rfcomm/rfcomm.$(LINUX_KMOD_SUFFIX) \
220         $(LINUX_DIR)/net/bluetooth/bnep/bnep.$(LINUX_KMOD_SUFFIX) \
221         $(LINUX_DIR)/drivers/bluetooth/hci_uart.$(LINUX_KMOD_SUFFIX) \
222         $(LINUX_DIR)/drivers/bluetooth/hci_usb.$(LINUX_KMOD_SUFFIX)
223   AUTOLOAD:=$(call AutoLoad,90,bluez l2cap sco rfcomm bnep hci_uart hci_usb)
224 endef
225
226 define KernelPackage/bluetooth/2.6
227   FILES:= \
228         $(LINUX_DIR)/net/bluetooth/bluetooth.$(LINUX_KMOD_SUFFIX) \
229         $(LINUX_DIR)/net/bluetooth/l2cap.$(LINUX_KMOD_SUFFIX) \
230         $(LINUX_DIR)/net/bluetooth/sco.$(LINUX_KMOD_SUFFIX) \
231         $(LINUX_DIR)/net/bluetooth/rfcomm/rfcomm.$(LINUX_KMOD_SUFFIX) \
232         $(LINUX_DIR)/net/bluetooth/bnep/bnep.$(LINUX_KMOD_SUFFIX) \
233         $(LINUX_DIR)/drivers/bluetooth/hci_uart.$(LINUX_KMOD_SUFFIX) \
234         $(LINUX_DIR)/drivers/bluetooth/hci_usb.$(LINUX_KMOD_SUFFIX)
235   AUTOLOAD:=$(call AutoLoad,90,bluetooth l2cap sco rfcomm bnep hci_uart hci_usb)
236 endef
237
238 $(eval $(call KernelPackage,bluetooth))
239
240
241 define KernelPackage/mmc
242   SUBMENU:=$(EMENU)
243   TITLE:=MMC/SD Card Support
244   DEPENDS:=@LINUX_2_6_AT91
245   DESCRIPTION:=Kernel support for MMC/SD cards
246   KCONFIG:=CONFIG_MMC
247   FILES:= \
248         $(LINUX_DIR)/drivers/mmc/mmc_core.$(LINUX_KMOD_SUFFIX) \
249         $(LINUX_DIR)/drivers/mmc/mmc_block.$(LINUX_KMOD_SUFFIX) \
250         $(LINUX_DIR)/drivers/mmc/at91_mci.$(LINUX_KMOD_SUFFIX)
251   AUTOLOAD:=$(call AutoLoad,90,mmc_core mmc_block at91_mci)
252 endef
253
254 $(eval $(call KernelPackage,mmc))
255
256
257 define KernelPackage/softdog
258   SUBMENU:=$(EMENU)
259   TITLE:=Software watchdog driver
260   DESCRIPTION:=Software watchdog driver
261   KCONFIG:=CONFIG_SOFT_WATCHDOG
262   AUTOLOAD:=$(call AutoLoad,50,softdog)
263 endef
264
265 define KernelPackage/softdog/2.4
266   FILES:=$(LINUX_DIR)/drivers/char/softdog.o
267 endef
268
269 define KernelPackage/softdog/2.6
270   FILES:=$(LINUX_DIR)/drivers/char/watchdog/softdog.ko
271 endef
272
273 $(eval $(call KernelPackage,softdog))
274
275
276 define KernelPackage/videodev
277   SUBMENU:=$(EMENU)
278   TITLE=Video4Linux support
279   DESCRIPTION:=Kernel modules for Video4Linux support
280   KCONFIG:=CONFIG_VIDEO_DEV
281   FILES:=$(LINUX_DIR)/drivers/media/video/*.$(LINUX_KMOD_SUFFIX)
282 endef
283
284 define KernelPackage/videodev/2.4
285   AUTOLOAD:=$(call AutoLoad,60,videodev)
286 endef
287
288 define KernelPackage/videodev/2.6
289   AUTOLOAD:=$(call AutoLoad,60,v4l2-common v4l1-compat compat_ioctl32 videodev)
290 endef
291
292 $(eval $(call KernelPackage,videodev))
293
294
295 define KernelPackage/leds-net48xx
296   SUBMENU:=$(EMENU)
297   TITLE:=Soekris Net48xx LED support
298   DESCRIPTION:=Kernel module for Soekris Net48xx LEDs
299   DEPENDS:=@LINUX_2_6_X86
300   KCONFIG:=CONFIG_LEDS_NET48XX
301   FILES:=$(LINUX_DIR)/drivers/leds/leds-net48xx.$(LINUX_KMOD_SUFFIX)
302   AUTOLOAD:=$(call AutoLoad,50,leds-net48xx)
303 endef
304
305 $(eval $(call KernelPackage,leds-net48xx))
306
307
308 define KernelPackage/nsc-gpio
309   SUBMENU:=$(EMENU)
310   TITLE:=Natsemi GPIO support
311   DESCRIPTION:=Kernel module for Natsemi GPIO
312   DEPENDS:=@LINUX_2_6_X86
313   KCONFIG:=CONFIG_NSC_GPIO
314   FILES:=$(LINUX_DIR)/drivers/char/nsc_gpio.$(LINUX_KMOD_SUFFIX)
315   AUTOLOAD:=$(call AutoLoad,40,nsc_gpio)
316 endef
317
318 $(eval $(call KernelPackage,nsc-gpio))
319
320
321 define KernelPackage/scx200-gpio
322   SUBMENU:=$(EMENU)
323   TITLE:=Natsemi SCX200 GPIO support
324   DESCRIPTION:=Kernel module for SCX200 GPIO
325   DEPENDS:=kmod-nsc-gpio @LINUX_2_6_X86
326   KCONFIG:=CONFIG_SCx200_GPIO
327   FILES:=$(LINUX_DIR)/drivers/char/scx200_gpio.$(LINUX_KMOD_SUFFIX)
328   AUTOLOAD:=$(call AutoLoad,50,scx200_gpio)
329 endef
330
331 $(eval $(call KernelPackage,scx200-gpio))
332
333
334 define KernelPackage/scx200-wdt
335   SUBMENU:=$(EMENU)
336   TITLE:=Natsemi SCX200 Watchdog support
337   DESCRIPTION:=Kernel module for SCX200 Watchdog
338   DEPENDS:=@LINUX_2_6_X86
339   KCONFIG:=CONFIG_SC1200_WDT
340   FILES:=$(LINUX_DIR)/drivers/char/watchdog/scx200_wdt.$(LINUX_KMOD_SUFFIX)
341   AUTOLOAD:=$(call AutoLoad,50,scx200_wdt)
342 endef
343
344 $(eval $(call KernelPackage,scx200-wdt))
345
346
347 define KernelPackage/hwmon
348   SUBMENU:=$(EMENU)
349   TITLE:=Hardware monitoring support
350   DESCRIPTION:=Kernel modules for hardware monitoring
351   DEPENDS:=@LINUX_2_6
352   KCONFIG:=CONFIG_HWMON_VID
353   FILES:= \
354         $(LINUX_DIR)/drivers/hwmon/hwmon.$(LINUX_KMOD_SUFFIX) \
355         $(LINUX_DIR)/drivers/hwmon/hwmon-vid.$(LINUX_KMOD_SUFFIX)
356   AUTOLOAD:=$(call AutoLoad,40,hwmon hwmon-vid)
357 endef
358
359 $(eval $(call KernelPackage,hwmon))
360
361
362 define KernelPackage/hwmon-pc87360
363   SUBMENU:=$(EMENU)
364   TITLE:=PC87360 monitoring support
365   DESCRIPTION:=Kernel modules for PC87360 chips
366   DEPENDS:=kmod-hwmon
367   KCONFIG:=CONFIG_SENSORS_PC87360
368   FILES:=$(LINUX_DIR)/drivers/hwmon/pc87360.$(LINUX_KMOD_SUFFIX)
369   AUTOLOAD:=$(call AutoLoad,50,pc87360)
370 endef
371
372 $(eval $(call KernelPackage,hwmon-pc87360))
373
374
375 define KernelPackage/input-core
376   SUBMENU:=$(EMENU)
377   TITLE:=Input device core
378   DESCRIPTION:=Kernel modules for support of input device
379   DEPENDS:=@LINUX_2_6
380   KCONFIG:=CONFIG_INPUT
381   FILES:=$(LINUX_DIR)/drivers/input/input-core.$(LINUX_KMOD_SUFFIX)
382   AUTOLOAD:=$(call AutoLoad,50,input-core)
383 endef
384
385 $(eval $(call KernelPackage,input-core))
386
387
388 define KernelPackage/input-evdev
389   SUBMENU:=$(EMENU)
390   TITLE:=Input even device
391   DESCRIPTION:=Kernel modules for support of input device events
392   DEPENDS:=+kmod-input-core
393   KCONFIG:=CONFIG_INPUT_EVDEV
394   FILES:=$(LINUX_DIR)/drivers/input/evdev.$(LINUX_KMOD_SUFFIX)
395   AUTOLOAD:=$(call AutoLoad,60,evdev)
396 endef
397
398 $(eval $(call KernelPackage,input-evdev))