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 TITLE:=DMA shared buffer support
136 KCONFIG:=CONFIG_DMA_SHARED_BUFFER
137 FILES:=$(LINUX_DIR)/drivers/dma-buf/dma-shared-buffer.ko
138 AUTOLOAD:=$(call AutoLoad,20,dma-shared-buffer)
140 $(eval $(call KernelPackage,dma-buf))
143 define KernelPackage/eeprom-93cx6
144 SUBMENU:=$(OTHER_MENU)
145 TITLE:=EEPROM 93CX6 support
146 KCONFIG:=CONFIG_EEPROM_93CX6
147 FILES:=$(LINUX_DIR)/drivers/misc/eeprom/eeprom_93cx6.ko
148 AUTOLOAD:=$(call AutoLoad,20,eeprom_93cx6)
151 define KernelPackage/eeprom-93cx6/description
152 Kernel module for EEPROM 93CX6 support
155 $(eval $(call KernelPackage,eeprom-93cx6))
158 define KernelPackage/eeprom-at24
159 SUBMENU:=$(OTHER_MENU)
160 TITLE:=EEPROM AT24 support
161 KCONFIG:=CONFIG_EEPROM_AT24
162 DEPENDS:=+kmod-i2c-core
163 FILES:=$(LINUX_DIR)/drivers/misc/eeprom/at24.ko
164 AUTOLOAD:=$(call AutoProbe,at24)
167 define KernelPackage/eeprom-at24/description
168 Kernel module for most I2C EEPROMs
171 $(eval $(call KernelPackage,eeprom-at24))
174 define KernelPackage/eeprom-at25
175 SUBMENU:=$(OTHER_MENU)
176 TITLE:=EEPROM AT25 support
177 KCONFIG:=CONFIG_EEPROM_AT25
178 FILES:=$(LINUX_DIR)/drivers/misc/eeprom/at25.ko
179 AUTOLOAD:=$(call AutoProbe,at25)
182 define KernelPackage/eeprom-at25/description
183 Kernel module for most SPI EEPROMs
186 $(eval $(call KernelPackage,eeprom-at25))
189 define KernelPackage/gpio-dev
190 SUBMENU:=$(OTHER_MENU)
191 TITLE:=Generic GPIO char device support
192 DEPENDS:=@GPIO_SUPPORT
193 KCONFIG:=CONFIG_GPIO_DEVICE
194 FILES:=$(LINUX_DIR)/drivers/char/gpio_dev.ko
195 AUTOLOAD:=$(call AutoLoad,40,gpio_dev)
198 define KernelPackage/gpio-dev/description
199 Kernel module to allows control of GPIO pins using a character device.
202 $(eval $(call KernelPackage,gpio-dev))
205 define KernelPackage/gpio-mcp23s08
206 SUBMENU:=$(OTHER_MENU)
207 TITLE:=Microchip MCP23xxx I/O expander
208 DEPENDS:=@GPIO_SUPPORT +PACKAGE_kmod-i2c-core:kmod-i2c-core
209 KCONFIG:=CONFIG_GPIO_MCP23S08
210 FILES:=$(LINUX_DIR)/drivers/gpio/gpio-mcp23s08.ko
211 AUTOLOAD:=$(call AutoLoad,40,gpio-mcp23s08)
214 define KernelPackage/gpio-mcp23s08/description
215 Kernel module for Microchip MCP23xxx SPI/I2C I/O expander
218 $(eval $(call KernelPackage,gpio-mcp23s08))
221 define KernelPackage/gpio-nxp-74hc164
222 SUBMENU:=$(OTHER_MENU)
223 TITLE:=NXP 74HC164 GPIO expander support
224 KCONFIG:=CONFIG_GPIO_NXP_74HC164
225 FILES:=$(LINUX_DIR)/drivers/gpio/nxp_74hc164.ko
226 AUTOLOAD:=$(call AutoProbe,nxp_74hc164)
229 define KernelPackage/gpio-nxp-74hc164/description
230 Kernel module for NXP 74HC164 GPIO expander
233 $(eval $(call KernelPackage,gpio-nxp-74hc164))
235 define KernelPackage/gpio-pca953x
236 SUBMENU:=$(OTHER_MENU)
237 DEPENDS:=@GPIO_SUPPORT +kmod-i2c-core
238 TITLE:=PCA95xx, TCA64xx, and MAX7310 I/O ports
239 KCONFIG:=CONFIG_GPIO_PCA953X
240 FILES:=$(LINUX_DIR)/drivers/gpio/gpio-pca953x.ko
241 AUTOLOAD:=$(call AutoLoad,55,gpio-pca953x)
244 define KernelPackage/gpio-pca953x/description
245 Kernel module for MAX731{0,2,3,5}, PCA6107, PCA953{4-9}, PCA955{4-7},
246 PCA957{4,5} and TCA64{08,16} I2C GPIO expanders
249 $(eval $(call KernelPackage,gpio-pca953x))
251 define KernelPackage/gpio-pcf857x
252 SUBMENU:=$(OTHER_MENU)
253 DEPENDS:=@GPIO_SUPPORT +kmod-i2c-core
254 TITLE:=PCX857x, PCA967x and MAX732X I2C GPIO expanders
255 KCONFIG:=CONFIG_GPIO_PCF857X
256 FILES:=$(LINUX_DIR)/drivers/gpio/gpio-pcf857x.ko
257 AUTOLOAD:=$(call AutoLoad,55,gpio-pcf857x)
260 define KernelPackage/gpio-pcf857x/description
261 Kernel module for PCF857x, PCA{85,96}7x, and MAX732[89] I2C GPIO expanders
264 $(eval $(call KernelPackage,gpio-pcf857x))
266 define KernelPackage/iio-core
267 SUBMENU:=$(OTHER_MENU)
268 TITLE:=Industrial IO core
271 CONFIG_IIO_BUFFER=y \
272 CONFIG_IIO_KFIFO_BUF \
273 CONFIG_IIO_TRIGGER=y \
274 CONFIG_IIO_TRIGGERED_BUFFER
276 $(LINUX_DIR)/drivers/iio/industrialio.ko \
277 $(if $(CONFIG_IIO_TRIGGERED_BUFFER),$(LINUX_DIR)/drivers/iio/industrialio-triggered-buffer.ko@lt4.4) \
278 $(if $(CONFIG_IIO_TRIGGERED_BUFFER),$(LINUX_DIR)/drivers/iio/buffer/industrialio-triggered-buffer.ko@ge4.4) \
279 $(LINUX_DIR)/drivers/iio/kfifo_buf.ko@lt4.4 \
280 $(LINUX_DIR)/drivers/iio/buffer/kfifo_buf.ko@ge4.4
281 AUTOLOAD:=$(call AutoLoad,55,industrialio kfifo_buf industrialio-triggered-buffer)
284 define KernelPackage/iio-core/description
285 The industrial I/O subsystem provides a unified framework for
286 drivers for many different types of embedded sensors using a
287 number of different physical interfaces (i2c, spi, etc)
290 $(eval $(call KernelPackage,iio-core))
293 define KernelPackage/iio-ad799x
294 SUBMENU:=$(OTHER_MENU)
295 DEPENDS:=kmod-i2c-core kmod-iio-core
296 TITLE:=Analog Devices AD799x ADC driver
298 CONFIG_AD799X_RING_BUFFER=y \
300 FILES:=$(LINUX_DIR)/drivers/iio/adc/ad799x.ko
301 AUTOLOAD:=$(call AutoLoad,56,ad799x)
304 define KernelPackage/iio-ad799x/description
305 support for Analog Devices:
306 ad7991, ad7995, ad7999, ad7992, ad7993, ad7994, ad7997, ad7998
307 i2c analog to digital converters (ADC).
310 $(eval $(call KernelPackage,iio-ad799x))
313 define KernelPackage/iio-dht11
314 SUBMENU:=$(OTHER_MENU)
315 DEPENDS:=kmod-iio-core @GPIO_SUPPORT @USES_DEVICETREE
316 TITLE:=DHT11 (and compatible) humidity and temperature sensors
319 FILES:=$(LINUX_DIR)/drivers/iio/humidity/dht11.ko
320 AUTOLOAD:=$(call AutoLoad,56,dht11)
323 define KernelPackage/iio-dht11/description
324 support for DHT11 and DHT22 digitial humidity and temperature sensors
325 attached at GPIO lines. You will need a custom device tree file to
326 specify the GPIO line to use.
329 $(eval $(call KernelPackage,iio-dht11))
332 define KernelPackage/lp
333 SUBMENU:=$(OTHER_MENU)
334 TITLE:=Parallel port and line printer support
340 $(LINUX_DIR)/drivers/parport/parport.ko \
341 $(LINUX_DIR)/drivers/char/lp.ko \
342 $(LINUX_DIR)/drivers/char/ppdev.ko
343 AUTOLOAD:=$(call AutoLoad,50,parport lp ppdev)
346 $(eval $(call KernelPackage,lp))
349 define KernelPackage/mmc
350 SUBMENU:=$(OTHER_MENU)
351 TITLE:=MMC/SD Card Support
356 CONFIG_MMC_UNSAFE_RESUME=n \
357 CONFIG_MMC_BLOCK_BOUNCE=y \
358 CONFIG_MMC_TIFM_SD=n \
362 $(LINUX_DIR)/drivers/mmc/core/mmc_core.ko \
363 $(LINUX_DIR)/drivers/mmc/card/mmc_block.ko
364 AUTOLOAD:=$(call AutoProbe,mmc_core mmc_block,1)
367 define KernelPackage/mmc/description
368 Kernel support for MMC/SD cards
371 $(eval $(call KernelPackage,mmc))
374 define KernelPackage/sdhci
375 SUBMENU:=$(OTHER_MENU)
376 TITLE:=Secure Digital Host Controller Interface support
380 CONFIG_MMC_SDHCI_PLTFM \
381 CONFIG_MMC_SDHCI_PCI=n
383 $(LINUX_DIR)/drivers/mmc/host/sdhci.ko \
384 $(LINUX_DIR)/drivers/mmc/host/sdhci-pltfm.ko
386 AUTOLOAD:=$(call AutoProbe,sdhci sdhci-pltfm,1)
389 define KernelPackage/sdhci/description
390 Kernel support for SDHCI Hosts
393 $(eval $(call KernelPackage,sdhci))
396 define KernelPackage/rfkill
397 SUBMENU:=$(OTHER_MENU)
398 TITLE:=RF switch subsystem support
399 DEPENDS:=@USE_RFKILL +kmod-input-core
402 CONFIG_RFKILL_INPUT=y \
403 CONFIG_RFKILL_LEDS=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/booke-wdt
518 SUBMENU:=$(OTHER_MENU)
519 TITLE:=PowerPC Book-E Watchdog Timer
520 DEPENDS:=@(TARGET_mpc85xx||TARGET_ppc40x||TARGET_ppc44x)
521 KCONFIG:=CONFIG_BOOKE_WDT
522 FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/booke_wdt.ko
523 AUTOLOAD:=$(call AutoLoad,50,booke_wdt,1)
526 define KernelPackage/booke-wdt/description
527 Kernel module for PowerPC Book-E Watchdog Timer
530 $(eval $(call KernelPackage,booke-wdt))
533 define KernelPackage/rtc-ds1307
534 SUBMENU:=$(OTHER_MENU)
535 TITLE:=Dallas/Maxim DS1307 (and compatible) RTC support
536 DEPENDS:=@RTC_SUPPORT +kmod-i2c-core
537 KCONFIG:=CONFIG_RTC_DRV_DS1307 \
539 FILES:=$(LINUX_DIR)/drivers/rtc/rtc-ds1307.ko
540 AUTOLOAD:=$(call AutoProbe,rtc-ds1307)
543 define KernelPackage/rtc-ds1307/description
544 Kernel module for Dallas/Maxim DS1307/DS1337/DS1338/DS1340/DS1388/DS3231,
545 Epson RX-8025 and various other compatible RTC chips connected via I2C.
548 $(eval $(call KernelPackage,rtc-ds1307))
551 define KernelPackage/rtc-ds1672
552 SUBMENU:=$(OTHER_MENU)
553 TITLE:=Dallas/Maxim DS1672 RTC support
554 DEPENDS:=@RTC_SUPPORT +kmod-i2c-core
555 KCONFIG:=CONFIG_RTC_DRV_DS1672 \
557 FILES:=$(LINUX_DIR)/drivers/rtc/rtc-ds1672.ko
558 AUTOLOAD:=$(call AutoProbe,rtc-ds1672)
561 define KernelPackage/rtc-ds1672/description
562 Kernel module for Dallas/Maxim DS1672 RTC.
565 $(eval $(call KernelPackage,rtc-ds1672))
568 define KernelPackage/rtc-isl1208
569 SUBMENU:=$(OTHER_MENU)
570 TITLE:=Intersil ISL1208 RTC support
571 DEPENDS:=@RTC_SUPPORT +kmod-i2c-core
572 KCONFIG:=CONFIG_RTC_DRV_ISL1208 \
574 FILES:=$(LINUX_DIR)/drivers/rtc/rtc-isl1208.ko
575 AUTOLOAD:=$(call AutoProbe,rtc-isl1208)
578 define KernelPackage/rtc-isl1208/description
579 Kernel module for Intersil ISL1208 RTC.
582 $(eval $(call KernelPackage,rtc-isl1208))
585 define KernelPackage/rtc-marvell
586 SUBMENU:=$(OTHER_MENU)
587 TITLE:=Marvell SoC built-in RTC support
588 DEPENDS:=@RTC_SUPPORT @TARGET_kirkwood||TARGET_orion
589 KCONFIG:=CONFIG_RTC_DRV_MV \
591 FILES:=$(LINUX_DIR)/drivers/rtc/rtc-mv.ko
592 AUTOLOAD:=$(call AutoProbe,rtc-mv)
595 define KernelPackage/rtc-marvell/description
596 Kernel module for Marvell SoC built-in RTC.
599 $(eval $(call KernelPackage,rtc-marvell))
602 define KernelPackage/rtc-pcf8563
603 SUBMENU:=$(OTHER_MENU)
604 TITLE:=Philips PCF8563/Epson RTC8564 RTC support
605 DEPENDS:=@RTC_SUPPORT +kmod-i2c-core
606 KCONFIG:=CONFIG_RTC_DRV_PCF8563 \
608 FILES:=$(LINUX_DIR)/drivers/rtc/rtc-pcf8563.ko
609 AUTOLOAD:=$(call AutoProbe,rtc-pcf8563)
612 define KernelPackage/rtc-pcf8563/description
613 Kernel module for Philips PCF8563 RTC chip.
614 The Epson RTC8564 should work as well.
617 $(eval $(call KernelPackage,rtc-pcf8563))
620 define KernelPackage/rtc-pcf2123
621 SUBMENU:=$(OTHER_MENU)
622 TITLE:=Philips PCF2123 RTC support
623 DEPENDS:=@RTC_SUPPORT
624 KCONFIG:=CONFIG_RTC_DRV_PCF2123 \
626 FILES:=$(LINUX_DIR)/drivers/rtc/rtc-pcf2123.ko
627 AUTOLOAD:=$(call AutoProbe,rtc-pcf2123)
630 define KernelPackage/rtc-pcf2123/description
631 Kernel module for Philips PCF2123 RTC chip
634 $(eval $(call KernelPackage,rtc-pcf2123))
636 define KernelPackage/rtc-pt7c4338
637 SUBMENU:=$(OTHER_MENU)
638 TITLE:=Pericom PT7C4338 RTC support
639 DEPENDS:=@RTC_SUPPORT +kmod-i2c-core
640 KCONFIG:=CONFIG_RTC_DRV_PT7C4338 \
642 FILES:=$(LINUX_DIR)/drivers/rtc/rtc-pt7c4338.ko
643 AUTOLOAD:=$(call AutoProbe,rtc-pt7c4338)
646 define KernelPackage/rtc-pt7c4338/description
647 Kernel module for Pericom PT7C4338 i2c RTC chip
650 $(eval $(call KernelPackage,rtc-pt7c4338))
652 define KernelPackage/rtc-snvs
653 SUBMENU:=$(OTHER_MENU)
654 TITLE:=Freescale SNVS RTC support
655 DEPENDS:=@TARGET_imx6 @RTC_SUPPORT
656 KCONFIG:=CONFIG_RTC_DRV_SNVS \
658 FILES:=$(LINUX_DIR)/drivers/rtc/rtc-snvs.ko
659 AUTOLOAD:=$(call AutoLoad,50,rtc-snvs,1)
662 define KernelPackage/rtc-snvs/description
663 Kernel module for Freescale SNVS RTC on chip module
666 $(eval $(call KernelPackage,rtc-snvs))
669 define KernelPackage/mtdtests
670 SUBMENU:=$(OTHER_MENU)
671 TITLE:=MTD subsystem tests
672 KCONFIG:=CONFIG_MTD_TESTS
674 $(LINUX_DIR)/drivers/mtd/tests/mtd_nandecctest.ko \
675 $(LINUX_DIR)/drivers/mtd/tests/mtd_oobtest.ko \
676 $(LINUX_DIR)/drivers/mtd/tests/mtd_pagetest.ko \
677 $(LINUX_DIR)/drivers/mtd/tests/mtd_readtest.ko \
678 $(LINUX_DIR)/drivers/mtd/tests/mtd_speedtest.ko \
679 $(LINUX_DIR)/drivers/mtd/tests/mtd_stresstest.ko \
680 $(LINUX_DIR)/drivers/mtd/tests/mtd_subpagetest.ko \
681 $(LINUX_DIR)/drivers/mtd/tests/mtd_torturetest.ko
684 define KernelPackage/mtdtests/description
685 Kernel modules for MTD subsystem/driver testing
688 $(eval $(call KernelPackage,mtdtests))
691 define KernelPackage/serial-8250
692 SUBMENU:=$(OTHER_MENU)
694 KCONFIG:= CONFIG_SERIAL_8250 \
695 CONFIG_SERIAL_8250_NR_UARTS=16 \
696 CONFIG_SERIAL_8250_RUNTIME_UARTS=16 \
697 CONFIG_SERIAL_8250_EXTENDED=y \
698 CONFIG_SERIAL_8250_MANY_PORTS=y \
699 CONFIG_SERIAL_8250_SHARE_IRQ=y \
700 CONFIG_SERIAL_8250_DETECT_IRQ=n \
701 CONFIG_SERIAL_8250_RSA=n
703 $(LINUX_DIR)/drivers/tty/serial/8250/8250.ko \
704 $(LINUX_DIR)/drivers/tty/serial/8250/8250_base.ko@ge4.4
707 define KernelPackage/serial-8250/description
708 Kernel module for 8250 UART based serial ports
711 $(eval $(call KernelPackage,serial-8250))
714 define KernelPackage/regmap
715 SUBMENU:=$(OTHER_MENU)
716 TITLE:=Generic register map support
717 DEPENDS:=+kmod-lib-lzo +kmod-i2c-core
718 KCONFIG:=CONFIG_REGMAP \
724 $(LINUX_DIR)/drivers/base/regmap/regmap-core.ko \
725 $(LINUX_DIR)/drivers/base/regmap/regmap-i2c.ko \
726 $(LINUX_DIR)/drivers/base/regmap/regmap-mmio.ko \
727 $(if $(CONFIG_SPI),$(LINUX_DIR)/drivers/base/regmap/regmap-spi.ko)
728 AUTOLOAD:=$(call AutoLoad,21,regmap-core regmap-i2c regmap-mmio regmap-spi)
731 define KernelPackage/regmap/description
732 Generic register map support
735 $(eval $(call KernelPackage,regmap))
737 define KernelPackage/ikconfig
738 SUBMENU:=$(OTHER_MENU)
739 TITLE:=Kernel configuration via /proc/config.gz
740 KCONFIG:=CONFIG_IKCONFIG \
741 CONFIG_IKCONFIG_PROC=y
742 FILES:=$(LINUX_DIR)/kernel/configs.ko
743 AUTOLOAD:=$(call AutoLoad,70,configs)
746 define KernelPackage/ikconfig/description
747 Kernel configuration via /proc/config.gz
750 $(eval $(call KernelPackage,ikconfig))
753 define KernelPackage/zram
754 SUBMENU:=$(OTHER_MENU)
756 DEPENDS:=+kmod-lib-lzo +kmod-lib-lz4
760 CONFIG_ZRAM_DEBUG=n \
761 CONFIG_PGTABLE_MAPPING=n \
762 CONFIG_ZSMALLOC_STAT=n \
763 CONFIG_ZRAM_LZ4_COMPRESS=y
765 $(LINUX_DIR)/mm/zsmalloc.ko \
766 $(LINUX_DIR)/drivers/block/zram/zram.ko
767 AUTOLOAD:=$(call AutoLoad,20,zsmalloc zram)
770 define KernelPackage/zram/description
771 Compressed RAM block device support
774 $(eval $(call KernelPackage,zram))
777 define KernelPackage/mvsdio
778 SUBMENU:=$(OTHER_MENU)
779 TITLE:=Marvell SDIO support
780 DEPENDS:=@TARGET_orion||TARGET_kirkwood +kmod-mmc
781 KCONFIG:=CONFIG_MMC_MVSDIO
782 FILES:=$(LINUX_DIR)/drivers/mmc/host/mvsdio.ko
783 AUTOLOAD:=$(call AutoProbe,mvsdio)
786 define KernelPackage/mvsdio/description
787 Kernel support for the Marvell SDIO controller
790 $(eval $(call KernelPackage,mvsdio))
793 define KernelPackage/pps
794 SUBMENU:=$(OTHER_MENU)
797 FILES:=$(LINUX_DIR)/drivers/pps/pps_core.ko
798 AUTOLOAD:=$(call AutoLoad,17,pps_core,1)
801 define KernelPackage/pps/description
802 PPS (Pulse Per Second) is a special pulse provided by some GPS
803 antennae. Userland can use it to get a high-precision time
807 $(eval $(call KernelPackage,pps))
810 define KernelPackage/pps-gpio
811 SUBMENU:=$(OTHER_MENU)
812 TITLE:=PPS client using GPIO
814 KCONFIG:=CONFIG_PPS_CLIENT_GPIO
815 FILES:=$(LINUX_DIR)/drivers/pps/clients/pps-gpio.ko
816 AUTOLOAD:=$(call AutoLoad,18,pps-gpio,1)
819 define KernelPackage/pps-gpio/description
820 Support for a PPS source using GPIO. To be useful you must
821 also register a platform device specifying the GPIO pin and
822 other options, usually in your board setup.
825 $(eval $(call KernelPackage,pps-gpio))
828 define KernelPackage/pps-ldisc
829 SUBMENU:=$(OTHER_MENU)
830 TITLE:=PPS line discipline
832 KCONFIG:=CONFIG_PPS_CLIENT_LDISC
833 FILES:=$(LINUX_DIR)/drivers/pps/clients/pps-ldisc.ko
834 AUTOLOAD:=$(call AutoLoad,18,pps-ldisc,1)
837 define KernelPackage/pps-ldisc/description
838 Support for a PPS source connected with the CD (Carrier
839 Detect) pin of your serial port.
842 $(eval $(call KernelPackage,pps-ldisc))
845 define KernelPackage/ptp
846 SUBMENU:=$(OTHER_MENU)
847 TITLE:=PTP clock support
850 CONFIG_PTP_1588_CLOCK \
851 CONFIG_NET_PTP_CLASSIFY=y
852 FILES:=$(LINUX_DIR)/drivers/ptp/ptp.ko
853 AUTOLOAD:=$(call AutoLoad,18,ptp,1)
856 define KernelPackage/ptp/description
857 The IEEE 1588 standard defines a method to precisely
858 synchronize distributed clocks over Ethernet networks.
861 $(eval $(call KernelPackage,ptp))
864 define KernelPackage/ptp-gianfar
865 SUBMENU:=$(OTHER_MENU)
866 TITLE:=Freescale Gianfar PTP support
867 DEPENDS:=@TARGET_mpc85xx +kmod-gianfar +kmod-ptp
868 KCONFIG:=CONFIG_PTP_1588_CLOCK_GIANFAR
869 FILES:=$(LINUX_DIR)/drivers/net/ethernet/freescale/gianfar_ptp.ko
870 AUTOLOAD:=$(call AutoProbe,gianfar_ptp)
873 define KernelPackage/ptp-gianfar/description
874 Kernel module for IEEE 1588 support for Freescale
875 Gianfar Ethernet drivers
878 $(eval $(call KernelPackage,ptp-gianfar))
881 define KernelPackage/random-core
882 SUBMENU:=$(OTHER_MENU)
883 TITLE:=Hardware Random Number Generator Core support
884 KCONFIG:=CONFIG_HW_RANDOM
885 FILES:=$(LINUX_DIR)/drivers/char/hw_random/rng-core.ko
888 define KernelPackage/random-core/description
889 Kernel module for the HW random number generator core infrastructure
892 $(eval $(call KernelPackage,random-core))
894 define KernelPackage/random-omap
895 SUBMENU:=$(OTHER_MENU)
896 TITLE:=Hardware Random Number Generator OMAP support
897 KCONFIG:=CONFIG_HW_RANDOM_OMAP
898 FILES:=$(LINUX_DIR)/drivers/char/hw_random/omap-rng.ko
899 DEPENDS:=@(TARGET_omap24xx||TARGET_omap) +kmod-random-core
900 AUTOLOAD:=$(call AutoProbe,random-omap)
903 define KernelPackage/random-omap/description
904 Kernel module for the OMAP Random Number Generator
905 found on OMAP16xx, OMAP2/3/4/5 and AM33xx/AM43xx multimedia processors.
908 $(eval $(call KernelPackage,random-omap))
910 define KernelPackage/thermal
911 SUBMENU:=$(OTHER_MENU)
912 TITLE:=Generic Thermal sysfs driver
913 DEPENDS:=+kmod-hwmon-core
917 CONFIG_THERMAL_OF=y \
918 CONFIG_CPU_THERMAL=y \
919 CONFIG_THERMAL_DEFAULT_GOV_STEP_WISE=y \
920 CONFIG_THERMAL_DEFAULT_GOV_FAIR_SHARE=n \
921 CONFIG_THERMAL_DEFAULT_GOV_USER_SPACE=n \
922 CONFIG_THERMAL_GOV_FAIR_SHARE=n \
923 CONFIG_THERMAL_GOV_STEP_WISE=y \
924 CONFIG_THERMAL_GOV_USER_SPACE=n \
925 CONFIG_THERMAL_HWMON=y \
926 CONFIG_THERMAL_EMULATION=n
927 FILES:=$(LINUX_DIR)/drivers/thermal/thermal_sys.ko
928 AUTOLOAD:=$(call AutoProbe,thermal_sys)
931 define KernelPackage/thermal/description
932 Generic Thermal Sysfs driver offers a generic mechanism for thermal
933 management. Usually it's made up of one or more thermal zone and cooling
937 $(eval $(call KernelPackage,thermal))
940 define KernelPackage/thermal-imx
941 SUBMENU:=$(OTHER_MENU)
942 TITLE:=Temperature sensor driver for Freescale i.MX SoCs
943 DEPENDS:=@TARGET_imx6 +kmod-thermal
946 FILES:=$(LINUX_DIR)/drivers/thermal/imx_thermal.ko
947 AUTOLOAD:=$(call AutoProbe,imx_thermal)
950 define KernelPackage/thermal-imx/description
951 Support for Temperature Monitor (TEMPMON) found on Freescale i.MX SoCs.
952 It supports one critical trip point and one passive trip point. The
953 cpufreq is used as the cooling device to throttle CPUs when the
954 passive trip is crossed.
957 $(eval $(call KernelPackage,thermal-imx))
960 define KernelPackage/thermal-kirkwood
961 SUBMENU:=$(OTHER_MENU)
962 TITLE:=Temperature sensor on Marvell Kirkwood SoCs
963 DEPENDS:=@TARGET_kirkwood +kmod-thermal
964 KCONFIG:=CONFIG_KIRKWOOD_THERMAL
965 FILES:=$(LINUX_DIR)/drivers/thermal/kirkwood_thermal.ko
966 AUTOLOAD:=$(call AutoProbe,kirkwood_thermal)
969 define KernelPackage/thermal-kirkwood/description
970 Support for the Kirkwood thermal sensor driver into the Linux thermal
971 framework. Only kirkwood 88F6282 and 88F6283 have this sensor.
974 $(eval $(call KernelPackage,thermal-kirkwood))
977 define KernelPackage/gpio-beeper
978 SUBMENU:=$(OTHER_MENU)
979 TITLE:=GPIO beeper support
980 DEPENDS:=+kmod-input-core
982 CONFIG_INPUT_MISC=y \
983 CONFIG_INPUT_GPIO_BEEPER
985 $(LINUX_DIR)/drivers/input/misc/gpio-beeper.ko
986 AUTOLOAD:=$(call AutoLoad,50,gpio-beeper)
989 define KernelPackage/gpio-beeper/description
990 This enables playing beeps through an GPIO-connected buzzer
993 $(eval $(call KernelPackage,gpio-beeper))
996 define KernelPackage/echo
997 SUBMENU:=$(OTHER_MENU)
998 TITLE:=Line Echo Canceller
1000 FILES:=$(LINUX_DIR)/drivers/misc/echo/echo.ko
1001 AUTOLOAD:=$(call AutoLoad,50,echo)
1004 define KernelPackage/echo/description
1005 This driver provides line echo cancelling support for mISDN and
1009 $(eval $(call KernelPackage,echo))
1012 define KernelPackage/bmp085
1013 SUBMENU:=$(OTHER_MENU)
1014 TITLE:=BMP085/BMP18x pressure sensor
1015 DEPENDS:= +kmod-regmap @!LINUX_3_18 @!LINUX_4_1
1016 KCONFIG:= CONFIG_BMP085
1017 FILES:= $(LINUX_DIR)/drivers/misc/bmp085.ko
1020 define KernelPackage/bmp085/description
1021 This driver adds support for Bosch Sensortec's digital pressure
1022 sensors BMP085 and BMP18x.
1025 $(eval $(call KernelPackage,bmp085))
1028 define KernelPackage/bmp085-i2c
1029 SUBMENU:=$(OTHER_MENU)
1030 TITLE:=BMP085/BMP18x pressure sensor I2C
1031 DEPENDS:= +kmod-bmp085
1032 KCONFIG:= CONFIG_BMP085_I2C
1033 FILES:= $(LINUX_DIR)/drivers/misc/bmp085-i2c.ko
1034 AUTOLOAD:=$(call AutoProbe,bmp085-i2c)
1036 define KernelPackage/bmp085-i2c/description
1037 This driver adds support for Bosch Sensortec's digital pressure
1038 sensor connected via I2C.
1041 $(eval $(call KernelPackage,bmp085-i2c))
1044 define KernelPackage/bmp085-spi
1045 SUBMENU:=$(OTHER_MENU)
1046 TITLE:=BMP085/BMP18x pressure sensor SPI
1047 DEPENDS:= +kmod-bmp085
1048 KCONFIG:= CONFIG_BMP085_SPI
1049 FILES:= $(LINUX_DIR)/drivers/misc/bmp085-spi.ko
1050 AUTOLOAD:=$(call AutoProbe,bmp085-spi)
1052 define KernelPackage/bmp085-spi/description
1053 This driver adds support for Bosch Sensortec's digital pressure
1054 sensor connected via SPI.
1057 $(eval $(call KernelPackage,bmp085-spi))