n810: Support modular battery management
[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 ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),ge,2.6.32)),1) 
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:= \
339         CONFIG_KEYBOARD_GPIO \
340         CONFIG_INPUT_KEYBOARD=y
341   FILES:=$(LINUX_DIR)/drivers/input/keyboard/gpio_keys.ko
342   AUTOLOAD:=$(call AutoLoad,60,gpio_keys)
343   $(call AddDepends/input)
344 endef
345
346 define KernelPackage/input-gpio-keys/description
347  This driver implements support for buttons connected
348  to GPIO pins of various CPUs (and some other chips).
349 endef
350
351 $(eval $(call KernelPackage,input-gpio-keys))
352
353
354 define KernelPackage/input-gpio-encoder
355   SUBMENU:=$(OTHER_MENU)
356   TITLE:=GPIO rotay encoder
357   KCONFIG:=CONFIG_INPUT_GPIO_ROTARY_ENCODER
358   FILES:=$(LINUX_DIR)/drivers/input/misc/rotary_encoder.ko
359   AUTOLOAD:=$(call AutoLoad,62,rotary_encoder)
360   $(call AddDepends/input,@GPIO_SUPPORT)
361 endef
362
363 define KernelPackage/gpio-encoder/description
364  Kernel module to use rotary encoders connected to GPIO pins
365 endef
366
367 $(eval $(call KernelPackage,input-gpio-encoder))
368
369
370 define KernelPackage/input-joydev
371   SUBMENU:=$(OTHER_MENU)
372   TITLE:=Joystick device support
373   KCONFIG:=CONFIG_INPUT_JOYDEV
374   FILES:=$(LINUX_DIR)/drivers/input/joydev.ko
375   AUTOLOAD:=$(call AutoLoad,62,joydev)
376   $(call AddDepends/input)
377 endef
378
379 define KernelPackage/input-joydev/description
380   Kernel module for joystick support
381 endef
382
383 $(eval $(call KernelPackage,input-joydev))
384
385
386 define KernelPackage/input-polldev
387   SUBMENU:=$(OTHER_MENU)
388   TITLE:=Polled Input device support
389   KCONFIG:=CONFIG_INPUT_POLLDEV
390   FILES:=$(LINUX_DIR)/drivers/input/input-polldev.ko
391   AUTOLOAD:=$(call AutoLoad,20,input-polldev)
392   $(call AddDepends/input)
393 endef
394
395 define KernelPackage/input-polldev/description
396  Kernel module for support of polled input devices
397 endef
398
399 $(eval $(call KernelPackage,input-polldev))
400
401
402 define KernelPackage/leds-alix
403   SUBMENU:=$(OTHER_MENU)
404   TITLE:=PCengines ALIX LED support
405   DEPENDS:=@TARGET_x86
406   KCONFIG:=CONFIG_LEDS_ALIX2
407   FILES:=$(LINUX_DIR)/drivers/leds/leds-alix2.ko
408   AUTOLOAD:=$(call AutoLoad,50,leds-alix2)
409 endef
410
411 define KernelPackage/leds-alix/description
412  Kernel module for PCengines ALIX LEDs
413 endef
414
415 $(eval $(call KernelPackage,leds-alix))
416
417
418 define KernelPackage/leds-gpio
419   SUBMENU:=$(OTHER_MENU)
420   TITLE:=GPIO LED support
421   DEPENDS:= @GPIO_SUPPORT
422   KCONFIG:=CONFIG_LEDS_GPIO
423   FILES:=$(LINUX_DIR)/drivers/leds/leds-gpio.ko
424   AUTOLOAD:=$(call AutoLoad,60,leds-gpio)
425 endef
426
427 define KernelPackage/leds-gpio/description
428  Kernel module for LEDs on GPIO lines
429 endef
430
431 $(eval $(call KernelPackage,leds-gpio))
432
433
434 define KernelPackage/leds-net48xx
435   SUBMENU:=$(OTHER_MENU)
436   TITLE:=Soekris Net48xx LED support
437   DEPENDS:=@TARGET_x86 +kmod-gpio-scx200
438   KCONFIG:=CONFIG_LEDS_NET48XX
439   FILES:=$(LINUX_DIR)/drivers/leds/leds-net48xx.ko
440   AUTOLOAD:=$(call AutoLoad,50,leds-net48xx)
441 endef
442
443 define KernelPackage/leds-net48xx/description
444  Kernel module for Soekris Net48xx LEDs
445 endef
446
447 $(eval $(call KernelPackage,leds-net48xx))
448
449 define KernelPackage/leds-net5501
450   SUBMENU:=$(OTHER_MENU)
451   TITLE:=Soekris Net5501 LED support
452   DEPENDS:=@TARGET_x86 +kmod-gpio-cs5535 +kmod-leds-gpio
453   KCONFIG:=CONFIG_LEDS_NET5501
454   FILES:=$(LINUX_DIR)/drivers/leds/leds-net5501.ko
455   AUTOLOAD:=$(call AutoLoad,50,leds-net5501)
456 endef
457
458 define KernelPackage/leds-net5501/description
459  Kernel module for Soekris Net5501 LEDs
460 endef
461
462 $(eval $(call KernelPackage,leds-net5501))
463
464
465 define KernelPackage/leds-rb750
466   SUBMENU:=$(OTHER_MENU)
467   TITLE:=RouterBOARD 750 LED support
468   DEPENDS:=@TARGET_ar71xx
469   KCONFIG:=CONFIG_LEDS_RB750
470   FILES:=$(LINUX_DIR)/drivers/leds/leds-rb750.ko
471   AUTOLOAD:=$(call AutoLoad,60,leds-rb750)
472 endef
473
474 define KernelPackage/leds-rb750/description
475  Kernel module for the LEDs on the MikroTik RouterBOARD 750.
476 endef
477
478 $(eval $(call KernelPackage,leds-rb750))
479
480
481 define KernelPackage/leds-wndr3700-usb
482   SUBMENU:=$(OTHER_MENU)
483   TITLE:=WNDR3700 USB LED support
484   DEPENDS:=@TARGET_ar71xx
485   KCONFIG:=CONFIG_LEDS_WNDR3700_USB
486   FILES:=$(LINUX_DIR)/drivers/leds/leds-wndr3700-usb.ko
487   AUTOLOAD:=$(call AutoLoad,60,leds-wndr3700-usb)
488 endef
489
490 define KernelPackage/leds-wndr3700-usb/description
491  Kernel module for the USB LED on the NETGWR WNDR3700 board.
492 endef
493
494 $(eval $(call KernelPackage,leds-wndr3700-usb))
495
496
497 define KernelPackage/leds-wrap
498   SUBMENU:=$(OTHER_MENU)
499   TITLE:=PCengines WRAP LED support
500   DEPENDS:=@TARGET_x86 +kmod-gpio-scx200
501   KCONFIG:=CONFIG_LEDS_WRAP
502   FILES:=$(LINUX_DIR)/drivers/leds/leds-wrap.ko
503   AUTOLOAD:=$(call AutoLoad,50,leds-wrap)
504 endef
505
506 define KernelPackage/leds-wrap/description
507  Kernel module for PCengines WRAP LEDs
508 endef
509
510 $(eval $(call KernelPackage,leds-wrap))
511
512
513 define KernelPackage/ledtrig-gpio
514   SUBMENU:=$(OTHER_MENU)
515   TITLE:=LED GPIO Trigger
516   KCONFIG:=CONFIG_LEDS_TRIGGER_GPIO
517   FILES:=$(LINUX_DIR)/drivers/leds/ledtrig-gpio.ko
518   AUTOLOAD:=$(call AutoLoad,50,ledtrig-gpio)
519 endef
520
521 define KernelPackage/ledtrig-gpio/description
522  Kernel module that allows LEDs to be controlled by gpio events.
523 endef
524
525 $(eval $(call KernelPackage,ledtrig-gpio))
526
527
528 define KernelPackage/ledtrig-morse
529   SUBMENU:=$(OTHER_MENU)
530   TITLE:=LED Morse Trigger
531   KCONFIG:=CONFIG_LEDS_TRIGGER_MORSE
532   FILES:=$(LINUX_DIR)/drivers/leds/ledtrig-morse.ko
533   AUTOLOAD:=$(call AutoLoad,50,ledtrig-morse)
534 endef
535
536 define KernelPackage/ledtrig-morse/description
537  Kernel module to show morse coded messages on LEDs.
538 endef
539
540 $(eval $(call KernelPackage,ledtrig-morse))
541
542
543 define KernelPackage/ledtrig-netdev
544   SUBMENU:=$(OTHER_MENU)
545   TITLE:=LED NETDEV Trigger
546   KCONFIG:=CONFIG_LEDS_TRIGGER_NETDEV
547   FILES:=$(LINUX_DIR)/drivers/leds/ledtrig-netdev.ko
548   AUTOLOAD:=$(call AutoLoad,50,ledtrig-netdev)
549 endef
550
551 define KernelPackage/ledtrig-netdev/description
552  Kernel module to drive LEDs based on network activity.
553 endef
554
555 $(eval $(call KernelPackage,ledtrig-netdev))
556
557
558 define KernelPackage/ledtrig-netfilter
559   SUBMENU:=$(OTHER_MENU)
560   TITLE:=LED NetFilter Trigger
561   DEPENDS:=kmod-ipt-core
562   KCONFIG:=CONFIG_NETFILTER_XT_TARGET_LED
563   FILES:=$(LINUX_DIR)/net/netfilter/xt_LED.ko
564   AUTOLOAD:=$(call AutoLoad,50,xt_LED)
565 endef
566
567 define KernelPackage/ledtrig-netfilter/description
568  Kernel module to flash LED when a particular packets passing through your machine.
569
570  For example to create an LED trigger for incoming SSH traffic:
571     iptables -A INPUT -p tcp --dport 22 -j LED --led-trigger-id ssh --led-delay 1000
572  Then attach the new trigger to an LED on your system:
573     echo netfilter-ssh > /sys/class/leds/<ledname>/trigger
574 endef
575
576 $(eval $(call KernelPackage,ledtrig-netfilter))
577
578 define KernelPackage/ledtrig-usbdev
579   SUBMENU:=$(OTHER_MENU)
580   TITLE:=LED USB device Trigger
581   DEPENDS:=@USB_SUPPORT +kmod-usb-core
582   KCONFIG:=CONFIG_LEDS_TRIGGER_USBDEV
583   FILES:=$(LINUX_DIR)/drivers/leds/ledtrig-usbdev.ko
584   AUTOLOAD:=$(call AutoLoad,50,ledtrig-usbdev)
585 endef
586
587 define KernelPackage/ledtrig-usbdev/description
588  Kernel module to drive LEDs based on USB device presence/activity.
589 endef
590
591 $(eval $(call KernelPackage,ledtrig-usbdev))
592
593
594 define KernelPackage/lp
595   SUBMENU:=$(OTHER_MENU)
596   TITLE:=Parallel port and line printer support
597   DEPENDS:=@BROKEN
598   KCONFIG:= \
599         CONFIG_PARPORT \
600         CONFIG_PRINTER \
601         CONFIG_PPDEV
602   FILES:= \
603         $(LINUX_DIR)/drivers/parport/parport.ko \
604         $(LINUX_DIR)/drivers/char/lp.ko \
605         $(LINUX_DIR)/drivers/char/ppdev.ko
606   AUTOLOAD:=$(call AutoLoad,50,parport lp)
607 endef
608
609 $(eval $(call KernelPackage,lp))
610
611
612 define KernelPackage/mmc
613   SUBMENU:=$(OTHER_MENU)
614   TITLE:=MMC/SD Card Support
615   KCONFIG:= \
616         CONFIG_MMC \
617         CONFIG_MMC_BLOCK \
618         CONFIG_MMC_DEBUG=n \
619         CONFIG_MMC_UNSAFE_RESUME=n \
620         CONFIG_MMC_BLOCK_BOUNCE=y \
621         CONFIG_MMC_SDHCI=n \
622         CONFIG_MMC_TIFM_SD=n \
623         CONFIG_MMC_WBSD=n \
624         CONFIG_SDIO_UART=n
625   FILES:= \
626         $(LINUX_DIR)/drivers/mmc/core/mmc_core.ko \
627         $(LINUX_DIR)/drivers/mmc/card/mmc_block.ko
628   AUTOLOAD:=$(call AutoLoad,90,mmc_core mmc_block,1)
629 endef
630
631 define KernelPackage/mmc/description
632  Kernel support for MMC/SD cards
633 endef
634
635 $(eval $(call KernelPackage,mmc))
636
637
638 define KernelPackage/mmc-atmelmci
639   SUBMENU:=$(OTHER_MENU)
640   TITLE:=Amtel MMC Support
641   DEPENDS:=@TARGET_avr32 +kmod-mmc
642   KCONFIG:=CONFIG_MMC_ATMELMCI
643   FILES:=$(LINUX_DIR)/drivers/mmc/host/atmel-mci.ko
644   AUTOLOAD:=$(call AutoLoad,90,atmel-mci)
645 endef
646
647 define KernelPackage/mmc-atmelmci/description
648  Kernel support for  Atmel Multimedia Card Interface.
649 endef
650
651 $(eval $(call KernelPackage,mmc-atmelmci,1))
652
653
654 define KernelPackage/rfkill
655   SUBMENU:=$(OTHER_MENU)
656   TITLE:=RF switch subsystem support
657   KCONFIG:= \
658     CONFIG_RFKILL \
659     CONFIG_RFKILL_INPUT=y \
660     CONFIG_RFKILL_LEDS=y
661 ifeq ($(CONFIG_LINUX_2_6_30),)
662   FILES:= \
663     $(LINUX_DIR)/net/rfkill/rfkill.ko
664   AUTOLOAD:=$(call AutoLoad,20,rfkill)
665 else
666   FILES:= \
667     $(LINUX_DIR)/net/rfkill/rfkill.ko \
668     $(LINUX_DIR)/net/rfkill/rfkill-input.ko
669   AUTOLOAD:=$(call AutoLoad,20,rfkill rfkill-input)
670 endif
671   $(call SetDepends/rfkill)
672 endef
673
674 define KernelPackage/rfkill/description
675   Say Y here if you want to have control over RF switches
676   found on many WiFi and Bluetooth cards.
677 endef
678
679 $(eval $(call KernelPackage,rfkill))
680
681
682 define KernelPackage/softdog
683   SUBMENU:=$(OTHER_MENU)
684   TITLE:=Software watchdog driver
685   KCONFIG:=CONFIG_SOFT_WATCHDOG
686   FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/softdog.ko
687   AUTOLOAD:=$(call AutoLoad,50,softdog)
688 endef
689
690 define KernelPackage/softdog/description
691  Software watchdog driver
692 endef
693
694 $(eval $(call KernelPackage,softdog))
695
696
697 define KernelPackage/ssb
698   SUBMENU:=$(OTHER_MENU)
699   TITLE:=Silicon Sonics Backplane glue code
700   DEPENDS:=@PCI_SUPPORT @!TARGET_brcm47xx @!TARGET_brcm63xx
701   KCONFIG:=\
702         CONFIG_SSB \
703         CONFIG_SSB_B43_PCI_BRIDGE=y \
704         CONFIG_SSB_DRIVER_MIPS=n \
705         CONFIG_SSB_DRIVER_PCICORE=y \
706         CONFIG_SSB_DRIVER_PCICORE_POSSIBLE=y \
707         CONFIG_SSB_PCIHOST=y \
708         CONFIG_SSB_PCIHOST_POSSIBLE=y \
709         CONFIG_SSB_POSSIBLE=y \
710         CONFIG_SSB_SPROM=y \
711         CONFIG_SSB_SILENT=y
712   FILES:=$(LINUX_DIR)/drivers/ssb/ssb.ko
713   AUTOLOAD:=$(call AutoLoad,29,ssb)
714 endef
715
716 define KernelPackage/ssb/description
717   Silicon Sonics Backplane glue code.
718 endef
719
720 $(eval $(call KernelPackage,ssb))
721
722
723 define KernelPackage/textsearch
724 SUBMENU:=$(OTHER_MENU)
725   TITLE:=Textsearch support is selected if needed
726   KCONFIG:= \
727     CONFIG_TEXTSEARCH=y \
728     CONFIG_TEXTSEARCH_KMP \
729     CONFIG_TEXTSEARCH_BM \
730     CONFIG_TEXTSEARCH_FSM
731   FILES:= \
732     $(LINUX_DIR)/lib/ts_kmp.ko \
733     $(LINUX_DIR)/lib/ts_bm.ko \
734     $(LINUX_DIR)/lib/ts_fsm.ko
735   AUTOLOAD:=$(call AutoLoad,20,ts_kmp ts_bm ts_fsm)
736 endef
737
738 $(eval $(call KernelPackage,textsearch))
739
740
741 define KernelPackage/wdt-geode
742   SUBMENU:=$(OTHER_MENU)
743   TITLE:=Geode/LX Watchdog timer
744   DEPENDS:=@TARGET_x86
745   KCONFIG:=CONFIG_GEODE_WDT
746   FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/geodewdt.ko
747   AUTOLOAD:=$(call AutoLoad,50,geodewdt)
748 endef
749
750 define KernelPackage/wdt-geode/description
751   Kernel module for Geode watchdog timer.
752 endef
753
754 $(eval $(call KernelPackage,wdt-geode))
755
756
757 define KernelPackage/wdt-omap
758   SUBMENU:=$(OTHER_MENU)
759   TITLE:=OMAP Watchdog timer
760   DEPENDS:=@(TARGET_omap24xx||TARGET_omap35xx)
761   KCONFIG:=CONFIG_OMAP_WATCHDOG
762   FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/omap_wdt.ko
763   AUTOLOAD:=$(call AutoLoad,50,omap_wdt.ko)
764 endef
765
766 define KernelPackage/wdt-omap/description
767   Kernel module for TI omap watchdog timer.
768 endef
769
770 $(eval $(call KernelPackage,wdt-omap))
771
772
773 define KernelPackage/wdt-sc520
774   SUBMENU:=$(OTHER_MENU)
775   TITLE:=Natsemi SC520 Watchdog support
776   DEPENDS:=@TARGET_x86
777   KCONFIG:=CONFIG_SC520_WDT
778   FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/sc520_wdt.ko
779   AUTOLOAD:=$(call AutoLoad,50,sc520_wdt)
780 endef
781
782 define KernelPackage/wdt-sc520/description
783   Kernel module for SC520 Watchdog
784 endef
785
786 $(eval $(call KernelPackage,wdt-sc520))
787
788
789 define KernelPackage/wdt-scx200
790   SUBMENU:=$(OTHER_MENU)
791   TITLE:=Natsemi SCX200 Watchdog support
792   DEPENDS:=@TARGET_x86
793   KCONFIG:=CONFIG_SCx200_WDT
794   FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/scx200_wdt.ko
795   AUTOLOAD:=$(call AutoLoad,50,scx200_wdt)
796 endef
797
798 define KernelPackage/wdt-scx200/description
799  Kernel module for SCX200 Watchdog
800 endef
801
802 $(eval $(call KernelPackage,wdt-scx200))
803
804 define KernelPackage/pwm
805   SUBMENU:=$(OTHER_MENU)
806   TITLE:=PWM generic API
807   KCONFIG:=CONFIG_GENERIC_PWM
808   FILES:=$(LINUX_DIR)/drivers/pwm/pwm.ko
809   AUTOLOAD:=$(call AutoLoad,50,pwm)
810 endef
811
812 define KernelPackage/pwm/description
813  Kernel module that implement a generic PWM API
814 endef
815
816 $(eval $(call KernelPackage,pwm))
817
818
819 define KernelPackage/pwm-gpio
820   SUBMENU:=$(OTHER_MENU)
821   TITLE:=PWM over GPIO
822   DEPENDS:=+kmod-pwm
823   KCONFIG:=CONFIG_GPIO_PWM
824   FILES:=$(LINUX_DIR)/drivers/pwm/gpio-pwm.ko
825   AUTOLOAD:=$(call AutoLoad,51,gpio-pwm)
826 endef
827
828 define KernelPackage/pwm-gpio/description
829  Kernel module to models a single-channel PWM device using a timer and a GPIO pin
830 endef
831
832 $(eval $(call KernelPackage,pwm-gpio))
833
834 define KernelPackage/rtc-core
835   SUBMENU:=$(OTHER_MENU)
836   TITLE:=Real Time Clock class support
837   DEPENDS:=@LINUX_2_6
838   KCONFIG:=CONFIG_RTC_CLASS
839   FILES:=$(LINUX_DIR)/drivers/rtc/rtc-core.$(LINUX_KMOD_SUFFIX)
840   AUTOLOAD:=$(call AutoLoad,29,rtc-core)
841 endef
842
843 define KernelPackage/rtc-core/description
844  Generic RTC class support.
845 endef
846
847 $(eval $(call KernelPackage,rtc-core))
848
849 define KernelPackage/rtc-pcf8563
850   SUBMENU:=$(OTHER_MENU)
851   TITLE:=Philips PCF8563/Epson RTC8564 RTC support
852   DEPENDS:=+kmod-rtc-core
853   KCONFIG:=CONFIG_RTC_DRV_PCF8563
854   FILES:=$(LINUX_DIR)/drivers/rtc/rtc-pcf8563.$(LINUX_KMOD_SUFFIX)
855   AUTOLOAD:=$(call AutoLoad,30,rtc-pcf8563)
856 endef
857
858 define KernelPackage/rtc-pcf8563/description
859  Kernel module for Philips PCF8563 RTC chip.
860  The Epson RTC8564 should work as well.
861 endef
862
863 $(eval $(call KernelPackage,rtc-pcf8563))
864
865
866 define KernelPackage/n810bm
867   SUBMENU:=$(OTHER_MENU)
868   TITLE:=Nokia N810 battery management driver
869   DEPENDS:=@TARGET_omap24xx
870   KCONFIG:=CONFIG_N810BM
871   FILES:=$(LINUX_DIR)/drivers/cbus/n810bm.$(LINUX_KMOD_SUFFIX)
872   AUTOLOAD:=$(call AutoLoad,01,n810bm)
873 endef
874
875 define KernelPackage/n810bm/description
876   Nokia N810 battery management driver.
877   Controls battery power management and battery charging.
878 endef
879
880 $(eval $(call KernelPackage,n810bm))