2de923f9529a7d605f40d1ef8a238f4acb306a71
[15.05/openwrt.git] / package / kernel / modules / other.mk
1 #
2 # Copyright (C) 2006-2011 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         CONFIG_HID_SUPPORT=y
37   $(call AddDepends/crc16)
38   $(call AddDepends/hid)
39   $(call AddDepends/rfkill)
40   FILES:= \
41         $(LINUX_DIR)/net/bluetooth/bluetooth.ko \
42         $(LINUX_DIR)/net/bluetooth/rfcomm/rfcomm.ko \
43         $(LINUX_DIR)/net/bluetooth/bnep/bnep.ko \
44         $(LINUX_DIR)/net/bluetooth/hidp/hidp.ko \
45         $(LINUX_DIR)/drivers/bluetooth/hci_uart.ko \
46         $(LINUX_DIR)/drivers/bluetooth/btusb.ko
47   ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),ge,2.6.39)),1)
48     AUTOLOAD:=$(call AutoLoad,90,bluetooth rfcomm bnep hidp hci_uart btusb)
49   else
50     FILES+= \
51         $(LINUX_DIR)/net/bluetooth/l2cap.ko \
52         $(LINUX_DIR)/net/bluetooth/sco.ko
53     AUTOLOAD:=$(call AutoLoad,90,bluetooth l2cap sco rfcomm bnep hidp hci_uart btusb)
54   endif
55 endef
56
57 define KernelPackage/bluetooth/description
58  Kernel support for Bluetooth devices
59 endef
60
61 $(eval $(call KernelPackage,bluetooth))
62
63
64 define KernelPackage/bluetooth-hci-h4p
65   SUBMENU:=$(OTHER_MENU)
66   TITLE:=HCI driver with H4 Nokia extensions
67   DEPENDS:=@TARGET_omap24xx +kmod-bluetooth
68   KCONFIG:=CONFIG_BT_HCIH4P
69   FILES:=$(LINUX_DIR)/drivers/bluetooth/hci_h4p/hci_h4p.ko
70   AUTOLOAD:=$(call AutoLoad,91,hci_h4p)
71 endef
72
73 define KernelPackage/bluetooth-hci-h4p/description
74   HCI driver with H4 Nokia extensions
75 endef
76
77 $(eval $(call KernelPackage,bluetooth-hci-h4p))
78
79
80 define KernelPackage/cpu-msr
81   SUBMENU:=$(OTHER_MENU)
82   TITLE:=x86 CPU MSR support
83   DEPENDS:=@TARGET_x86
84   KCONFIG:=CONFIG_X86_MSR
85   FILES:=$(LINUX_DIR)/arch/x86/kernel/msr.ko
86   AUTOLOAD:=$(call AutoLoad,20,msr)
87 endef
88
89 define KernelPackage/cpu-msr/description
90  Kernel module for Model Specific Registers support in x86 CPUs
91 endef
92
93 $(eval $(call KernelPackage,cpu-msr))
94
95
96 define KernelPackage/eeprom-93cx6
97   SUBMENU:=$(OTHER_MENU)
98   TITLE:=EEPROM 93CX6 support
99   KCONFIG:=CONFIG_EEPROM_93CX6
100   FILES:=$(LINUX_DIR)/drivers/misc/eeprom/eeprom_93cx6.ko
101   AUTOLOAD:=$(call AutoLoad,20,eeprom_93cx6)
102 endef
103
104 define KernelPackage/eeprom-93cx6/description
105  Kernel module for EEPROM 93CX6 support
106 endef
107
108 $(eval $(call KernelPackage,eeprom-93cx6))
109
110
111 define KernelPackage/gpio-cs5535
112   SUBMENU:=$(OTHER_MENU)
113   TITLE:=AMD CS5535/CS5536 GPIO driver
114   DEPENDS:=@TARGET_x86 @LINUX_2_6_30||LINUX_2_6_31||LINUX_2_6_32||LINUX_2_6_35||LINUX_2_6_36||LINUX_2_6_37
115   KCONFIG:=CONFIG_CS5535_GPIO
116   FILES:=$(LINUX_DIR)/drivers/char/cs5535_gpio.ko
117   AUTOLOAD:=$(call AutoLoad,50,cs5535_gpio)
118 endef
119
120 define KernelPackage/gpio-cs5535/description
121  This package contains the AMD CS5535/CS5536 GPIO driver
122 endef
123
124 $(eval $(call KernelPackage,gpio-cs5535))
125
126
127 define KernelPackage/gpio-cs5535-new
128   SUBMENU:=$(OTHER_MENU)
129   TITLE:=AMD CS5535/CS5536 GPIO driver with improved sysfs support
130   DEPENDS:=@TARGET_x86 +kmod-cs5535-mfd @!(LINUX_2_6_30||LINUX_2_6_31||LINUX_2_6_32)
131   KCONFIG:=CONFIG_GPIO_CS5535
132   FILES:=$(LINUX_DIR)/drivers/gpio/cs5535-gpio.ko
133   AUTOLOAD:=$(call AutoLoad,50,cs5535-gpio)
134 endef
135
136 define KernelPackage/gpio-cs5535-new/description
137  This package contains the new AMD CS5535/CS5536 GPIO driver
138 endef
139
140 $(eval $(call KernelPackage,gpio-cs5535-new))
141
142
143 define KernelPackage/gpio-dev
144   SUBMENU:=$(OTHER_MENU)
145   TITLE:=Generic GPIO char device support
146   DEPENDS:=@GPIO_SUPPORT
147   KCONFIG:=CONFIG_GPIO_DEVICE
148   FILES:=$(LINUX_DIR)/drivers/char/gpio_dev.ko
149   AUTOLOAD:=$(call AutoLoad,40,gpio_dev)
150 endef
151
152 define KernelPackage/gpio-dev/description
153   Kernel module to allows control of GPIO pins using a character device.
154 endef
155
156 $(eval $(call KernelPackage,gpio-dev))
157
158
159 define KernelPackage/gpio-nsc
160   SUBMENU:=$(OTHER_MENU)
161   TITLE:=Natsemi GPIO support
162   DEPENDS:=@TARGET_x86
163   KCONFIG:=CONFIG_NSC_GPIO
164   FILES:=$(LINUX_DIR)/drivers/char/nsc_gpio.ko
165   AUTOLOAD:=$(call AutoLoad,40,nsc_gpio)
166 endef
167
168 define KernelPackage/gpio-nsc/description
169  Kernel module for Natsemi GPIO
170 endef
171
172 $(eval $(call KernelPackage,gpio-nsc))
173
174
175 define KernelPackage/gpio-pc8736x
176   SUBMENU:=$(OTHER_MENU)
177   TITLE:=PC8736x GPIO support
178   DEPENDS:=@TARGET_x86
179   KCONFIG:=CONFIG_PC8736x_GPIO
180   FILES:=$(LINUX_DIR)/drivers/char/pc8736x_gpio.ko
181   AUTOLOAD:=$(call AutoLoad,40,pc8736x_gpio)
182 endef
183
184 define KernelPackage/gpio-pc8736x/description
185  Kernel module for PC8736x GPIO
186 endef
187
188 $(eval $(call KernelPackage,gpio-pc8736x))
189
190
191 define KernelPackage/gpio-scx200
192   SUBMENU:=$(OTHER_MENU)
193   TITLE:=Natsemi SCX200 GPIO support
194   DEPENDS:=@TARGET_x86 +kmod-gpio-nsc
195   KCONFIG:=CONFIG_SCx200_GPIO
196   FILES:=$(LINUX_DIR)/drivers/char/scx200_gpio.ko
197   AUTOLOAD:=$(call AutoLoad,50,scx200_gpio)
198 endef
199
200 define KernelPackage/gpio-scx200/description
201  Kernel module for SCX200 GPIO
202 endef
203
204 $(eval $(call KernelPackage,gpio-scx200))
205
206 define KernelPackage/gpio-nxp-74hc164
207   SUBMENU:=$(OTHER_MENU)
208   TITLE:=NXP 74HC164 GPIO expander support
209   DEPENDS:=@TARGET_brcm63xx
210   KCONFIG:=CONFIG_GPIO_NXP_74HC164
211   FILES:=$(LINUX_DIR)/drivers/gpio/nxp_74hc164.ko
212   AUTOLOAD:=$(call AutoLoad,99,nxp_74hc164)
213 endef
214
215 define KernelPackage/gpio-nxp-74hc164/description
216   Kernel module for NXP 74HC164 GPIO expander
217 endef
218
219 $(eval $(call KernelPackage,gpio-nxp-74hc164))
220
221 define KernelPackage/hid
222   SUBMENU:=$(OTHER_MENU)
223   TITLE:=HID Devices
224   DEPENDS:=+kmod-input-evdev
225   KCONFIG:=CONFIG_HID
226   FILES:=$(LINUX_DIR)/drivers/hid/hid.ko
227   AUTOLOAD:=$(call AutoLoad,61,hid)
228   $(call SetDepends/hid)
229   $(call AddDepends/input)
230 endef
231
232 define KernelPackage/hid/description
233  Kernel modules for HID devices
234 endef
235
236 $(eval $(call KernelPackage,hid))
237
238
239 define KernelPackage/input-core
240   SUBMENU:=$(OTHER_MENU)
241   TITLE:=Input device core
242   KCONFIG:=CONFIG_INPUT
243   $(call SetDepends/input)
244   FILES:=$(LINUX_DIR)/drivers/input/input-core.ko
245   AUTOLOAD:=$(call AutoLoad,19,input-core)
246 endef
247
248 define KernelPackage/input-core/description
249  Kernel modules for support of input device
250 endef
251
252 $(eval $(call KernelPackage,input-core))
253
254
255 define KernelPackage/input-evdev
256   SUBMENU:=$(OTHER_MENU)
257   TITLE:=Input event device
258   KCONFIG:=CONFIG_INPUT_EVDEV
259   FILES:=$(LINUX_DIR)/drivers/input/evdev.ko
260   AUTOLOAD:=$(call AutoLoad,60,evdev)
261   $(call AddDepends/input)
262 endef
263
264 define KernelPackage/input-evdev/description
265  Kernel modules for support of input device events
266 endef
267
268 $(eval $(call KernelPackage,input-evdev))
269
270
271 define KernelPackage/input-gpio-buttons
272   SUBMENU:=$(OTHER_MENU)
273   TITLE:=Polled GPIO buttons input device
274   DEPENDS:=@GPIO_SUPPORT +kmod-input-polldev
275   KCONFIG:= \
276         CONFIG_INPUT_GPIO_BUTTONS \
277         CONFIG_INPUT_MISC=y
278   FILES:=$(LINUX_DIR)/drivers/input/misc/gpio_buttons.ko
279   AUTOLOAD:=$(call AutoLoad,62,gpio_buttons)
280 endef
281
282 define KernelPackage/input-gpio-buttons/description
283  Kernel module for support polled GPIO buttons input device
284 endef
285
286 $(eval $(call KernelPackage,input-gpio-buttons))
287
288
289 define KernelPackage/input-gpio-keys
290   SUBMENU:=$(OTHER_MENU)
291   TITLE:=GPIO key support
292   DEPENDS:= @GPIO_SUPPORT
293   KCONFIG:= \
294         CONFIG_KEYBOARD_GPIO \
295         CONFIG_INPUT_KEYBOARD=y
296   FILES:=$(LINUX_DIR)/drivers/input/keyboard/gpio_keys.ko
297   AUTOLOAD:=$(call AutoLoad,60,gpio_keys)
298   $(call AddDepends/input)
299 endef
300
301 define KernelPackage/input-gpio-keys/description
302  This driver implements support for buttons connected
303  to GPIO pins of various CPUs (and some other chips).
304 endef
305
306 $(eval $(call KernelPackage,input-gpio-keys))
307
308
309 define KernelPackage/input-gpio-keys-polled
310   SUBMENU:=$(OTHER_MENU)
311   TITLE:=Polled GPIO key support
312   DEPENDS:=@GPIO_SUPPORT @!(LINUX_2_6_30||LINUX_2_6_31||LINUX_2_6_32||LINUX_2_6_34||LINUX_2_6_35||LINUX_2_6_36) +kmod-input-polldev
313   KCONFIG:= \
314         CONFIG_KEYBOARD_GPIO_POLLED \
315         CONFIG_INPUT_KEYBOARD=y
316   FILES:=$(LINUX_DIR)/drivers/input/keyboard/gpio_keys_polled.ko
317   AUTOLOAD:=$(call AutoLoad,62,gpio_keys_polled)
318   $(call AddDepends/input)
319 endef
320
321 define KernelPackage/input-gpio-keys-polled/description
322  Kernel module for support polled GPIO keys input device
323 endef
324
325 $(eval $(call KernelPackage,input-gpio-keys-polled))
326
327
328 define KernelPackage/input-gpio-encoder
329   SUBMENU:=$(OTHER_MENU)
330   TITLE:=GPIO rotay encoder
331   KCONFIG:=CONFIG_INPUT_GPIO_ROTARY_ENCODER
332   FILES:=$(LINUX_DIR)/drivers/input/misc/rotary_encoder.ko
333   AUTOLOAD:=$(call AutoLoad,62,rotary_encoder)
334   $(call AddDepends/input,@GPIO_SUPPORT)
335 endef
336
337 define KernelPackage/gpio-encoder/description
338  Kernel module to use rotary encoders connected to GPIO pins
339 endef
340
341 $(eval $(call KernelPackage,input-gpio-encoder))
342
343
344 define KernelPackage/input-joydev
345   SUBMENU:=$(OTHER_MENU)
346   TITLE:=Joystick device support
347   KCONFIG:=CONFIG_INPUT_JOYDEV
348   FILES:=$(LINUX_DIR)/drivers/input/joydev.ko
349   AUTOLOAD:=$(call AutoLoad,62,joydev)
350   $(call AddDepends/input)
351 endef
352
353 define KernelPackage/input-joydev/description
354   Kernel module for joystick support
355 endef
356
357 $(eval $(call KernelPackage,input-joydev))
358
359
360 define KernelPackage/input-polldev
361   SUBMENU:=$(OTHER_MENU)
362   TITLE:=Polled Input device support
363   KCONFIG:=CONFIG_INPUT_POLLDEV
364   FILES:=$(LINUX_DIR)/drivers/input/input-polldev.ko
365   AUTOLOAD:=$(call AutoLoad,20,input-polldev)
366   $(call AddDepends/input)
367 endef
368
369 define KernelPackage/input-polldev/description
370  Kernel module for support of polled input devices
371 endef
372
373 $(eval $(call KernelPackage,input-polldev))
374
375
376 define KernelPackage/lp
377   SUBMENU:=$(OTHER_MENU)
378   TITLE:=Parallel port and line printer support
379   DEPENDS:=@BROKEN
380   KCONFIG:= \
381         CONFIG_PARPORT \
382         CONFIG_PRINTER \
383         CONFIG_PPDEV
384   FILES:= \
385         $(LINUX_DIR)/drivers/parport/parport.ko \
386         $(LINUX_DIR)/drivers/char/lp.ko \
387         $(LINUX_DIR)/drivers/char/ppdev.ko
388   AUTOLOAD:=$(call AutoLoad,50,parport lp)
389 endef
390
391 $(eval $(call KernelPackage,lp))
392
393
394 define KernelPackage/mmc
395   SUBMENU:=$(OTHER_MENU)
396   TITLE:=MMC/SD Card Support
397   KCONFIG:= \
398         CONFIG_MMC \
399         CONFIG_MMC_BLOCK \
400         CONFIG_MMC_DEBUG=n \
401         CONFIG_MMC_UNSAFE_RESUME=n \
402         CONFIG_MMC_BLOCK_BOUNCE=y \
403         CONFIG_MMC_SDHCI=n \
404         CONFIG_MMC_TIFM_SD=n \
405         CONFIG_MMC_WBSD=n \
406         CONFIG_SDIO_UART=n
407   FILES:= \
408         $(LINUX_DIR)/drivers/mmc/core/mmc_core.ko \
409         $(LINUX_DIR)/drivers/mmc/card/mmc_block.ko
410   AUTOLOAD:=$(call AutoLoad,90,mmc_core mmc_block,1)
411 endef
412
413 define KernelPackage/mmc/description
414  Kernel support for MMC/SD cards
415 endef
416
417 $(eval $(call KernelPackage,mmc))
418
419
420 define KernelPackage/mmc-atmelmci
421   SUBMENU:=$(OTHER_MENU)
422   TITLE:=Amtel MMC Support
423   DEPENDS:=@TARGET_avr32 +kmod-mmc
424   KCONFIG:=CONFIG_MMC_ATMELMCI
425   FILES:=$(LINUX_DIR)/drivers/mmc/host/atmel-mci.ko
426   AUTOLOAD:=$(call AutoLoad,90,atmel-mci)
427 endef
428
429 define KernelPackage/mmc-atmelmci/description
430  Kernel support for  Atmel Multimedia Card Interface.
431 endef
432
433 $(eval $(call KernelPackage,mmc-atmelmci,1))
434
435
436 define KernelPackage/oprofile
437   SUBMENU:=$(OTHER_MENU)
438   TITLE:=OProfile profiling support
439   KCONFIG:=CONFIG_OPROFILE
440   FILES:=$(LINUX_DIR)/arch/$(LINUX_KARCH)/oprofile/oprofile.ko
441   DEPENDS:=@KERNEL_PROFILING
442 endef
443
444 define KernelPackage/oprofile/description
445   Kernel module for support for oprofile system profiling.
446 endef
447
448 $(eval $(call KernelPackage,oprofile))
449
450
451 define KernelPackage/rfkill
452   SUBMENU:=$(OTHER_MENU)
453   TITLE:=RF switch subsystem support
454   KCONFIG:= \
455     CONFIG_RFKILL \
456     CONFIG_RFKILL_INPUT=y \
457     CONFIG_RFKILL_LEDS=y
458 ifeq ($(CONFIG_LINUX_2_6_30),)
459   FILES:= \
460     $(LINUX_DIR)/net/rfkill/rfkill.ko
461   AUTOLOAD:=$(call AutoLoad,20,rfkill)
462 else
463   FILES:= \
464     $(LINUX_DIR)/net/rfkill/rfkill.ko \
465     $(LINUX_DIR)/net/rfkill/rfkill-input.ko
466   AUTOLOAD:=$(call AutoLoad,20,rfkill rfkill-input)
467 endif
468   $(call SetDepends/rfkill)
469 endef
470
471 define KernelPackage/rfkill/description
472   Say Y here if you want to have control over RF switches
473   found on many WiFi and Bluetooth cards.
474 endef
475
476 $(eval $(call KernelPackage,rfkill))
477
478
479 define KernelPackage/softdog
480   SUBMENU:=$(OTHER_MENU)
481   TITLE:=Software watchdog driver
482   KCONFIG:=CONFIG_SOFT_WATCHDOG
483   FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/softdog.ko
484   AUTOLOAD:=$(call AutoLoad,50,softdog)
485 endef
486
487 define KernelPackage/softdog/description
488  Software watchdog driver
489 endef
490
491 $(eval $(call KernelPackage,softdog))
492
493
494 define KernelPackage/ssb
495   SUBMENU:=$(OTHER_MENU)
496   TITLE:=Silicon Sonics Backplane glue code
497   DEPENDS:=@PCI_SUPPORT @!TARGET_brcm47xx @!TARGET_brcm63xx
498   KCONFIG:=\
499         CONFIG_SSB \
500         CONFIG_SSB_B43_PCI_BRIDGE=y \
501         CONFIG_SSB_DRIVER_MIPS=n \
502         CONFIG_SSB_DRIVER_PCICORE=y \
503         CONFIG_SSB_DRIVER_PCICORE_POSSIBLE=y \
504         CONFIG_SSB_PCIHOST=y \
505         CONFIG_SSB_PCIHOST_POSSIBLE=y \
506         CONFIG_SSB_POSSIBLE=y \
507         CONFIG_SSB_SPROM=y \
508         CONFIG_SSB_SILENT=y
509   FILES:=$(LINUX_DIR)/drivers/ssb/ssb.ko
510   AUTOLOAD:=$(call AutoLoad,29,ssb)
511 endef
512
513 define KernelPackage/ssb/description
514   Silicon Sonics Backplane glue code.
515 endef
516
517 $(eval $(call KernelPackage,ssb))
518
519
520 define KernelPackage/wdt-geode
521   SUBMENU:=$(OTHER_MENU)
522   TITLE:=Geode/LX Watchdog timer
523   DEPENDS:=@TARGET_x86 +kmod-cs5535-mfgpt
524   KCONFIG:=CONFIG_GEODE_WDT
525   FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/geodewdt.ko
526   AUTOLOAD:=$(call AutoLoad,50,geodewdt)
527 endef
528
529 define KernelPackage/wdt-geode/description
530   Kernel module for Geode watchdog timer.
531 endef
532
533 $(eval $(call KernelPackage,wdt-geode))
534
535
536 define KernelPackage/cs5535-clockevt
537   SUBMENU:=$(OTHER_MENU)
538   TITLE:=CS5535/CS5536 high-res timer (MFGPT) events
539   DEPENDS:=@TARGET_x86 +kmod-cs5535-mfgpt
540   KCONFIG:=CONFIG_CS5535_CLOCK_EVENT_SRC
541   FILES:=$(LINUX_DIR)/drivers/clocksource/cs5535-clockevt.ko
542   AUTOLOAD:=$(call AutoLoad,50,cs5535-clockevt)
543 endef
544
545 define KernelPackage/cs5535-clockevt/description
546   Kernel module for CS5535/6 high-res clock event source
547 endef
548
549 $(eval $(call KernelPackage,cs5535-clockevt))
550
551
552 define KernelPackage/cs5535-mfgpt
553   SUBMENU:=$(OTHER_MENU)
554   TITLE:=CS5535/6 Multifunction General Purpose Timer
555   DEPENDS:=@TARGET_x86 +kmod-cs5535-mfd
556   KCONFIG:=CONFIG_CS5535_MFGPT
557   FILES:=$(LINUX_DIR)/drivers/misc/cs5535-mfgpt.ko
558   AUTOLOAD:=$(call AutoLoad,45,cs5535-mfgpt)
559 endef
560
561 define KernelPackage/cs5535-mfgpt/description
562   Kernel module for CS5535/6 multifunction general purpose timer.
563 endef
564
565 $(eval $(call KernelPackage,cs5535-mfgpt))
566
567
568 define KernelPackage/cs5535-mfd
569   SUBMENU:=$(OTHER_MENU)
570   TITLE:=CS5535/6 Multifunction General Purpose Driver
571   DEPENDS:=@TARGET_x86
572   KCONFIG:=CONFIG_MFD_CS5535
573   FILES:= \
574         $(LINUX_DIR)/drivers/mfd/mfd-core.ko \
575         $(LINUX_DIR)/drivers/mfd/cs5535-mfd.ko 
576   AUTOLOAD:=$(call AutoLoad,44,mfd-core cs5535-mfd)
577 endef
578
579 define KernelPackage/cs5535-mfd/description
580   Core driver for CS5535/CS5536 MFD functions.
581 endef
582
583 $(eval $(call KernelPackage,cs5535-mfd))
584
585
586 define KernelPackage/wdt-omap
587   SUBMENU:=$(OTHER_MENU)
588   TITLE:=OMAP Watchdog timer
589   DEPENDS:=@(TARGET_omap24xx||TARGET_omap35xx)
590   KCONFIG:=CONFIG_OMAP_WATCHDOG
591   FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/omap_wdt.ko
592   AUTOLOAD:=$(call AutoLoad,50,omap_wdt.ko)
593 endef
594
595 define KernelPackage/wdt-omap/description
596   Kernel module for TI omap watchdog timer.
597 endef
598
599 $(eval $(call KernelPackage,wdt-omap))
600
601
602 define KernelPackage/wdt-orion
603   SUBMENU:=$(OTHER_MENU)
604   TITLE:=Marvell Orion Watchdog timer
605   DEPENDS:=@TARGET_orion
606   KCONFIG:=CONFIG_ORION_WATCHDOG
607   FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/orion_wdt.ko
608   AUTOLOAD:=$(call AutoLoad,50,orion_wdt)
609 endef
610
611 define KernelPackage/wdt-orion/description
612   Kernel module for Marvell orion watchdog timer.
613 endef
614
615 $(eval $(call KernelPackage,wdt-orion))
616
617
618 define KernelPackage/wdt-sc520
619   SUBMENU:=$(OTHER_MENU)
620   TITLE:=Natsemi SC520 Watchdog support
621   DEPENDS:=@TARGET_x86
622   KCONFIG:=CONFIG_SC520_WDT
623   FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/sc520_wdt.ko
624   AUTOLOAD:=$(call AutoLoad,50,sc520_wdt)
625 endef
626
627 define KernelPackage/wdt-sc520/description
628   Kernel module for SC520 Watchdog
629 endef
630
631 $(eval $(call KernelPackage,wdt-sc520))
632
633
634 define KernelPackage/wdt-scx200
635   SUBMENU:=$(OTHER_MENU)
636   TITLE:=Natsemi SCX200 Watchdog support
637   DEPENDS:=@TARGET_x86
638   KCONFIG:=CONFIG_SCx200_WDT
639   FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/scx200_wdt.ko
640   AUTOLOAD:=$(call AutoLoad,50,scx200_wdt)
641 endef
642
643 define KernelPackage/wdt-scx200/description
644  Kernel module for SCX200 Watchdog
645 endef
646
647 $(eval $(call KernelPackage,wdt-scx200))
648
649 define KernelPackage/pwm
650   SUBMENU:=$(OTHER_MENU)
651   TITLE:=PWM generic API
652   KCONFIG:=CONFIG_GENERIC_PWM
653   FILES:=$(LINUX_DIR)/drivers/pwm/pwm.ko
654   AUTOLOAD:=$(call AutoLoad,50,pwm)
655 endef
656
657 define KernelPackage/pwm/description
658  Kernel module that implement a generic PWM API
659 endef
660
661 $(eval $(call KernelPackage,pwm))
662
663
664 define KernelPackage/pwm-gpio
665   SUBMENU:=$(OTHER_MENU)
666   TITLE:=PWM over GPIO
667   DEPENDS:=+kmod-pwm
668   KCONFIG:=CONFIG_GPIO_PWM
669   FILES:=$(LINUX_DIR)/drivers/pwm/gpio-pwm.ko
670   AUTOLOAD:=$(call AutoLoad,51,gpio-pwm)
671 endef
672
673 define KernelPackage/pwm-gpio/description
674  Kernel module to models a single-channel PWM device using a timer and a GPIO pin
675 endef
676
677 $(eval $(call KernelPackage,pwm-gpio))
678
679 define KernelPackage/rtc-core
680   SUBMENU:=$(OTHER_MENU)
681   DEPENDS:=@(!LINUX_3_0||BROKEN)
682   TITLE:=Real Time Clock class support
683   KCONFIG:=CONFIG_RTC_CLASS
684   FILES:=$(LINUX_DIR)/drivers/rtc/rtc-core.ko
685   AUTOLOAD:=$(call AutoLoad,29,rtc-core)
686 endef
687
688 define KernelPackage/rtc-core/description
689  Generic RTC class support.
690 endef
691
692 $(eval $(call KernelPackage,rtc-core))
693
694 define KernelPackage/rtc-pcf8563
695   SUBMENU:=$(OTHER_MENU)
696   TITLE:=Philips PCF8563/Epson RTC8564 RTC support
697   DEPENDS:=+kmod-rtc-core
698   KCONFIG:=CONFIG_RTC_DRV_PCF8563
699   FILES:=$(LINUX_DIR)/drivers/rtc/rtc-pcf8563.ko
700   AUTOLOAD:=$(call AutoLoad,60,rtc-pcf8563)
701 endef
702
703 define KernelPackage/rtc-pcf8563/description
704  Kernel module for Philips PCF8563 RTC chip.
705  The Epson RTC8564 should work as well.
706 endef
707
708 $(eval $(call KernelPackage,rtc-pcf8563))
709
710
711 define KernelPackage/n810bm
712   SUBMENU:=$(OTHER_MENU)
713   TITLE:=Nokia N810 battery management driver
714   DEPENDS:=@TARGET_omap24xx
715   KCONFIG:=CONFIG_N810BM
716   FILES:=$(LINUX_DIR)/drivers/cbus/n810bm.ko
717   AUTOLOAD:=$(call AutoLoad,01,n810bm)
718 endef
719
720 define KernelPackage/n810bm/description
721   Nokia N810 battery management driver.
722   Controls battery power management and battery charging.
723 endef
724
725 $(eval $(call KernelPackage,n810bm))