2 # Copyright (C) 2006-2015 OpenWrt.org
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
8 OTHER_MENU:=Other modules
10 WATCHDOG_DIR:=watchdog
13 define KernelPackage/6lowpan
14 SUBMENU:=$(OTHER_MENU)
15 TITLE:=6LoWPAN shared code
19 FILES:=$(LINUX_DIR)/net/6lowpan/6lowpan.ko
20 AUTOLOAD:=$(call AutoProbe,6lowpan)
23 define KernelPackage/6lowpan/description
24 Shared 6lowpan code for IEEE 802.15.4 and Bluetooth.
27 $(eval $(call KernelPackage,6lowpan))
30 define KernelPackage/bluetooth
31 SUBMENU:=$(OTHER_MENU)
32 TITLE:=Bluetooth support
33 DEPENDS:=@USB_SUPPORT +kmod-usb-core +kmod-crypto-hash +kmod-crypto-ecb +kmod-lib-crc16 +kmod-hid
40 CONFIG_BLUEZ_HCIUART \
52 CONFIG_BT_HCIBTUSB_BCM=n \
55 CONFIG_BT_HCIUART_BCM=n \
56 CONFIG_BT_HCIUART_INTEL=n \
57 CONFIG_BT_HCIUART_H4 \
60 $(call AddDepends/rfkill)
62 $(LINUX_DIR)/net/bluetooth/bluetooth.ko \
63 $(LINUX_DIR)/net/bluetooth/rfcomm/rfcomm.ko \
64 $(LINUX_DIR)/net/bluetooth/bnep/bnep.ko \
65 $(LINUX_DIR)/net/bluetooth/hidp/hidp.ko \
66 $(LINUX_DIR)/drivers/bluetooth/hci_uart.ko \
67 $(LINUX_DIR)/drivers/bluetooth/btusb.ko
68 ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),ge,4.1.0)),1)
70 $(LINUX_DIR)/drivers/bluetooth/btintel.ko
72 AUTOLOAD:=$(call AutoProbe,bluetooth rfcomm bnep hidp hci_uart btusb)
75 define KernelPackage/bluetooth/description
76 Kernel support for Bluetooth devices
79 $(eval $(call KernelPackage,bluetooth))
82 define KernelPackage/bluetooth_6lowpan
83 SUBMENU:=$(OTHER_MENU)
84 TITLE:=Bluetooth 6LoWPAN support
85 DEPENDS:=+kmod-6lowpan +kmod-bluetooth
86 KCONFIG:=CONFIG_BT_6LOWPAN
87 FILES:=$(LINUX_DIR)/net/bluetooth/bluetooth_6lowpan.ko
88 AUTOLOAD:=$(call AutoProbe,bluetooth_6lowpan)
91 define KernelPackage/bluetooth_6lowpan/description
92 Kernel support for 6LoWPAN over Bluetooth Low Energy devices
95 $(eval $(call KernelPackage,bluetooth_6lowpan))
98 define KernelPackage/bluetooth-hci-h4p
99 SUBMENU:=$(OTHER_MENU)
100 TITLE:=HCI driver with H4 Nokia extensions
101 DEPENDS:=@TARGET_omap24xx +kmod-bluetooth
102 KCONFIG:=CONFIG_BT_HCIH4P
103 FILES:=$(LINUX_DIR)/drivers/bluetooth/hci_h4p/hci_h4p.ko
104 AUTOLOAD:=$(call AutoProbe,hci_h4p)
107 define KernelPackage/bluetooth-hci-h4p/description
108 HCI driver with H4 Nokia extensions
111 $(eval $(call KernelPackage,bluetooth-hci-h4p))
114 define KernelPackage/eeprom-93cx6
115 SUBMENU:=$(OTHER_MENU)
116 TITLE:=EEPROM 93CX6 support
117 KCONFIG:=CONFIG_EEPROM_93CX6
118 FILES:=$(LINUX_DIR)/drivers/misc/eeprom/eeprom_93cx6.ko
119 AUTOLOAD:=$(call AutoLoad,20,eeprom_93cx6)
122 define KernelPackage/eeprom-93cx6/description
123 Kernel module for EEPROM 93CX6 support
126 $(eval $(call KernelPackage,eeprom-93cx6))
129 define KernelPackage/eeprom-at24
130 SUBMENU:=$(OTHER_MENU)
131 TITLE:=EEPROM AT24 support
132 KCONFIG:=CONFIG_EEPROM_AT24
133 DEPENDS:=+kmod-i2c-core
134 FILES:=$(LINUX_DIR)/drivers/misc/eeprom/at24.ko
135 AUTOLOAD:=$(call AutoProbe,at24)
138 define KernelPackage/eeprom-at24/description
139 Kernel module for most I2C EEPROMs
142 $(eval $(call KernelPackage,eeprom-at24))
145 define KernelPackage/eeprom-at25
146 SUBMENU:=$(OTHER_MENU)
147 TITLE:=EEPROM AT25 support
148 KCONFIG:=CONFIG_EEPROM_AT25
149 FILES:=$(LINUX_DIR)/drivers/misc/eeprom/at25.ko
150 AUTOLOAD:=$(call AutoProbe,at25)
153 define KernelPackage/eeprom-at25/description
154 Kernel module for most SPI EEPROMs
157 $(eval $(call KernelPackage,eeprom-at25))
160 define KernelPackage/gpio-dev
161 SUBMENU:=$(OTHER_MENU)
162 TITLE:=Generic GPIO char device support
163 DEPENDS:=@GPIO_SUPPORT
164 KCONFIG:=CONFIG_GPIO_DEVICE
165 FILES:=$(LINUX_DIR)/drivers/char/gpio_dev.ko
166 AUTOLOAD:=$(call AutoLoad,40,gpio_dev)
169 define KernelPackage/gpio-dev/description
170 Kernel module to allows control of GPIO pins using a character device.
173 $(eval $(call KernelPackage,gpio-dev))
176 define KernelPackage/gpio-mcp23s08
177 SUBMENU:=$(OTHER_MENU)
178 TITLE:=Microchip MCP23xxx I/O expander
179 DEPENDS:=@GPIO_SUPPORT +PACKAGE_kmod-i2c-core:kmod-i2c-core
180 KCONFIG:=CONFIG_GPIO_MCP23S08
181 FILES:=$(LINUX_DIR)/drivers/gpio/gpio-mcp23s08.ko
182 AUTOLOAD:=$(call AutoLoad,40,gpio-mcp23s08)
185 define KernelPackage/gpio-mcp23s08/description
186 Kernel module for Microchip MCP23xxx SPI/I2C I/O expander
189 $(eval $(call KernelPackage,gpio-mcp23s08))
192 define KernelPackage/gpio-nxp-74hc164
193 SUBMENU:=$(OTHER_MENU)
194 TITLE:=NXP 74HC164 GPIO expander support
195 KCONFIG:=CONFIG_GPIO_NXP_74HC164
196 FILES:=$(LINUX_DIR)/drivers/gpio/nxp_74hc164.ko
197 AUTOLOAD:=$(call AutoProbe,nxp_74hc164)
200 define KernelPackage/gpio-nxp-74hc164/description
201 Kernel module for NXP 74HC164 GPIO expander
204 $(eval $(call KernelPackage,gpio-nxp-74hc164))
206 define KernelPackage/gpio-pca953x
207 SUBMENU:=$(OTHER_MENU)
208 DEPENDS:=@GPIO_SUPPORT +kmod-i2c-core
209 TITLE:=PCA95xx, TCA64xx, and MAX7310 I/O ports
210 KCONFIG:=CONFIG_GPIO_PCA953X
211 FILES:=$(LINUX_DIR)/drivers/gpio/gpio-pca953x.ko
212 AUTOLOAD:=$(call AutoLoad,55,gpio-pca953x)
215 define KernelPackage/gpio-pca953x/description
216 Kernel module for MAX731{0,2,3,5}, PCA6107, PCA953{4-9}, PCA955{4-7},
217 PCA957{4,5} and TCA64{08,16} I2C GPIO expanders
220 $(eval $(call KernelPackage,gpio-pca953x))
222 define KernelPackage/gpio-pcf857x
223 SUBMENU:=$(OTHER_MENU)
224 DEPENDS:=@GPIO_SUPPORT +kmod-i2c-core
225 TITLE:=PCX857x, PCA967x and MAX732X I2C GPIO expanders
226 KCONFIG:=CONFIG_GPIO_PCF857X
227 FILES:=$(LINUX_DIR)/drivers/gpio/gpio-pcf857x.ko
228 AUTOLOAD:=$(call AutoLoad,55,gpio-pcf857x)
231 define KernelPackage/gpio-pcf857x/description
232 Kernel module for PCF857x, PCA{85,96}7x, and MAX732[89] I2C GPIO expanders
235 $(eval $(call KernelPackage,gpio-pcf857x))
237 define KernelPackage/iio-core
238 SUBMENU:=$(OTHER_MENU)
239 TITLE:=Industrial IO core
242 CONFIG_IIO_BUFFER=y \
243 CONFIG_IIO_KFIFO_BUF \
244 CONFIG_IIO_TRIGGER=y \
245 CONFIG_IIO_TRIGGERED_BUFFER
247 $(LINUX_DIR)/drivers/iio/industrialio.ko \
248 $(if $(CONFIG_IIO_TRIGGERED_BUFFER),$(LINUX_DIR)/drivers/iio/industrialio-triggered-buffer.ko) \
249 $(LINUX_DIR)/drivers/iio/kfifo_buf.ko
250 AUTOLOAD:=$(call AutoLoad,55,industrialio kfifo_buf industrialio-triggered-buffer)
253 define KernelPackage/iio-core/description
254 The industrial I/O subsystem provides a unified framework for
255 drivers for many different types of embedded sensors using a
256 number of different physical interfaces (i2c, spi, etc)
259 $(eval $(call KernelPackage,iio-core))
262 define KernelPackage/iio-ad799x
263 SUBMENU:=$(OTHER_MENU)
264 DEPENDS:=kmod-i2c-core kmod-iio-core
265 TITLE:=Analog Devices AD799x ADC driver
267 CONFIG_AD799X_RING_BUFFER=y \
269 FILES:=$(LINUX_DIR)/drivers/iio/adc/ad799x.ko
270 AUTOLOAD:=$(call AutoLoad,56,ad799x)
273 define KernelPackage/iio-ad799x/description
274 support for Analog Devices:
275 ad7991, ad7995, ad7999, ad7992, ad7993, ad7994, ad7997, ad7998
276 i2c analog to digital converters (ADC).
279 $(eval $(call KernelPackage,iio-ad799x))
282 define KernelPackage/iio-dht11
283 SUBMENU:=$(OTHER_MENU)
284 DEPENDS:=kmod-iio-core @GPIO_SUPPORT @USES_DEVICETREE
285 TITLE:=DHT11 (and compatible) humidity and temperature sensors
288 FILES:=$(LINUX_DIR)/drivers/iio/humidity/dht11.ko
289 AUTOLOAD:=$(call AutoLoad,56,dht11)
292 define KernelPackage/iio-dht11/description
293 support for DHT11 and DHT22 digitial humidity and temperature sensors
294 attached at GPIO lines. You will need a custom device tree file to
295 specify the GPIO line to use.
298 $(eval $(call KernelPackage,iio-dht11))
301 define KernelPackage/lp
302 SUBMENU:=$(OTHER_MENU)
303 TITLE:=Parallel port and line printer support
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)
316 $(eval $(call KernelPackage,lp))
319 define KernelPackage/mmc
320 SUBMENU:=$(OTHER_MENU)
321 TITLE:=MMC/SD Card Support
326 CONFIG_MMC_UNSAFE_RESUME=n \
327 CONFIG_MMC_BLOCK_BOUNCE=y \
328 CONFIG_MMC_TIFM_SD=n \
332 $(LINUX_DIR)/drivers/mmc/core/mmc_core.ko \
333 $(LINUX_DIR)/drivers/mmc/card/mmc_block.ko
334 AUTOLOAD:=$(call AutoProbe,mmc_core mmc_block,1)
337 define KernelPackage/mmc/description
338 Kernel support for MMC/SD cards
341 $(eval $(call KernelPackage,mmc))
344 define KernelPackage/sdhci
345 SUBMENU:=$(OTHER_MENU)
346 TITLE:=Secure Digital Host Controller Interface support
350 CONFIG_MMC_SDHCI_PLTFM \
351 CONFIG_MMC_SDHCI_PCI=n
353 $(LINUX_DIR)/drivers/mmc/host/sdhci.ko \
354 $(LINUX_DIR)/drivers/mmc/host/sdhci-pltfm.ko
356 AUTOLOAD:=$(call AutoProbe,sdhci sdhci-pltfm,1)
359 define KernelPackage/sdhci/description
360 Kernel support for SDHCI Hosts
363 $(eval $(call KernelPackage,sdhci))
366 define KernelPackage/oprofile
367 SUBMENU:=$(OTHER_MENU)
368 TITLE:=OProfile profiling support
369 KCONFIG:=CONFIG_OPROFILE
370 FILES:=$(LINUX_DIR)/arch/$(LINUX_KARCH)/oprofile/oprofile.ko
371 DEPENDS:=@KERNEL_PROFILING
374 define KernelPackage/oprofile/description
375 Kernel module for support for oprofile system profiling
378 $(eval $(call KernelPackage,oprofile))
381 define KernelPackage/rfkill
382 SUBMENU:=$(OTHER_MENU)
383 TITLE:=RF switch subsystem support
384 DEPENDS:=@USE_RFKILL +kmod-input-core
387 CONFIG_RFKILL_INPUT=y \
388 CONFIG_RFKILL_LEDS=y \
391 $(LINUX_DIR)/net/rfkill/rfkill.ko
392 AUTOLOAD:=$(call AutoLoad,20,rfkill)
395 define KernelPackage/rfkill/description
396 Say Y here if you want to have control over RF switches
397 found on many WiFi and Bluetooth cards
400 $(eval $(call KernelPackage,rfkill))
403 define KernelPackage/softdog
404 SUBMENU:=$(OTHER_MENU)
405 TITLE:=Software watchdog driver
406 KCONFIG:=CONFIG_SOFT_WATCHDOG
407 FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/softdog.ko
408 AUTOLOAD:=$(call AutoLoad,50,softdog)
411 define KernelPackage/softdog/description
412 Software watchdog driver
415 $(eval $(call KernelPackage,softdog))
418 define KernelPackage/ssb
419 SUBMENU:=$(OTHER_MENU)
420 TITLE:=Silicon Sonics Backplane glue code
421 DEPENDS:=@PCI_SUPPORT @!TARGET_brcm47xx @!TARGET_brcm63xx
424 CONFIG_SSB_B43_PCI_BRIDGE=y \
425 CONFIG_SSB_DRIVER_MIPS=n \
426 CONFIG_SSB_DRIVER_PCICORE=y \
427 CONFIG_SSB_DRIVER_PCICORE_POSSIBLE=y \
428 CONFIG_SSB_PCIHOST=y \
429 CONFIG_SSB_PCIHOST_POSSIBLE=y \
430 CONFIG_SSB_POSSIBLE=y \
433 FILES:=$(LINUX_DIR)/drivers/ssb/ssb.ko
434 AUTOLOAD:=$(call AutoLoad,18,ssb,1)
437 define KernelPackage/ssb/description
438 Silicon Sonics Backplane glue code.
441 $(eval $(call KernelPackage,ssb))
444 define KernelPackage/bcma
445 SUBMENU:=$(OTHER_MENU)
447 DEPENDS:=@PCI_SUPPORT @!TARGET_brcm47xx @!TARGET_bcm53xx
450 CONFIG_BCMA_POSSIBLE=y \
451 CONFIG_BCMA_BLOCKIO=y \
452 CONFIG_BCMA_HOST_PCI_POSSIBLE=y \
453 CONFIG_BCMA_HOST_PCI=y \
454 CONFIG_BCMA_HOST_SOC=n \
455 CONFIG_BCMA_DRIVER_MIPS=n \
456 CONFIG_BCMA_DRIVER_PCI_HOSTMODE=n \
457 CONFIG_BCMA_DRIVER_GMAC_CMN=n \
459 FILES:=$(LINUX_DIR)/drivers/bcma/bcma.ko
460 AUTOLOAD:=$(call AutoLoad,29,bcma)
463 define KernelPackage/bcma/description
464 Bus driver for Broadcom specific Advanced Microcontroller Bus Architecture
467 $(eval $(call KernelPackage,bcma))
470 define KernelPackage/wdt-omap
471 SUBMENU:=$(OTHER_MENU)
472 TITLE:=OMAP Watchdog timer
473 DEPENDS:=@(TARGET_omap24xx||TARGET_omap35xx)
474 KCONFIG:=CONFIG_OMAP_WATCHDOG
475 FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/omap_wdt.ko
476 AUTOLOAD:=$(call AutoLoad,50,omap_wdt.ko,1)
479 define KernelPackage/wdt-omap/description
480 Kernel module for TI omap watchdog timer
483 $(eval $(call KernelPackage,wdt-omap))
486 define KernelPackage/wdt-orion
487 SUBMENU:=$(OTHER_MENU)
488 TITLE:=Marvell Orion Watchdog timer
489 DEPENDS:=@TARGET_orion||TARGET_kirkwood||TARGET_mvebu
490 KCONFIG:=CONFIG_ORION_WATCHDOG
491 FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/orion_wdt.ko
492 AUTOLOAD:=$(call AutoLoad,50,orion_wdt,1)
495 define KernelPackage/wdt-orion/description
496 Kernel module for Marvell Orion, Kirkwood and Armada XP/370 watchdog timer
499 $(eval $(call KernelPackage,wdt-orion))
502 define KernelPackage/booke-wdt
503 SUBMENU:=$(OTHER_MENU)
504 TITLE:=PowerPC Book-E Watchdog Timer
505 DEPENDS:=@(TARGET_mpc85xx||TARGET_ppc40x||TARGET_ppc44x)
506 KCONFIG:=CONFIG_BOOKE_WDT
507 FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/booke_wdt.ko
508 AUTOLOAD:=$(call AutoLoad,50,booke_wdt,1)
511 define KernelPackage/booke-wdt/description
512 Kernel module for PowerPC Book-E Watchdog Timer
515 $(eval $(call KernelPackage,booke-wdt))
518 define KernelPackage/rtc-ds1307
519 SUBMENU:=$(OTHER_MENU)
520 TITLE:=Dallas/Maxim DS1307 (and compatible) RTC support
521 DEPENDS:=@RTC_SUPPORT +kmod-i2c-core
522 KCONFIG:=CONFIG_RTC_DRV_DS1307
523 FILES:=$(LINUX_DIR)/drivers/rtc/rtc-ds1307.ko
524 AUTOLOAD:=$(call AutoProbe,rtc-ds1307)
527 define KernelPackage/rtc-ds1307/description
528 Kernel module for Dallas/Maxim DS1307/DS1337/DS1338/DS1340/DS1388/DS3231,
529 Epson RX-8025 and various other compatible RTC chips connected via I2C.
532 $(eval $(call KernelPackage,rtc-ds1307))
535 define KernelPackage/rtc-ds1672
536 SUBMENU:=$(OTHER_MENU)
537 TITLE:=Dallas/Maxim DS1672 RTC support
538 DEPENDS:=@RTC_SUPPORT +kmod-i2c-core
539 KCONFIG:=CONFIG_RTC_DRV_DS1672
540 FILES:=$(LINUX_DIR)/drivers/rtc/rtc-ds1672.ko
541 AUTOLOAD:=$(call AutoProbe,rtc-ds1672)
544 define KernelPackage/rtc-ds1672/description
545 Kernel module for Dallas/Maxim DS1672 RTC.
548 $(eval $(call KernelPackage,rtc-ds1672))
551 define KernelPackage/rtc-isl1208
552 SUBMENU:=$(OTHER_MENU)
553 TITLE:=Intersil ISL1208 RTC support
554 DEPENDS:=@RTC_SUPPORT +kmod-i2c-core
555 KCONFIG:=CONFIG_RTC_DRV_ISL1208
556 FILES:=$(LINUX_DIR)/drivers/rtc/rtc-isl1208.ko
557 AUTOLOAD:=$(call AutoProbe,rtc-isl1208)
560 define KernelPackage/rtc-isl1208/description
561 Kernel module for Intersil ISL1208 RTC.
564 $(eval $(call KernelPackage,rtc-isl1208))
567 define KernelPackage/rtc-marvell
568 SUBMENU:=$(OTHER_MENU)
569 TITLE:=Marvell SoC built-in RTC support
570 DEPENDS:=@RTC_SUPPORT @TARGET_kirkwood||TARGET_orion||TARGET_mvebu
571 KCONFIG:=CONFIG_RTC_DRV_MV
572 FILES:=$(LINUX_DIR)/drivers/rtc/rtc-mv.ko
573 AUTOLOAD:=$(call AutoProbe,rtc-mv)
576 define KernelPackage/rtc-marvell/description
577 Kernel module for Marvell SoC built-in RTC.
580 $(eval $(call KernelPackage,rtc-marvell))
583 define KernelPackage/rtc-armada38x
584 SUBMENU:=$(OTHER_MENU)
585 TITLE:=Marvell Armada 38x SoC built-in RTC support
586 DEPENDS:=@RTC_SUPPORT @TARGET_mvebu
587 KCONFIG:=CONFIG_RTC_DRV_ARMADA38X
588 FILES:=$(LINUX_DIR)/drivers/rtc/rtc-armada38x.ko
589 AUTOLOAD:=$(call AutoProbe,rtc-armada38x)
592 define KernelPackage/rtc-armada38x/description
593 Kernel module for Marvell Armada 38x SoC built-in RTC.
596 $(eval $(call KernelPackage,rtc-armada38x))
599 define KernelPackage/rtc-pcf8563
600 SUBMENU:=$(OTHER_MENU)
601 TITLE:=Philips PCF8563/Epson RTC8564 RTC support
602 DEPENDS:=@RTC_SUPPORT +kmod-i2c-core
603 KCONFIG:=CONFIG_RTC_DRV_PCF8563
604 FILES:=$(LINUX_DIR)/drivers/rtc/rtc-pcf8563.ko
605 AUTOLOAD:=$(call AutoProbe,rtc-pcf8563)
608 define KernelPackage/rtc-pcf8563/description
609 Kernel module for Philips PCF8563 RTC chip.
610 The Epson RTC8564 should work as well.
613 $(eval $(call KernelPackage,rtc-pcf8563))
616 define KernelPackage/rtc-pcf2123
617 SUBMENU:=$(OTHER_MENU)
618 TITLE:=Philips PCF2123 RTC support
619 DEPENDS:=@RTC_SUPPORT
620 KCONFIG:=CONFIG_RTC_DRV_PCF2123
621 FILES:=$(LINUX_DIR)/drivers/rtc/rtc-pcf2123.ko
622 AUTOLOAD:=$(call AutoProbe,rtc-pcf2123)
625 define KernelPackage/rtc-pcf2123/description
626 Kernel module for Philips PCF2123 RTC chip
629 $(eval $(call KernelPackage,rtc-pcf2123))
631 define KernelPackage/rtc-pt7c4338
632 SUBMENU:=$(OTHER_MENU)
633 TITLE:=Pericom PT7C4338 RTC support
634 DEPENDS:=@RTC_SUPPORT +kmod-i2c-core
635 KCONFIG:=CONFIG_RTC_DRV_PT7C4338
636 FILES:=$(LINUX_DIR)/drivers/rtc/rtc-pt7c4338.ko
637 AUTOLOAD:=$(call AutoProbe,rtc-pt7c4338)
640 define KernelPackage/rtc-pt7c4338/description
641 Kernel module for Pericom PT7C4338 i2c RTC chip
644 $(eval $(call KernelPackage,rtc-pt7c4338))
647 define KernelPackage/mtdtests
648 SUBMENU:=$(OTHER_MENU)
649 TITLE:=MTD subsystem tests
650 KCONFIG:=CONFIG_MTD_TESTS
652 $(LINUX_DIR)/drivers/mtd/tests/mtd_nandecctest.ko \
653 $(LINUX_DIR)/drivers/mtd/tests/mtd_oobtest.ko \
654 $(LINUX_DIR)/drivers/mtd/tests/mtd_pagetest.ko \
655 $(LINUX_DIR)/drivers/mtd/tests/mtd_readtest.ko \
656 $(LINUX_DIR)/drivers/mtd/tests/mtd_speedtest.ko \
657 $(LINUX_DIR)/drivers/mtd/tests/mtd_stresstest.ko \
658 $(LINUX_DIR)/drivers/mtd/tests/mtd_subpagetest.ko \
659 $(LINUX_DIR)/drivers/mtd/tests/mtd_torturetest.ko
662 define KernelPackage/mtdtests/description
663 Kernel modules for MTD subsystem/driver testing
666 $(eval $(call KernelPackage,mtdtests))
669 define KernelPackage/serial-8250
670 SUBMENU:=$(OTHER_MENU)
672 KCONFIG:= CONFIG_SERIAL_8250 \
673 CONFIG_SERIAL_8250_NR_UARTS=16 \
674 CONFIG_SERIAL_8250_RUNTIME_UARTS=16 \
675 CONFIG_SERIAL_8250_EXTENDED=y \
676 CONFIG_SERIAL_8250_MANY_PORTS=y \
677 CONFIG_SERIAL_8250_SHARE_IRQ=y \
678 CONFIG_SERIAL_8250_DETECT_IRQ=n \
679 CONFIG_SERIAL_8250_RSA=n
680 FILES:=$(LINUX_DIR)/drivers/tty/serial/8250/8250.ko
683 define KernelPackage/serial-8250/description
684 Kernel module for 8250 UART based serial ports
687 $(eval $(call KernelPackage,serial-8250))
690 define KernelPackage/regmap
691 SUBMENU:=$(OTHER_MENU)
692 TITLE:=Generic register map support
693 DEPENDS:=+kmod-lib-lzo +kmod-i2c-core
694 KCONFIG:=CONFIG_REGMAP \
699 $(LINUX_DIR)/drivers/base/regmap/regmap-core.ko \
700 $(LINUX_DIR)/drivers/base/regmap/regmap-i2c.ko \
701 $(if $(CONFIG_SPI),$(LINUX_DIR)/drivers/base/regmap/regmap-spi.ko)
702 AUTOLOAD:=$(call AutoLoad,21,regmap-core regmap-i2c regmap-spi)
705 define KernelPackage/regmap/description
706 Generic register map support
709 $(eval $(call KernelPackage,regmap))
711 define KernelPackage/ikconfig
712 SUBMENU:=$(OTHER_MENU)
713 TITLE:=Kernel configuration via /proc/config.gz
714 KCONFIG:=CONFIG_IKCONFIG \
715 CONFIG_IKCONFIG_PROC=y
716 FILES:=$(LINUX_DIR)/kernel/configs.ko
717 AUTOLOAD:=$(call AutoLoad,70,configs)
720 define KernelPackage/ikconfig/description
721 Kernel configuration via /proc/config.gz
724 $(eval $(call KernelPackage,ikconfig))
727 define KernelPackage/zram
728 SUBMENU:=$(OTHER_MENU)
730 DEPENDS:=+kmod-lib-lzo +kmod-lib-lz4
734 CONFIG_ZRAM_DEBUG=n \
735 CONFIG_PGTABLE_MAPPING=n \
736 CONFIG_ZSMALLOC_STAT=n \
737 CONFIG_ZRAM_LZ4_COMPRESS=y
739 $(LINUX_DIR)/mm/zsmalloc.ko \
740 $(LINUX_DIR)/drivers/block/zram/zram.ko
741 AUTOLOAD:=$(call AutoLoad,20,zsmalloc zram)
744 define KernelPackage/zram/description
745 Compressed RAM block device support
748 $(eval $(call KernelPackage,zram))
751 define KernelPackage/mvsdio
752 SUBMENU:=$(OTHER_MENU)
753 TITLE:=Marvell SDIO support
754 DEPENDS:=@TARGET_orion||TARGET_kirkwood||TARGET_mvebu +kmod-mmc
755 KCONFIG:=CONFIG_MMC_MVSDIO
756 FILES:=$(LINUX_DIR)/drivers/mmc/host/mvsdio.ko
757 AUTOLOAD:=$(call AutoProbe,mvsdio)
760 define KernelPackage/mvsdio/description
761 Kernel support for the Marvell SDIO controller
764 $(eval $(call KernelPackage,mvsdio))
767 define KernelPackage/pps
768 SUBMENU:=$(OTHER_MENU)
771 FILES:=$(LINUX_DIR)/drivers/pps/pps_core.ko
772 AUTOLOAD:=$(call AutoLoad,17,pps_core,1)
775 define KernelPackage/pps/description
776 PPS (Pulse Per Second) is a special pulse provided by some GPS
777 antennae. Userland can use it to get a high-precision time
781 $(eval $(call KernelPackage,pps))
784 define KernelPackage/pps-gpio
785 SUBMENU:=$(OTHER_MENU)
786 TITLE:=PPS client using GPIO
788 KCONFIG:=CONFIG_PPS_CLIENT_GPIO
789 FILES:=$(LINUX_DIR)/drivers/pps/clients/pps-gpio.ko
790 AUTOLOAD:=$(call AutoLoad,18,pps-gpio,1)
793 define KernelPackage/pps-gpio/description
794 Support for a PPS source using GPIO. To be useful you must
795 also register a platform device specifying the GPIO pin and
796 other options, usually in your board setup.
799 $(eval $(call KernelPackage,pps-gpio))
802 define KernelPackage/ptp
803 SUBMENU:=$(OTHER_MENU)
804 TITLE:=PTP clock support
806 KCONFIG:=CONFIG_PTP_1588_CLOCK
807 FILES:=$(LINUX_DIR)/drivers/ptp/ptp.ko
808 AUTOLOAD:=$(call AutoLoad,18,ptp,1)
811 define KernelPackage/ptp/description
812 The IEEE 1588 standard defines a method to precisely
813 synchronize distributed clocks over Ethernet networks.
816 $(eval $(call KernelPackage,ptp))
819 define KernelPackage/ptp-gianfar
820 SUBMENU:=$(OTHER_MENU)
821 TITLE:=Freescale Gianfar PTP support
822 DEPENDS:=@TARGET_mpc85xx +kmod-gianfar +kmod-ptp
823 KCONFIG:=CONFIG_PTP_1588_CLOCK_GIANFAR
824 FILES:=$(LINUX_DIR)/drivers/net/ethernet/freescale/gianfar_ptp.ko
825 AUTOLOAD:=$(call AutoProbe,gianfar_ptp)
828 define KernelPackage/ptp-gianfar/description
829 Kernel module for IEEE 1588 support for Freescale
830 Gianfar Ethernet drivers
833 $(eval $(call KernelPackage,ptp-gianfar))
836 define KernelPackage/random-core
837 SUBMENU:=$(OTHER_MENU)
838 TITLE:=Hardware Random Number Generator Core support
839 KCONFIG:=CONFIG_HW_RANDOM
840 FILES:=$(LINUX_DIR)/drivers/char/hw_random/rng-core.ko
843 define KernelPackage/random-core/description
844 Kernel module for the HW random number generator core infrastructure
847 $(eval $(call KernelPackage,random-core))
850 define KernelPackage/thermal
851 SUBMENU:=$(OTHER_MENU)
852 TITLE:=Generic Thermal sysfs driver
853 DEPENDS:=+kmod-hwmon-core
857 CONFIG_THERMAL_OF=y \
858 CONFIG_THERMAL_DEFAULT_GOV_STEP_WISE=y \
859 CONFIG_THERMAL_DEFAULT_GOV_FAIR_SHARE=n \
860 CONFIG_THERMAL_DEFAULT_GOV_USER_SPACE=n \
861 CONFIG_THERMAL_GOV_FAIR_SHARE=n \
862 CONFIG_THERMAL_GOV_STEP_WISE=y \
863 CONFIG_THERMAL_GOV_USER_SPACE=n \
864 CONFIG_THERMAL_HWMON=y \
865 CONFIG_THERMAL_EMULATION=n
866 FILES:=$(LINUX_DIR)/drivers/thermal/thermal_sys.ko
867 AUTOLOAD:=$(call AutoProbe,thermal_sys)
870 define KernelPackage/thermal/description
871 Generic Thermal Sysfs driver offers a generic mechanism for thermal
872 management. Usually it's made up of one or more thermal zone and cooling
876 $(eval $(call KernelPackage,thermal))
879 define KernelPackage/thermal-armada
880 SUBMENU:=$(OTHER_MENU)
881 TITLE:=Armada 370/XP thermal management
882 DEPENDS:=@TARGET_mvebu +kmod-thermal
883 KCONFIG:=CONFIG_ARMADA_THERMAL
884 FILES:=$(LINUX_DIR)/drivers/thermal/armada_thermal.ko
885 AUTOLOAD:=$(call AutoProbe,armada_thermal)
888 define KernelPackage/thermal-armada/description
889 Enable this module if you want to have support for thermal management
890 controller present in Armada 370 and Armada XP SoC.
893 $(eval $(call KernelPackage,thermal-armada))
896 define KernelPackage/thermal-imx
897 SUBMENU:=$(OTHER_MENU)
898 TITLE:=Temperature sensor driver for Freescale i.MX SoCs
899 DEPENDS:=@TARGET_imx6 +kmod-thermal
901 CONFIG_CPU_THERMAL=y \
903 FILES:=$(LINUX_DIR)/drivers/thermal/imx_thermal.ko
904 AUTOLOAD:=$(call AutoProbe,imx_thermal)
907 define KernelPackage/thermal-imx/description
908 Support for Temperature Monitor (TEMPMON) found on Freescale i.MX SoCs.
909 It supports one critical trip point and one passive trip point. The
910 cpufreq is used as the cooling device to throttle CPUs when the
911 passive trip is crossed.
914 $(eval $(call KernelPackage,thermal-imx))
917 define KernelPackage/thermal-kirkwood
918 SUBMENU:=$(OTHER_MENU)
919 TITLE:=Temperature sensor on Marvell Kirkwood SoCs
920 DEPENDS:=@TARGET_kirkwood +kmod-thermal
921 KCONFIG:=CONFIG_KIRKWOOD_THERMAL
922 FILES:=$(LINUX_DIR)/drivers/thermal/kirkwood_thermal.ko
923 AUTOLOAD:=$(call AutoProbe,kirkwood_thermal)
926 define KernelPackage/thermal-kirkwood/description
927 Support for the Kirkwood thermal sensor driver into the Linux thermal
928 framework. Only kirkwood 88F6282 and 88F6283 have this sensor.
931 $(eval $(call KernelPackage,thermal-kirkwood))
934 define KernelPackage/gpio-beeper
935 SUBMENU:=$(OTHER_MENU)
936 TITLE:=GPIO beeper support
937 DEPENDS:=+kmod-input-core
939 CONFIG_INPUT_MISC=y \
940 CONFIG_INPUT_GPIO_BEEPER
942 $(LINUX_DIR)/drivers/input/misc/gpio-beeper.ko
943 AUTOLOAD:=$(call AutoLoad,50,gpio-beeper)
946 define KernelPackage/gpio-beeper/description
947 This enables playing beeps through an GPIO-connected buzzer
950 $(eval $(call KernelPackage,gpio-beeper))
953 define KernelPackage/echo
954 SUBMENU:=$(OTHER_MENU)
955 TITLE:=Line Echo Canceller
957 FILES:=$(LINUX_DIR)/drivers/misc/echo/echo.ko
958 AUTOLOAD:=$(call AutoLoad,50,echo)
961 define KernelPackage/echo/description
962 This driver provides line echo cancelling support for mISDN and
966 $(eval $(call KernelPackage,echo))