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