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