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 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||TARGET_omap35xx)
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/wdt-orion
502 SUBMENU:=$(OTHER_MENU)
503 TITLE:=Marvell Orion Watchdog timer
504 DEPENDS:=@TARGET_orion||TARGET_kirkwood
505 KCONFIG:=CONFIG_ORION_WATCHDOG
506 FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/orion_wdt.ko
507 AUTOLOAD:=$(call AutoLoad,50,orion_wdt,1)
510 define KernelPackage/wdt-orion/description
511 Kernel module for Marvell Orion, Kirkwood and Armada XP/370 watchdog timer
514 $(eval $(call KernelPackage,wdt-orion))
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 \
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-ds1374
536 SUBMENU:=$(OTHER_MENU)
537 TITLE:=Dallas/Maxim DS1374 RTC support
538 DEPENDS:=@RTC_SUPPORT +kmod-i2c-core
539 KCONFIG:=CONFIG_RTC_DRV_DS1374 \
540 CONFIG_RTC_DRV_DS1374_WDT=n \
542 FILES:=$(LINUX_DIR)/drivers/rtc/rtc-ds1374.ko
543 AUTOLOAD:=$(call AutoProbe,rtc-ds1374)
546 define KernelPackage/rtc-ds1374/description
547 Kernel module for Dallas/Maxim DS1374.
550 $(eval $(call KernelPackage,rtc-ds1374))
553 define KernelPackage/rtc-ds1672
554 SUBMENU:=$(OTHER_MENU)
555 TITLE:=Dallas/Maxim DS1672 RTC support
556 DEPENDS:=@RTC_SUPPORT +kmod-i2c-core
557 KCONFIG:=CONFIG_RTC_DRV_DS1672 \
559 FILES:=$(LINUX_DIR)/drivers/rtc/rtc-ds1672.ko
560 AUTOLOAD:=$(call AutoProbe,rtc-ds1672)
563 define KernelPackage/rtc-ds1672/description
564 Kernel module for Dallas/Maxim DS1672 RTC.
567 $(eval $(call KernelPackage,rtc-ds1672))
570 define KernelPackage/rtc-isl1208
571 SUBMENU:=$(OTHER_MENU)
572 TITLE:=Intersil ISL1208 RTC support
573 DEPENDS:=@RTC_SUPPORT +kmod-i2c-core
574 KCONFIG:=CONFIG_RTC_DRV_ISL1208 \
576 FILES:=$(LINUX_DIR)/drivers/rtc/rtc-isl1208.ko
577 AUTOLOAD:=$(call AutoProbe,rtc-isl1208)
580 define KernelPackage/rtc-isl1208/description
581 Kernel module for Intersil ISL1208 RTC.
584 $(eval $(call KernelPackage,rtc-isl1208))
587 define KernelPackage/rtc-marvell
588 SUBMENU:=$(OTHER_MENU)
589 TITLE:=Marvell SoC built-in RTC support
590 DEPENDS:=@RTC_SUPPORT @TARGET_kirkwood||TARGET_orion
591 KCONFIG:=CONFIG_RTC_DRV_MV \
593 FILES:=$(LINUX_DIR)/drivers/rtc/rtc-mv.ko
594 AUTOLOAD:=$(call AutoProbe,rtc-mv)
597 define KernelPackage/rtc-marvell/description
598 Kernel module for Marvell SoC built-in RTC.
601 $(eval $(call KernelPackage,rtc-marvell))
604 define KernelPackage/rtc-pcf8563
605 SUBMENU:=$(OTHER_MENU)
606 TITLE:=Philips PCF8563/Epson RTC8564 RTC support
607 DEPENDS:=@RTC_SUPPORT +kmod-i2c-core
608 KCONFIG:=CONFIG_RTC_DRV_PCF8563 \
610 FILES:=$(LINUX_DIR)/drivers/rtc/rtc-pcf8563.ko
611 AUTOLOAD:=$(call AutoProbe,rtc-pcf8563)
614 define KernelPackage/rtc-pcf8563/description
615 Kernel module for Philips PCF8563 RTC chip.
616 The Epson RTC8564 should work as well.
619 $(eval $(call KernelPackage,rtc-pcf8563))
622 define KernelPackage/rtc-pcf2123
623 SUBMENU:=$(OTHER_MENU)
624 TITLE:=Philips PCF2123 RTC support
625 DEPENDS:=@RTC_SUPPORT
626 KCONFIG:=CONFIG_RTC_DRV_PCF2123 \
628 FILES:=$(LINUX_DIR)/drivers/rtc/rtc-pcf2123.ko
629 AUTOLOAD:=$(call AutoProbe,rtc-pcf2123)
632 define KernelPackage/rtc-pcf2123/description
633 Kernel module for Philips PCF2123 RTC chip
636 $(eval $(call KernelPackage,rtc-pcf2123))
638 define KernelPackage/rtc-pt7c4338
639 SUBMENU:=$(OTHER_MENU)
640 TITLE:=Pericom PT7C4338 RTC support
641 DEPENDS:=@RTC_SUPPORT +kmod-i2c-core
642 KCONFIG:=CONFIG_RTC_DRV_PT7C4338 \
644 FILES:=$(LINUX_DIR)/drivers/rtc/rtc-pt7c4338.ko
645 AUTOLOAD:=$(call AutoProbe,rtc-pt7c4338)
648 define KernelPackage/rtc-pt7c4338/description
649 Kernel module for Pericom PT7C4338 i2c RTC chip
652 $(eval $(call KernelPackage,rtc-pt7c4338))
654 define KernelPackage/rtc-snvs
655 SUBMENU:=$(OTHER_MENU)
656 TITLE:=Freescale SNVS RTC support
657 DEPENDS:=@TARGET_imx6 @RTC_SUPPORT
658 KCONFIG:=CONFIG_RTC_DRV_SNVS \
660 FILES:=$(LINUX_DIR)/drivers/rtc/rtc-snvs.ko
661 AUTOLOAD:=$(call AutoLoad,50,rtc-snvs,1)
664 define KernelPackage/rtc-snvs/description
665 Kernel module for Freescale SNVS RTC on chip module
668 $(eval $(call KernelPackage,rtc-snvs))
670 define KernelPackage/rtc-rs5c372a
671 SUBMENU:=$(OTHER_MENU)
672 TITLE:=Ricoh R2025S/D, RS5C372A/B, RV5C386, RV5C387A
673 DEPENDS:=@RTC_SUPPORT +kmod-i2c-core
674 KCONFIG:=CONFIG_RTC_DRV_RS5C372 \
676 FILES:=$(LINUX_DIR)/drivers/rtc/rtc-rs5c372.ko
677 AUTOLOAD:=$(call AutoLoad,50,rtc-rs5c372,1)
680 define KernelPackage/rtc-rs5c372a/description
681 Kernel module for Ricoh R2025S/D, RS5C372A/B, RV5C386, RV5C387A RTC on chip module
684 $(eval $(call KernelPackage,rtc-rs5c372a))
687 define KernelPackage/mtdtests
688 SUBMENU:=$(OTHER_MENU)
689 TITLE:=MTD subsystem tests
690 KCONFIG:=CONFIG_MTD_TESTS
692 $(LINUX_DIR)/drivers/mtd/tests/mtd_nandecctest.ko \
693 $(LINUX_DIR)/drivers/mtd/tests/mtd_oobtest.ko \
694 $(LINUX_DIR)/drivers/mtd/tests/mtd_pagetest.ko \
695 $(LINUX_DIR)/drivers/mtd/tests/mtd_readtest.ko \
696 $(LINUX_DIR)/drivers/mtd/tests/mtd_speedtest.ko \
697 $(LINUX_DIR)/drivers/mtd/tests/mtd_stresstest.ko \
698 $(LINUX_DIR)/drivers/mtd/tests/mtd_subpagetest.ko \
699 $(LINUX_DIR)/drivers/mtd/tests/mtd_torturetest.ko
702 define KernelPackage/mtdtests/description
703 Kernel modules for MTD subsystem/driver testing
706 $(eval $(call KernelPackage,mtdtests))
709 define KernelPackage/serial-8250
710 SUBMENU:=$(OTHER_MENU)
712 KCONFIG:= CONFIG_SERIAL_8250 \
713 CONFIG_SERIAL_8250_NR_UARTS=16 \
714 CONFIG_SERIAL_8250_RUNTIME_UARTS=16 \
715 CONFIG_SERIAL_8250_EXTENDED=y \
716 CONFIG_SERIAL_8250_MANY_PORTS=y \
717 CONFIG_SERIAL_8250_SHARE_IRQ=y \
718 CONFIG_SERIAL_8250_DETECT_IRQ=n \
719 CONFIG_SERIAL_8250_RSA=n
721 $(LINUX_DIR)/drivers/tty/serial/8250/8250.ko \
722 $(LINUX_DIR)/drivers/tty/serial/8250/8250_base.ko@ge4.4
725 define KernelPackage/serial-8250/description
726 Kernel module for 8250 UART based serial ports
729 $(eval $(call KernelPackage,serial-8250))
732 define KernelPackage/regmap
733 SUBMENU:=$(OTHER_MENU)
734 TITLE:=Generic register map support
735 DEPENDS:=+kmod-lib-lzo +kmod-i2c-core
736 KCONFIG:=CONFIG_REGMAP \
742 $(LINUX_DIR)/drivers/base/regmap/regmap-core.ko \
743 $(LINUX_DIR)/drivers/base/regmap/regmap-i2c.ko \
744 $(LINUX_DIR)/drivers/base/regmap/regmap-mmio.ko \
745 $(if $(CONFIG_SPI),$(LINUX_DIR)/drivers/base/regmap/regmap-spi.ko)
746 AUTOLOAD:=$(call AutoLoad,21,regmap-core regmap-i2c regmap-mmio regmap-spi)
749 define KernelPackage/regmap/description
750 Generic register map support
753 $(eval $(call KernelPackage,regmap))
755 define KernelPackage/ikconfig
756 SUBMENU:=$(OTHER_MENU)
757 TITLE:=Kernel configuration via /proc/config.gz
758 KCONFIG:=CONFIG_IKCONFIG \
759 CONFIG_IKCONFIG_PROC=y
760 FILES:=$(LINUX_DIR)/kernel/configs.ko
761 AUTOLOAD:=$(call AutoLoad,70,configs)
764 define KernelPackage/ikconfig/description
765 Kernel configuration via /proc/config.gz
768 $(eval $(call KernelPackage,ikconfig))
771 define KernelPackage/zram
772 SUBMENU:=$(OTHER_MENU)
774 DEPENDS:=+kmod-lib-lzo +kmod-lib-lz4
778 CONFIG_ZRAM_DEBUG=n \
779 CONFIG_PGTABLE_MAPPING=n \
780 CONFIG_ZSMALLOC_STAT=n \
781 CONFIG_ZRAM_LZ4_COMPRESS=y
783 $(LINUX_DIR)/mm/zsmalloc.ko \
784 $(LINUX_DIR)/drivers/block/zram/zram.ko
785 AUTOLOAD:=$(call AutoLoad,20,zsmalloc zram)
788 define KernelPackage/zram/description
789 Compressed RAM block device support
792 $(eval $(call KernelPackage,zram))
795 define KernelPackage/mvsdio
796 SUBMENU:=$(OTHER_MENU)
797 TITLE:=Marvell SDIO support
798 DEPENDS:=@TARGET_orion||TARGET_kirkwood +kmod-mmc
799 KCONFIG:=CONFIG_MMC_MVSDIO
800 FILES:=$(LINUX_DIR)/drivers/mmc/host/mvsdio.ko
801 AUTOLOAD:=$(call AutoProbe,mvsdio)
804 define KernelPackage/mvsdio/description
805 Kernel support for the Marvell SDIO controller
808 $(eval $(call KernelPackage,mvsdio))
811 define KernelPackage/pps
812 SUBMENU:=$(OTHER_MENU)
815 FILES:=$(LINUX_DIR)/drivers/pps/pps_core.ko
816 AUTOLOAD:=$(call AutoLoad,17,pps_core,1)
819 define KernelPackage/pps/description
820 PPS (Pulse Per Second) is a special pulse provided by some GPS
821 antennae. Userland can use it to get a high-precision time
825 $(eval $(call KernelPackage,pps))
828 define KernelPackage/pps-gpio
829 SUBMENU:=$(OTHER_MENU)
830 TITLE:=PPS client using GPIO
832 KCONFIG:=CONFIG_PPS_CLIENT_GPIO
833 FILES:=$(LINUX_DIR)/drivers/pps/clients/pps-gpio.ko
834 AUTOLOAD:=$(call AutoLoad,18,pps-gpio,1)
837 define KernelPackage/pps-gpio/description
838 Support for a PPS source using GPIO. To be useful you must
839 also register a platform device specifying the GPIO pin and
840 other options, usually in your board setup.
843 $(eval $(call KernelPackage,pps-gpio))
846 define KernelPackage/pps-ldisc
847 SUBMENU:=$(OTHER_MENU)
848 TITLE:=PPS line discipline
850 KCONFIG:=CONFIG_PPS_CLIENT_LDISC
851 FILES:=$(LINUX_DIR)/drivers/pps/clients/pps-ldisc.ko
852 AUTOLOAD:=$(call AutoLoad,18,pps-ldisc,1)
855 define KernelPackage/pps-ldisc/description
856 Support for a PPS source connected with the CD (Carrier
857 Detect) pin of your serial port.
860 $(eval $(call KernelPackage,pps-ldisc))
863 define KernelPackage/ptp
864 SUBMENU:=$(OTHER_MENU)
865 TITLE:=PTP clock support
868 CONFIG_PTP_1588_CLOCK \
869 CONFIG_NET_PTP_CLASSIFY=y
870 FILES:=$(LINUX_DIR)/drivers/ptp/ptp.ko
871 AUTOLOAD:=$(call AutoLoad,18,ptp,1)
874 define KernelPackage/ptp/description
875 The IEEE 1588 standard defines a method to precisely
876 synchronize distributed clocks over Ethernet networks.
879 $(eval $(call KernelPackage,ptp))
882 define KernelPackage/ptp-gianfar
883 SUBMENU:=$(OTHER_MENU)
884 TITLE:=Freescale Gianfar PTP support
885 DEPENDS:=@TARGET_mpc85xx +kmod-gianfar +kmod-ptp
886 KCONFIG:=CONFIG_PTP_1588_CLOCK_GIANFAR
887 FILES:=$(LINUX_DIR)/drivers/net/ethernet/freescale/gianfar_ptp.ko
888 AUTOLOAD:=$(call AutoProbe,gianfar_ptp)
891 define KernelPackage/ptp-gianfar/description
892 Kernel module for IEEE 1588 support for Freescale
893 Gianfar Ethernet drivers
896 $(eval $(call KernelPackage,ptp-gianfar))
899 define KernelPackage/random-core
900 SUBMENU:=$(OTHER_MENU)
901 TITLE:=Hardware Random Number Generator Core support
902 KCONFIG:=CONFIG_HW_RANDOM
903 FILES:=$(LINUX_DIR)/drivers/char/hw_random/rng-core.ko
906 define KernelPackage/random-core/description
907 Kernel module for the HW random number generator core infrastructure
910 $(eval $(call KernelPackage,random-core))
912 define KernelPackage/random-omap
913 SUBMENU:=$(OTHER_MENU)
914 TITLE:=Hardware Random Number Generator OMAP support
915 KCONFIG:=CONFIG_HW_RANDOM_OMAP
916 FILES:=$(LINUX_DIR)/drivers/char/hw_random/omap-rng.ko
917 DEPENDS:=@(TARGET_omap24xx||TARGET_omap) +kmod-random-core
918 AUTOLOAD:=$(call AutoProbe,random-omap)
921 define KernelPackage/random-omap/description
922 Kernel module for the OMAP Random Number Generator
923 found on OMAP16xx, OMAP2/3/4/5 and AM33xx/AM43xx multimedia processors.
926 $(eval $(call KernelPackage,random-omap))
928 define KernelPackage/thermal
929 SUBMENU:=$(OTHER_MENU)
930 TITLE:=Generic Thermal sysfs driver
931 DEPENDS:=+kmod-hwmon-core
935 CONFIG_THERMAL_OF=y \
936 CONFIG_CPU_THERMAL=y \
937 CONFIG_THERMAL_DEFAULT_GOV_STEP_WISE=y \
938 CONFIG_THERMAL_DEFAULT_GOV_FAIR_SHARE=n \
939 CONFIG_THERMAL_DEFAULT_GOV_USER_SPACE=n \
940 CONFIG_THERMAL_GOV_FAIR_SHARE=n \
941 CONFIG_THERMAL_GOV_STEP_WISE=y \
942 CONFIG_THERMAL_GOV_USER_SPACE=n \
943 CONFIG_THERMAL_HWMON=y \
944 CONFIG_THERMAL_EMULATION=n
945 FILES:=$(LINUX_DIR)/drivers/thermal/thermal_sys.ko
946 AUTOLOAD:=$(call AutoProbe,thermal_sys)
949 define KernelPackage/thermal/description
950 Generic Thermal Sysfs driver offers a generic mechanism for thermal
951 management. Usually it's made up of one or more thermal zone and cooling
955 $(eval $(call KernelPackage,thermal))
958 define KernelPackage/thermal-imx
959 SUBMENU:=$(OTHER_MENU)
960 TITLE:=Temperature sensor driver for Freescale i.MX SoCs
961 DEPENDS:=@TARGET_imx6 +kmod-thermal
964 FILES:=$(LINUX_DIR)/drivers/thermal/imx_thermal.ko
965 AUTOLOAD:=$(call AutoProbe,imx_thermal)
968 define KernelPackage/thermal-imx/description
969 Support for Temperature Monitor (TEMPMON) found on Freescale i.MX SoCs.
970 It supports one critical trip point and one passive trip point. The
971 cpufreq is used as the cooling device to throttle CPUs when the
972 passive trip is crossed.
975 $(eval $(call KernelPackage,thermal-imx))
978 define KernelPackage/thermal-kirkwood
979 SUBMENU:=$(OTHER_MENU)
980 TITLE:=Temperature sensor on Marvell Kirkwood SoCs
981 DEPENDS:=@TARGET_kirkwood +kmod-thermal
982 KCONFIG:=CONFIG_KIRKWOOD_THERMAL
983 FILES:=$(LINUX_DIR)/drivers/thermal/kirkwood_thermal.ko
984 AUTOLOAD:=$(call AutoProbe,kirkwood_thermal)
987 define KernelPackage/thermal-kirkwood/description
988 Support for the Kirkwood thermal sensor driver into the Linux thermal
989 framework. Only kirkwood 88F6282 and 88F6283 have this sensor.
992 $(eval $(call KernelPackage,thermal-kirkwood))
995 define KernelPackage/gpio-beeper
996 SUBMENU:=$(OTHER_MENU)
997 TITLE:=GPIO beeper support
998 DEPENDS:=+kmod-input-core
1000 CONFIG_INPUT_MISC=y \
1001 CONFIG_INPUT_GPIO_BEEPER
1003 $(LINUX_DIR)/drivers/input/misc/gpio-beeper.ko
1004 AUTOLOAD:=$(call AutoLoad,50,gpio-beeper)
1007 define KernelPackage/gpio-beeper/description
1008 This enables playing beeps through an GPIO-connected buzzer
1011 $(eval $(call KernelPackage,gpio-beeper))
1014 define KernelPackage/echo
1015 SUBMENU:=$(OTHER_MENU)
1016 TITLE:=Line Echo Canceller
1017 KCONFIG:=CONFIG_ECHO
1018 FILES:=$(LINUX_DIR)/drivers/misc/echo/echo.ko
1019 AUTOLOAD:=$(call AutoLoad,50,echo)
1022 define KernelPackage/echo/description
1023 This driver provides line echo cancelling support for mISDN and
1027 $(eval $(call KernelPackage,echo))
1030 define KernelPackage/bmp085
1031 SUBMENU:=$(OTHER_MENU)
1032 TITLE:=BMP085/BMP18x pressure sensor
1033 DEPENDS:= +kmod-regmap @!LINUX_3_18 @!LINUX_4_1
1034 KCONFIG:= CONFIG_BMP085
1035 FILES:= $(LINUX_DIR)/drivers/misc/bmp085.ko
1038 define KernelPackage/bmp085/description
1039 This driver adds support for Bosch Sensortec's digital pressure
1040 sensors BMP085 and BMP18x.
1043 $(eval $(call KernelPackage,bmp085))
1046 define KernelPackage/bmp085-i2c
1047 SUBMENU:=$(OTHER_MENU)
1048 TITLE:=BMP085/BMP18x pressure sensor I2C
1049 DEPENDS:= +kmod-bmp085
1050 KCONFIG:= CONFIG_BMP085_I2C
1051 FILES:= $(LINUX_DIR)/drivers/misc/bmp085-i2c.ko
1052 AUTOLOAD:=$(call AutoProbe,bmp085-i2c)
1054 define KernelPackage/bmp085-i2c/description
1055 This driver adds support for Bosch Sensortec's digital pressure
1056 sensor connected via I2C.
1059 $(eval $(call KernelPackage,bmp085-i2c))
1062 define KernelPackage/bmp085-spi
1063 SUBMENU:=$(OTHER_MENU)
1064 TITLE:=BMP085/BMP18x pressure sensor SPI
1065 DEPENDS:= +kmod-bmp085
1066 KCONFIG:= CONFIG_BMP085_SPI
1067 FILES:= $(LINUX_DIR)/drivers/misc/bmp085-spi.ko
1068 AUTOLOAD:=$(call AutoProbe,bmp085-spi)
1070 define KernelPackage/bmp085-spi/description
1071 This driver adds support for Bosch Sensortec's digital pressure
1072 sensor connected via SPI.
1075 $(eval $(call KernelPackage,bmp085-spi))