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 +LINUX_4_4:kmod-regmap
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))
81 define KernelPackage/ath3k
82 SUBMENU:=$(OTHER_MENU)
83 TITLE:=ATH3K Kernel Module support
84 DEPENDS:=+kmod-bluetooth +ar3k-firmware
87 CONFIG_BT_HCIUART_ATH3K=y
88 $(call AddDepends/bluetooth)
90 $(LINUX_DIR)/drivers/bluetooth/ath3k.ko
91 AUTOLOAD:=$(call AutoProbe,ath3k)
94 define KernelPackage/ath3k/description
95 Kernel support for ATH3K Module
98 $(eval $(call KernelPackage,ath3k))
101 define KernelPackage/bluetooth_6lowpan
102 SUBMENU:=$(OTHER_MENU)
103 TITLE:=Bluetooth 6LoWPAN support
104 DEPENDS:=+kmod-6lowpan +kmod-bluetooth
105 KCONFIG:=CONFIG_BT_6LOWPAN
106 FILES:=$(LINUX_DIR)/net/bluetooth/bluetooth_6lowpan.ko
107 AUTOLOAD:=$(call AutoProbe,bluetooth_6lowpan)
110 define KernelPackage/bluetooth_6lowpan/description
111 Kernel support for 6LoWPAN over Bluetooth Low Energy devices
114 $(eval $(call KernelPackage,bluetooth_6lowpan))
117 define KernelPackage/bluetooth-hci-h4p
118 SUBMENU:=$(OTHER_MENU)
119 TITLE:=HCI driver with H4 Nokia extensions
120 DEPENDS:=@TARGET_omap24xx +kmod-bluetooth
121 KCONFIG:=CONFIG_BT_HCIH4P
122 FILES:=$(LINUX_DIR)/drivers/bluetooth/hci_h4p/hci_h4p.ko
123 AUTOLOAD:=$(call AutoProbe,hci_h4p)
126 define KernelPackage/bluetooth-hci-h4p/description
127 HCI driver with H4 Nokia extensions
130 $(eval $(call KernelPackage,bluetooth-hci-h4p))
133 define KernelPackage/dma-buf
134 SUBMENU:=$(OTHER_MENU)
135 TITLE:=DMA shared buffer support
137 KCONFIG:=CONFIG_DMA_SHARED_BUFFER
138 FILES:=$(LINUX_DIR)/drivers/dma-buf/dma-shared-buffer.ko
139 AUTOLOAD:=$(call AutoLoad,20,dma-shared-buffer)
141 $(eval $(call KernelPackage,dma-buf))
144 define KernelPackage/eeprom-93cx6
145 SUBMENU:=$(OTHER_MENU)
146 TITLE:=EEPROM 93CX6 support
147 KCONFIG:=CONFIG_EEPROM_93CX6
148 FILES:=$(LINUX_DIR)/drivers/misc/eeprom/eeprom_93cx6.ko
149 AUTOLOAD:=$(call AutoLoad,20,eeprom_93cx6)
152 define KernelPackage/eeprom-93cx6/description
153 Kernel module for EEPROM 93CX6 support
156 $(eval $(call KernelPackage,eeprom-93cx6))
159 define KernelPackage/eeprom-at24
160 SUBMENU:=$(OTHER_MENU)
161 TITLE:=EEPROM AT24 support
162 KCONFIG:=CONFIG_EEPROM_AT24
163 DEPENDS:=+kmod-i2c-core
164 FILES:=$(LINUX_DIR)/drivers/misc/eeprom/at24.ko
165 AUTOLOAD:=$(call AutoProbe,at24)
168 define KernelPackage/eeprom-at24/description
169 Kernel module for most I2C EEPROMs
172 $(eval $(call KernelPackage,eeprom-at24))
175 define KernelPackage/eeprom-at25
176 SUBMENU:=$(OTHER_MENU)
177 TITLE:=EEPROM AT25 support
178 KCONFIG:=CONFIG_EEPROM_AT25
179 FILES:=$(LINUX_DIR)/drivers/misc/eeprom/at25.ko
180 AUTOLOAD:=$(call AutoProbe,at25)
183 define KernelPackage/eeprom-at25/description
184 Kernel module for most SPI EEPROMs
187 $(eval $(call KernelPackage,eeprom-at25))
190 define KernelPackage/gpio-dev
191 SUBMENU:=$(OTHER_MENU)
192 TITLE:=Generic GPIO char device support
193 DEPENDS:=@GPIO_SUPPORT
194 KCONFIG:=CONFIG_GPIO_DEVICE
195 FILES:=$(LINUX_DIR)/drivers/char/gpio_dev.ko
196 AUTOLOAD:=$(call AutoLoad,40,gpio_dev)
199 define KernelPackage/gpio-dev/description
200 Kernel module to allows control of GPIO pins using a character device.
203 $(eval $(call KernelPackage,gpio-dev))
206 define KernelPackage/gpio-mcp23s08
207 SUBMENU:=$(OTHER_MENU)
208 TITLE:=Microchip MCP23xxx I/O expander
209 DEPENDS:=@GPIO_SUPPORT +PACKAGE_kmod-i2c-core:kmod-i2c-core
210 KCONFIG:=CONFIG_GPIO_MCP23S08
211 FILES:=$(LINUX_DIR)/drivers/gpio/gpio-mcp23s08.ko
212 AUTOLOAD:=$(call AutoLoad,40,gpio-mcp23s08)
215 define KernelPackage/gpio-mcp23s08/description
216 Kernel module for Microchip MCP23xxx SPI/I2C I/O expander
219 $(eval $(call KernelPackage,gpio-mcp23s08))
222 define KernelPackage/gpio-nxp-74hc164
223 SUBMENU:=$(OTHER_MENU)
224 TITLE:=NXP 74HC164 GPIO expander support
225 KCONFIG:=CONFIG_GPIO_NXP_74HC164
226 FILES:=$(LINUX_DIR)/drivers/gpio/nxp_74hc164.ko
227 AUTOLOAD:=$(call AutoProbe,nxp_74hc164)
230 define KernelPackage/gpio-nxp-74hc164/description
231 Kernel module for NXP 74HC164 GPIO expander
234 $(eval $(call KernelPackage,gpio-nxp-74hc164))
236 define KernelPackage/gpio-pca953x
237 SUBMENU:=$(OTHER_MENU)
238 DEPENDS:=@GPIO_SUPPORT +kmod-i2c-core
239 TITLE:=PCA95xx, TCA64xx, and MAX7310 I/O ports
240 KCONFIG:=CONFIG_GPIO_PCA953X
241 FILES:=$(LINUX_DIR)/drivers/gpio/gpio-pca953x.ko
242 AUTOLOAD:=$(call AutoLoad,55,gpio-pca953x)
245 define KernelPackage/gpio-pca953x/description
246 Kernel module for MAX731{0,2,3,5}, PCA6107, PCA953{4-9}, PCA955{4-7},
247 PCA957{4,5} and TCA64{08,16} I2C GPIO expanders
250 $(eval $(call KernelPackage,gpio-pca953x))
252 define KernelPackage/gpio-pcf857x
253 SUBMENU:=$(OTHER_MENU)
254 DEPENDS:=@GPIO_SUPPORT +kmod-i2c-core
255 TITLE:=PCX857x, PCA967x and MAX732X I2C GPIO expanders
256 KCONFIG:=CONFIG_GPIO_PCF857X
257 FILES:=$(LINUX_DIR)/drivers/gpio/gpio-pcf857x.ko
258 AUTOLOAD:=$(call AutoLoad,55,gpio-pcf857x)
261 define KernelPackage/gpio-pcf857x/description
262 Kernel module for PCF857x, PCA{85,96}7x, and MAX732[89] I2C GPIO expanders
265 $(eval $(call KernelPackage,gpio-pcf857x))
267 define KernelPackage/iio-core
268 SUBMENU:=$(OTHER_MENU)
269 TITLE:=Industrial IO core
272 CONFIG_IIO_BUFFER=y \
273 CONFIG_IIO_KFIFO_BUF \
274 CONFIG_IIO_TRIGGER=y \
275 CONFIG_IIO_TRIGGERED_BUFFER
277 $(LINUX_DIR)/drivers/iio/industrialio.ko \
278 $(if $(CONFIG_IIO_TRIGGERED_BUFFER),$(LINUX_DIR)/drivers/iio/industrialio-triggered-buffer.ko@lt4.4) \
279 $(if $(CONFIG_IIO_TRIGGERED_BUFFER),$(LINUX_DIR)/drivers/iio/buffer/industrialio-triggered-buffer.ko@ge4.4) \
280 $(LINUX_DIR)/drivers/iio/kfifo_buf.ko@lt4.4 \
281 $(LINUX_DIR)/drivers/iio/buffer/kfifo_buf.ko@ge4.4
282 AUTOLOAD:=$(call AutoLoad,55,industrialio kfifo_buf industrialio-triggered-buffer)
285 define KernelPackage/iio-core/description
286 The industrial I/O subsystem provides a unified framework for
287 drivers for many different types of embedded sensors using a
288 number of different physical interfaces (i2c, spi, etc)
291 $(eval $(call KernelPackage,iio-core))
294 define KernelPackage/iio-ad799x
295 SUBMENU:=$(OTHER_MENU)
296 DEPENDS:=kmod-i2c-core kmod-iio-core
297 TITLE:=Analog Devices AD799x ADC driver
299 CONFIG_AD799X_RING_BUFFER=y \
301 FILES:=$(LINUX_DIR)/drivers/iio/adc/ad799x.ko
302 AUTOLOAD:=$(call AutoLoad,56,ad799x)
305 define KernelPackage/iio-ad799x/description
306 support for Analog Devices:
307 ad7991, ad7995, ad7999, ad7992, ad7993, ad7994, ad7997, ad7998
308 i2c analog to digital converters (ADC).
311 $(eval $(call KernelPackage,iio-ad799x))
314 define KernelPackage/iio-dht11
315 SUBMENU:=$(OTHER_MENU)
316 DEPENDS:=kmod-iio-core @GPIO_SUPPORT @USES_DEVICETREE
317 TITLE:=DHT11 (and compatible) humidity and temperature sensors
320 FILES:=$(LINUX_DIR)/drivers/iio/humidity/dht11.ko
321 AUTOLOAD:=$(call AutoLoad,56,dht11)
324 define KernelPackage/iio-dht11/description
325 support for DHT11 and DHT22 digitial humidity and temperature sensors
326 attached at GPIO lines. You will need a custom device tree file to
327 specify the GPIO line to use.
330 $(eval $(call KernelPackage,iio-dht11))
333 define KernelPackage/lp
334 SUBMENU:=$(OTHER_MENU)
335 TITLE:=Parallel port and line printer support
341 $(LINUX_DIR)/drivers/parport/parport.ko \
342 $(LINUX_DIR)/drivers/char/lp.ko \
343 $(LINUX_DIR)/drivers/char/ppdev.ko
344 AUTOLOAD:=$(call AutoLoad,50,parport lp ppdev)
347 $(eval $(call KernelPackage,lp))
350 define KernelPackage/mmc
351 SUBMENU:=$(OTHER_MENU)
352 TITLE:=MMC/SD Card Support
357 CONFIG_MMC_UNSAFE_RESUME=n \
358 CONFIG_MMC_BLOCK_BOUNCE=y \
359 CONFIG_MMC_TIFM_SD=n \
363 $(LINUX_DIR)/drivers/mmc/core/mmc_core.ko \
364 $(LINUX_DIR)/drivers/mmc/card/mmc_block.ko
365 AUTOLOAD:=$(call AutoProbe,mmc_core mmc_block,1)
368 define KernelPackage/mmc/description
369 Kernel support for MMC/SD cards
372 $(eval $(call KernelPackage,mmc))
375 define KernelPackage/sdhci
376 SUBMENU:=$(OTHER_MENU)
377 TITLE:=Secure Digital Host Controller Interface support
381 CONFIG_MMC_SDHCI_PLTFM \
382 CONFIG_MMC_SDHCI_PCI=n
384 $(LINUX_DIR)/drivers/mmc/host/sdhci.ko \
385 $(LINUX_DIR)/drivers/mmc/host/sdhci-pltfm.ko
387 AUTOLOAD:=$(call AutoProbe,sdhci-pltfm,1)
390 define KernelPackage/sdhci/description
391 Kernel support for SDHCI Hosts
394 $(eval $(call KernelPackage,sdhci))
397 define KernelPackage/rfkill
398 SUBMENU:=$(OTHER_MENU)
399 TITLE:=RF switch subsystem support
400 DEPENDS:=@USE_RFKILL +kmod-input-core
403 CONFIG_RFKILL_INPUT=y \
406 $(LINUX_DIR)/net/rfkill/rfkill.ko
407 AUTOLOAD:=$(call AutoLoad,20,rfkill)
410 define KernelPackage/rfkill/description
411 Say Y here if you want to have control over RF switches
412 found on many WiFi and Bluetooth cards
415 $(eval $(call KernelPackage,rfkill))
418 define KernelPackage/softdog
419 SUBMENU:=$(OTHER_MENU)
420 TITLE:=Software watchdog driver
421 KCONFIG:=CONFIG_SOFT_WATCHDOG
422 FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/softdog.ko
423 AUTOLOAD:=$(call AutoLoad,50,softdog,1)
426 define KernelPackage/softdog/description
427 Software watchdog driver
430 $(eval $(call KernelPackage,softdog))
433 define KernelPackage/ssb
434 SUBMENU:=$(OTHER_MENU)
435 TITLE:=Silicon Sonics Backplane glue code
436 DEPENDS:=@PCI_SUPPORT @!TARGET_brcm47xx @!TARGET_brcm63xx
439 CONFIG_SSB_B43_PCI_BRIDGE=y \
440 CONFIG_SSB_DRIVER_MIPS=n \
441 CONFIG_SSB_DRIVER_PCICORE=y \
442 CONFIG_SSB_DRIVER_PCICORE_POSSIBLE=y \
443 CONFIG_SSB_PCIHOST=y \
444 CONFIG_SSB_PCIHOST_POSSIBLE=y \
445 CONFIG_SSB_POSSIBLE=y \
448 FILES:=$(LINUX_DIR)/drivers/ssb/ssb.ko
449 AUTOLOAD:=$(call AutoLoad,18,ssb,1)
452 define KernelPackage/ssb/description
453 Silicon Sonics Backplane glue code.
456 $(eval $(call KernelPackage,ssb))
459 define KernelPackage/bcma
460 SUBMENU:=$(OTHER_MENU)
462 DEPENDS:=@PCI_SUPPORT @!TARGET_brcm47xx @!TARGET_bcm53xx
465 CONFIG_BCMA_POSSIBLE=y \
466 CONFIG_BCMA_BLOCKIO=y \
467 CONFIG_BCMA_HOST_PCI_POSSIBLE=y \
468 CONFIG_BCMA_HOST_PCI=y \
469 CONFIG_BCMA_HOST_SOC=n \
470 CONFIG_BCMA_DRIVER_MIPS=n \
471 CONFIG_BCMA_DRIVER_PCI_HOSTMODE=n \
472 CONFIG_BCMA_DRIVER_GMAC_CMN=n \
474 FILES:=$(LINUX_DIR)/drivers/bcma/bcma.ko
475 AUTOLOAD:=$(call AutoLoad,29,bcma)
478 define KernelPackage/bcma/description
479 Bus driver for Broadcom specific Advanced Microcontroller Bus Architecture
482 $(eval $(call KernelPackage,bcma))
485 define KernelPackage/wdt-omap
486 SUBMENU:=$(OTHER_MENU)
487 TITLE:=OMAP Watchdog timer
488 DEPENDS:=@TARGET_omap24xx
489 KCONFIG:=CONFIG_OMAP_WATCHDOG
490 FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/omap_wdt.ko
491 AUTOLOAD:=$(call AutoLoad,50,omap_wdt,1)
494 define KernelPackage/wdt-omap/description
495 Kernel module for TI omap watchdog timer
498 $(eval $(call KernelPackage,wdt-omap))
501 define KernelPackage/rtc-ds1307
502 SUBMENU:=$(OTHER_MENU)
503 TITLE:=Dallas/Maxim DS1307 (and compatible) RTC support
504 DEPENDS:=@RTC_SUPPORT +kmod-i2c-core
505 KCONFIG:=CONFIG_RTC_DRV_DS1307 \
507 FILES:=$(LINUX_DIR)/drivers/rtc/rtc-ds1307.ko
508 AUTOLOAD:=$(call AutoProbe,rtc-ds1307)
511 define KernelPackage/rtc-ds1307/description
512 Kernel module for Dallas/Maxim DS1307/DS1337/DS1338/DS1340/DS1388/DS3231,
513 Epson RX-8025 and various other compatible RTC chips connected via I2C.
516 $(eval $(call KernelPackage,rtc-ds1307))
519 define KernelPackage/rtc-ds1374
520 SUBMENU:=$(OTHER_MENU)
521 TITLE:=Dallas/Maxim DS1374 RTC support
522 DEPENDS:=@RTC_SUPPORT +kmod-i2c-core
523 KCONFIG:=CONFIG_RTC_DRV_DS1374 \
524 CONFIG_RTC_DRV_DS1374_WDT=n \
526 FILES:=$(LINUX_DIR)/drivers/rtc/rtc-ds1374.ko
527 AUTOLOAD:=$(call AutoProbe,rtc-ds1374)
530 define KernelPackage/rtc-ds1374/description
531 Kernel module for Dallas/Maxim DS1374.
534 $(eval $(call KernelPackage,rtc-ds1374))
537 define KernelPackage/rtc-ds1672
538 SUBMENU:=$(OTHER_MENU)
539 TITLE:=Dallas/Maxim DS1672 RTC support
540 DEPENDS:=@RTC_SUPPORT +kmod-i2c-core
541 KCONFIG:=CONFIG_RTC_DRV_DS1672 \
543 FILES:=$(LINUX_DIR)/drivers/rtc/rtc-ds1672.ko
544 AUTOLOAD:=$(call AutoProbe,rtc-ds1672)
547 define KernelPackage/rtc-ds1672/description
548 Kernel module for Dallas/Maxim DS1672 RTC.
551 $(eval $(call KernelPackage,rtc-ds1672))
554 define KernelPackage/rtc-isl1208
555 SUBMENU:=$(OTHER_MENU)
556 TITLE:=Intersil ISL1208 RTC support
557 DEPENDS:=@RTC_SUPPORT +kmod-i2c-core
558 KCONFIG:=CONFIG_RTC_DRV_ISL1208 \
560 FILES:=$(LINUX_DIR)/drivers/rtc/rtc-isl1208.ko
561 AUTOLOAD:=$(call AutoProbe,rtc-isl1208)
564 define KernelPackage/rtc-isl1208/description
565 Kernel module for Intersil ISL1208 RTC.
568 $(eval $(call KernelPackage,rtc-isl1208))
571 define KernelPackage/rtc-pcf8563
572 SUBMENU:=$(OTHER_MENU)
573 TITLE:=Philips PCF8563/Epson RTC8564 RTC support
574 DEPENDS:=@RTC_SUPPORT +kmod-i2c-core
575 KCONFIG:=CONFIG_RTC_DRV_PCF8563 \
577 FILES:=$(LINUX_DIR)/drivers/rtc/rtc-pcf8563.ko
578 AUTOLOAD:=$(call AutoProbe,rtc-pcf8563)
581 define KernelPackage/rtc-pcf8563/description
582 Kernel module for Philips PCF8563 RTC chip.
583 The Epson RTC8564 should work as well.
586 $(eval $(call KernelPackage,rtc-pcf8563))
589 define KernelPackage/rtc-pcf2123
590 SUBMENU:=$(OTHER_MENU)
591 TITLE:=Philips PCF2123 RTC support
592 DEPENDS:=@RTC_SUPPORT
593 KCONFIG:=CONFIG_RTC_DRV_PCF2123 \
595 FILES:=$(LINUX_DIR)/drivers/rtc/rtc-pcf2123.ko
596 AUTOLOAD:=$(call AutoProbe,rtc-pcf2123)
599 define KernelPackage/rtc-pcf2123/description
600 Kernel module for Philips PCF2123 RTC chip
603 $(eval $(call KernelPackage,rtc-pcf2123))
605 define KernelPackage/rtc-pt7c4338
606 SUBMENU:=$(OTHER_MENU)
607 TITLE:=Pericom PT7C4338 RTC support
608 DEPENDS:=@RTC_SUPPORT +kmod-i2c-core
609 KCONFIG:=CONFIG_RTC_DRV_PT7C4338 \
611 FILES:=$(LINUX_DIR)/drivers/rtc/rtc-pt7c4338.ko
612 AUTOLOAD:=$(call AutoProbe,rtc-pt7c4338)
615 define KernelPackage/rtc-pt7c4338/description
616 Kernel module for Pericom PT7C4338 i2c RTC chip
619 $(eval $(call KernelPackage,rtc-pt7c4338))
621 define KernelPackage/rtc-rs5c372a
622 SUBMENU:=$(OTHER_MENU)
623 TITLE:=Ricoh R2025S/D, RS5C372A/B, RV5C386, RV5C387A
624 DEPENDS:=@RTC_SUPPORT +kmod-i2c-core
625 KCONFIG:=CONFIG_RTC_DRV_RS5C372 \
627 FILES:=$(LINUX_DIR)/drivers/rtc/rtc-rs5c372.ko
628 AUTOLOAD:=$(call AutoLoad,50,rtc-rs5c372,1)
631 define KernelPackage/rtc-rs5c372a/description
632 Kernel module for Ricoh R2025S/D, RS5C372A/B, RV5C386, RV5C387A RTC on chip module
635 $(eval $(call KernelPackage,rtc-rs5c372a))
638 define KernelPackage/mtdtests
639 SUBMENU:=$(OTHER_MENU)
640 TITLE:=MTD subsystem tests
641 KCONFIG:=CONFIG_MTD_TESTS
643 $(LINUX_DIR)/drivers/mtd/tests/mtd_nandecctest.ko \
644 $(LINUX_DIR)/drivers/mtd/tests/mtd_oobtest.ko \
645 $(LINUX_DIR)/drivers/mtd/tests/mtd_pagetest.ko \
646 $(LINUX_DIR)/drivers/mtd/tests/mtd_readtest.ko \
647 $(LINUX_DIR)/drivers/mtd/tests/mtd_speedtest.ko \
648 $(LINUX_DIR)/drivers/mtd/tests/mtd_stresstest.ko \
649 $(LINUX_DIR)/drivers/mtd/tests/mtd_subpagetest.ko \
650 $(LINUX_DIR)/drivers/mtd/tests/mtd_torturetest.ko
653 define KernelPackage/mtdtests/description
654 Kernel modules for MTD subsystem/driver testing
657 $(eval $(call KernelPackage,mtdtests))
660 define KernelPackage/serial-8250
661 SUBMENU:=$(OTHER_MENU)
663 KCONFIG:= CONFIG_SERIAL_8250 \
664 CONFIG_SERIAL_8250_NR_UARTS=16 \
665 CONFIG_SERIAL_8250_RUNTIME_UARTS=16 \
666 CONFIG_SERIAL_8250_EXTENDED=y \
667 CONFIG_SERIAL_8250_MANY_PORTS=y \
668 CONFIG_SERIAL_8250_SHARE_IRQ=y \
669 CONFIG_SERIAL_8250_DETECT_IRQ=n \
670 CONFIG_SERIAL_8250_RSA=n
672 $(LINUX_DIR)/drivers/tty/serial/8250/8250.ko \
673 $(LINUX_DIR)/drivers/tty/serial/8250/8250_base.ko@ge4.4
676 define KernelPackage/serial-8250/description
677 Kernel module for 8250 UART based serial ports
680 $(eval $(call KernelPackage,serial-8250))
683 define KernelPackage/regmap
684 SUBMENU:=$(OTHER_MENU)
685 TITLE:=Generic register map support
686 DEPENDS:=+kmod-lib-lzo +kmod-i2c-core
687 KCONFIG:=CONFIG_REGMAP \
693 $(LINUX_DIR)/drivers/base/regmap/regmap-core.ko \
694 $(LINUX_DIR)/drivers/base/regmap/regmap-i2c.ko \
695 $(LINUX_DIR)/drivers/base/regmap/regmap-mmio.ko \
696 $(if $(CONFIG_SPI),$(LINUX_DIR)/drivers/base/regmap/regmap-spi.ko)
697 AUTOLOAD:=$(call AutoLoad,21,regmap-core regmap-i2c regmap-mmio regmap-spi)
700 define KernelPackage/regmap/description
701 Generic register map support
704 $(eval $(call KernelPackage,regmap))
706 define KernelPackage/ikconfig
707 SUBMENU:=$(OTHER_MENU)
708 TITLE:=Kernel configuration via /proc/config.gz
709 KCONFIG:=CONFIG_IKCONFIG \
710 CONFIG_IKCONFIG_PROC=y
711 FILES:=$(LINUX_DIR)/kernel/configs.ko
712 AUTOLOAD:=$(call AutoLoad,70,configs)
715 define KernelPackage/ikconfig/description
716 Kernel configuration via /proc/config.gz
719 $(eval $(call KernelPackage,ikconfig))
722 define KernelPackage/zram
723 SUBMENU:=$(OTHER_MENU)
725 DEPENDS:=+kmod-lib-lzo +kmod-lib-lz4
729 CONFIG_ZRAM_DEBUG=n \
730 CONFIG_PGTABLE_MAPPING=n \
731 CONFIG_ZSMALLOC_STAT=n \
732 CONFIG_ZRAM_LZ4_COMPRESS=y
734 $(LINUX_DIR)/mm/zsmalloc.ko \
735 $(LINUX_DIR)/drivers/block/zram/zram.ko
736 AUTOLOAD:=$(call AutoLoad,20,zsmalloc zram)
739 define KernelPackage/zram/description
740 Compressed RAM block device support
743 $(eval $(call KernelPackage,zram))
746 define KernelPackage/pps
747 SUBMENU:=$(OTHER_MENU)
750 FILES:=$(LINUX_DIR)/drivers/pps/pps_core.ko
751 AUTOLOAD:=$(call AutoLoad,17,pps_core,1)
754 define KernelPackage/pps/description
755 PPS (Pulse Per Second) is a special pulse provided by some GPS
756 antennae. Userland can use it to get a high-precision time
760 $(eval $(call KernelPackage,pps))
763 define KernelPackage/pps-gpio
764 SUBMENU:=$(OTHER_MENU)
765 TITLE:=PPS client using GPIO
767 KCONFIG:=CONFIG_PPS_CLIENT_GPIO
768 FILES:=$(LINUX_DIR)/drivers/pps/clients/pps-gpio.ko
769 AUTOLOAD:=$(call AutoLoad,18,pps-gpio,1)
772 define KernelPackage/pps-gpio/description
773 Support for a PPS source using GPIO. To be useful you must
774 also register a platform device specifying the GPIO pin and
775 other options, usually in your board setup.
778 $(eval $(call KernelPackage,pps-gpio))
781 define KernelPackage/pps-ldisc
782 SUBMENU:=$(OTHER_MENU)
783 TITLE:=PPS line discipline
785 KCONFIG:=CONFIG_PPS_CLIENT_LDISC
786 FILES:=$(LINUX_DIR)/drivers/pps/clients/pps-ldisc.ko
787 AUTOLOAD:=$(call AutoLoad,18,pps-ldisc,1)
790 define KernelPackage/pps-ldisc/description
791 Support for a PPS source connected with the CD (Carrier
792 Detect) pin of your serial port.
795 $(eval $(call KernelPackage,pps-ldisc))
798 define KernelPackage/ptp
799 SUBMENU:=$(OTHER_MENU)
800 TITLE:=PTP clock support
803 CONFIG_PTP_1588_CLOCK \
804 CONFIG_NET_PTP_CLASSIFY=y
805 FILES:=$(LINUX_DIR)/drivers/ptp/ptp.ko
806 AUTOLOAD:=$(call AutoLoad,18,ptp,1)
809 define KernelPackage/ptp/description
810 The IEEE 1588 standard defines a method to precisely
811 synchronize distributed clocks over Ethernet networks.
814 $(eval $(call KernelPackage,ptp))
817 define KernelPackage/ptp-gianfar
818 SUBMENU:=$(OTHER_MENU)
819 TITLE:=Freescale Gianfar PTP support
820 DEPENDS:=@TARGET_mpc85xx +kmod-ptp
821 KCONFIG:=CONFIG_PTP_1588_CLOCK_GIANFAR
822 FILES:=$(LINUX_DIR)/drivers/net/ethernet/freescale/gianfar_ptp.ko
823 AUTOLOAD:=$(call AutoProbe,gianfar_ptp)
826 define KernelPackage/ptp-gianfar/description
827 Kernel module for IEEE 1588 support for Freescale
828 Gianfar Ethernet drivers
831 $(eval $(call KernelPackage,ptp-gianfar))
834 define KernelPackage/random-core
835 SUBMENU:=$(OTHER_MENU)
836 TITLE:=Hardware Random Number Generator Core support
837 KCONFIG:=CONFIG_HW_RANDOM
838 FILES:=$(LINUX_DIR)/drivers/char/hw_random/rng-core.ko
841 define KernelPackage/random-core/description
842 Kernel module for the HW random number generator core infrastructure
845 $(eval $(call KernelPackage,random-core))
847 define KernelPackage/random-omap
848 SUBMENU:=$(OTHER_MENU)
849 TITLE:=Hardware Random Number Generator OMAP support
850 KCONFIG:=CONFIG_HW_RANDOM_OMAP
851 FILES:=$(LINUX_DIR)/drivers/char/hw_random/omap-rng.ko
852 DEPENDS:=@TARGET_omap24xx +kmod-random-core
853 AUTOLOAD:=$(call AutoProbe,random-omap)
856 define KernelPackage/random-omap/description
857 Kernel module for the OMAP Random Number Generator
858 found on OMAP16xx, OMAP2/3/4/5 and AM33xx/AM43xx multimedia processors.
861 $(eval $(call KernelPackage,random-omap))
863 define KernelPackage/thermal
864 SUBMENU:=$(OTHER_MENU)
865 TITLE:=Generic Thermal sysfs driver
866 DEPENDS:=+kmod-hwmon-core
870 CONFIG_THERMAL_OF=y \
871 CONFIG_CPU_THERMAL=y \
872 CONFIG_THERMAL_DEFAULT_GOV_STEP_WISE=y \
873 CONFIG_THERMAL_DEFAULT_GOV_FAIR_SHARE=n \
874 CONFIG_THERMAL_DEFAULT_GOV_USER_SPACE=n \
875 CONFIG_THERMAL_GOV_FAIR_SHARE=n \
876 CONFIG_THERMAL_GOV_STEP_WISE=y \
877 CONFIG_THERMAL_GOV_USER_SPACE=n \
878 CONFIG_THERMAL_HWMON=y \
879 CONFIG_THERMAL_EMULATION=n
880 FILES:=$(LINUX_DIR)/drivers/thermal/thermal_sys.ko
881 AUTOLOAD:=$(call AutoProbe,thermal_sys)
884 define KernelPackage/thermal/description
885 Generic Thermal Sysfs driver offers a generic mechanism for thermal
886 management. Usually it's made up of one or more thermal zone and cooling
890 $(eval $(call KernelPackage,thermal))
893 define KernelPackage/gpio-beeper
894 SUBMENU:=$(OTHER_MENU)
895 TITLE:=GPIO beeper support
896 DEPENDS:=+kmod-input-core
898 CONFIG_INPUT_MISC=y \
899 CONFIG_INPUT_GPIO_BEEPER
901 $(LINUX_DIR)/drivers/input/misc/gpio-beeper.ko
902 AUTOLOAD:=$(call AutoLoad,50,gpio-beeper)
905 define KernelPackage/gpio-beeper/description
906 This enables playing beeps through an GPIO-connected buzzer
909 $(eval $(call KernelPackage,gpio-beeper))
912 define KernelPackage/echo
913 SUBMENU:=$(OTHER_MENU)
914 TITLE:=Line Echo Canceller
916 FILES:=$(LINUX_DIR)/drivers/misc/echo/echo.ko
917 AUTOLOAD:=$(call AutoLoad,50,echo)
920 define KernelPackage/echo/description
921 This driver provides line echo cancelling support for mISDN and
925 $(eval $(call KernelPackage,echo))
928 define KernelPackage/bmp085
929 SUBMENU:=$(OTHER_MENU)
930 TITLE:=BMP085/BMP18x pressure sensor
931 DEPENDS:= +kmod-regmap @!LINUX_3_18 @!LINUX_4_1
932 KCONFIG:= CONFIG_BMP085
933 FILES:= $(LINUX_DIR)/drivers/misc/bmp085.ko
936 define KernelPackage/bmp085/description
937 This driver adds support for Bosch Sensortec's digital pressure
938 sensors BMP085 and BMP18x.
941 $(eval $(call KernelPackage,bmp085))
944 define KernelPackage/bmp085-i2c
945 SUBMENU:=$(OTHER_MENU)
946 TITLE:=BMP085/BMP18x pressure sensor I2C
947 DEPENDS:= +kmod-bmp085
948 KCONFIG:= CONFIG_BMP085_I2C
949 FILES:= $(LINUX_DIR)/drivers/misc/bmp085-i2c.ko
950 AUTOLOAD:=$(call AutoProbe,bmp085-i2c)
952 define KernelPackage/bmp085-i2c/description
953 This driver adds support for Bosch Sensortec's digital pressure
954 sensor connected via I2C.
957 $(eval $(call KernelPackage,bmp085-i2c))
960 define KernelPackage/bmp085-spi
961 SUBMENU:=$(OTHER_MENU)
962 TITLE:=BMP085/BMP18x pressure sensor SPI
963 DEPENDS:= +kmod-bmp085
964 KCONFIG:= CONFIG_BMP085_SPI
965 FILES:= $(LINUX_DIR)/drivers/misc/bmp085-spi.ko
966 AUTOLOAD:=$(call AutoProbe,bmp085-spi)
968 define KernelPackage/bmp085-spi/description
969 This driver adds support for Bosch Sensortec's digital pressure
970 sensor connected via SPI.
973 $(eval $(call KernelPackage,bmp085-spi))