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