[x86] move more x86-specific modules back to target modules.mk
[openwrt.git] / package / kernel / modules / other.mk
1 #
2 # Copyright (C) 2006-2012 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=y \
28         CONFIG_BT_SCO=y \
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   AUTOLOAD:=$(call AutoLoad,90,bluetooth rfcomm bnep hidp hci_uart btusb)
48 endef
49
50 define KernelPackage/bluetooth/description
51  Kernel support for Bluetooth devices
52 endef
53
54 $(eval $(call KernelPackage,bluetooth))
55
56
57 define KernelPackage/bluetooth-hci-h4p
58   SUBMENU:=$(OTHER_MENU)
59   TITLE:=HCI driver with H4 Nokia extensions
60   DEPENDS:=@TARGET_omap24xx +kmod-bluetooth
61   KCONFIG:=CONFIG_BT_HCIH4P
62   FILES:=$(LINUX_DIR)/drivers/bluetooth/hci_h4p/hci_h4p.ko
63   AUTOLOAD:=$(call AutoLoad,91,hci_h4p)
64 endef
65
66 define KernelPackage/bluetooth-hci-h4p/description
67   HCI driver with H4 Nokia extensions
68 endef
69
70 $(eval $(call KernelPackage,bluetooth-hci-h4p))
71
72
73 define KernelPackage/eeprom-93cx6
74   SUBMENU:=$(OTHER_MENU)
75   TITLE:=EEPROM 93CX6 support
76   KCONFIG:=CONFIG_EEPROM_93CX6
77   FILES:=$(LINUX_DIR)/drivers/misc/eeprom/eeprom_93cx6.ko
78   AUTOLOAD:=$(call AutoLoad,20,eeprom_93cx6)
79 endef
80
81 define KernelPackage/eeprom-93cx6/description
82  Kernel module for EEPROM 93CX6 support
83 endef
84
85 $(eval $(call KernelPackage,eeprom-93cx6))
86
87
88 define KernelPackage/eeprom-at24
89   SUBMENU:=$(OTHER_MENU)
90   TITLE:=EEPROM AT24 support
91   KCONFIG:=CONFIG_EEPROM_AT24
92   DEPENDS:=+kmod-i2c-core
93   FILES:=$(LINUX_DIR)/drivers/misc/eeprom/at24.ko
94   AUTOLOAD:=$(call AutoLoad,60,at24)
95 endef
96
97 define KernelPackage/eeprom-at24/description
98  Kernel module for most I2C EEPROMs
99 endef
100
101 $(eval $(call KernelPackage,eeprom-at24))
102
103
104 define KernelPackage/eeprom-at25
105   SUBMENU:=$(OTHER_MENU)
106   TITLE:=EEPROM AT25 support
107   KCONFIG:=CONFIG_EEPROM_AT25
108   FILES:=$(LINUX_DIR)/drivers/misc/eeprom/at25.ko
109   AUTOLOAD:=$(call AutoLoad,61,at25)
110 endef
111
112 define KernelPackage/eeprom-at25/description
113  Kernel module for most SPI EEPROMs
114 endef
115
116 $(eval $(call KernelPackage,eeprom-at25))
117
118
119 define KernelPackage/gpio-dev
120   SUBMENU:=$(OTHER_MENU)
121   TITLE:=Generic GPIO char device support
122   DEPENDS:=@GPIO_SUPPORT
123   KCONFIG:=CONFIG_GPIO_DEVICE
124   FILES:=$(LINUX_DIR)/drivers/char/gpio_dev.ko
125   AUTOLOAD:=$(call AutoLoad,40,gpio_dev)
126 endef
127
128 define KernelPackage/gpio-dev/description
129   Kernel module to allows control of GPIO pins using a character device.
130 endef
131
132 $(eval $(call KernelPackage,gpio-dev))
133
134
135 define KernelPackage/gpio-nxp-74hc164
136   SUBMENU:=$(OTHER_MENU)
137   TITLE:=NXP 74HC164 GPIO expander support
138   DEPENDS:=@TARGET_brcm63xx
139   KCONFIG:=CONFIG_GPIO_NXP_74HC164
140   FILES:=$(LINUX_DIR)/drivers/gpio/nxp_74hc164.ko
141   AUTOLOAD:=$(call AutoLoad,99,nxp_74hc164)
142 endef
143
144 define KernelPackage/gpio-nxp-74hc164/description
145   Kernel module for NXP 74HC164 GPIO expander
146 endef
147
148 $(eval $(call KernelPackage,gpio-nxp-74hc164))
149
150 define KernelPackage/hid
151   SUBMENU:=$(OTHER_MENU)
152   TITLE:=HID Devices
153   KCONFIG:=CONFIG_HID
154   FILES:=$(LINUX_DIR)/drivers/hid/hid.ko
155   AUTOLOAD:=$(call AutoLoad,61,hid)
156   $(call AddDepends/input,+kmod-input-evdev)
157 endef
158
159 define KernelPackage/hid/description
160  Kernel modules for HID devices
161 endef
162
163 $(eval $(call KernelPackage,hid))
164
165
166 define KernelPackage/input-core
167   SUBMENU:=$(OTHER_MENU)
168   TITLE:=Input device core
169   KCONFIG:=CONFIG_INPUT
170   FILES:=$(LINUX_DIR)/drivers/input/input-core.ko
171   AUTOLOAD:=$(call AutoLoad,19,input-core)
172 endef
173
174 define KernelPackage/input-core/description
175  Kernel modules for support of input device
176 endef
177
178 $(eval $(call KernelPackage,input-core))
179
180
181 define KernelPackage/input-evdev
182   SUBMENU:=$(OTHER_MENU)
183   TITLE:=Input event device
184   KCONFIG:=CONFIG_INPUT_EVDEV
185   FILES:=$(LINUX_DIR)/drivers/input/evdev.ko
186   AUTOLOAD:=$(call AutoLoad,60,evdev)
187   $(call AddDepends/input)
188 endef
189
190 define KernelPackage/input-evdev/description
191  Kernel modules for support of input device events
192 endef
193
194 $(eval $(call KernelPackage,input-evdev))
195
196
197 define KernelPackage/input-gpio-buttons
198   SUBMENU:=$(OTHER_MENU)
199   TITLE:=Polled GPIO buttons input device
200   DEPENDS:=@GPIO_SUPPORT +kmod-input-polldev
201   KCONFIG:= \
202         CONFIG_INPUT_GPIO_BUTTONS \
203         CONFIG_INPUT_MISC=y
204   FILES:=$(LINUX_DIR)/drivers/input/misc/gpio_buttons.ko
205   AUTOLOAD:=$(call AutoLoad,62,gpio_buttons)
206 endef
207
208 define KernelPackage/input-gpio-buttons/description
209  Kernel module for support polled GPIO buttons input device
210 endef
211
212 $(eval $(call KernelPackage,input-gpio-buttons))
213
214
215 define KernelPackage/input-gpio-keys
216   SUBMENU:=$(OTHER_MENU)
217   TITLE:=GPIO key support
218   DEPENDS:= @GPIO_SUPPORT
219   KCONFIG:= \
220         CONFIG_KEYBOARD_GPIO \
221         CONFIG_INPUT_KEYBOARD=y
222   FILES:=$(LINUX_DIR)/drivers/input/keyboard/gpio_keys.ko
223   AUTOLOAD:=$(call AutoLoad,60,gpio_keys)
224   $(call AddDepends/input)
225 endef
226
227 define KernelPackage/input-gpio-keys/description
228  This driver implements support for buttons connected
229  to GPIO pins of various CPUs (and some other chips).
230 endef
231
232 $(eval $(call KernelPackage,input-gpio-keys))
233
234
235 define KernelPackage/input-gpio-keys-polled
236   SUBMENU:=$(OTHER_MENU)
237   TITLE:=Polled GPIO key support
238   DEPENDS:=@GPIO_SUPPORT +kmod-input-polldev
239   KCONFIG:= \
240         CONFIG_KEYBOARD_GPIO_POLLED \
241         CONFIG_INPUT_KEYBOARD=y
242   FILES:=$(LINUX_DIR)/drivers/input/keyboard/gpio_keys_polled.ko
243   AUTOLOAD:=$(call AutoLoad,62,gpio_keys_polled)
244   $(call AddDepends/input)
245 endef
246
247 define KernelPackage/input-gpio-keys-polled/description
248  Kernel module for support polled GPIO keys input device
249 endef
250
251 $(eval $(call KernelPackage,input-gpio-keys-polled))
252
253
254 define KernelPackage/input-gpio-encoder
255   SUBMENU:=$(OTHER_MENU)
256   TITLE:=GPIO rotay encoder
257   KCONFIG:=CONFIG_INPUT_GPIO_ROTARY_ENCODER
258   FILES:=$(LINUX_DIR)/drivers/input/misc/rotary_encoder.ko
259   AUTOLOAD:=$(call AutoLoad,62,rotary_encoder)
260   $(call AddDepends/input,@GPIO_SUPPORT)
261 endef
262
263 define KernelPackage/gpio-encoder/description
264  Kernel module to use rotary encoders connected to GPIO pins
265 endef
266
267 $(eval $(call KernelPackage,input-gpio-encoder))
268
269
270 define KernelPackage/input-joydev
271   SUBMENU:=$(OTHER_MENU)
272   TITLE:=Joystick device support
273   KCONFIG:=CONFIG_INPUT_JOYDEV
274   FILES:=$(LINUX_DIR)/drivers/input/joydev.ko
275   AUTOLOAD:=$(call AutoLoad,62,joydev)
276   $(call AddDepends/input)
277 endef
278
279 define KernelPackage/input-joydev/description
280   Kernel module for joystick support
281 endef
282
283 $(eval $(call KernelPackage,input-joydev))
284
285
286 define KernelPackage/input-polldev
287   SUBMENU:=$(OTHER_MENU)
288   TITLE:=Polled Input device support
289   KCONFIG:=CONFIG_INPUT_POLLDEV
290   FILES:=$(LINUX_DIR)/drivers/input/input-polldev.ko
291   AUTOLOAD:=$(call AutoLoad,20,input-polldev)
292   $(call AddDepends/input)
293 endef
294
295 define KernelPackage/input-polldev/description
296  Kernel module for support of polled input devices
297 endef
298
299 $(eval $(call KernelPackage,input-polldev))
300
301
302 define KernelPackage/lp
303   SUBMENU:=$(OTHER_MENU)
304   TITLE:=Parallel port and line printer support
305   DEPENDS:=@BROKEN
306   KCONFIG:= \
307         CONFIG_PARPORT \
308         CONFIG_PRINTER \
309         CONFIG_PPDEV
310   FILES:= \
311         $(LINUX_DIR)/drivers/parport/parport.ko \
312         $(LINUX_DIR)/drivers/char/lp.ko \
313         $(LINUX_DIR)/drivers/char/ppdev.ko
314   AUTOLOAD:=$(call AutoLoad,50,parport lp)
315 endef
316
317 $(eval $(call KernelPackage,lp))
318
319
320 define KernelPackage/mmc
321   SUBMENU:=$(OTHER_MENU)
322   TITLE:=MMC/SD Card Support
323   KCONFIG:= \
324         CONFIG_MMC \
325         CONFIG_MMC_BLOCK \
326         CONFIG_MMC_DEBUG=n \
327         CONFIG_MMC_UNSAFE_RESUME=n \
328         CONFIG_MMC_BLOCK_BOUNCE=y \
329         CONFIG_MMC_SDHCI=n \
330         CONFIG_MMC_TIFM_SD=n \
331         CONFIG_MMC_WBSD=n \
332         CONFIG_SDIO_UART=n
333   FILES:= \
334         $(LINUX_DIR)/drivers/mmc/core/mmc_core.ko \
335         $(LINUX_DIR)/drivers/mmc/card/mmc_block.ko
336   AUTOLOAD:=$(call AutoLoad,90,mmc_core mmc_block,1)
337 endef
338
339 define KernelPackage/mmc/description
340  Kernel support for MMC/SD cards
341 endef
342
343 $(eval $(call KernelPackage,mmc))
344
345
346 define KernelPackage/mmc-atmelmci
347   SUBMENU:=$(OTHER_MENU)
348   TITLE:=Amtel MMC Support
349   DEPENDS:=@TARGET_avr32 +kmod-mmc
350   KCONFIG:=CONFIG_MMC_ATMELMCI
351   FILES:=$(LINUX_DIR)/drivers/mmc/host/atmel-mci.ko
352   AUTOLOAD:=$(call AutoLoad,90,atmel-mci)
353 endef
354
355 define KernelPackage/mmc-atmelmci/description
356  Kernel support for  Atmel Multimedia Card Interface.
357 endef
358
359 $(eval $(call KernelPackage,mmc-atmelmci,1))
360
361
362 define KernelPackage/oprofile
363   SUBMENU:=$(OTHER_MENU)
364   TITLE:=OProfile profiling support
365   KCONFIG:=CONFIG_OPROFILE
366   FILES:=$(LINUX_DIR)/arch/$(LINUX_KARCH)/oprofile/oprofile.ko
367   DEPENDS:=@KERNEL_PROFILING
368 endef
369
370 define KernelPackage/oprofile/description
371   Kernel module for support for oprofile system profiling.
372 endef
373
374 $(eval $(call KernelPackage,oprofile))
375
376
377 define KernelPackage/rfkill
378   SUBMENU:=$(OTHER_MENU)
379   TITLE:=RF switch subsystem support
380   KCONFIG:= \
381     CONFIG_RFKILL \
382     CONFIG_RFKILL_INPUT=y \
383     CONFIG_RFKILL_LEDS=y
384   FILES:= \
385     $(LINUX_DIR)/net/rfkill/rfkill.ko
386   AUTOLOAD:=$(call AutoLoad,20,rfkill)
387   $(call SetDepends/rfkill)
388 endef
389
390 define KernelPackage/rfkill/description
391   Say Y here if you want to have control over RF switches
392   found on many WiFi and Bluetooth cards.
393 endef
394
395 $(eval $(call KernelPackage,rfkill))
396
397
398 define KernelPackage/softdog
399   SUBMENU:=$(OTHER_MENU)
400   TITLE:=Software watchdog driver
401   KCONFIG:=CONFIG_SOFT_WATCHDOG
402   FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/softdog.ko
403   AUTOLOAD:=$(call AutoLoad,50,softdog)
404 endef
405
406 define KernelPackage/softdog/description
407  Software watchdog driver
408 endef
409
410 $(eval $(call KernelPackage,softdog))
411
412
413 define KernelPackage/ssb
414   SUBMENU:=$(OTHER_MENU)
415   TITLE:=Silicon Sonics Backplane glue code
416   DEPENDS:=@PCI_SUPPORT @!TARGET_brcm47xx @!TARGET_brcm63xx
417   KCONFIG:=\
418         CONFIG_SSB \
419         CONFIG_SSB_B43_PCI_BRIDGE=y \
420         CONFIG_SSB_DRIVER_MIPS=n \
421         CONFIG_SSB_DRIVER_PCICORE=y \
422         CONFIG_SSB_DRIVER_PCICORE_POSSIBLE=y \
423         CONFIG_SSB_PCIHOST=y \
424         CONFIG_SSB_PCIHOST_POSSIBLE=y \
425         CONFIG_SSB_POSSIBLE=y \
426         CONFIG_SSB_SPROM=y \
427         CONFIG_SSB_SILENT=y
428   FILES:=$(LINUX_DIR)/drivers/ssb/ssb.ko
429   AUTOLOAD:=$(call AutoLoad,29,ssb)
430 endef
431
432 define KernelPackage/ssb/description
433   Silicon Sonics Backplane glue code.
434 endef
435
436 $(eval $(call KernelPackage,ssb))
437
438
439 define KernelPackage/bcma
440   SUBMENU:=$(OTHER_MENU)
441   TITLE:=BCMA support
442   DEPENDS:=@PCI_SUPPORT @!TARGET_brcm47xx
443   KCONFIG:=\
444         CONFIG_BCMA \
445         CONFIG_BCMA_POSSIBLE=y \
446         CONFIG_BCMA_BLOCKIO=y \
447         CONFIG_BCMA_HOST_PCI_POSSIBLE=y \
448         CONFIG_BCMA_HOST_PCI=y \
449         CONFIG_BCMA_DRIVER_MIPS=n \
450         CONFIG_BCMA_DRIVER_PCI_HOSTMODE=n \
451         CONFIG_BCMA_DEBUG=n
452   FILES:=$(LINUX_DIR)/drivers/bcma/bcma.ko
453   AUTOLOAD:=$(call AutoLoad,29,bcma)
454 endef
455
456 define KernelPackage/bcma/description
457    Bus driver for Broadcom specific Advanced Microcontroller Bus Architecture.
458 endef
459
460 $(eval $(call KernelPackage,bcma))
461
462
463 define KernelPackage/wdt-omap
464   SUBMENU:=$(OTHER_MENU)
465   TITLE:=OMAP Watchdog timer
466   DEPENDS:=@(TARGET_omap24xx||TARGET_omap35xx)
467   KCONFIG:=CONFIG_OMAP_WATCHDOG
468   FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/omap_wdt.ko
469   AUTOLOAD:=$(call AutoLoad,50,omap_wdt.ko)
470 endef
471
472 define KernelPackage/wdt-omap/description
473   Kernel module for TI omap watchdog timer.
474 endef
475
476 $(eval $(call KernelPackage,wdt-omap))
477
478
479 define KernelPackage/wdt-orion
480   SUBMENU:=$(OTHER_MENU)
481   TITLE:=Marvell Orion Watchdog timer
482   DEPENDS:=@TARGET_orion||@TARGET_kirkwood
483   KCONFIG:=CONFIG_ORION_WATCHDOG
484   FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/orion_wdt.ko
485   AUTOLOAD:=$(call AutoLoad,50,orion_wdt)
486 endef
487
488 define KernelPackage/wdt-orion/description
489   Kernel module for Marvell orion watchdog timer.
490 endef
491
492 $(eval $(call KernelPackage,wdt-orion))
493
494
495 define KernelPackage/wdt-ath79
496   SUBMENU:=$(OTHER_MENU)
497   TITLE:=Atheros AR7XXX/AR9XXX watchdog timer
498   DEPENDS:=@TARGET_ar71xx
499   KCONFIG:=CONFIG_ATH79_WDT
500   FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/ath79_wdt.ko
501   AUTOLOAD:=$(call AutoLoad,50,ath79_wdt)
502 endef
503
504 define KernelPackage/wdt-ath79/description
505   Kernel module for AR7XXX/AR9XXX watchdog timer.
506 endef
507
508 $(eval $(call KernelPackage,wdt-ath79))
509
510
511 define KernelPackage/booke-wdt
512   SUBMENU:=$(OTHER_MENU)
513   TITLE:=PowerPC Book-E Watchdog Timer
514   DEPENDS:=@(TARGET_mpc85xx||TARGET_ppc40x||TARGET_ppc44x)
515   KCONFIG:=CONFIG_BOOKE_WDT
516   FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/booke_wdt.ko
517   AUTOLOAD:=$(call AutoLoad,50,booke_wdt)
518 endef
519
520 define KernelPackage/booke-wdt/description
521   Kernel module for PowerPC Book-E Watchdog Timer.
522 endef
523
524 $(eval $(call KernelPackage,booke-wdt))
525
526
527 define KernelPackage/pwm
528   SUBMENU:=$(OTHER_MENU)
529   TITLE:=PWM generic API
530   KCONFIG:=CONFIG_GENERIC_PWM
531   FILES:=$(LINUX_DIR)/drivers/pwm/pwm.ko
532   AUTOLOAD:=$(call AutoLoad,50,pwm)
533 endef
534
535 define KernelPackage/pwm/description
536  Kernel module that implement a generic PWM API
537 endef
538
539 $(eval $(call KernelPackage,pwm))
540
541
542 define KernelPackage/pwm-gpio
543   SUBMENU:=$(OTHER_MENU)
544   TITLE:=PWM over GPIO
545   DEPENDS:=+kmod-pwm
546   KCONFIG:=CONFIG_GPIO_PWM
547   FILES:=$(LINUX_DIR)/drivers/pwm/gpio-pwm.ko
548   AUTOLOAD:=$(call AutoLoad,51,gpio-pwm)
549 endef
550
551 define KernelPackage/pwm-gpio/description
552  Kernel module to models a single-channel PWM device using a timer and a GPIO pin
553 endef
554
555 $(eval $(call KernelPackage,pwm-gpio))
556
557
558 define KernelPackage/rtc-marvell
559   SUBMENU:=$(OTHER_MENU)
560   TITLE:=Marvell SoC built-in RTC support
561   $(call AddDepends/rtc)
562   DEPENDS+=@TARGET_kirkwood||TARGET_orion
563   KCONFIG:=CONFIG_RTC_DRV_MV
564   FILES:=$(LINUX_DIR)/drivers/rtc/rtc-mv.ko
565   AUTOLOAD:=$(call AutoLoad,60,rtc-mv)
566 endef
567
568 define KernelPackage/rtc-marvell/description
569  Kernel module for Marvell SoC built-in RTC.
570 endef
571
572 $(eval $(call KernelPackage,rtc-marvell))
573
574 define KernelPackage/rtc-pcf8563
575   SUBMENU:=$(OTHER_MENU)
576   TITLE:=Philips PCF8563/Epson RTC8564 RTC support
577   $(call AddDepends/rtc)
578   KCONFIG:=CONFIG_RTC_DRV_PCF8563
579   FILES:=$(LINUX_DIR)/drivers/rtc/rtc-pcf8563.ko
580   AUTOLOAD:=$(call AutoLoad,60,rtc-pcf8563)
581 endef
582
583 define KernelPackage/rtc-pcf8563/description
584  Kernel module for Philips PCF8563 RTC chip.
585  The Epson RTC8564 should work as well.
586 endef
587
588 $(eval $(call KernelPackage,rtc-pcf8563))
589
590
591 define KernelPackage/rtc-pcf2123
592   SUBMENU:=$(OTHER_MENU)
593   TITLE:=Philips PCF2123 RTC support
594   $(call AddDepends/rtc)
595   KCONFIG:=CONFIG_RTC_DRV_PCF2123
596   FILES:=$(LINUX_DIR)/drivers/rtc/rtc-pcf2123.ko
597   AUTOLOAD:=$(call AutoLoad,60,rtc-pcf2123)
598 endef
599
600 define KernelPackage/rtc-pcf2123/description
601  Kernel module for Philips PCF2123 RTC chip.
602 endef
603
604 $(eval $(call KernelPackage,rtc-pcf2123))
605
606 define KernelPackage/rtc-pt7c4338
607   SUBMENU:=$(OTHER_MENU)
608   TITLE:=Pericom PT7C4338 RTC support
609   $(call AddDepends/rtc,+kmod-i2c-core)
610   KCONFIG:=CONFIG_RTC_DRV_PT7C4338
611   FILES:=$(LINUX_DIR)/drivers/rtc/rtc-pt7c4338.ko
612   AUTOLOAD:=$(call AutoLoad,60,rtc-pt7c4338)
613 endef
614
615 define KernelPackage/rtc-pt7c4338/description
616  Kernel module for Pericom PT7C4338 i2c RTC chip.
617 endef
618
619 $(eval $(call KernelPackage,rtc-pt7c4338))
620
621
622 define KernelPackage/mtdtests
623   SUBMENU:=$(OTHER_MENU)
624   TITLE:=MTD subsystem tests
625   KCONFIG:=CONFIG_MTD_TESTS
626   FILES:=\
627         $(LINUX_DIR)/drivers/mtd/tests/mtd_nandecctest.ko \
628         $(LINUX_DIR)/drivers/mtd/tests/mtd_oobtest.ko \
629         $(LINUX_DIR)/drivers/mtd/tests/mtd_pagetest.ko \
630         $(LINUX_DIR)/drivers/mtd/tests/mtd_readtest.ko \
631         $(LINUX_DIR)/drivers/mtd/tests/mtd_speedtest.ko \
632         $(LINUX_DIR)/drivers/mtd/tests/mtd_stresstest.ko \
633         $(LINUX_DIR)/drivers/mtd/tests/mtd_subpagetest.ko \
634         $(LINUX_DIR)/drivers/mtd/tests/mtd_torturetest.ko
635 endef
636
637 define KernelPackage/mtdtests/description
638  Kernel modules for MTD subsystem/driver testing.
639 endef
640
641 $(eval $(call KernelPackage,mtdtests))
642
643
644 define KernelPackage/nand
645   SUBMENU:=$(OTHER_MENU)
646   TITLE:=NAND flash support
647   DEPENDS:=@!LINUX_2_6_39
648   KCONFIG:=CONFIG_MTD_NAND \
649         CONFIG_MTD_NAND_IDS \
650         CONFIG_MTD_NAND_ECC
651   FILES:= \
652         $(LINUX_DIR)/drivers/mtd/nand/nand_ids.ko \
653         $(LINUX_DIR)/drivers/mtd/nand/nand_ecc.ko \
654         $(LINUX_DIR)/drivers/mtd/nand/nand.ko
655   AUTOLOAD:=$(call AutoLoad,20,nand_ids nand_ecc nand)
656 endef
657
658 define KernelPackage/nand/description
659  Kernel module for NAND support.
660 endef
661
662 $(eval $(call KernelPackage,nand))
663
664
665 define KernelPackage/nandsim
666   SUBMENU:=$(OTHER_MENU)
667   TITLE:=NAND simulator
668   DEPENDS:=+kmod-nand
669   KCONFIG:=CONFIG_MTD_NAND_NANDSIM
670   FILES:=$(LINUX_DIR)/drivers/mtd/nand/nandsim.ko
671 endef
672
673 define KernelPackage/nandsim/description
674  Kernel module for NAND flash simulation.
675 endef
676
677 $(eval $(call KernelPackage,nandsim))
678
679 define KernelPackage/serial-8250
680   SUBMENU:=$(OTHER_MENU)
681   TITLE:=8250 UARTs
682   KCONFIG:= CONFIG_SERIAL_8250 \
683         CONFIG_SERIAL_8250_NR_UARTS=16 \
684         CONFIG_SERIAL_8250_RUNTIME_UARTS=16 \
685         CONFIG_SERIAL_8250_EXTENDED=y \
686         CONFIG_SERIAL_8250_MANY_PORTS=y \
687         CONFIG_SERIAL_8250_SHARE_IRQ=y \
688         CONFIG_SERIAL_8250_DETECT_IRQ=n \
689         CONFIG_SERIAL_8250_RSA=n
690   FILES:=$(LINUX_DIR)/drivers/tty/serial/8250/8250.ko
691 endef
692
693 define KernelPackage/serial-8250/description
694  Kernel module for 8250 UART based serial ports.
695 endef
696
697 $(eval $(call KernelPackage,serial-8250))
698
699
700 define KernelPackage/acpi-button
701   SUBMENU:=$(OTHER_MENU)
702   TITLE:=ACPI Button Support
703   DEPENDS:=@(TARGET_x86_generic||TARGET_x86_kvm_guest||TARGET_x86_xen_domu) +kmod-input-evdev
704   KCONFIG:=CONFIG_ACPI_BUTTON
705   FILES:=$(LINUX_DIR)/drivers/acpi/button.ko
706   AUTOLOAD:=$(call AutoLoad,06,button)
707 endef
708
709 define KernelPackage/acpi-button/description
710  Kernel module for ACPI Button support
711 endef
712
713 $(eval $(call KernelPackage,acpi-button))
714
715 define KernelPackage/regmap
716   SUBMENU:=$(OTHER_MENU)
717   TITLE:=Generic register map support
718   KCONFIG:=CONFIG_REGMAP=y \
719            CONFIG_REGMAP_SPI \
720            CONFIG_REGMAP_I2C
721   FILES:=$(LINUX_DIR)/drivers/base/regmap/regmap-i2c.ko \
722          $(LINUX_DIR)/drivers/base/regmap/regmap-spi.ko
723   AUTOLOAD:=$(call AutoLoad,10,regmap-i2c regmap-spi)
724 endef
725
726 define KernelPackage/regmap/description
727   Generic register map support
728 endef
729
730 $(eval $(call KernelPackage,regmap))