package/kernel: load target specific modules .mk files after generic ones
[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
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/hid)
286   $(call AddDepends/rfkill)
287 endef
288
289 define KernelPackage/bluetooth/2.4
290 #  KCONFIG:= \
291 #       CONFIG_BLUEZ \
292 #       CONFIG_BLUEZ_L2CAP \
293 #       CONFIG_BLUEZ_SCO \
294 #       CONFIG_BLUEZ_RFCOMM \
295 #       CONFIG_BLUEZ_BNEP \
296 #       CONFIG_BLUEZ_HCIUART \
297 #       CONFIG_BLUEZ_HCIUSB
298   FILES:= \
299         $(LINUX_DIR)/net/bluetooth/bluez.$(LINUX_KMOD_SUFFIX) \
300         $(LINUX_DIR)/net/bluetooth/l2cap.$(LINUX_KMOD_SUFFIX) \
301         $(LINUX_DIR)/net/bluetooth/sco.$(LINUX_KMOD_SUFFIX) \
302         $(LINUX_DIR)/net/bluetooth/rfcomm/rfcomm.$(LINUX_KMOD_SUFFIX) \
303         $(LINUX_DIR)/net/bluetooth/bnep/bnep.$(LINUX_KMOD_SUFFIX) \
304         $(LINUX_DIR)/drivers/bluetooth/hci_uart.$(LINUX_KMOD_SUFFIX) \
305         $(LINUX_DIR)/drivers/bluetooth/hci_usb.$(LINUX_KMOD_SUFFIX)
306   AUTOLOAD:=$(call AutoLoad,90,bluez l2cap sco rfcomm bnep hci_uart hci_usb)
307 endef
308
309 define KernelPackage/bluetooth/2.6
310 #  KCONFIG:= \
311 #       CONFIG_BT \
312 #       CONFIG_BT_L2CAP \
313 #       CONFIG_BT_SCO \
314 #       CONFIG_BT_RFCOMM \
315 #       CONFIG_BT_BNEP \
316 #       CONFIG_BT_HCIUSB \
317 #       CONFIG_BT_HCIUART
318   FILES:= \
319         $(LINUX_DIR)/net/bluetooth/bluetooth.$(LINUX_KMOD_SUFFIX) \
320         $(LINUX_DIR)/net/bluetooth/l2cap.$(LINUX_KMOD_SUFFIX) \
321         $(LINUX_DIR)/net/bluetooth/sco.$(LINUX_KMOD_SUFFIX) \
322         $(LINUX_DIR)/net/bluetooth/rfcomm/rfcomm.$(LINUX_KMOD_SUFFIX) \
323         $(LINUX_DIR)/net/bluetooth/bnep/bnep.$(LINUX_KMOD_SUFFIX) \
324         $(LINUX_DIR)/net/bluetooth/hidp/hidp.$(LINUX_KMOD_SUFFIX) \
325         $(LINUX_DIR)/drivers/bluetooth/hci_uart.$(LINUX_KMOD_SUFFIX) \
326         $(LINUX_DIR)/drivers/bluetooth/btusb.$(LINUX_KMOD_SUFFIX)
327   AUTOLOAD:=$(call AutoLoad,90,bluetooth l2cap sco rfcomm bnep hidp hci_uart btusb)
328 endef
329
330 define KernelPackage/bluetooth/description
331  Kernel support for Bluetooth devices
332 endef
333
334 $(eval $(call KernelPackage,bluetooth))
335
336
337 define KernelPackage/mmc
338   SUBMENU:=$(OTHER_MENU)
339   TITLE:=MMC/SD Card Support
340   DEPENDS:=@LINUX_2_6
341   KCONFIG:= \
342         CONFIG_MMC \
343         CONFIG_MMC_BLOCK \
344         CONFIG_MMC_DEBUG=n \
345         CONFIG_MMC_UNSAFE_RESUME=n \
346         CONFIG_MMC_BLOCK_BOUNCE=y \
347         CONFIG_MMC_SDHCI=n \
348         CONFIG_MMC_TIFM_SD=n \
349         CONFIG_MMC_WBSD=n \
350         CONFIG_SDIO_UART=n
351   FILES:= \
352         $(LINUX_DIR)/drivers/mmc/core/mmc_core.$(LINUX_KMOD_SUFFIX) \
353         $(LINUX_DIR)/drivers/mmc/card/mmc_block.$(LINUX_KMOD_SUFFIX)
354   AUTOLOAD:=$(call AutoLoad,90,mmc_core mmc_block,1)
355 endef
356
357 define KernelPackage/mmc/description
358  Kernel support for MMC/SD cards
359 endef
360
361 $(eval $(call KernelPackage,mmc))
362
363
364 define KernelPackage/mmc-at91
365   SUBMENU:=$(OTHER_MENU)
366   TITLE:=MMC/SD Card Support on AT91
367   DEPENDS:=@TARGET_at91 +kmod-mmc
368   KCONFIG:=CONFIG_MMC_AT91
369   FILES:=$(LINUX_DIR)/drivers/mmc/host/at91_mci.$(LINUX_KMOD_SUFFIX)
370   AUTOLOAD:=$(call AutoLoad,90,at91_mci,1)
371 endef
372
373 define KernelPackage/mmc-at91/description
374  Kernel support for MMC/SD cards on the AT91 target
375 endef
376
377 $(eval $(call KernelPackage,mmc-at91))
378
379
380 # XXX: added a workaround for watchdog path changes
381 ifeq ($(KERNEL),2.4)
382   WATCHDOG_DIR=char
383 endif
384 WATCHDOG_DIR?=watchdog
385
386 define KernelPackage/atmel-wdt
387   SUBMENU:=$(OTHER_MENU)
388   TITLE:=AT32AP700x watchdog
389   DEPENDS:=@TARGET_avr32
390   KCONFIG:=CONFIG_AT32AP700X_WDT
391   FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/at32ap700x_wdt.$(LINUX_KMOD_SUFFIX)
392   AUTOLOAD:=$(call AutoLoad,50,at32ap700x_wdt)
393 endef
394
395 define KernelPackage/atmel-wdt/description
396  AT32AP700x watchdog
397 endef
398
399 $(eval $(call KernelPackage,atmel-wdt))
400
401
402 define KernelPackage/softdog
403   SUBMENU:=$(OTHER_MENU)
404   TITLE:=Software watchdog driver
405   KCONFIG:=CONFIG_SOFT_WATCHDOG
406   FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/softdog.$(LINUX_KMOD_SUFFIX)
407   AUTOLOAD:=$(call AutoLoad,50,softdog)
408 endef
409
410 define KernelPackage/softdog/description
411  Software watchdog driver
412 endef
413
414 $(eval $(call KernelPackage,softdog))
415
416 define KernelPackage/rdc321x-wdt
417   SUBMENU:=$(OTHER_MENU)
418   TITLE:=RDC321x watchdog
419   DEPENDS:=@TARGET_rdc
420   KCONFIG:=CONFIG_RDC321X_WDT
421   FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/rdc321x_wdt.$(LINUX_KMOD_SUFFIX)
422   AUTOLOAD:=$(call AutoLoad,50,rdc321x_wdt)
423 endef
424
425 define KernelPackage/rdc321x-wdt/description
426   RDC-321x watchdog driver
427 endef
428
429 $(eval $(call KernelPackage,rdc321x-wdt))
430
431
432 define KernelPackage/leds-gpio
433   SUBMENU:=$(OTHER_MENU)
434   TITLE:=GPIO LED support
435   DEPENDS:= @GPIO_SUPPORT
436   KCONFIG:=CONFIG_LEDS_GPIO
437   FILES:=$(LINUX_DIR)/drivers/leds/leds-gpio.$(LINUX_KMOD_SUFFIX)
438   AUTOLOAD:=$(call AutoLoad,60,leds-gpio)
439 endef
440
441 define KernelPackage/leds-gpio/description
442  Kernel module for LEDs on GPIO lines
443 endef
444
445 $(eval $(call KernelPackage,leds-gpio))
446
447
448 define KernelPackage/ledtrig-adm5120-switch
449   SUBMENU:=$(OTHER_MENU)
450   TITLE:=LED ADM5120 Switch Port Status Trigger
451   DEPENDS:=@TARGET_adm5120
452   KCONFIG:=CONFIG_LEDS_TRIGGER_ADM5120_SWITCH
453   FILES:=$(LINUX_DIR)/drivers/leds/ledtrig-adm5120-switch.$(LINUX_KMOD_SUFFIX)
454   AUTOLOAD:=$(call AutoLoad,50,ledtrig-adm5120-switch)
455 endef
456
457 define KernelPackage/ledtrig-adm5120-switch/description
458  Kernel module to allow LEDs to be controlled by the port states
459  of the ADM5120 built-in ethernet switch.
460 endef
461
462 $(eval $(call KernelPackage,ledtrig-adm5120-switch))
463
464
465 define KernelPackage/leds-net48xx
466   SUBMENU:=$(OTHER_MENU)
467   TITLE:=Soekris Net48xx LED support
468   DEPENDS:=@TARGET_x86 +kmod-scx200-gpio
469   KCONFIG:=CONFIG_LEDS_NET48XX
470   FILES:=$(LINUX_DIR)/drivers/leds/leds-net48xx.$(LINUX_KMOD_SUFFIX)
471   AUTOLOAD:=$(call AutoLoad,50,leds-net48xx)
472 endef
473
474 define KernelPackage/leds-net48xx/description
475  Kernel module for Soekris Net48xx LEDs
476 endef
477
478 $(eval $(call KernelPackage,leds-net48xx))
479
480
481 define KernelPackage/leds-wrap
482   SUBMENU:=$(OTHER_MENU)
483   TITLE:=PCengines WRAP LED support
484   DEPENDS:=@TARGET_x86 +kmod-scx200-gpio
485   KCONFIG:=CONFIG_LEDS_WRAP
486   FILES:=$(LINUX_DIR)/drivers/leds/leds-wrap.$(LINUX_KMOD_SUFFIX)
487   AUTOLOAD:=$(call AutoLoad,50,leds-wrap)
488 endef
489
490 define KernelPackage/leds-wrap/description
491  Kernel module for PCengines WRAP LEDs
492 endef
493
494 $(eval $(call KernelPackage,leds-wrap))
495
496
497 define KernelPackage/leds-alix
498   SUBMENU:=$(OTHER_MENU)
499   TITLE:=PCengines ALIX LED support
500   DEPENDS:=@TARGET_x86
501   KCONFIG:=CONFIG_LEDS_ALIX2
502   FILES:=$(LINUX_DIR)/drivers/leds/leds-alix2.$(LINUX_KMOD_SUFFIX)
503   AUTOLOAD:=$(call AutoLoad,50,leds-alix2)
504 endef
505
506 define KernelPackage/leds-alix/description
507  Kernel module for PCengines ALIX LEDs
508 endef
509
510 $(eval $(call KernelPackage,leds-alix))
511
512
513 define KernelPackage/leds-wndr3700-usb
514   SUBMENU:=$(OTHER_MENU)
515   TITLE:=WNDR3700 USB LED support
516   DEPENDS:= @TARGET_ar71xx
517   KCONFIG:=CONFIG_LEDS_WNDR3700_USB
518   FILES:=$(LINUX_DIR)/drivers/leds/leds-wndr3700-usb.$(LINUX_KMOD_SUFFIX)
519   AUTOLOAD:=$(call AutoLoad,60,leds-wndr3700-usb)
520 endef
521
522 define KernelPackage/leds-wndr3700-usb/description
523  Kernel module for the USB LED on the NETGWR WNDR3700 board.
524 endef
525
526 $(eval $(call KernelPackage,leds-wndr3700-usb))
527
528
529 define KernelPackage/leds-rb750
530   SUBMENU:=$(OTHER_MENU)
531   TITLE:=RouterBOARD 750 LED support
532   DEPENDS:=@TARGET_ar71xx
533   KCONFIG:=CONFIG_LEDS_RB750
534   FILES:=$(LINUX_DIR)/drivers/leds/leds-rb750.$(LINUX_KMOD_SUFFIX)
535   AUTOLOAD:=$(call AutoLoad,60,leds-rb750)
536 endef
537
538 define KernelPackage/leds-rb750/description
539  Kernel module for the LEDs on the MikroTik RouterBOARD 750.
540 endef
541
542 $(eval $(call KernelPackage,leds-rb750))
543
544
545 define KernelPackage/ledtrig-netdev
546   SUBMENU:=$(OTHER_MENU)
547   TITLE:=LED NETDEV Trigger
548   KCONFIG:=CONFIG_LEDS_TRIGGER_NETDEV
549   FILES:=$(LINUX_DIR)/drivers/leds/ledtrig-netdev.$(LINUX_KMOD_SUFFIX)
550   AUTOLOAD:=$(call AutoLoad,50,ledtrig-netdev)
551 endef
552
553 define KernelPackage/ledtrig-netdev/description
554  Kernel module to drive LEDs based on network activity.
555 endef
556
557 $(eval $(call KernelPackage,ledtrig-netdev))
558
559
560 define KernelPackage/ledtrig-morse
561   SUBMENU:=$(OTHER_MENU)
562   TITLE:=LED Morse Trigger
563   KCONFIG:=CONFIG_LEDS_TRIGGER_MORSE
564   FILES:=$(LINUX_DIR)/drivers/leds/ledtrig-morse.$(LINUX_KMOD_SUFFIX)
565   AUTOLOAD:=$(call AutoLoad,50,ledtrig-morse)
566 endef
567
568 define KernelPackage/ledtrig-morse/description
569  Kernel module to show morse coded messages on LEDs.
570 endef
571
572 $(eval $(call KernelPackage,ledtrig-morse))
573
574
575 define KernelPackage/gpio-dev
576   SUBMENU:=$(OTHER_MENU)
577   TITLE:=Generic GPIO char device support
578   DEPENDS:=@GPIO_SUPPORT
579   KCONFIG:=CONFIG_GPIO_DEVICE
580   FILES:=$(LINUX_DIR)/drivers/char/gpio_dev.$(LINUX_KMOD_SUFFIX)
581   AUTOLOAD:=$(call AutoLoad,40,gpio_dev)
582 endef
583
584 define KernelPackage/gpio-dev/description
585   Kernel module to allows control of GPIO pins using a character device.
586 endef
587
588 $(eval $(call KernelPackage,gpio-dev))
589
590
591 define KernelPackage/nsc-gpio
592   SUBMENU:=$(OTHER_MENU)
593   TITLE:=Natsemi GPIO support
594   DEPENDS:=@TARGET_x86
595   KCONFIG:=CONFIG_NSC_GPIO
596   FILES:=$(LINUX_DIR)/drivers/char/nsc_gpio.$(LINUX_KMOD_SUFFIX)
597   AUTOLOAD:=$(call AutoLoad,40,nsc_gpio)
598 endef
599
600 define KernelPackage/nsc-gpio/description
601  Kernel module for Natsemi GPIO
602 endef
603
604 $(eval $(call KernelPackage,nsc-gpio))
605
606
607 define KernelPackage/scx200-gpio
608   SUBMENU:=$(OTHER_MENU)
609   TITLE:=Natsemi SCX200 GPIO support
610   DEPENDS:=@TARGET_x86 +kmod-nsc-gpio
611   KCONFIG:=CONFIG_SCx200_GPIO
612   FILES:=$(LINUX_DIR)/drivers/char/scx200_gpio.$(LINUX_KMOD_SUFFIX)
613   AUTOLOAD:=$(call AutoLoad,50,scx200_gpio)
614 endef
615
616 define KernelPackage/scx200-gpio/description
617  Kernel module for SCX200 GPIO
618 endef
619
620 $(eval $(call KernelPackage,scx200-gpio))
621
622
623 define KernelPackage/scx200-wdt
624   SUBMENU:=$(OTHER_MENU)
625   TITLE:=Natsemi SCX200 Watchdog support
626   DEPENDS:=@TARGET_x86
627   KCONFIG:=CONFIG_SCx200_WDT
628   FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/scx200_wdt.$(LINUX_KMOD_SUFFIX)
629   AUTOLOAD:=$(call AutoLoad,50,scx200_wdt)
630 endef
631
632 define KernelPackage/scx200-wdt/description
633  Kernel module for SCX200 Watchdog
634 endef
635
636 $(eval $(call KernelPackage,scx200-wdt))
637
638
639 define KernelPackage/sc520-wdt
640   SUBMENU:=$(OTHER_MENU)
641   TITLE:=Natsemi SC520 Watchdog support
642   DEPENDS:=@TARGET_x86
643   KCONFIG:=CONFIG_SC520_WDT
644   FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/sc520_wdt.$(LINUX_KMOD_SUFFIX)
645   AUTOLOAD:=$(call AutoLoad,50,sc520_wdt)
646 endef
647
648 define KernelPackage/sc520-wdt/description
649   Kernel module for SC520 Watchdog
650 endef
651
652 $(eval $(call KernelPackage,sc520-wdt))
653
654
655 define KernelPackage/input-core
656   SUBMENU:=$(OTHER_MENU)
657   TITLE:=Input device core
658   DEPENDS:=@LINUX_2_6
659   KCONFIG:=CONFIG_INPUT
660   FILES:=$(LINUX_DIR)/drivers/input/input-core.$(LINUX_KMOD_SUFFIX)
661   AUTOLOAD:=$(call AutoLoad,19,input-core)
662   $(call SetDepends/input)
663 endef
664
665 define KernelPackage/input-core/description
666  Kernel modules for support of input device
667 endef
668
669 $(eval $(call KernelPackage,input-core))
670
671
672 define KernelPackage/input-evdev
673   SUBMENU:=$(OTHER_MENU)
674   TITLE:=Input event device
675   KCONFIG:=CONFIG_INPUT_EVDEV
676   FILES:=$(LINUX_DIR)/drivers/input/evdev.$(LINUX_KMOD_SUFFIX)
677   AUTOLOAD:=$(call AutoLoad,60,evdev)
678   $(call AddDepends/input)
679 endef
680
681 define KernelPackage/input-evdev/description
682  Kernel modules for support of input device events
683 endef
684
685 $(eval $(call KernelPackage,input-evdev))
686
687
688 define KernelPackage/hid
689   SUBMENU:=$(OTHER_MENU)
690   TITLE:=HID Devices
691   DEPENDS:=+kmod-input-evdev
692   KCONFIG:=CONFIG_HID
693   FILES:=$(LINUX_DIR)/drivers/hid/hid.$(LINUX_KMOD_SUFFIX)
694   AUTOLOAD:=$(call AutoLoad,61,hid)
695   $(call SetDepends/hid)
696   $(call AddDepends/input)
697 endef
698
699 define KernelPackage/hid/description
700  Kernel modules for HID devices
701 endef
702
703 $(eval $(call KernelPackage,hid))
704
705
706 define KernelPackage/input-polldev
707   SUBMENU:=$(OTHER_MENU)
708   TITLE:=Polled Input device support
709   DEPENDS:=@LINUX_2_6
710   KCONFIG:=CONFIG_INPUT_POLLDEV
711   FILES:=$(LINUX_DIR)/drivers/input/input-polldev.$(LINUX_KMOD_SUFFIX)
712   AUTOLOAD:=$(call AutoLoad,20,input-polldev)
713   $(call AddDepends/input)
714 endef
715
716 define KernelPackage/input-polldev/description
717  Kernel module for support of polled input devices
718 endef
719
720 $(eval $(call KernelPackage,input-polldev))
721
722
723 define KernelPackage/input-gpio-keys
724   SUBMENU:=$(OTHER_MENU)
725   TITLE:=GPIO key support
726   DEPENDS:= @GPIO_SUPPORT
727   KCONFIG:=CONFIG_KEYBOARD_GPIO
728   FILES:=$(LINUX_DIR)/drivers/input/keyboard/gpio_keys.$(LINUX_KMOD_SUFFIX)
729   AUTOLOAD:=$(call AutoLoad,60,gpio_keys)
730   $(call AddDepends/input)
731 endef
732
733 define KernelPackage/input-gpio-keys/description
734  This driver implements support for buttons connected
735  to GPIO pins of various CPUs (and some other chips).
736 endef
737
738 $(eval $(call KernelPackage,input-gpio-keys))
739
740
741 define KernelPackage/input-gpio-buttons
742   SUBMENU:=$(OTHER_MENU)
743   TITLE:=Polled GPIO buttons input device
744   DEPENDS:=@GPIO_SUPPORT +kmod-input-polldev
745   KCONFIG:= \
746         CONFIG_INPUT_GPIO_BUTTONS \
747         CONFIG_INPUT_MISC=y
748   FILES:=$(LINUX_DIR)/drivers/input/misc/gpio_buttons.$(LINUX_KMOD_SUFFIX)
749   AUTOLOAD:=$(call AutoLoad,62,gpio_buttons)
750 endef
751
752 define KernelPackage/input-gpio-buttons/description
753  Kernel module for support polled GPIO buttons input device
754 endef
755
756 $(eval $(call KernelPackage,input-gpio-buttons))
757
758 define KernelPackage/input-joydev
759   SUBMENU:=$(OTHER_MENU)
760   TITLE:=Joystick device support
761   KCONFIG:=CONFIG_INPUT_JOYDEV
762   FILES:=$(LINUX_DIR)/drivers/input/joydev.$(LINUX_KMOD_SUFFIX)
763   AUTOLOAD:=$(call AutoLoad,62,joydev)
764   $(call AddDepends/input)
765 endef
766
767 define KernelPackage/input-joydev/description
768   Kernel module for joystick support
769 endef
770
771 $(eval $(call KernelPackage,input-joydev))
772
773 define KernelPackage/input-rb532
774   SUBMENU:=$(OTHER_MENU)
775   TITLE:=RB532 button device support
776   DEPENDS:=+kmod-input-core @TARGET_rb532
777   KCONFIG:= \
778         CONFIG_INPUT_MISC=y \
779         CONFIG_INPUT_RB532_BUTTON
780   FILES:=$(LINUX_DIR)/drivers/input/misc/rb532_button.$(LINUX_KMOD_SUFFIX)
781   AUTOLOAD:=$(call AutoLoad,62,rb532_button)
782 endef
783
784 define KernelPackage/input-rb532/description
785   Kernel module for RB532 button
786 endef
787
788 $(eval $(call KernelPackage,input-rb532))
789
790
791 define KernelPackage/mmc-atmelmci
792   SUBMENU:=$(OTHER_MENU)
793   TITLE:=Amtel MMC Support
794   DEPENDS:=@TARGET_avr32 +kmod-mmc
795   KCONFIG:=CONFIG_MMC_ATMELMCI
796   FILES:=$(LINUX_DIR)/drivers/mmc/host/atmel-mci.$(LINUX_KMOD_SUFFIX)
797   AUTOLOAD:=$(call AutoLoad,90,atmel-mci)
798 endef
799
800 define KernelPackage/mmc-atmelmci/description
801  Kernel support for  Atmel Multimedia Card Interface.
802 endef
803
804 $(eval $(call KernelPackage,mmc-atmelmci,1))
805
806
807 define KernelPackage/cs5535-gpio
808   SUBMENU:=$(OTHER_MENU)
809   TITLE:=AMD CS5535/CS5536 GPIO driver
810   DEPENDS:=@TARGET_x86
811   KCONFIG:=CONFIG_CS5535_GPIO
812   FILES:=$(LINUX_DIR)/drivers/char/cs5535_gpio.$(LINUX_KMOD_SUFFIX)
813   AUTOLOAD:=$(call AutoLoad,50,cs5535_gpio)
814 endef
815
816 define KernelPackage/cs5535-gpio/description
817  This package contains the AMD CS5535/CS5536 GPIO driver
818 endef
819
820 $(eval $(call KernelPackage,cs5535-gpio))
821
822
823 define KernelPackage/ixp4xx-beeper
824   SUBMENU:=$(OTHER_MENU)
825   TITLE:=IXP4XX Beeper support
826   DEPENDS:=@TARGET_ixp4xx +kmod-input-core
827   KCONFIG:= \
828         CONFIG_INPUT_MISC=y \
829         CONFIG_INPUT_IXP4XX_BEEPER
830   FILES:=$(LINUX_DIR)/drivers/input/misc/ixp4xx-beeper.$(LINUX_KMOD_SUFFIX)
831   AUTOLOAD:=$(call AutoLoad,50,ixp4xx-beeper)
832 endef
833
834 define KernelPackage/ixp4xx-beeper/description
835  IXP4XX Beeper support
836 endef
837
838 $(eval $(call KernelPackage,ixp4xx-beeper))
839
840
841 define KernelPackage/textsearch
842 SUBMENU:=$(OTHER_MENU)
843   TITLE:=Textsearch support is selected if needed
844   DEPENDS:=@LINUX_2_6
845   KCONFIG:= \
846     CONFIG_TEXTSEARCH=y \
847     CONFIG_TEXTSEARCH_KMP \
848     CONFIG_TEXTSEARCH_BM \
849     CONFIG_TEXTSEARCH_FSM
850   FILES:= \
851     $(LINUX_DIR)/lib/ts_kmp.$(LINUX_KMOD_SUFFIX) \
852     $(LINUX_DIR)/lib/ts_bm.$(LINUX_KMOD_SUFFIX) \
853     $(LINUX_DIR)/lib/ts_fsm.$(LINUX_KMOD_SUFFIX)
854   AUTOLOAD:=$(call AutoLoad,20,ts_kmp ts_bm ts_fsm)
855 endef
856
857 $(eval $(call KernelPackage,textsearch))
858
859
860 define KernelPackage/rfkill
861   SUBMENU:=$(OTHER_MENU)
862   TITLE:=RF switch subsystem support
863   KCONFIG:= \
864     CONFIG_RFKILL \
865     CONFIG_RFKILL_INPUT=y \
866     CONFIG_RFKILL_LEDS=y
867 ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),ge,2.6.31)),1)
868   FILES:= \
869     $(LINUX_DIR)/net/rfkill/rfkill.$(LINUX_KMOD_SUFFIX)
870   AUTOLOAD:=$(call AutoLoad,20,rfkill)
871 else
872   FILES:= \
873     $(LINUX_DIR)/net/rfkill/rfkill.$(LINUX_KMOD_SUFFIX) \
874     $(LINUX_DIR)/net/rfkill/rfkill-input.$(LINUX_KMOD_SUFFIX)
875   AUTOLOAD:=$(call AutoLoad,20,rfkill rfkill-input)
876 endif
877   $(call SetDepends/rfkill)
878 endef
879
880 define KernelPackage/rfkill/description
881   Say Y here if you want to have control over RF switches
882   found on many WiFi and Bluetooth cards.
883 endef
884
885 $(eval $(call KernelPackage,rfkill))
886
887 define KernelPackage/geodewdt
888   SUBMENU:=$(OTHER_MENU)
889   TITLE:=Geode/LX Watchdog timer
890   DEPENDS:=@TARGET_x86 @LINUX_2_6
891   KCONFIG:=CONFIG_GEODE_WDT
892   FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/geodewdt.$(LINUX_KMOD_SUFFIX)
893   AUTOLOAD:=$(call AutoLoad,50,geodewdt)
894 endef
895
896 define KernelPackage/geodewdt/description
897   Kernel module for Geode watchdog timer.
898 endef
899
900 $(eval $(call KernelPackage,geodewdt))
901
902 define KernelPackage/pc8736x-gpio
903   SUBMENU:=$(OTHER_MENU)
904   TITLE:=PC8736x GPIO support
905   DEPENDS:=@TARGET_x86
906   KCONFIG:=CONFIG_PC8736x_GPIO
907   FILES:=$(LINUX_DIR)/drivers/char/pc8736x_gpio.$(LINUX_KMOD_SUFFIX)
908   AUTOLOAD:=$(call AutoLoad,40,pc8736x_gpio)
909 endef
910
911 define KernelPackage/pc8736x-gpio/description
912  Kernel module for PC8736x GPIO
913 endef
914
915 $(eval $(call KernelPackage,pc8736x-gpio))
916