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