f6c73c04906bbc9ab254b3bd753eb299c6ff3826
[openwrt.git] / package / kernel / modules / other.mk
1 #
2 # Copyright (C) 2006-2009 OpenWrt.org
3 #
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
6 #
7
8 OTHER_MENU:=Other modules
9
10 define KernelPackage/crc-itu-t
11   SUBMENU:=$(OTHER_MENU)
12   TITLE:=CRC ITU-T V.41 support
13   KCONFIG:=CONFIG_CRC_ITU_T
14   FILES:=$(LINUX_DIR)/lib/crc-itu-t.$(LINUX_KMOD_SUFFIX)
15   AUTOLOAD:=$(call AutoLoad,20,crc-itu-t)
16 endef
17
18 define KernelPackage/crc-itu-t/description
19  Kernel module for CRC ITU-T V.41 support
20 endef
21
22 $(eval $(call KernelPackage,crc-itu-t))
23
24 define KernelPackage/crc-ccitt
25   SUBMENU:=$(OTHER_MENU)
26   TITLE:=CRC-CCITT support
27   KCONFIG:=CONFIG_CRC_CCITT
28   FILES:=$(LINUX_DIR)/lib/crc-ccitt.$(LINUX_KMOD_SUFFIX)
29   AUTOLOAD:=$(call AutoLoad,20,crc-ccitt)
30 endef
31
32 define KernelPackage/crc-ccitt/description
33  Kernel module for CRC-CCITT support
34 endef
35
36 $(eval $(call KernelPackage,crc-ccitt))
37
38
39 define KernelPackage/crc7
40   SUBMENU:=$(OTHER_MENU)
41   TITLE:=CRC7 support
42   KCONFIG:=CONFIG_CRC7
43   FILES:=$(LINUX_DIR)/lib/crc7.$(LINUX_KMOD_SUFFIX)
44   AUTOLOAD:=$(call AutoLoad,20,crc7)
45 endef
46
47 define KernelPackage/crc7/description
48  Kernel module for CRC7 support
49 endef
50
51 $(eval $(call KernelPackage,crc7))
52
53
54 define KernelPackage/crc16
55   SUBMENU:=$(OTHER_MENU)
56   TITLE:=CRC16 support
57   KCONFIG:=CONFIG_CRC16
58   FILES:=$(LINUX_DIR)/lib/crc16.$(LINUX_KMOD_SUFFIX)
59   AUTOLOAD:=$(call AutoLoad,20,crc16)
60 endef
61
62 define KernelPackage/crc16/description
63  Kernel module for CRC16 support
64 endef
65
66 $(eval $(call KernelPackage,crc16))
67
68
69 define KernelPackage/eeprom-93cx6
70   SUBMENU:=$(OTHER_MENU)
71   TITLE:=EEPROM 93CX6 support
72   DEPENDS:=@LINUX_2_6
73   KCONFIG:=CONFIG_EEPROM_93CX6
74   FILES:=$(LINUX_DIR)/drivers/misc/eeprom/eeprom_93cx6.$(LINUX_KMOD_SUFFIX)
75   AUTOLOAD:=$(call AutoLoad,20,eeprom_93cx6)
76 endef
77
78 define KernelPackage/eeprom-93cx6/description
79  Kernel module for EEPROM 93CX6 support
80 endef
81
82 $(eval $(call KernelPackage,eeprom-93cx6))
83
84
85 define KernelPackage/lp
86   SUBMENU:=$(OTHER_MENU)
87   TITLE:=Parallel port and line printer support
88   DEPENDS:=@LINUX_2_4
89   KCONFIG:= \
90         CONFIG_PARPORT \
91         CONFIG_PRINTER \
92         CONFIG_PPDEV
93   FILES:= \
94         $(LINUX_DIR)/drivers/parport/parport.$(LINUX_KMOD_SUFFIX) \
95         $(LINUX_DIR)/drivers/char/lp.$(LINUX_KMOD_SUFFIX) \
96         $(LINUX_DIR)/drivers/char/ppdev.$(LINUX_KMOD_SUFFIX)
97   AUTOLOAD:=$(call AutoLoad,50,parport lp)
98 endef
99
100 $(eval $(call KernelPackage,lp))
101
102 define KernelPackage/pcspkr
103   SUBMENU:=$(OTHER_MENU)
104   TITLE:=PC speaker support
105   DEPENDS:=@LINUX_2_6
106   KCONFIG:=CONFIG_INPUT_PCSPKR
107   FILES:= \
108         $(LINUX_DIR)/drivers/input/misc/pcspkr.$(LINUX_KMOD_SUFFIX)
109   AUTOLOAD:=$(call AutoLoad,50, \
110         pcspkr \
111   )
112 endef
113
114 define KernelPackage/pcspkr/description
115  This enables sounds (tones) through the pc speaker
116 endef
117
118 $(eval $(call KernelPackage,pcspkr))
119
120 define KernelPackage/pcmcia-core
121   SUBMENU:=$(OTHER_MENU)
122   TITLE:=PCMCIA/CardBus support
123   DEPENDS:=@PCMCIA_SUPPORT
124   KCONFIG:= \
125         CONFIG_PCMCIA \
126         CONFIG_CARDBUS \
127         CONFIG_PCCARD \
128         CONFIG_PCCARD_NONSTATIC \
129         PCMCIA_DEBUG=n
130 endef
131
132 define KernelPackage/pcmcia-core/2.4
133 #  KCONFIG:= \
134 #       CONFIG_PCMCIA \
135 #       CONFIG_CARDBUS
136   FILES:= \
137         $(LINUX_DIR)/drivers/pcmcia/pcmcia_core.$(LINUX_KMOD_SUFFIX) \
138         $(LINUX_DIR)/drivers/pcmcia/ds.$(LINUX_KMOD_SUFFIX)
139   AUTOLOAD:=$(call AutoLoad,25,pcmcia_core ds)
140 endef
141
142 define KernelPackage/pcmcia-core/2.6
143 #  KCONFIG:= \
144 #       CONFIG_PCCARD \
145 #       CONFIG_PCMCIA \
146 #       CONFIG_PCCARD_NONSTATIC \
147 #       PCMCIA_DEBUG=n
148   FILES:= \
149         $(LINUX_DIR)/drivers/pcmcia/pcmcia_core.$(LINUX_KMOD_SUFFIX) \
150         $(LINUX_DIR)/drivers/pcmcia/pcmcia.$(LINUX_KMOD_SUFFIX)
151   AUTOLOAD:=$(call AutoLoad,25,pcmcia_core pcmcia)
152 endef
153
154 define KernelPackage/pcmcia-core/description
155  Kernel support for PCMCIA/CardBus controllers
156 endef
157
158 $(eval $(call KernelPackage,pcmcia-core))
159
160
161 define KernelPackage/pcmcia-yenta
162   SUBMENU:=$(OTHER_MENU)
163   TITLE:=yenta socket driver
164   DEPENDS:=kmod-pcmcia-core
165   KCONFIG:=CONFIG_YENTA
166   FILES:= \
167         $(LINUX_DIR)/drivers/pcmcia/rsrc_nonstatic.$(LINUX_KMOD_SUFFIX) \
168         $(LINUX_DIR)/drivers/pcmcia/yenta_socket.$(LINUX_KMOD_SUFFIX)
169   AUTOLOAD:=$(call AutoLoad,41,rsrc_nonstatic yenta_socket)
170 endef
171
172 $(eval $(call KernelPackage,pcmcia-yenta))
173
174 define KernelPackage/pcmcia-au1000
175   SUBMENU:=$(OTHER_MENU)
176   TITLE:=RMI/AMD Au1000 PCMCIA support
177   DEPENDS:=kmod-pcmcia-core @TARGET_au1000
178   FILES:=$(LINUX_DIR)/drivers/pcmcia/au1x00_ss.$(LINUX_KMOD_SUFFIX)
179   AUTOLOAD:=$(call AutoLoad,41,au1x00_ss)
180 endef
181
182 $(eval $(call KernelPackage,pcmcia-au1000))
183
184 define KernelPackage/pcmcia-bcm63xx
185   SUBMENU:=$(OTHER_MENU)
186   TITLE:=Broadcom BCM63xx PCMCIA support
187   DEPENDS:=kmod-pcmcia-core @TARGET_brcm63xx
188   KCONFIG:=CONFIG_PCMCIA_BCM63XX
189   FILES:=$(LINUX_DIR)/drivers/pcmcia/bcm63xx_pcmcia.$(LINUX_KMOD_SUFFIX)
190   AUTOLOAD:=$(call AutoLoad,41,bcm63xx_pcmcia)
191 endef
192
193 define KernelPackage/pcmcia-bcm63xx/description
194   Kernel support for PCMCIA/CardBus controller on the BCM63xx SoC
195 endef
196
197 $(eval $(call KernelPackage,pcmcia-bcm63xx))
198
199 define KernelPackage/pcmcia-serial
200   SUBMENU:=$(OTHER_MENU)
201   TITLE:=Serial devices support
202   DEPENDS:=kmod-pcmcia-core
203   KCONFIG:= \
204         CONFIG_PCMCIA_SERIAL_CS \
205         CONFIG_SERIAL_8250_CS
206   AUTOLOAD:=$(call AutoLoad,45,serial_cs)
207 endef
208
209 define KernelPackage/pcmcia-serial/2.4
210 #  KCONFIG:=CONFIG_PCMCIA_SERIAL_CS
211   FILES:=$(LINUX_DIR)/drivers/char/pcmcia/serial_cs.$(LINUX_KMOD_SUFFIX)
212 endef
213
214 define KernelPackage/pcmcia-serial/2.6
215 #  KCONFIG:=CONFIG_SERIAL_8250_CS
216   FILES:=$(LINUX_DIR)/drivers/serial/serial_cs.$(LINUX_KMOD_SUFFIX)
217 endef
218
219 define KernelPackage/pcmcia-serial/description
220  Kernel support for PCMCIA/CardBus serial devices
221 endef
222
223 $(eval $(call KernelPackage,pcmcia-serial))
224
225 define KernelPackage/ssb
226   SUBMENU:=$(OTHER_MENU)
227   TITLE:=Silicon Sonics Backplane glue code
228   DEPENDS:=@LINUX_2_6 @PCI_SUPPORT @!TARGET_brcm47xx @!TARGET_brcm63xx
229   KCONFIG:=\
230         CONFIG_SSB \
231         CONFIG_SSB_B43_PCI_BRIDGE=y \
232         CONFIG_SSB_DRIVER_MIPS=n \
233         CONFIG_SSB_DRIVER_PCICORE=y \
234         CONFIG_SSB_DRIVER_PCICORE_POSSIBLE=y \
235         CONFIG_SSB_PCIHOST=y \
236         CONFIG_SSB_PCIHOST_POSSIBLE=y \
237         CONFIG_SSB_POSSIBLE=y \
238         CONFIG_SSB_SPROM=y \
239         CONFIG_SSB_SILENT=y
240   FILES:=$(LINUX_DIR)/drivers/ssb/ssb.$(LINUX_KMOD_SUFFIX)
241   AUTOLOAD:=$(call AutoLoad,29,ssb)
242 endef
243
244 define KernelPackage/ssb/description
245   Silicon Sonics Backplane glue code.
246 endef
247
248 $(eval $(call KernelPackage,ssb))
249
250
251 define KernelPackage/bluetooth
252   SUBMENU:=$(OTHER_MENU)
253   TITLE:=Bluetooth support
254   DEPENDS:=@USB_SUPPORT +kmod-usb-core +kmod-hid
255   KCONFIG:= \
256         CONFIG_BLUEZ \
257         CONFIG_BLUEZ_L2CAP \
258         CONFIG_BLUEZ_SCO \
259         CONFIG_BLUEZ_RFCOMM \
260         CONFIG_BLUEZ_BNEP \
261         CONFIG_BLUEZ_HCIUART \
262         CONFIG_BLUEZ_HCIUSB \
263         CONFIG_BLUEZ_HIDP \
264         CONFIG_BT \
265         CONFIG_BT_L2CAP \
266         CONFIG_BT_SCO \
267         CONFIG_BT_RFCOMM \
268         CONFIG_BT_BNEP \
269         CONFIG_BT_HCIBTUSB \
270         CONFIG_BT_HCIUSB \
271         CONFIG_BT_HCIUART \
272         CONFIG_BT_HIDP
273 endef
274
275 define KernelPackage/bluetooth/2.4
276 #  KCONFIG:= \
277 #       CONFIG_BLUEZ \
278 #       CONFIG_BLUEZ_L2CAP \
279 #       CONFIG_BLUEZ_SCO \
280 #       CONFIG_BLUEZ_RFCOMM \
281 #       CONFIG_BLUEZ_BNEP \
282 #       CONFIG_BLUEZ_HCIUART \
283 #       CONFIG_BLUEZ_HCIUSB
284   FILES:= \
285         $(LINUX_DIR)/net/bluetooth/bluez.$(LINUX_KMOD_SUFFIX) \
286         $(LINUX_DIR)/net/bluetooth/l2cap.$(LINUX_KMOD_SUFFIX) \
287         $(LINUX_DIR)/net/bluetooth/sco.$(LINUX_KMOD_SUFFIX) \
288         $(LINUX_DIR)/net/bluetooth/rfcomm/rfcomm.$(LINUX_KMOD_SUFFIX) \
289         $(LINUX_DIR)/net/bluetooth/bnep/bnep.$(LINUX_KMOD_SUFFIX) \
290         $(LINUX_DIR)/drivers/bluetooth/hci_uart.$(LINUX_KMOD_SUFFIX) \
291         $(LINUX_DIR)/drivers/bluetooth/hci_usb.$(LINUX_KMOD_SUFFIX)
292   AUTOLOAD:=$(call AutoLoad,90,bluez l2cap sco rfcomm bnep hci_uart hci_usb)
293 endef
294
295 define KernelPackage/bluetooth/2.6
296 #  KCONFIG:= \
297 #       CONFIG_BT \
298 #       CONFIG_BT_L2CAP \
299 #       CONFIG_BT_SCO \
300 #       CONFIG_BT_RFCOMM \
301 #       CONFIG_BT_BNEP \
302 #       CONFIG_BT_HCIUSB \
303 #       CONFIG_BT_HCIUART
304   FILES:= \
305         $(LINUX_DIR)/net/bluetooth/bluetooth.$(LINUX_KMOD_SUFFIX) \
306         $(LINUX_DIR)/net/bluetooth/l2cap.$(LINUX_KMOD_SUFFIX) \
307         $(LINUX_DIR)/net/bluetooth/sco.$(LINUX_KMOD_SUFFIX) \
308         $(LINUX_DIR)/net/bluetooth/rfcomm/rfcomm.$(LINUX_KMOD_SUFFIX) \
309         $(LINUX_DIR)/net/bluetooth/bnep/bnep.$(LINUX_KMOD_SUFFIX) \
310         $(LINUX_DIR)/net/bluetooth/hidp/hidp.$(LINUX_KMOD_SUFFIX) \
311         $(LINUX_DIR)/drivers/bluetooth/hci_uart.$(LINUX_KMOD_SUFFIX) \
312         $(LINUX_DIR)/drivers/bluetooth/btusb.$(LINUX_KMOD_SUFFIX)
313   AUTOLOAD:=$(call AutoLoad,90,bluetooth l2cap sco rfcomm bnep hidp hci_uart btusb)
314 endef
315
316 define KernelPackage/bluetooth/description
317  Kernel support for Bluetooth devices
318 endef
319
320 $(eval $(call KernelPackage,bluetooth))
321
322
323 define KernelPackage/mmc
324   SUBMENU:=$(OTHER_MENU)
325   TITLE:=MMC/SD Card Support
326   DEPENDS:=@LINUX_2_6
327   KCONFIG:= \
328         CONFIG_MMC \
329         CONFIG_MMC_BLOCK \
330         CONFIG_MMC_DEBUG=n \
331         CONFIG_MMC_UNSAFE_RESUME=n \
332         CONFIG_MMC_BLOCK_BOUNCE=y \
333         CONFIG_MMC_SDHCI=n \
334         CONFIG_MMC_TIFM_SD=n \
335         CONFIG_MMC_WBSD=n \
336         CONFIG_SDIO_UART=n
337   FILES:= \
338         $(LINUX_DIR)/drivers/mmc/core/mmc_core.$(LINUX_KMOD_SUFFIX) \
339         $(LINUX_DIR)/drivers/mmc/card/mmc_block.$(LINUX_KMOD_SUFFIX)
340   AUTOLOAD:=$(call AutoLoad,90,mmc_core mmc_block)
341 endef
342
343 define KernelPackage/mmc/description
344  Kernel support for MMC/SD cards
345 endef
346
347 $(eval $(call KernelPackage,mmc))
348
349
350 define KernelPackage/mmc-at91
351   SUBMENU:=$(OTHER_MENU)
352   TITLE:=MMC/SD Card Support on AT91
353   DEPENDS:=@TARGET_at91 +kmod-mmc
354   KCONFIG:=CONFIG_MMC_AT91
355   FILES:=$(LINUX_DIR)/drivers/mmc/host/at91_mci.$(LINUX_KMOD_SUFFIX)
356   AUTOLOAD:=$(call AutoLoad,90,at91_mci)
357 endef
358
359 define KernelPackage/mmc-at91/description
360  Kernel support for MMC/SD cards on the AT91 target
361 endef
362
363 $(eval $(call KernelPackage,mmc-at91))
364
365
366 # XXX: added a workaround for watchdog path changes
367 ifeq ($(KERNEL),2.4)
368   WATCHDOG_DIR=char
369 endif
370 WATCHDOG_DIR?=watchdog
371
372 define KernelPackage/atmel-wdt
373   SUBMENU:=$(OTHER_MENU)
374   TITLE:=AT32AP700x watchdog
375   DEPENDS:=@TARGET_avr32
376   KCONFIG:=CONFIG_AT32AP700X_WDT
377   FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/at32ap700x_wdt.$(LINUX_KMOD_SUFFIX)
378   AUTOLOAD:=$(call AutoLoad,50,at32ap700x_wdt)
379 endef
380
381 define KernelPackage/atmel-wdt/description
382  AT32AP700x watchdog
383 endef
384
385 $(eval $(call KernelPackage,atmel-wdt))
386
387
388 define KernelPackage/softdog
389   SUBMENU:=$(OTHER_MENU)
390   TITLE:=Software watchdog driver
391   KCONFIG:=CONFIG_SOFT_WATCHDOG
392   FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/softdog.$(LINUX_KMOD_SUFFIX)
393   AUTOLOAD:=$(call AutoLoad,50,softdog)
394 endef
395
396 define KernelPackage/softdog/description
397  Software watchdog driver
398 endef
399
400 $(eval $(call KernelPackage,softdog))
401
402 define KernelPackage/rdc321x-wdt
403   SUBMENU:=$(OTHER_MENU)
404   TITLE:=RDC321x watchdog
405   DEPENDS:=@TARGET_rdc
406   KCONFIG:=CONFIG_RDC321X_WDT
407   FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/rdc321x_wdt.$(LINUX_KMOD_SUFFIX)
408   AUTOLOAD:=$(call AutoLoad,50,rdc321x_wdt)
409 endef
410
411 define KernelPackage/rdc321x-wdt/description
412   RDC-321x watchdog driver
413 endef
414
415 $(eval $(call KernelPackage,rdc321x-wdt))
416
417
418 define KernelPackage/leds-gpio
419   SUBMENU:=$(OTHER_MENU)
420   TITLE:=GPIO LED support
421   DEPENDS:= @GPIO_SUPPORT
422   KCONFIG:=CONFIG_LEDS_GPIO
423   FILES:=$(LINUX_DIR)/drivers/leds/leds-gpio.$(LINUX_KMOD_SUFFIX)
424   AUTOLOAD:=$(call AutoLoad,60,leds-gpio)
425 endef
426
427 define KernelPackage/leds-gpio/description
428  Kernel module for LEDs on GPIO lines
429 endef
430
431 $(eval $(call KernelPackage,leds-gpio))
432
433
434 define KernelPackage/ledtrig-adm5120-switch
435   SUBMENU:=$(OTHER_MENU)
436   TITLE:=LED ADM5120 Switch Port Status Trigger
437   DEPENDS:=@TARGET_adm5120
438   KCONFIG:=CONFIG_LEDS_TRIGGER_ADM5120_SWITCH
439   FILES:=$(LINUX_DIR)/drivers/leds/ledtrig-adm5120-switch.$(LINUX_KMOD_SUFFIX)
440   AUTOLOAD:=$(call AutoLoad,50,ledtrig-adm5120-switch)
441 endef
442
443 define KernelPackage/ledtrig-adm5120-switch/description
444  Kernel module to allow LEDs to be controlled by the port states
445  of the ADM5120 built-in ethernet switch.
446 endef
447
448 $(eval $(call KernelPackage,ledtrig-adm5120-switch))
449
450
451 define KernelPackage/leds-net48xx
452   SUBMENU:=$(OTHER_MENU)
453   TITLE:=Soekris Net48xx LED support
454   DEPENDS:=@TARGET_x86 +kmod-scx200-gpio
455   KCONFIG:=CONFIG_LEDS_NET48XX
456   FILES:=$(LINUX_DIR)/drivers/leds/leds-net48xx.$(LINUX_KMOD_SUFFIX)
457   AUTOLOAD:=$(call AutoLoad,50,leds-net48xx)
458 endef
459
460 define KernelPackage/leds-net48xx/description
461  Kernel module for Soekris Net48xx LEDs
462 endef
463
464 $(eval $(call KernelPackage,leds-net48xx))
465
466
467 define KernelPackage/leds-wrap
468   SUBMENU:=$(OTHER_MENU)
469   TITLE:=PCengines WRAP LED support
470   DEPENDS:=@TARGET_x86 +kmod-scx200-gpio
471   KCONFIG:=CONFIG_LEDS_WRAP
472   FILES:=$(LINUX_DIR)/drivers/leds/leds-wrap.$(LINUX_KMOD_SUFFIX)
473   AUTOLOAD:=$(call AutoLoad,50,leds-wrap)
474 endef
475
476 define KernelPackage/leds-wrap/description
477  Kernel module for PCengines WRAP LEDs
478 endef
479
480 $(eval $(call KernelPackage,leds-wrap))
481
482
483 define KernelPackage/leds-alix
484   SUBMENU:=$(OTHER_MENU)
485   TITLE:=PCengines ALIX LED support
486   DEPENDS:=@TARGET_x86
487   KCONFIG:=CONFIG_LEDS_ALIX2
488   FILES:=$(LINUX_DIR)/drivers/leds/leds-alix2.$(LINUX_KMOD_SUFFIX)
489   AUTOLOAD:=$(call AutoLoad,50,leds-alix2)
490 endef
491
492 define KernelPackage/leds-alix/description
493  Kernel module for PCengines ALIX LEDs
494 endef
495
496 $(eval $(call KernelPackage,leds-alix))
497
498
499 define KernelPackage/leds-wndr3700-usb
500   SUBMENU:=$(OTHER_MENU)
501   TITLE:=WNDR3700 USB LED support
502   DEPENDS:= @TARGET_ar71xx
503   KCONFIG:=CONFIG_LEDS_WNDR3700_USB
504   FILES:=$(LINUX_DIR)/drivers/leds/leds-wndr3700-usb.$(LINUX_KMOD_SUFFIX)
505   AUTOLOAD:=$(call AutoLoad,60,leds-wndr3700-usb)
506 endef
507
508 define KernelPackage/leds-wndr3700-usb/description
509  Kernel module for the USB LED on the NETGWR WNDR3700 board.
510 endef
511
512 $(eval $(call KernelPackage,leds-wndr3700-usb))
513
514
515 define KernelPackage/ledtrig-netdev
516   SUBMENU:=$(OTHER_MENU)
517   TITLE:=LED NETDEV Trigger
518   KCONFIG:=CONFIG_LEDS_TRIGGER_NETDEV
519   FILES:=$(LINUX_DIR)/drivers/leds/ledtrig-netdev.$(LINUX_KMOD_SUFFIX)
520   AUTOLOAD:=$(call AutoLoad,50,ledtrig-netdev)
521 endef
522
523 define KernelPackage/ledtrig-netdev/description
524  Kernel module to drive LEDs based on network activity.
525 endef
526
527 $(eval $(call KernelPackage,ledtrig-netdev))
528
529
530 define KernelPackage/ledtrig-morse
531   SUBMENU:=$(OTHER_MENU)
532   TITLE:=LED Morse Trigger
533   KCONFIG:=CONFIG_LEDS_TRIGGER_MORSE
534   FILES:=$(LINUX_DIR)/drivers/leds/ledtrig-morse.$(LINUX_KMOD_SUFFIX)
535   AUTOLOAD:=$(call AutoLoad,50,ledtrig-morse)
536 endef
537
538 define KernelPackage/ledtrig-morse/description
539  Kernel module to show morse coded messages on LEDs.
540 endef
541
542 $(eval $(call KernelPackage,ledtrig-morse))
543
544
545 define KernelPackage/gpio-dev
546   SUBMENU:=$(OTHER_MENU)
547   TITLE:=Generic GPIO char device support
548   DEPENDS:=@GPIO_SUPPORT
549   KCONFIG:=CONFIG_GPIO_DEVICE
550   FILES:=$(LINUX_DIR)/drivers/char/gpio_dev.$(LINUX_KMOD_SUFFIX)
551   AUTOLOAD:=$(call AutoLoad,40,gpio_dev)
552 endef
553
554 define KernelPackage/gpio-dev/description
555   Kernel module to allows control of GPIO pins using a character device.
556 endef
557
558 $(eval $(call KernelPackage,gpio-dev))
559
560
561 define KernelPackage/nsc-gpio
562   SUBMENU:=$(OTHER_MENU)
563   TITLE:=Natsemi GPIO support
564   DEPENDS:=@TARGET_x86
565   KCONFIG:=CONFIG_NSC_GPIO
566   FILES:=$(LINUX_DIR)/drivers/char/nsc_gpio.$(LINUX_KMOD_SUFFIX)
567   AUTOLOAD:=$(call AutoLoad,40,nsc_gpio)
568 endef
569
570 define KernelPackage/nsc-gpio/description
571  Kernel module for Natsemi GPIO
572 endef
573
574 $(eval $(call KernelPackage,nsc-gpio))
575
576
577 define KernelPackage/scx200-gpio
578   SUBMENU:=$(OTHER_MENU)
579   TITLE:=Natsemi SCX200 GPIO support
580   DEPENDS:=@TARGET_x86 +kmod-nsc-gpio
581   KCONFIG:=CONFIG_SCx200_GPIO
582   FILES:=$(LINUX_DIR)/drivers/char/scx200_gpio.$(LINUX_KMOD_SUFFIX)
583   AUTOLOAD:=$(call AutoLoad,50,scx200_gpio)
584 endef
585
586 define KernelPackage/scx200-gpio/description
587  Kernel module for SCX200 GPIO
588 endef
589
590 $(eval $(call KernelPackage,scx200-gpio))
591
592
593 define KernelPackage/scx200-wdt
594   SUBMENU:=$(OTHER_MENU)
595   TITLE:=Natsemi SCX200 Watchdog support
596   DEPENDS:=@TARGET_x86
597   KCONFIG:=CONFIG_SCx200_WDT
598   FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/scx200_wdt.$(LINUX_KMOD_SUFFIX)
599   AUTOLOAD:=$(call AutoLoad,50,scx200_wdt)
600 endef
601
602 define KernelPackage/scx200-wdt/description
603  Kernel module for SCX200 Watchdog
604 endef
605
606 $(eval $(call KernelPackage,scx200-wdt))
607
608
609 define KernelPackage/sc520-wdt
610   SUBMENU:=$(OTHER_MENU)
611   TITLE:=Natsemi SC520 Watchdog support
612   DEPENDS:=@TARGET_x86
613   KCONFIG:=CONFIG_SC520_WDT
614   FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/sc520_wdt.$(LINUX_KMOD_SUFFIX)
615   AUTOLOAD:=$(call AutoLoad,50,sc520_wdt)
616 endef
617
618 define KernelPackage/sc520-wdt/description
619   Kernel module for SC520 Watchdog
620 endef
621
622 $(eval $(call KernelPackage,sc520-wdt))
623
624
625 define KernelPackage/input-core
626   SUBMENU:=$(OTHER_MENU)
627   TITLE:=Input device core
628   DEPENDS:=@LINUX_2_6
629   KCONFIG:=CONFIG_INPUT
630   FILES:=$(LINUX_DIR)/drivers/input/input-core.$(LINUX_KMOD_SUFFIX)
631   AUTOLOAD:=$(call AutoLoad,19,input-core)
632 endef
633
634 define KernelPackage/input-core/description
635  Kernel modules for support of input device
636 endef
637
638 $(eval $(call KernelPackage,input-core))
639
640
641 define KernelPackage/input-evdev
642   SUBMENU:=$(OTHER_MENU)
643   TITLE:=Input event device
644   DEPENDS:=+kmod-input-core
645   KCONFIG:=CONFIG_INPUT_EVDEV
646   FILES:=$(LINUX_DIR)/drivers/input/evdev.$(LINUX_KMOD_SUFFIX)
647   AUTOLOAD:=$(call AutoLoad,60,evdev)
648 endef
649
650 define KernelPackage/input-evdev/description
651  Kernel modules for support of input device events
652 endef
653
654 $(eval $(call KernelPackage,input-evdev))
655
656
657 define KernelPackage/hid
658   SUBMENU:=$(OTHER_MENU)
659   TITLE:=HID Devices
660   DEPENDS:=+kmod-input-core +kmod-input-evdev
661   KCONFIG:=CONFIG_HID
662   FILES:=$(LINUX_DIR)/drivers/hid/hid.$(LINUX_KMOD_SUFFIX)
663   AUTOLOAD:=$(call AutoLoad,61,hid)
664 endef
665
666 define KernelPackage/hid/description
667  Kernel modules for HID devices
668 endef
669
670 $(eval $(call KernelPackage,hid))
671
672
673 define KernelPackage/input-polldev
674   SUBMENU:=$(OTHER_MENU)
675   TITLE:=Polled Input device support
676   DEPENDS:=+kmod-input-core @LINUX_2_6
677   KCONFIG:=CONFIG_INPUT_POLLDEV
678   FILES:=$(LINUX_DIR)/drivers/input/input-polldev.$(LINUX_KMOD_SUFFIX)
679   AUTOLOAD:=$(call AutoLoad,20,input-polldev)
680 endef
681
682 define KernelPackage/input-polldev/description
683  Kernel module for support of polled input devices
684 endef
685
686 $(eval $(call KernelPackage,input-polldev))
687
688
689 define KernelPackage/input-gpio-keys
690   SUBMENU:=$(OTHER_MENU)
691   TITLE:=GPIO key support
692   DEPENDS:= @GPIO_SUPPORT +kmod-input-core
693   KCONFIG:=CONFIG_KEYBOARD_GPIO
694   FILES:=$(LINUX_DIR)/drivers/input/keyboard/gpio_keys.$(LINUX_KMOD_SUFFIX)
695   AUTOLOAD:=$(call AutoLoad,60,gpio_keys)
696 endef
697
698 define KernelPackage/input-gpio-keys/description
699  This driver implements support for buttons connected
700  to GPIO pins of various CPUs (and some other chips).
701 endef
702
703 $(eval $(call KernelPackage,input-gpio-keys))
704
705
706 define KernelPackage/input-gpio-buttons
707   SUBMENU:=$(OTHER_MENU)
708   TITLE:=Polled GPIO buttons input device
709   DEPENDS:=@GPIO_SUPPORT +kmod-input-polldev
710   KCONFIG:= \
711         CONFIG_INPUT_GPIO_BUTTONS \
712         CONFIG_INPUT_MISC=y
713   FILES:=$(LINUX_DIR)/drivers/input/misc/gpio_buttons.$(LINUX_KMOD_SUFFIX)
714   AUTOLOAD:=$(call AutoLoad,62,gpio_buttons)
715 endef
716
717 define KernelPackage/input-gpio-buttons/description
718  Kernel module for support polled GPIO buttons input device
719 endef
720
721 $(eval $(call KernelPackage,input-gpio-buttons))
722
723 define KernelPackage/input-joydev
724   SUBMENU:=$(OTHER_MENU)
725   TITLE:=Joystick device support
726   DEPENDS:=+kmod-input-core
727   KCONFIG:=CONFIG_INPUT_JOYDEV
728   FILES:=$(LINUX_DIR)/drivers/input/joydev.$(LINUX_KMOD_SUFFIX)
729   AUTOLOAD:=$(call AutoLoad,62,joydev)
730 endef
731
732 define KernelPackage/input-joydev/description
733   Kernel module for joystick support
734 endef
735
736 $(eval $(call KernelPackage,input-joydev))
737
738 define KernelPackage/input-rb532
739   SUBMENU:=$(OTHER_MENU)
740   TITLE:=RB532 button device support
741   DEPENDS:=+kmod-input-core @TARGET_rb532
742   KCONFIG:= \
743         CONFIG_INPUT_MISC=y \
744         CONFIG_INPUT_RB532_BUTTON
745   FILES:=$(LINUX_DIR)/drivers/input/misc/rb532_button.$(LINUX_KMOD_SUFFIX)
746   AUTOLOAD:=$(call AutoLoad,62,rb532_button)
747 endef
748
749 define KernelPackage/input-rb532/description
750   Kernel module for RB532 button
751 endef
752
753 $(eval $(call KernelPackage,input-rb532))
754
755
756 define KernelPackage/mmc-atmelmci
757   SUBMENU:=$(OTHER_MENU)
758   TITLE:=Amtel MMC Support
759   DEPENDS:=@TARGET_avr32 +kmod-mmc
760   KCONFIG:=CONFIG_MMC_ATMELMCI
761   FILES:=$(LINUX_DIR)/drivers/mmc/host/atmel-mci.$(LINUX_KMOD_SUFFIX)
762   AUTOLOAD:=$(call AutoLoad,90,atmel-mci)
763 endef
764
765 define KernelPackage/mmc-atmelmci/description
766  Kernel support for  Atmel Multimedia Card Interface.
767 endef
768
769 $(eval $(call KernelPackage,mmc-atmelmci))
770
771
772 define KernelPackage/cs5535-gpio
773   SUBMENU:=$(OTHER_MENU)
774   TITLE:=AMD CS5535/CS5536 GPIO driver
775   DEPENDS:=@TARGET_x86||@TARGET_olpc
776   KCONFIG:=CONFIG_CS5535_GPIO
777   FILES:=$(LINUX_DIR)/drivers/char/cs5535_gpio.$(LINUX_KMOD_SUFFIX)
778   AUTOLOAD:=$(call AutoLoad,90,cs5535_gpio)
779 endef
780
781 define KernelPackage/cs5535-gpio/description
782  This package contains the AMD CS5535/CS5536 GPIO driver
783 endef
784
785 $(eval $(call KernelPackage,cs5535-gpio))
786
787
788 define KernelPackage/textsearch
789 SUBMENU:=$(OTHER_MENU)
790   TITLE:=Textsearch support is selected if needed
791   DEPENDS:=@LINUX_2_6
792   KCONFIG:= \
793     CONFIG_TEXTSEARCH=y \
794     CONFIG_TEXTSEARCH_KMP \
795     CONFIG_TEXTSEARCH_BM \
796     CONFIG_TEXTSEARCH_FSM
797   FILES:= \
798     $(LINUX_DIR)/lib/ts_kmp.$(LINUX_KMOD_SUFFIX) \
799     $(LINUX_DIR)/lib/ts_bm.$(LINUX_KMOD_SUFFIX) \
800     $(LINUX_DIR)/lib/ts_fsm.$(LINUX_KMOD_SUFFIX)
801   AUTOLOAD:=$(call AutoLoad,20,ts_kmp ts_bm ts_fsm)
802 endef
803
804 $(eval $(call KernelPackage,textsearch))
805
806
807 define KernelPackage/rfkill
808   SUBMENU:=$(OTHER_MENU)
809   TITLE:=RF switch subsystem support
810   DEPENDS:=@TARGET_x86||TARGET_olpc||TARGET_s3c24xx||TARGET_brcm47xx||TARGET_ar71xx
811   KCONFIG:= \
812     CONFIG_RFKILL \
813     CONFIG_RFKILL_INPUT=y \
814     CONFIG_RFKILL_LEDS=y
815 ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),ge,2.6.31)),1)
816   FILES:= \
817     $(LINUX_DIR)/net/rfkill/rfkill.$(LINUX_KMOD_SUFFIX)
818   AUTOLOAD:=$(call AutoLoad,20,rfkill)
819 else
820   FILES:= \
821     $(LINUX_DIR)/net/rfkill/rfkill.$(LINUX_KMOD_SUFFIX) \
822     $(LINUX_DIR)/net/rfkill/rfkill-input.$(LINUX_KMOD_SUFFIX)
823   AUTOLOAD:=$(call AutoLoad,20,rfkill rfkill-input)
824 endif
825 endef
826
827 define KernelPackage/rfkill/description
828   Say Y here if you want to have control over RF switches
829   found on many WiFi and Bluetooth cards.
830 endef
831
832 $(eval $(call KernelPackage,rfkill))