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 +!LINUX_3_18:kmod-crypto-cmac
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
309 $(LINUX_DIR)/drivers/parport/parport.ko \
310 $(LINUX_DIR)/drivers/char/lp.ko \
311 $(LINUX_DIR)/drivers/char/ppdev.ko
312 AUTOLOAD:=$(call AutoLoad,50,parport lp ppdev)
315 $(eval $(call KernelPackage,lp))
318 define KernelPackage/mmc
319 SUBMENU:=$(OTHER_MENU)
320 TITLE:=MMC/SD Card Support
325 CONFIG_MMC_UNSAFE_RESUME=n \
326 CONFIG_MMC_BLOCK_BOUNCE=y \
327 CONFIG_MMC_TIFM_SD=n \
331 $(LINUX_DIR)/drivers/mmc/core/mmc_core.ko \
332 $(LINUX_DIR)/drivers/mmc/card/mmc_block.ko
333 AUTOLOAD:=$(call AutoProbe,mmc_core mmc_block,1)
336 define KernelPackage/mmc/description
337 Kernel support for MMC/SD cards
340 $(eval $(call KernelPackage,mmc))
343 define KernelPackage/sdhci
344 SUBMENU:=$(OTHER_MENU)
345 TITLE:=Secure Digital Host Controller Interface support
349 CONFIG_MMC_SDHCI_PLTFM \
350 CONFIG_MMC_SDHCI_PCI=n
352 $(LINUX_DIR)/drivers/mmc/host/sdhci.ko \
353 $(LINUX_DIR)/drivers/mmc/host/sdhci-pltfm.ko
355 AUTOLOAD:=$(call AutoProbe,sdhci sdhci-pltfm,1)
358 define KernelPackage/sdhci/description
359 Kernel support for SDHCI Hosts
362 $(eval $(call KernelPackage,sdhci))
365 define KernelPackage/oprofile
366 SUBMENU:=$(OTHER_MENU)
367 TITLE:=OProfile profiling support
368 KCONFIG:=CONFIG_OPROFILE
369 FILES:=$(LINUX_DIR)/arch/$(LINUX_KARCH)/oprofile/oprofile.ko
370 DEPENDS:=@KERNEL_PROFILING
373 define KernelPackage/oprofile/description
374 Kernel module for support for oprofile system profiling
377 $(eval $(call KernelPackage,oprofile))
380 define KernelPackage/rfkill
381 SUBMENU:=$(OTHER_MENU)
382 TITLE:=RF switch subsystem support
383 DEPENDS:=@USE_RFKILL +kmod-input-core
386 CONFIG_RFKILL_INPUT=y \
387 CONFIG_RFKILL_LEDS=y \
390 $(LINUX_DIR)/net/rfkill/rfkill.ko
391 AUTOLOAD:=$(call AutoLoad,20,rfkill)
394 define KernelPackage/rfkill/description
395 Say Y here if you want to have control over RF switches
396 found on many WiFi and Bluetooth cards
399 $(eval $(call KernelPackage,rfkill))
402 define KernelPackage/softdog
403 SUBMENU:=$(OTHER_MENU)
404 TITLE:=Software watchdog driver
405 KCONFIG:=CONFIG_SOFT_WATCHDOG
406 FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/softdog.ko
407 AUTOLOAD:=$(call AutoLoad,50,softdog)
410 define KernelPackage/softdog/description
411 Software watchdog driver
414 $(eval $(call KernelPackage,softdog))
417 define KernelPackage/ssb
418 SUBMENU:=$(OTHER_MENU)
419 TITLE:=Silicon Sonics Backplane glue code
420 DEPENDS:=@PCI_SUPPORT @!TARGET_brcm47xx @!TARGET_brcm63xx
423 CONFIG_SSB_B43_PCI_BRIDGE=y \
424 CONFIG_SSB_DRIVER_MIPS=n \
425 CONFIG_SSB_DRIVER_PCICORE=y \
426 CONFIG_SSB_DRIVER_PCICORE_POSSIBLE=y \
427 CONFIG_SSB_PCIHOST=y \
428 CONFIG_SSB_PCIHOST_POSSIBLE=y \
429 CONFIG_SSB_POSSIBLE=y \
432 FILES:=$(LINUX_DIR)/drivers/ssb/ssb.ko
433 AUTOLOAD:=$(call AutoLoad,18,ssb,1)
436 define KernelPackage/ssb/description
437 Silicon Sonics Backplane glue code.
440 $(eval $(call KernelPackage,ssb))
443 define KernelPackage/bcma
444 SUBMENU:=$(OTHER_MENU)
446 DEPENDS:=@PCI_SUPPORT @!TARGET_brcm47xx @!TARGET_bcm53xx
449 CONFIG_BCMA_POSSIBLE=y \
450 CONFIG_BCMA_BLOCKIO=y \
451 CONFIG_BCMA_HOST_PCI_POSSIBLE=y \
452 CONFIG_BCMA_HOST_PCI=y \
453 CONFIG_BCMA_HOST_SOC=n \
454 CONFIG_BCMA_DRIVER_MIPS=n \
455 CONFIG_BCMA_DRIVER_PCI_HOSTMODE=n \
456 CONFIG_BCMA_DRIVER_GMAC_CMN=n \
458 FILES:=$(LINUX_DIR)/drivers/bcma/bcma.ko
459 AUTOLOAD:=$(call AutoLoad,29,bcma)
462 define KernelPackage/bcma/description
463 Bus driver for Broadcom specific Advanced Microcontroller Bus Architecture
466 $(eval $(call KernelPackage,bcma))
469 define KernelPackage/wdt-omap
470 SUBMENU:=$(OTHER_MENU)
471 TITLE:=OMAP Watchdog timer
472 DEPENDS:=@(TARGET_omap24xx||TARGET_omap35xx)
473 KCONFIG:=CONFIG_OMAP_WATCHDOG
474 FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/omap_wdt.ko
475 AUTOLOAD:=$(call AutoLoad,50,omap_wdt.ko,1)
478 define KernelPackage/wdt-omap/description
479 Kernel module for TI omap watchdog timer
482 $(eval $(call KernelPackage,wdt-omap))
485 define KernelPackage/wdt-orion
486 SUBMENU:=$(OTHER_MENU)
487 TITLE:=Marvell Orion Watchdog timer
488 DEPENDS:=@TARGET_orion||TARGET_kirkwood||TARGET_mvebu
489 KCONFIG:=CONFIG_ORION_WATCHDOG
490 FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/orion_wdt.ko
491 AUTOLOAD:=$(call AutoLoad,50,orion_wdt,1)
494 define KernelPackage/wdt-orion/description
495 Kernel module for Marvell Orion, Kirkwood and Armada XP/370 watchdog timer
498 $(eval $(call KernelPackage,wdt-orion))
501 define KernelPackage/booke-wdt
502 SUBMENU:=$(OTHER_MENU)
503 TITLE:=PowerPC Book-E Watchdog Timer
504 DEPENDS:=@(TARGET_mpc85xx||TARGET_ppc40x||TARGET_ppc44x)
505 KCONFIG:=CONFIG_BOOKE_WDT
506 FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/booke_wdt.ko
507 AUTOLOAD:=$(call AutoLoad,50,booke_wdt,1)
510 define KernelPackage/booke-wdt/description
511 Kernel module for PowerPC Book-E Watchdog Timer
514 $(eval $(call KernelPackage,booke-wdt))
517 define KernelPackage/rtc-ds1307
518 SUBMENU:=$(OTHER_MENU)
519 TITLE:=Dallas/Maxim DS1307 (and compatible) RTC support
520 DEPENDS:=@RTC_SUPPORT +kmod-i2c-core
521 KCONFIG:=CONFIG_RTC_DRV_DS1307
522 FILES:=$(LINUX_DIR)/drivers/rtc/rtc-ds1307.ko
523 AUTOLOAD:=$(call AutoProbe,rtc-ds1307)
526 define KernelPackage/rtc-ds1307/description
527 Kernel module for Dallas/Maxim DS1307/DS1337/DS1338/DS1340/DS1388/DS3231,
528 Epson RX-8025 and various other compatible RTC chips connected via I2C.
531 $(eval $(call KernelPackage,rtc-ds1307))
534 define KernelPackage/rtc-ds1672
535 SUBMENU:=$(OTHER_MENU)
536 TITLE:=Dallas/Maxim DS1672 RTC support
537 DEPENDS:=@RTC_SUPPORT +kmod-i2c-core
538 KCONFIG:=CONFIG_RTC_DRV_DS1672
539 FILES:=$(LINUX_DIR)/drivers/rtc/rtc-ds1672.ko
540 AUTOLOAD:=$(call AutoProbe,rtc-ds1672)
543 define KernelPackage/rtc-ds1672/description
544 Kernel module for Dallas/Maxim DS1672 RTC.
547 $(eval $(call KernelPackage,rtc-ds1672))
550 define KernelPackage/rtc-isl1208
551 SUBMENU:=$(OTHER_MENU)
552 TITLE:=Intersil ISL1208 RTC support
553 DEPENDS:=@RTC_SUPPORT +kmod-i2c-core
554 KCONFIG:=CONFIG_RTC_DRV_ISL1208
555 FILES:=$(LINUX_DIR)/drivers/rtc/rtc-isl1208.ko
556 AUTOLOAD:=$(call AutoProbe,rtc-isl1208)
559 define KernelPackage/rtc-isl1208/description
560 Kernel module for Intersil ISL1208 RTC.
563 $(eval $(call KernelPackage,rtc-isl1208))
566 define KernelPackage/rtc-marvell
567 SUBMENU:=$(OTHER_MENU)
568 TITLE:=Marvell SoC built-in RTC support
569 DEPENDS:=@RTC_SUPPORT @TARGET_kirkwood||TARGET_orion||TARGET_mvebu
570 KCONFIG:=CONFIG_RTC_DRV_MV
571 FILES:=$(LINUX_DIR)/drivers/rtc/rtc-mv.ko
572 AUTOLOAD:=$(call AutoProbe,rtc-mv)
575 define KernelPackage/rtc-marvell/description
576 Kernel module for Marvell SoC built-in RTC.
579 $(eval $(call KernelPackage,rtc-marvell))
582 define KernelPackage/rtc-armada38x
583 SUBMENU:=$(OTHER_MENU)
584 TITLE:=Marvell Armada 38x SoC built-in RTC support
585 DEPENDS:=@RTC_SUPPORT @TARGET_mvebu
586 KCONFIG:=CONFIG_RTC_DRV_ARMADA38X
587 FILES:=$(LINUX_DIR)/drivers/rtc/rtc-armada38x.ko
588 AUTOLOAD:=$(call AutoProbe,rtc-armada38x)
591 define KernelPackage/rtc-armada38x/description
592 Kernel module for Marvell Armada 38x SoC built-in RTC.
595 $(eval $(call KernelPackage,rtc-armada38x))
598 define KernelPackage/rtc-pcf8563
599 SUBMENU:=$(OTHER_MENU)
600 TITLE:=Philips PCF8563/Epson RTC8564 RTC support
601 DEPENDS:=@RTC_SUPPORT +kmod-i2c-core
602 KCONFIG:=CONFIG_RTC_DRV_PCF8563
603 FILES:=$(LINUX_DIR)/drivers/rtc/rtc-pcf8563.ko
604 AUTOLOAD:=$(call AutoProbe,rtc-pcf8563)
607 define KernelPackage/rtc-pcf8563/description
608 Kernel module for Philips PCF8563 RTC chip.
609 The Epson RTC8564 should work as well.
612 $(eval $(call KernelPackage,rtc-pcf8563))
615 define KernelPackage/rtc-pcf2123
616 SUBMENU:=$(OTHER_MENU)
617 TITLE:=Philips PCF2123 RTC support
618 DEPENDS:=@RTC_SUPPORT
619 KCONFIG:=CONFIG_RTC_DRV_PCF2123
620 FILES:=$(LINUX_DIR)/drivers/rtc/rtc-pcf2123.ko
621 AUTOLOAD:=$(call AutoProbe,rtc-pcf2123)
624 define KernelPackage/rtc-pcf2123/description
625 Kernel module for Philips PCF2123 RTC chip
628 $(eval $(call KernelPackage,rtc-pcf2123))
630 define KernelPackage/rtc-pt7c4338
631 SUBMENU:=$(OTHER_MENU)
632 TITLE:=Pericom PT7C4338 RTC support
633 DEPENDS:=@RTC_SUPPORT +kmod-i2c-core
634 KCONFIG:=CONFIG_RTC_DRV_PT7C4338
635 FILES:=$(LINUX_DIR)/drivers/rtc/rtc-pt7c4338.ko
636 AUTOLOAD:=$(call AutoProbe,rtc-pt7c4338)
639 define KernelPackage/rtc-pt7c4338/description
640 Kernel module for Pericom PT7C4338 i2c RTC chip
643 $(eval $(call KernelPackage,rtc-pt7c4338))
646 define KernelPackage/mtdtests
647 SUBMENU:=$(OTHER_MENU)
648 TITLE:=MTD subsystem tests
649 KCONFIG:=CONFIG_MTD_TESTS
651 $(LINUX_DIR)/drivers/mtd/tests/mtd_nandecctest.ko \
652 $(LINUX_DIR)/drivers/mtd/tests/mtd_oobtest.ko \
653 $(LINUX_DIR)/drivers/mtd/tests/mtd_pagetest.ko \
654 $(LINUX_DIR)/drivers/mtd/tests/mtd_readtest.ko \
655 $(LINUX_DIR)/drivers/mtd/tests/mtd_speedtest.ko \
656 $(LINUX_DIR)/drivers/mtd/tests/mtd_stresstest.ko \
657 $(LINUX_DIR)/drivers/mtd/tests/mtd_subpagetest.ko \
658 $(LINUX_DIR)/drivers/mtd/tests/mtd_torturetest.ko
661 define KernelPackage/mtdtests/description
662 Kernel modules for MTD subsystem/driver testing
665 $(eval $(call KernelPackage,mtdtests))
668 define KernelPackage/serial-8250
669 SUBMENU:=$(OTHER_MENU)
671 KCONFIG:= CONFIG_SERIAL_8250 \
672 CONFIG_SERIAL_8250_NR_UARTS=16 \
673 CONFIG_SERIAL_8250_RUNTIME_UARTS=16 \
674 CONFIG_SERIAL_8250_EXTENDED=y \
675 CONFIG_SERIAL_8250_MANY_PORTS=y \
676 CONFIG_SERIAL_8250_SHARE_IRQ=y \
677 CONFIG_SERIAL_8250_DETECT_IRQ=n \
678 CONFIG_SERIAL_8250_RSA=n
679 FILES:=$(LINUX_DIR)/drivers/tty/serial/8250/8250.ko
682 define KernelPackage/serial-8250/description
683 Kernel module for 8250 UART based serial ports
686 $(eval $(call KernelPackage,serial-8250))
689 define KernelPackage/regmap
690 SUBMENU:=$(OTHER_MENU)
691 TITLE:=Generic register map support
692 DEPENDS:=+kmod-lib-lzo +kmod-i2c-core
693 KCONFIG:=CONFIG_REGMAP \
699 $(LINUX_DIR)/drivers/base/regmap/regmap-core.ko \
700 $(LINUX_DIR)/drivers/base/regmap/regmap-i2c.ko \
701 $(LINUX_DIR)/drivers/base/regmap/regmap-mmio.ko \
702 $(if $(CONFIG_SPI),$(LINUX_DIR)/drivers/base/regmap/regmap-spi.ko)
703 AUTOLOAD:=$(call AutoLoad,21,regmap-core regmap-i2c regmap-mmio regmap-spi)
706 define KernelPackage/regmap/description
707 Generic register map support
710 $(eval $(call KernelPackage,regmap))
712 define KernelPackage/ikconfig
713 SUBMENU:=$(OTHER_MENU)
714 TITLE:=Kernel configuration via /proc/config.gz
715 KCONFIG:=CONFIG_IKCONFIG \
716 CONFIG_IKCONFIG_PROC=y
717 FILES:=$(LINUX_DIR)/kernel/configs.ko
718 AUTOLOAD:=$(call AutoLoad,70,configs)
721 define KernelPackage/ikconfig/description
722 Kernel configuration via /proc/config.gz
725 $(eval $(call KernelPackage,ikconfig))
728 define KernelPackage/zram
729 SUBMENU:=$(OTHER_MENU)
731 DEPENDS:=+kmod-lib-lzo +kmod-lib-lz4
735 CONFIG_ZRAM_DEBUG=n \
736 CONFIG_PGTABLE_MAPPING=n \
737 CONFIG_ZSMALLOC_STAT=n \
738 CONFIG_ZRAM_LZ4_COMPRESS=y
740 $(LINUX_DIR)/mm/zsmalloc.ko \
741 $(LINUX_DIR)/drivers/block/zram/zram.ko
742 AUTOLOAD:=$(call AutoLoad,20,zsmalloc zram)
745 define KernelPackage/zram/description
746 Compressed RAM block device support
749 $(eval $(call KernelPackage,zram))
752 define KernelPackage/mvsdio
753 SUBMENU:=$(OTHER_MENU)
754 TITLE:=Marvell SDIO support
755 DEPENDS:=@TARGET_orion||TARGET_kirkwood||TARGET_mvebu +kmod-mmc
756 KCONFIG:=CONFIG_MMC_MVSDIO
757 FILES:=$(LINUX_DIR)/drivers/mmc/host/mvsdio.ko
758 AUTOLOAD:=$(call AutoProbe,mvsdio)
761 define KernelPackage/mvsdio/description
762 Kernel support for the Marvell SDIO controller
765 $(eval $(call KernelPackage,mvsdio))
768 define KernelPackage/pps
769 SUBMENU:=$(OTHER_MENU)
772 FILES:=$(LINUX_DIR)/drivers/pps/pps_core.ko
773 AUTOLOAD:=$(call AutoLoad,17,pps_core,1)
776 define KernelPackage/pps/description
777 PPS (Pulse Per Second) is a special pulse provided by some GPS
778 antennae. Userland can use it to get a high-precision time
782 $(eval $(call KernelPackage,pps))
785 define KernelPackage/pps-gpio
786 SUBMENU:=$(OTHER_MENU)
787 TITLE:=PPS client using GPIO
789 KCONFIG:=CONFIG_PPS_CLIENT_GPIO
790 FILES:=$(LINUX_DIR)/drivers/pps/clients/pps-gpio.ko
791 AUTOLOAD:=$(call AutoLoad,18,pps-gpio,1)
794 define KernelPackage/pps-gpio/description
795 Support for a PPS source using GPIO. To be useful you must
796 also register a platform device specifying the GPIO pin and
797 other options, usually in your board setup.
800 $(eval $(call KernelPackage,pps-gpio))
803 define KernelPackage/ptp
804 SUBMENU:=$(OTHER_MENU)
805 TITLE:=PTP clock support
807 KCONFIG:=CONFIG_PTP_1588_CLOCK
808 FILES:=$(LINUX_DIR)/drivers/ptp/ptp.ko
809 AUTOLOAD:=$(call AutoLoad,18,ptp,1)
812 define KernelPackage/ptp/description
813 The IEEE 1588 standard defines a method to precisely
814 synchronize distributed clocks over Ethernet networks.
817 $(eval $(call KernelPackage,ptp))
820 define KernelPackage/ptp-gianfar
821 SUBMENU:=$(OTHER_MENU)
822 TITLE:=Freescale Gianfar PTP support
823 DEPENDS:=@TARGET_mpc85xx +kmod-gianfar +kmod-ptp
824 KCONFIG:=CONFIG_PTP_1588_CLOCK_GIANFAR
825 FILES:=$(LINUX_DIR)/drivers/net/ethernet/freescale/gianfar_ptp.ko
826 AUTOLOAD:=$(call AutoProbe,gianfar_ptp)
829 define KernelPackage/ptp-gianfar/description
830 Kernel module for IEEE 1588 support for Freescale
831 Gianfar Ethernet drivers
834 $(eval $(call KernelPackage,ptp-gianfar))
837 define KernelPackage/random-core
838 SUBMENU:=$(OTHER_MENU)
839 TITLE:=Hardware Random Number Generator Core support
840 KCONFIG:=CONFIG_HW_RANDOM
841 FILES:=$(LINUX_DIR)/drivers/char/hw_random/rng-core.ko
844 define KernelPackage/random-core/description
845 Kernel module for the HW random number generator core infrastructure
848 $(eval $(call KernelPackage,random-core))
851 define KernelPackage/thermal
852 SUBMENU:=$(OTHER_MENU)
853 TITLE:=Generic Thermal sysfs driver
854 DEPENDS:=+kmod-hwmon-core
858 CONFIG_THERMAL_OF=y \
859 CONFIG_THERMAL_DEFAULT_GOV_STEP_WISE=y \
860 CONFIG_THERMAL_DEFAULT_GOV_FAIR_SHARE=n \
861 CONFIG_THERMAL_DEFAULT_GOV_USER_SPACE=n \
862 CONFIG_THERMAL_GOV_FAIR_SHARE=n \
863 CONFIG_THERMAL_GOV_STEP_WISE=y \
864 CONFIG_THERMAL_GOV_USER_SPACE=n \
865 CONFIG_THERMAL_HWMON=y \
866 CONFIG_THERMAL_EMULATION=n
867 FILES:=$(LINUX_DIR)/drivers/thermal/thermal_sys.ko
868 AUTOLOAD:=$(call AutoProbe,thermal_sys)
871 define KernelPackage/thermal/description
872 Generic Thermal Sysfs driver offers a generic mechanism for thermal
873 management. Usually it's made up of one or more thermal zone and cooling
877 $(eval $(call KernelPackage,thermal))
880 define KernelPackage/thermal-armada
881 SUBMENU:=$(OTHER_MENU)
882 TITLE:=Armada 370/XP thermal management
883 DEPENDS:=@TARGET_mvebu +kmod-thermal
884 KCONFIG:=CONFIG_ARMADA_THERMAL
885 FILES:=$(LINUX_DIR)/drivers/thermal/armada_thermal.ko
886 AUTOLOAD:=$(call AutoProbe,armada_thermal)
889 define KernelPackage/thermal-armada/description
890 Enable this module if you want to have support for thermal management
891 controller present in Armada 370 and Armada XP SoC.
894 $(eval $(call KernelPackage,thermal-armada))
897 define KernelPackage/thermal-imx
898 SUBMENU:=$(OTHER_MENU)
899 TITLE:=Temperature sensor driver for Freescale i.MX SoCs
900 DEPENDS:=@TARGET_imx6 +kmod-thermal
902 CONFIG_CPU_THERMAL=y \
904 FILES:=$(LINUX_DIR)/drivers/thermal/imx_thermal.ko
905 AUTOLOAD:=$(call AutoProbe,imx_thermal)
908 define KernelPackage/thermal-imx/description
909 Support for Temperature Monitor (TEMPMON) found on Freescale i.MX SoCs.
910 It supports one critical trip point and one passive trip point. The
911 cpufreq is used as the cooling device to throttle CPUs when the
912 passive trip is crossed.
915 $(eval $(call KernelPackage,thermal-imx))
918 define KernelPackage/thermal-kirkwood
919 SUBMENU:=$(OTHER_MENU)
920 TITLE:=Temperature sensor on Marvell Kirkwood SoCs
921 DEPENDS:=@TARGET_kirkwood +kmod-thermal
922 KCONFIG:=CONFIG_KIRKWOOD_THERMAL
923 FILES:=$(LINUX_DIR)/drivers/thermal/kirkwood_thermal.ko
924 AUTOLOAD:=$(call AutoProbe,kirkwood_thermal)
927 define KernelPackage/thermal-kirkwood/description
928 Support for the Kirkwood thermal sensor driver into the Linux thermal
929 framework. Only kirkwood 88F6282 and 88F6283 have this sensor.
932 $(eval $(call KernelPackage,thermal-kirkwood))
935 define KernelPackage/gpio-beeper
936 SUBMENU:=$(OTHER_MENU)
937 TITLE:=GPIO beeper support
938 DEPENDS:=+kmod-input-core
940 CONFIG_INPUT_MISC=y \
941 CONFIG_INPUT_GPIO_BEEPER
943 $(LINUX_DIR)/drivers/input/misc/gpio-beeper.ko
944 AUTOLOAD:=$(call AutoLoad,50,gpio-beeper)
947 define KernelPackage/gpio-beeper/description
948 This enables playing beeps through an GPIO-connected buzzer
951 $(eval $(call KernelPackage,gpio-beeper))
954 define KernelPackage/echo
955 SUBMENU:=$(OTHER_MENU)
956 TITLE:=Line Echo Canceller
958 FILES:=$(LINUX_DIR)/drivers/misc/echo/echo.ko
959 AUTOLOAD:=$(call AutoLoad,50,echo)
962 define KernelPackage/echo/description
963 This driver provides line echo cancelling support for mISDN and
967 $(eval $(call KernelPackage,echo))