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