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