97869747bc5ee7a2facb545a69f45ccb7fd2db44
[openwrt.git] / package / kernel / modules / other.mk
1 #
2 # Copyright (C) 2006-2010 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 WATCHDOG_DIR:=watchdog
11
12
13 define KernelPackage/bluetooth
14   SUBMENU:=$(OTHER_MENU)
15   TITLE:=Bluetooth support
16   DEPENDS:=@USB_SUPPORT +kmod-usb-core
17   KCONFIG:= \
18         CONFIG_BLUEZ \
19         CONFIG_BLUEZ_L2CAP \
20         CONFIG_BLUEZ_SCO \
21         CONFIG_BLUEZ_RFCOMM \
22         CONFIG_BLUEZ_BNEP \
23         CONFIG_BLUEZ_HCIUART \
24         CONFIG_BLUEZ_HCIUSB \
25         CONFIG_BLUEZ_HIDP \
26         CONFIG_BT \
27         CONFIG_BT_L2CAP \
28         CONFIG_BT_SCO \
29         CONFIG_BT_RFCOMM \
30         CONFIG_BT_BNEP \
31         CONFIG_BT_HCIBTUSB \
32         CONFIG_BT_HCIUSB \
33         CONFIG_BT_HCIUART \
34         CONFIG_BT_HCIUART_H4 \
35         CONFIG_BT_HIDP
36   $(call AddDepends/crc16)
37   $(call AddDepends/hid)
38   $(call AddDepends/rfkill)
39   FILES:= \
40         $(LINUX_DIR)/net/bluetooth/bluetooth.ko \
41         $(LINUX_DIR)/net/bluetooth/l2cap.ko \
42         $(LINUX_DIR)/net/bluetooth/sco.ko \
43         $(LINUX_DIR)/net/bluetooth/rfcomm/rfcomm.ko \
44         $(LINUX_DIR)/net/bluetooth/bnep/bnep.ko \
45         $(LINUX_DIR)/net/bluetooth/hidp/hidp.ko \
46         $(LINUX_DIR)/drivers/bluetooth/hci_uart.ko \
47         $(LINUX_DIR)/drivers/bluetooth/btusb.ko
48   AUTOLOAD:=$(call AutoLoad,90,bluetooth l2cap sco rfcomm bnep hidp hci_uart btusb)
49 endef
50
51 define KernelPackage/bluetooth/description
52  Kernel support for Bluetooth devices
53 endef
54
55 $(eval $(call KernelPackage,bluetooth))
56
57
58 define KernelPackage/cpu-msr
59   SUBMENU:=$(OTHER_MENU)
60   TITLE:=x86 CPU MSR support
61   DEPENDS:=@TARGET_x86
62   KCONFIG:=CONFIG_X86_MSR
63   FILES:=$(LINUX_DIR)/arch/x86/kernel/msr.$(LINUX_KMOD_SUFFIX)
64   AUTOLOAD:=$(call AutoLoad,20,msr)
65 endef
66
67 define KernelPackage/cpu-msr/description
68  Kernel module for Model Specific Registers support in x86 CPUs
69 endef
70
71 $(eval $(call KernelPackage,cpu-msr))
72
73
74 define KernelPackage/crc-ccitt
75   SUBMENU:=$(OTHER_MENU)
76   TITLE:=CRC-CCITT support
77   KCONFIG:=CONFIG_CRC_CCITT
78   FILES:=$(LINUX_DIR)/lib/crc-ccitt.ko
79   AUTOLOAD:=$(call AutoLoad,20,crc-ccitt)
80 endef
81
82 define KernelPackage/crc-ccitt/description
83  Kernel module for CRC-CCITT support
84 endef
85
86 $(eval $(call KernelPackage,crc-ccitt))
87
88
89 define KernelPackage/crc-itu-t
90   SUBMENU:=$(OTHER_MENU)
91   TITLE:=CRC ITU-T V.41 support
92   KCONFIG:=CONFIG_CRC_ITU_T
93   FILES:=$(LINUX_DIR)/lib/crc-itu-t.ko
94   AUTOLOAD:=$(call AutoLoad,20,crc-itu-t)
95 endef
96
97 define KernelPackage/crc-itu-t/description
98  Kernel module for CRC ITU-T V.41 support
99 endef
100
101 $(eval $(call KernelPackage,crc-itu-t))
102
103
104 define KernelPackage/crc7
105   SUBMENU:=$(OTHER_MENU)
106   TITLE:=CRC7 support
107   KCONFIG:=CONFIG_CRC7
108   FILES:=$(LINUX_DIR)/lib/crc7.ko
109   AUTOLOAD:=$(call AutoLoad,20,crc7)
110 endef
111
112 define KernelPackage/crc7/description
113  Kernel module for CRC7 support
114 endef
115
116 $(eval $(call KernelPackage,crc7))
117
118
119 define KernelPackage/crc16
120   SUBMENU:=$(OTHER_MENU)
121   TITLE:=CRC16 support
122   KCONFIG:=CONFIG_CRC16
123   FILES:=$(LINUX_DIR)/lib/crc16.ko
124   AUTOLOAD:=$(call AutoLoad,20,crc16,1)
125   $(call SetDepends/crc16)
126 endef
127
128 define KernelPackage/crc16/description
129  Kernel module for CRC16 support
130 endef
131
132 $(eval $(call KernelPackage,crc16))
133
134
135 define KernelPackage/libcrc32c
136   SUBMENU:=$(OTHER_MENU)
137   TITLE:=CRC32 library support
138   KCONFIG:=CONFIG_LIBCRC32C
139   DEPENDS:=+kmod-crypto-core +kmod-crypto-misc
140   FILES:=$(LINUX_DIR)/lib/libcrc32c.ko
141   AUTOLOAD:=$(call AutoLoad,20,crc32c libcrc32c,1)
142 endef
143
144 define KernelPackage/libcrc32c/description
145  Kernel module for CRC32 support
146 endef
147
148 $(eval $(call KernelPackage,libcrc32c))
149
150
151 define KernelPackage/eeprom-93cx6
152   SUBMENU:=$(OTHER_MENU)
153   TITLE:=EEPROM 93CX6 support
154   KCONFIG:=CONFIG_EEPROM_93CX6
155   FILES:=$(LINUX_DIR)/drivers/misc/eeprom/eeprom_93cx6.ko
156   AUTOLOAD:=$(call AutoLoad,20,eeprom_93cx6)
157 endef
158
159 define KernelPackage/eeprom-93cx6/description
160  Kernel module for EEPROM 93CX6 support
161 endef
162
163 $(eval $(call KernelPackage,eeprom-93cx6))
164
165
166 define KernelPackage/gpio-cs5535
167   SUBMENU:=$(OTHER_MENU)
168   TITLE:=AMD CS5535/CS5536 GPIO driver
169   DEPENDS:=@TARGET_x86
170   KCONFIG:=CONFIG_CS5535_GPIO \
171            CONFIG_GPIO_CS5535
172 ifeq ($(CONFIG_LINUX_2_6_32),y)
173   FILES:=$(LINUX_DIR)/drivers/char/cs5535_gpio.ko
174   AUTOLOAD:=$(call AutoLoad,50,cs5535_gpio)
175 else
176   FILES:=$(LINUX_DIR)/drivers/gpio/cs5535-gpio.ko
177   AUTOLOAD:=$(call AutoLoad,50,cs5535-gpio)
178 endif
179 endef
180
181 define KernelPackage/gpio-cs5535/description
182  This package contains the AMD CS5535/CS5536 GPIO driver
183 endef
184
185 $(eval $(call KernelPackage,gpio-cs5535))
186
187
188 define KernelPackage/gpio-dev
189   SUBMENU:=$(OTHER_MENU)
190   TITLE:=Generic GPIO char device support
191   DEPENDS:=@GPIO_SUPPORT
192   KCONFIG:=CONFIG_GPIO_DEVICE
193   FILES:=$(LINUX_DIR)/drivers/char/gpio_dev.ko
194   AUTOLOAD:=$(call AutoLoad,40,gpio_dev)
195 endef
196
197 define KernelPackage/gpio-dev/description
198   Kernel module to allows control of GPIO pins using a character device.
199 endef
200
201 $(eval $(call KernelPackage,gpio-dev))
202
203
204 define KernelPackage/gpio-nsc
205   SUBMENU:=$(OTHER_MENU)
206   TITLE:=Natsemi GPIO support
207   DEPENDS:=@TARGET_x86
208   KCONFIG:=CONFIG_NSC_GPIO
209   FILES:=$(LINUX_DIR)/drivers/char/nsc_gpio.ko
210   AUTOLOAD:=$(call AutoLoad,40,nsc_gpio)
211 endef
212
213 define KernelPackage/gpio-nsc/description
214  Kernel module for Natsemi GPIO
215 endef
216
217 $(eval $(call KernelPackage,gpio-nsc))
218
219
220 define KernelPackage/gpio-pc8736x
221   SUBMENU:=$(OTHER_MENU)
222   TITLE:=PC8736x GPIO support
223   DEPENDS:=@TARGET_x86
224   KCONFIG:=CONFIG_PC8736x_GPIO
225   FILES:=$(LINUX_DIR)/drivers/char/pc8736x_gpio.ko
226   AUTOLOAD:=$(call AutoLoad,40,pc8736x_gpio)
227 endef
228
229 define KernelPackage/gpio-pc8736x/description
230  Kernel module for PC8736x GPIO
231 endef
232
233 $(eval $(call KernelPackage,gpio-pc8736x))
234
235
236 define KernelPackage/gpio-scx200
237   SUBMENU:=$(OTHER_MENU)
238   TITLE:=Natsemi SCX200 GPIO support
239   DEPENDS:=@TARGET_x86 +kmod-gpio-nsc
240   KCONFIG:=CONFIG_SCx200_GPIO
241   FILES:=$(LINUX_DIR)/drivers/char/scx200_gpio.ko
242   AUTOLOAD:=$(call AutoLoad,50,scx200_gpio)
243 endef
244
245 define KernelPackage/gpio-scx200/description
246  Kernel module for SCX200 GPIO
247 endef
248
249 $(eval $(call KernelPackage,gpio-scx200))
250
251 define KernelPackage/gpio-nxp-74hc164
252   SUBMENU:=$(OTHER_MENU)
253   TITLE:=NXP 74HC164 GPIO expander support
254   DEPENDS:=@TARGET_brcm63xx
255   KCONFIG:=CONFIG_GPIO_NXP_74HC164
256   FILES:=$(LINUX_DIR)/drivers/gpio/nxp_74hc164.ko
257   AUTOLOAD:=$(call AutoLoad,99,nxp_74hc164)
258 endef
259
260 define KernelPackage/gpio-nxp-74hc164/description
261   Kernel module for NXP 74HC164 GPIO expander
262 endef
263
264 $(eval $(call KernelPackage,gpio-nxp-74hc164))
265
266 define KernelPackage/hid
267   SUBMENU:=$(OTHER_MENU)
268   TITLE:=HID Devices
269   DEPENDS:=+kmod-input-evdev
270   KCONFIG:=CONFIG_HID
271   FILES:=$(LINUX_DIR)/drivers/hid/hid.ko
272   AUTOLOAD:=$(call AutoLoad,61,hid)
273   $(call SetDepends/hid)
274   $(call AddDepends/input)
275 endef
276
277 define KernelPackage/hid/description
278  Kernel modules for HID devices
279 endef
280
281 $(eval $(call KernelPackage,hid))
282
283
284 define KernelPackage/input-core
285   SUBMENU:=$(OTHER_MENU)
286   TITLE:=Input device core
287   KCONFIG:=CONFIG_INPUT
288   $(call SetDepends/input)
289   FILES:=$(LINUX_DIR)/drivers/input/input-core.ko
290   AUTOLOAD:=$(call AutoLoad,19,input-core)
291 endef
292
293 define KernelPackage/input-core/description
294  Kernel modules for support of input device
295 endef
296
297 $(eval $(call KernelPackage,input-core))
298
299
300 define KernelPackage/input-evdev
301   SUBMENU:=$(OTHER_MENU)
302   TITLE:=Input event device
303   KCONFIG:=CONFIG_INPUT_EVDEV
304   FILES:=$(LINUX_DIR)/drivers/input/evdev.ko
305   AUTOLOAD:=$(call AutoLoad,60,evdev)
306   $(call AddDepends/input)
307 endef
308
309 define KernelPackage/input-evdev/description
310  Kernel modules for support of input device events
311 endef
312
313 $(eval $(call KernelPackage,input-evdev))
314
315
316 define KernelPackage/input-gpio-buttons
317   SUBMENU:=$(OTHER_MENU)
318   TITLE:=Polled GPIO buttons input device
319   DEPENDS:=@GPIO_SUPPORT +kmod-input-polldev
320   KCONFIG:= \
321         CONFIG_INPUT_GPIO_BUTTONS \
322         CONFIG_INPUT_MISC=y
323   FILES:=$(LINUX_DIR)/drivers/input/misc/gpio_buttons.ko
324   AUTOLOAD:=$(call AutoLoad,62,gpio_buttons)
325 endef
326
327 define KernelPackage/input-gpio-buttons/description
328  Kernel module for support polled GPIO buttons input device
329 endef
330
331 $(eval $(call KernelPackage,input-gpio-buttons))
332
333
334 define KernelPackage/input-gpio-keys
335   SUBMENU:=$(OTHER_MENU)
336   TITLE:=GPIO key support
337   DEPENDS:= @GPIO_SUPPORT
338   KCONFIG:=CONFIG_KEYBOARD_GPIO
339   FILES:=$(LINUX_DIR)/drivers/input/keyboard/gpio_keys.ko
340   AUTOLOAD:=$(call AutoLoad,60,gpio_keys)
341   $(call AddDepends/input)
342 endef
343
344 define KernelPackage/input-gpio-keys/description
345  This driver implements support for buttons connected
346  to GPIO pins of various CPUs (and some other chips).
347 endef
348
349 $(eval $(call KernelPackage,input-gpio-keys))
350
351
352 define KernelPackage/input-gpio-encoder
353   SUBMENU:=$(OTHER_MENU)
354   TITLE:=GPIO rotay encoder
355   KCONFIG:=CONFIG_INPUT_GPIO_ROTARY_ENCODER
356   FILES:=$(LINUX_DIR)/drivers/input/misc/rotary_encoder.ko
357   AUTOLOAD:=$(call AutoLoad,62,rotary_encoder)
358   $(call AddDepends/input,@GPIO_SUPPORT)
359 endef
360
361 define KernelPackage/gpio-encoder/description
362  Kernel module to use rotary encoders connected to GPIO pins
363 endef
364
365 $(eval $(call KernelPackage,input-gpio-encoder))
366
367
368 define KernelPackage/input-joydev
369   SUBMENU:=$(OTHER_MENU)
370   TITLE:=Joystick device support
371   KCONFIG:=CONFIG_INPUT_JOYDEV
372   FILES:=$(LINUX_DIR)/drivers/input/joydev.ko
373   AUTOLOAD:=$(call AutoLoad,62,joydev)
374   $(call AddDepends/input)
375 endef
376
377 define KernelPackage/input-joydev/description
378   Kernel module for joystick support
379 endef
380
381 $(eval $(call KernelPackage,input-joydev))
382
383
384 define KernelPackage/input-polldev
385   SUBMENU:=$(OTHER_MENU)
386   TITLE:=Polled Input device support
387   KCONFIG:=CONFIG_INPUT_POLLDEV
388   FILES:=$(LINUX_DIR)/drivers/input/input-polldev.ko
389   AUTOLOAD:=$(call AutoLoad,20,input-polldev)
390   $(call AddDepends/input)
391 endef
392
393 define KernelPackage/input-polldev/description
394  Kernel module for support of polled input devices
395 endef
396
397 $(eval $(call KernelPackage,input-polldev))
398
399
400 define KernelPackage/leds-alix
401   SUBMENU:=$(OTHER_MENU)
402   TITLE:=PCengines ALIX LED support
403   DEPENDS:=@TARGET_x86
404   KCONFIG:=CONFIG_LEDS_ALIX2
405   FILES:=$(LINUX_DIR)/drivers/leds/leds-alix2.ko
406   AUTOLOAD:=$(call AutoLoad,50,leds-alix2)
407 endef
408
409 define KernelPackage/leds-alix/description
410  Kernel module for PCengines ALIX LEDs
411 endef
412
413 $(eval $(call KernelPackage,leds-alix))
414
415
416 define KernelPackage/leds-gpio
417   SUBMENU:=$(OTHER_MENU)
418   TITLE:=GPIO LED support
419   DEPENDS:= @GPIO_SUPPORT
420   KCONFIG:=CONFIG_LEDS_GPIO
421   FILES:=$(LINUX_DIR)/drivers/leds/leds-gpio.ko
422   AUTOLOAD:=$(call AutoLoad,60,leds-gpio)
423 endef
424
425 define KernelPackage/leds-gpio/description
426  Kernel module for LEDs on GPIO lines
427 endef
428
429 $(eval $(call KernelPackage,leds-gpio))
430
431
432 define KernelPackage/leds-net48xx
433   SUBMENU:=$(OTHER_MENU)
434   TITLE:=Soekris Net48xx LED support
435   DEPENDS:=@TARGET_x86 +kmod-gpio-scx200
436   KCONFIG:=CONFIG_LEDS_NET48XX
437   FILES:=$(LINUX_DIR)/drivers/leds/leds-net48xx.ko
438   AUTOLOAD:=$(call AutoLoad,50,leds-net48xx)
439 endef
440
441 define KernelPackage/leds-net48xx/description
442  Kernel module for Soekris Net48xx LEDs
443 endef
444
445 $(eval $(call KernelPackage,leds-net48xx))
446
447 define KernelPackage/leds-net5501
448   SUBMENU:=$(OTHER_MENU)
449   TITLE:=Soekris Net5501 LED support
450   DEPENDS:=@TARGET_x86 +kmod-gpio-cs5535 +kmod-leds-gpio
451   KCONFIG:=CONFIG_LEDS_NET5501
452   FILES:=$(LINUX_DIR)/drivers/leds/leds-net5501.ko
453   AUTOLOAD:=$(call AutoLoad,50,leds-net5501)
454 endef
455
456 define KernelPackage/leds-net5501/description
457  Kernel module for Soekris Net5501 LEDs
458 endef
459
460 $(eval $(call KernelPackage,leds-net5501))
461
462
463 define KernelPackage/leds-rb750
464   SUBMENU:=$(OTHER_MENU)
465   TITLE:=RouterBOARD 750 LED support
466   DEPENDS:=@TARGET_ar71xx
467   KCONFIG:=CONFIG_LEDS_RB750
468   FILES:=$(LINUX_DIR)/drivers/leds/leds-rb750.ko
469   AUTOLOAD:=$(call AutoLoad,60,leds-rb750)
470 endef
471
472 define KernelPackage/leds-rb750/description
473  Kernel module for the LEDs on the MikroTik RouterBOARD 750.
474 endef
475
476 $(eval $(call KernelPackage,leds-rb750))
477
478
479 define KernelPackage/leds-wndr3700-usb
480   SUBMENU:=$(OTHER_MENU)
481   TITLE:=WNDR3700 USB LED support
482   DEPENDS:=@TARGET_ar71xx
483   KCONFIG:=CONFIG_LEDS_WNDR3700_USB
484   FILES:=$(LINUX_DIR)/drivers/leds/leds-wndr3700-usb.ko
485   AUTOLOAD:=$(call AutoLoad,60,leds-wndr3700-usb)
486 endef
487
488 define KernelPackage/leds-wndr3700-usb/description
489  Kernel module for the USB LED on the NETGWR WNDR3700 board.
490 endef
491
492 $(eval $(call KernelPackage,leds-wndr3700-usb))
493
494
495 define KernelPackage/leds-wrap
496   SUBMENU:=$(OTHER_MENU)
497   TITLE:=PCengines WRAP LED support
498   DEPENDS:=@TARGET_x86 +kmod-gpio-scx200
499   KCONFIG:=CONFIG_LEDS_WRAP
500   FILES:=$(LINUX_DIR)/drivers/leds/leds-wrap.ko
501   AUTOLOAD:=$(call AutoLoad,50,leds-wrap)
502 endef
503
504 define KernelPackage/leds-wrap/description
505  Kernel module for PCengines WRAP LEDs
506 endef
507
508 $(eval $(call KernelPackage,leds-wrap))
509
510
511 define KernelPackage/ledtrig-gpio
512   SUBMENU:=$(OTHER_MENU)
513   TITLE:=LED GPIO Trigger
514   KCONFIG:=CONFIG_LEDS_TRIGGER_GPIO
515   FILES:=$(LINUX_DIR)/drivers/leds/ledtrig-gpio.ko
516   AUTOLOAD:=$(call AutoLoad,50,ledtrig-gpio)
517 endef
518
519 define KernelPackage/ledtrig-gpio/description
520  Kernel module that allows LEDs to be controlled by gpio events.
521 endef
522
523 $(eval $(call KernelPackage,ledtrig-gpio))
524
525
526 define KernelPackage/ledtrig-morse
527   SUBMENU:=$(OTHER_MENU)
528   TITLE:=LED Morse Trigger
529   KCONFIG:=CONFIG_LEDS_TRIGGER_MORSE
530   FILES:=$(LINUX_DIR)/drivers/leds/ledtrig-morse.ko
531   AUTOLOAD:=$(call AutoLoad,50,ledtrig-morse)
532 endef
533
534 define KernelPackage/ledtrig-morse/description
535  Kernel module to show morse coded messages on LEDs.
536 endef
537
538 $(eval $(call KernelPackage,ledtrig-morse))
539
540
541 define KernelPackage/ledtrig-netdev
542   SUBMENU:=$(OTHER_MENU)
543   TITLE:=LED NETDEV Trigger
544   KCONFIG:=CONFIG_LEDS_TRIGGER_NETDEV
545   FILES:=$(LINUX_DIR)/drivers/leds/ledtrig-netdev.ko
546   AUTOLOAD:=$(call AutoLoad,50,ledtrig-netdev)
547 endef
548
549 define KernelPackage/ledtrig-netdev/description
550  Kernel module to drive LEDs based on network activity.
551 endef
552
553 $(eval $(call KernelPackage,ledtrig-netdev))
554
555
556 define KernelPackage/ledtrig-netfilter
557   SUBMENU:=$(OTHER_MENU)
558   TITLE:=LED NetFilter Trigger
559   DEPENDS:=kmod-ipt-core
560   KCONFIG:=CONFIG_NETFILTER_XT_TARGET_LED
561   FILES:=$(LINUX_DIR)/net/netfilter/xt_LED.ko
562   AUTOLOAD:=$(call AutoLoad,50,xt_LED)
563 endef
564
565 define KernelPackage/ledtrig-netfilter/description
566  Kernel module to flash LED when a particular packets passing through your machine.
567
568  For example to create an LED trigger for incoming SSH traffic:
569     iptables -A INPUT -p tcp --dport 22 -j LED --led-trigger-id ssh --led-delay 1000
570  Then attach the new trigger to an LED on your system:
571     echo netfilter-ssh > /sys/class/leds/<ledname>/trigger
572 endef
573
574 $(eval $(call KernelPackage,ledtrig-netfilter))
575
576
577 define KernelPackage/lp
578   SUBMENU:=$(OTHER_MENU)
579   TITLE:=Parallel port and line printer support
580   DEPENDS:=@BROKEN
581   KCONFIG:= \
582         CONFIG_PARPORT \
583         CONFIG_PRINTER \
584         CONFIG_PPDEV
585   FILES:= \
586         $(LINUX_DIR)/drivers/parport/parport.ko \
587         $(LINUX_DIR)/drivers/char/lp.ko \
588         $(LINUX_DIR)/drivers/char/ppdev.ko
589   AUTOLOAD:=$(call AutoLoad,50,parport lp)
590 endef
591
592 $(eval $(call KernelPackage,lp))
593
594
595 define KernelPackage/mmc
596   SUBMENU:=$(OTHER_MENU)
597   TITLE:=MMC/SD Card Support
598   KCONFIG:= \
599         CONFIG_MMC \
600         CONFIG_MMC_BLOCK \
601         CONFIG_MMC_DEBUG=n \
602         CONFIG_MMC_UNSAFE_RESUME=n \
603         CONFIG_MMC_BLOCK_BOUNCE=y \
604         CONFIG_MMC_SDHCI=n \
605         CONFIG_MMC_TIFM_SD=n \
606         CONFIG_MMC_WBSD=n \
607         CONFIG_SDIO_UART=n
608   FILES:= \
609         $(LINUX_DIR)/drivers/mmc/core/mmc_core.ko \
610         $(LINUX_DIR)/drivers/mmc/card/mmc_block.ko
611   AUTOLOAD:=$(call AutoLoad,90,mmc_core mmc_block,1)
612 endef
613
614 define KernelPackage/mmc/description
615  Kernel support for MMC/SD cards
616 endef
617
618 $(eval $(call KernelPackage,mmc))
619
620
621 define KernelPackage/mmc-atmelmci
622   SUBMENU:=$(OTHER_MENU)
623   TITLE:=Amtel MMC Support
624   DEPENDS:=@TARGET_avr32 +kmod-mmc
625   KCONFIG:=CONFIG_MMC_ATMELMCI
626   FILES:=$(LINUX_DIR)/drivers/mmc/host/atmel-mci.ko
627   AUTOLOAD:=$(call AutoLoad,90,atmel-mci)
628 endef
629
630 define KernelPackage/mmc-atmelmci/description
631  Kernel support for  Atmel Multimedia Card Interface.
632 endef
633
634 $(eval $(call KernelPackage,mmc-atmelmci,1))
635
636
637 define KernelPackage/rfkill
638   SUBMENU:=$(OTHER_MENU)
639   TITLE:=RF switch subsystem support
640   KCONFIG:= \
641     CONFIG_RFKILL \
642     CONFIG_RFKILL_INPUT=y \
643     CONFIG_RFKILL_LEDS=y
644 ifeq ($(CONFIG_LINUX_2_6_30),)
645   FILES:= \
646     $(LINUX_DIR)/net/rfkill/rfkill.ko
647   AUTOLOAD:=$(call AutoLoad,20,rfkill)
648 else
649   FILES:= \
650     $(LINUX_DIR)/net/rfkill/rfkill.ko \
651     $(LINUX_DIR)/net/rfkill/rfkill-input.ko
652   AUTOLOAD:=$(call AutoLoad,20,rfkill rfkill-input)
653 endif
654   $(call SetDepends/rfkill)
655 endef
656
657 define KernelPackage/rfkill/description
658   Say Y here if you want to have control over RF switches
659   found on many WiFi and Bluetooth cards.
660 endef
661
662 $(eval $(call KernelPackage,rfkill))
663
664
665 define KernelPackage/softdog
666   SUBMENU:=$(OTHER_MENU)
667   TITLE:=Software watchdog driver
668   KCONFIG:=CONFIG_SOFT_WATCHDOG
669   FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/softdog.ko
670   AUTOLOAD:=$(call AutoLoad,50,softdog)
671 endef
672
673 define KernelPackage/softdog/description
674  Software watchdog driver
675 endef
676
677 $(eval $(call KernelPackage,softdog))
678
679
680 define KernelPackage/ssb
681   SUBMENU:=$(OTHER_MENU)
682   TITLE:=Silicon Sonics Backplane glue code
683   DEPENDS:=@PCI_SUPPORT @!TARGET_brcm47xx @!TARGET_brcm63xx
684   KCONFIG:=\
685         CONFIG_SSB \
686         CONFIG_SSB_B43_PCI_BRIDGE=y \
687         CONFIG_SSB_DRIVER_MIPS=n \
688         CONFIG_SSB_DRIVER_PCICORE=y \
689         CONFIG_SSB_DRIVER_PCICORE_POSSIBLE=y \
690         CONFIG_SSB_PCIHOST=y \
691         CONFIG_SSB_PCIHOST_POSSIBLE=y \
692         CONFIG_SSB_POSSIBLE=y \
693         CONFIG_SSB_SPROM=y \
694         CONFIG_SSB_SILENT=y
695   FILES:=$(LINUX_DIR)/drivers/ssb/ssb.ko
696   AUTOLOAD:=$(call AutoLoad,29,ssb)
697 endef
698
699 define KernelPackage/ssb/description
700   Silicon Sonics Backplane glue code.
701 endef
702
703 $(eval $(call KernelPackage,ssb))
704
705
706 define KernelPackage/textsearch
707 SUBMENU:=$(OTHER_MENU)
708   TITLE:=Textsearch support is selected if needed
709   KCONFIG:= \
710     CONFIG_TEXTSEARCH=y \
711     CONFIG_TEXTSEARCH_KMP \
712     CONFIG_TEXTSEARCH_BM \
713     CONFIG_TEXTSEARCH_FSM
714   FILES:= \
715     $(LINUX_DIR)/lib/ts_kmp.ko \
716     $(LINUX_DIR)/lib/ts_bm.ko \
717     $(LINUX_DIR)/lib/ts_fsm.ko
718   AUTOLOAD:=$(call AutoLoad,20,ts_kmp ts_bm ts_fsm)
719 endef
720
721 $(eval $(call KernelPackage,textsearch))
722
723
724 define KernelPackage/wdt-geode
725   SUBMENU:=$(OTHER_MENU)
726   TITLE:=Geode/LX Watchdog timer
727   DEPENDS:=@TARGET_x86
728   KCONFIG:=CONFIG_GEODE_WDT
729   FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/geodewdt.ko
730   AUTOLOAD:=$(call AutoLoad,50,geodewdt)
731 endef
732
733 define KernelPackage/wdt-geode/description
734   Kernel module for Geode watchdog timer.
735 endef
736
737 $(eval $(call KernelPackage,wdt-geode))
738
739
740 define KernelPackage/wdt-omap
741   SUBMENU:=$(OTHER_MENU)
742   TITLE:=OMAP Watchdog timer
743   DEPENDS:=@(TARGET_omap24xx||TARGET_omap35xx)
744   KCONFIG:=CONFIG_OMAP_WATCHDOG
745   FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/omap_wdt.ko
746   AUTOLOAD:=$(call AutoLoad,50,omap_wdt.ko)
747 endef
748
749 define KernelPackage/wdt-omap/description
750   Kernel module for TI omap watchdog timer.
751 endef
752
753 $(eval $(call KernelPackage,wdt-omap))
754
755
756 define KernelPackage/wdt-sc520
757   SUBMENU:=$(OTHER_MENU)
758   TITLE:=Natsemi SC520 Watchdog support
759   DEPENDS:=@TARGET_x86
760   KCONFIG:=CONFIG_SC520_WDT
761   FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/sc520_wdt.ko
762   AUTOLOAD:=$(call AutoLoad,50,sc520_wdt)
763 endef
764
765 define KernelPackage/wdt-sc520/description
766   Kernel module for SC520 Watchdog
767 endef
768
769 $(eval $(call KernelPackage,wdt-sc520))
770
771
772 define KernelPackage/wdt-scx200
773   SUBMENU:=$(OTHER_MENU)
774   TITLE:=Natsemi SCX200 Watchdog support
775   DEPENDS:=@TARGET_x86
776   KCONFIG:=CONFIG_SCx200_WDT
777   FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/scx200_wdt.ko
778   AUTOLOAD:=$(call AutoLoad,50,scx200_wdt)
779 endef
780
781 define KernelPackage/wdt-scx200/description
782  Kernel module for SCX200 Watchdog
783 endef
784
785 $(eval $(call KernelPackage,wdt-scx200))
786
787 define KernelPackage/pwm
788   SUBMENU:=$(OTHER_MENU)
789   TITLE:=PWM generic API
790   KCONFIG:=CONFIG_GENERIC_PWM
791   FILES:=$(LINUX_DIR)/drivers/pwm/pwm.ko
792   AUTOLOAD:=$(call AutoLoad,50,pwm)
793 endef
794
795 define KernelPackage/pwm/description
796  Kernel module that implement a generic PWM API
797 endef
798
799 $(eval $(call KernelPackage,pwm))
800
801
802 define KernelPackage/pwm-gpio
803   SUBMENU:=$(OTHER_MENU)
804   TITLE:=PWM over GPIO
805   DEPENDS:=+kmod-pwm
806   KCONFIG:=CONFIG_GPIO_PWM
807   FILES:=$(LINUX_DIR)/drivers/pwm/gpio-pwm.ko
808   AUTOLOAD:=$(call AutoLoad,51,gpio-pwm)
809 endef
810
811 define KernelPackage/pwm-gpio/description
812  Kernel module to models a single-channel PWM device using a timer and a GPIO pin
813 endef
814
815 $(eval $(call KernelPackage,pwm-gpio))
816
817 define KernelPackage/rtc-core
818   SUBMENU:=$(OTHER_MENU)
819   TITLE:=Real Time Clock class support
820   DEPENDS:=@LINUX_2_6
821   KCONFIG:=CONFIG_RTC_CLASS
822   FILES:=$(LINUX_DIR)/drivers/rtc/rtc-core.$(LINUX_KMOD_SUFFIX)
823   AUTOLOAD:=$(call AutoLoad,29,rtc-core)
824 endef
825
826 define KernelPackage/rtc-core/description
827  Generic RTC class support.
828 endef
829
830 $(eval $(call KernelPackage,rtc-core))
831
832 define KernelPackage/rtc-pcf8563
833   SUBMENU:=$(OTHER_MENU)
834   TITLE:=Philips PCF8563/Epson RTC8564 RTC support
835   DEPENDS:=+kmod-rtc-core
836   KCONFIG:=CONFIG_RTC_DRV_PCF8563
837   FILES:=$(LINUX_DIR)/drivers/rtc/rtc-pcf8563.$(LINUX_KMOD_SUFFIX)
838   AUTOLOAD:=$(call AutoLoad,30,rtc-pcf8563)
839 endef
840
841 define KernelPackage/rtc-pcf8563/description
842  Kernel module for Philips PCF8563 RTC chip.
843  The Epson RTC8564 should work as well.
844 endef
845
846 $(eval $(call KernelPackage,rtc-pcf8563))