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))
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/eeprom-93cx6
134 SUBMENU:=$(OTHER_MENU)
135 TITLE:=EEPROM 93CX6 support
136 KCONFIG:=CONFIG_EEPROM_93CX6
137 FILES:=$(LINUX_DIR)/drivers/misc/eeprom/eeprom_93cx6.ko
138 AUTOLOAD:=$(call AutoLoad,20,eeprom_93cx6)
141 define KernelPackage/eeprom-93cx6/description
142 Kernel module for EEPROM 93CX6 support
145 $(eval $(call KernelPackage,eeprom-93cx6))
148 define KernelPackage/eeprom-at24
149 SUBMENU:=$(OTHER_MENU)
150 TITLE:=EEPROM AT24 support
151 KCONFIG:=CONFIG_EEPROM_AT24
152 DEPENDS:=+kmod-i2c-core
153 FILES:=$(LINUX_DIR)/drivers/misc/eeprom/at24.ko
154 AUTOLOAD:=$(call AutoProbe,at24)
157 define KernelPackage/eeprom-at24/description
158 Kernel module for most I2C EEPROMs
161 $(eval $(call KernelPackage,eeprom-at24))
164 define KernelPackage/eeprom-at25
165 SUBMENU:=$(OTHER_MENU)
166 TITLE:=EEPROM AT25 support
167 KCONFIG:=CONFIG_EEPROM_AT25
168 FILES:=$(LINUX_DIR)/drivers/misc/eeprom/at25.ko
169 AUTOLOAD:=$(call AutoProbe,at25)
172 define KernelPackage/eeprom-at25/description
173 Kernel module for most SPI EEPROMs
176 $(eval $(call KernelPackage,eeprom-at25))
179 define KernelPackage/gpio-dev
180 SUBMENU:=$(OTHER_MENU)
181 TITLE:=Generic GPIO char device support
182 DEPENDS:=@GPIO_SUPPORT
183 KCONFIG:=CONFIG_GPIO_DEVICE
184 FILES:=$(LINUX_DIR)/drivers/char/gpio_dev.ko
185 AUTOLOAD:=$(call AutoLoad,40,gpio_dev)
188 define KernelPackage/gpio-dev/description
189 Kernel module to allows control of GPIO pins using a character device.
192 $(eval $(call KernelPackage,gpio-dev))
195 define KernelPackage/gpio-mcp23s08
196 SUBMENU:=$(OTHER_MENU)
197 TITLE:=Microchip MCP23xxx I/O expander
198 DEPENDS:=@GPIO_SUPPORT +PACKAGE_kmod-i2c-core:kmod-i2c-core
199 KCONFIG:=CONFIG_GPIO_MCP23S08
200 FILES:=$(LINUX_DIR)/drivers/gpio/gpio-mcp23s08.ko
201 AUTOLOAD:=$(call AutoLoad,40,gpio-mcp23s08)
204 define KernelPackage/gpio-mcp23s08/description
205 Kernel module for Microchip MCP23xxx SPI/I2C I/O expander
208 $(eval $(call KernelPackage,gpio-mcp23s08))
211 define KernelPackage/gpio-nxp-74hc164
212 SUBMENU:=$(OTHER_MENU)
213 TITLE:=NXP 74HC164 GPIO expander support
214 KCONFIG:=CONFIG_GPIO_NXP_74HC164
215 FILES:=$(LINUX_DIR)/drivers/gpio/nxp_74hc164.ko
216 AUTOLOAD:=$(call AutoProbe,nxp_74hc164)
219 define KernelPackage/gpio-nxp-74hc164/description
220 Kernel module for NXP 74HC164 GPIO expander
223 $(eval $(call KernelPackage,gpio-nxp-74hc164))
225 define KernelPackage/gpio-pca953x
226 SUBMENU:=$(OTHER_MENU)
227 DEPENDS:=@GPIO_SUPPORT +kmod-i2c-core
228 TITLE:=PCA95xx, TCA64xx, and MAX7310 I/O ports
229 KCONFIG:=CONFIG_GPIO_PCA953X
230 FILES:=$(LINUX_DIR)/drivers/gpio/gpio-pca953x.ko
231 AUTOLOAD:=$(call AutoLoad,55,gpio-pca953x)
234 define KernelPackage/gpio-pca953x/description
235 Kernel module for MAX731{0,2,3,5}, PCA6107, PCA953{4-9}, PCA955{4-7},
236 PCA957{4,5} and TCA64{08,16} I2C GPIO expanders
239 $(eval $(call KernelPackage,gpio-pca953x))
241 define KernelPackage/gpio-pcf857x
242 SUBMENU:=$(OTHER_MENU)
243 DEPENDS:=@GPIO_SUPPORT +kmod-i2c-core
244 TITLE:=PCX857x, PCA967x and MAX732X I2C GPIO expanders
245 KCONFIG:=CONFIG_GPIO_PCF857X
246 FILES:=$(LINUX_DIR)/drivers/gpio/gpio-pcf857x.ko
247 AUTOLOAD:=$(call AutoLoad,55,gpio-pcf857x)
250 define KernelPackage/gpio-pcf857x/description
251 Kernel module for PCF857x, PCA{85,96}7x, and MAX732[89] I2C GPIO expanders
254 $(eval $(call KernelPackage,gpio-pcf857x))
256 define KernelPackage/iio-core
257 SUBMENU:=$(OTHER_MENU)
258 TITLE:=Industrial IO core
261 CONFIG_IIO_BUFFER=y \
262 CONFIG_IIO_KFIFO_BUF \
263 CONFIG_IIO_TRIGGER=y \
264 CONFIG_IIO_TRIGGERED_BUFFER
266 $(LINUX_DIR)/drivers/iio/industrialio.ko \
267 $(if $(CONFIG_IIO_TRIGGERED_BUFFER),$(LINUX_DIR)/drivers/iio/industrialio-triggered-buffer.ko) \
268 $(LINUX_DIR)/drivers/iio/kfifo_buf.ko
269 AUTOLOAD:=$(call AutoLoad,55,industrialio kfifo_buf industrialio-triggered-buffer)
272 define KernelPackage/iio-core/description
273 The industrial I/O subsystem provides a unified framework for
274 drivers for many different types of embedded sensors using a
275 number of different physical interfaces (i2c, spi, etc)
278 $(eval $(call KernelPackage,iio-core))
281 define KernelPackage/iio-ad799x
282 SUBMENU:=$(OTHER_MENU)
283 DEPENDS:=kmod-i2c-core kmod-iio-core
284 TITLE:=Analog Devices AD799x ADC driver
286 CONFIG_AD799X_RING_BUFFER=y \
288 FILES:=$(LINUX_DIR)/drivers/iio/adc/ad799x.ko
289 AUTOLOAD:=$(call AutoLoad,56,ad799x)
292 define KernelPackage/iio-ad799x/description
293 support for Analog Devices:
294 ad7991, ad7995, ad7999, ad7992, ad7993, ad7994, ad7997, ad7998
295 i2c analog to digital converters (ADC).
298 $(eval $(call KernelPackage,iio-ad799x))
301 define KernelPackage/iio-dht11
302 SUBMENU:=$(OTHER_MENU)
303 DEPENDS:=kmod-iio-core @GPIO_SUPPORT @USES_DEVICETREE
304 TITLE:=DHT11 (and compatible) humidity and temperature sensors
307 FILES:=$(LINUX_DIR)/drivers/iio/humidity/dht11.ko
308 AUTOLOAD:=$(call AutoLoad,56,dht11)
311 define KernelPackage/iio-dht11/description
312 support for DHT11 and DHT22 digitial humidity and temperature sensors
313 attached at GPIO lines. You will need a custom device tree file to
314 specify the GPIO line to use.
317 $(eval $(call KernelPackage,iio-dht11))
320 define KernelPackage/lp
321 SUBMENU:=$(OTHER_MENU)
322 TITLE:=Parallel port and line printer support
328 $(LINUX_DIR)/drivers/parport/parport.ko \
329 $(LINUX_DIR)/drivers/char/lp.ko \
330 $(LINUX_DIR)/drivers/char/ppdev.ko
331 AUTOLOAD:=$(call AutoLoad,50,parport lp ppdev)
334 $(eval $(call KernelPackage,lp))
337 define KernelPackage/mmc
338 SUBMENU:=$(OTHER_MENU)
339 TITLE:=MMC/SD Card Support
344 CONFIG_MMC_UNSAFE_RESUME=n \
345 CONFIG_MMC_BLOCK_BOUNCE=y \
346 CONFIG_MMC_TIFM_SD=n \
350 $(LINUX_DIR)/drivers/mmc/core/mmc_core.ko \
351 $(LINUX_DIR)/drivers/mmc/card/mmc_block.ko
352 AUTOLOAD:=$(call AutoProbe,mmc_core mmc_block,1)
355 define KernelPackage/mmc/description
356 Kernel support for MMC/SD cards
359 $(eval $(call KernelPackage,mmc))
362 define KernelPackage/sdhci
363 SUBMENU:=$(OTHER_MENU)
364 TITLE:=Secure Digital Host Controller Interface support
368 CONFIG_MMC_SDHCI_PLTFM \
369 CONFIG_MMC_SDHCI_PCI=n
371 $(LINUX_DIR)/drivers/mmc/host/sdhci.ko \
372 $(LINUX_DIR)/drivers/mmc/host/sdhci-pltfm.ko
374 AUTOLOAD:=$(call AutoProbe,sdhci sdhci-pltfm,1)
377 define KernelPackage/sdhci/description
378 Kernel support for SDHCI Hosts
381 $(eval $(call KernelPackage,sdhci))
384 define KernelPackage/rfkill
385 SUBMENU:=$(OTHER_MENU)
386 TITLE:=RF switch subsystem support
387 DEPENDS:=@USE_RFKILL +kmod-input-core
390 CONFIG_RFKILL_INPUT=y \
391 CONFIG_RFKILL_LEDS=y \
394 $(LINUX_DIR)/net/rfkill/rfkill.ko
395 AUTOLOAD:=$(call AutoLoad,20,rfkill)
398 define KernelPackage/rfkill/description
399 Say Y here if you want to have control over RF switches
400 found on many WiFi and Bluetooth cards
403 $(eval $(call KernelPackage,rfkill))
406 define KernelPackage/softdog
407 SUBMENU:=$(OTHER_MENU)
408 TITLE:=Software watchdog driver
409 KCONFIG:=CONFIG_SOFT_WATCHDOG
410 FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/softdog.ko
411 AUTOLOAD:=$(call AutoLoad,50,softdog,1)
414 define KernelPackage/softdog/description
415 Software watchdog driver
418 $(eval $(call KernelPackage,softdog))
421 define KernelPackage/ssb
422 SUBMENU:=$(OTHER_MENU)
423 TITLE:=Silicon Sonics Backplane glue code
424 DEPENDS:=@PCI_SUPPORT @!TARGET_brcm47xx @!TARGET_brcm63xx
427 CONFIG_SSB_B43_PCI_BRIDGE=y \
428 CONFIG_SSB_DRIVER_MIPS=n \
429 CONFIG_SSB_DRIVER_PCICORE=y \
430 CONFIG_SSB_DRIVER_PCICORE_POSSIBLE=y \
431 CONFIG_SSB_PCIHOST=y \
432 CONFIG_SSB_PCIHOST_POSSIBLE=y \
433 CONFIG_SSB_POSSIBLE=y \
436 FILES:=$(LINUX_DIR)/drivers/ssb/ssb.ko
437 AUTOLOAD:=$(call AutoLoad,18,ssb,1)
440 define KernelPackage/ssb/description
441 Silicon Sonics Backplane glue code.
444 $(eval $(call KernelPackage,ssb))
447 define KernelPackage/bcma
448 SUBMENU:=$(OTHER_MENU)
450 DEPENDS:=@PCI_SUPPORT @!TARGET_brcm47xx @!TARGET_bcm53xx
453 CONFIG_BCMA_POSSIBLE=y \
454 CONFIG_BCMA_BLOCKIO=y \
455 CONFIG_BCMA_HOST_PCI_POSSIBLE=y \
456 CONFIG_BCMA_HOST_PCI=y \
457 CONFIG_BCMA_HOST_SOC=n \
458 CONFIG_BCMA_DRIVER_MIPS=n \
459 CONFIG_BCMA_DRIVER_PCI_HOSTMODE=n \
460 CONFIG_BCMA_DRIVER_GMAC_CMN=n \
462 FILES:=$(LINUX_DIR)/drivers/bcma/bcma.ko
463 AUTOLOAD:=$(call AutoLoad,29,bcma)
466 define KernelPackage/bcma/description
467 Bus driver for Broadcom specific Advanced Microcontroller Bus Architecture
470 $(eval $(call KernelPackage,bcma))
473 define KernelPackage/wdt-omap
474 SUBMENU:=$(OTHER_MENU)
475 TITLE:=OMAP Watchdog timer
476 DEPENDS:=@(TARGET_omap24xx||TARGET_omap35xx)
477 KCONFIG:=CONFIG_OMAP_WATCHDOG
478 FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/omap_wdt.ko
479 AUTOLOAD:=$(call AutoLoad,50,omap_wdt.ko,1)
482 define KernelPackage/wdt-omap/description
483 Kernel module for TI omap watchdog timer
486 $(eval $(call KernelPackage,wdt-omap))
489 define KernelPackage/wdt-orion
490 SUBMENU:=$(OTHER_MENU)
491 TITLE:=Marvell Orion Watchdog timer
492 DEPENDS:=@TARGET_orion||TARGET_kirkwood||TARGET_mvebu
493 KCONFIG:=CONFIG_ORION_WATCHDOG
494 FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/orion_wdt.ko
495 AUTOLOAD:=$(call AutoLoad,50,orion_wdt,1)
498 define KernelPackage/wdt-orion/description
499 Kernel module for Marvell Orion, Kirkwood and Armada XP/370 watchdog timer
502 $(eval $(call KernelPackage,wdt-orion))
505 define KernelPackage/booke-wdt
506 SUBMENU:=$(OTHER_MENU)
507 TITLE:=PowerPC Book-E Watchdog Timer
508 DEPENDS:=@(TARGET_mpc85xx||TARGET_ppc40x||TARGET_ppc44x)
509 KCONFIG:=CONFIG_BOOKE_WDT
510 FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/booke_wdt.ko
511 AUTOLOAD:=$(call AutoLoad,50,booke_wdt,1)
514 define KernelPackage/booke-wdt/description
515 Kernel module for PowerPC Book-E Watchdog Timer
518 $(eval $(call KernelPackage,booke-wdt))
521 define KernelPackage/rtc-ds1307
522 SUBMENU:=$(OTHER_MENU)
523 TITLE:=Dallas/Maxim DS1307 (and compatible) RTC support
524 DEPENDS:=@RTC_SUPPORT +kmod-i2c-core
525 KCONFIG:=CONFIG_RTC_DRV_DS1307
526 FILES:=$(LINUX_DIR)/drivers/rtc/rtc-ds1307.ko
527 AUTOLOAD:=$(call AutoProbe,rtc-ds1307)
530 define KernelPackage/rtc-ds1307/description
531 Kernel module for Dallas/Maxim DS1307/DS1337/DS1338/DS1340/DS1388/DS3231,
532 Epson RX-8025 and various other compatible RTC chips connected via I2C.
535 $(eval $(call KernelPackage,rtc-ds1307))
538 define KernelPackage/rtc-ds1672
539 SUBMENU:=$(OTHER_MENU)
540 TITLE:=Dallas/Maxim DS1672 RTC support
541 DEPENDS:=@RTC_SUPPORT +kmod-i2c-core
542 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
559 FILES:=$(LINUX_DIR)/drivers/rtc/rtc-isl1208.ko
560 AUTOLOAD:=$(call AutoProbe,rtc-isl1208)
563 define KernelPackage/rtc-isl1208/description
564 Kernel module for Intersil ISL1208 RTC.
567 $(eval $(call KernelPackage,rtc-isl1208))
570 define KernelPackage/rtc-marvell
571 SUBMENU:=$(OTHER_MENU)
572 TITLE:=Marvell SoC built-in RTC support
573 DEPENDS:=@RTC_SUPPORT @TARGET_kirkwood||TARGET_orion||TARGET_mvebu
574 KCONFIG:=CONFIG_RTC_DRV_MV
575 FILES:=$(LINUX_DIR)/drivers/rtc/rtc-mv.ko
576 AUTOLOAD:=$(call AutoProbe,rtc-mv)
579 define KernelPackage/rtc-marvell/description
580 Kernel module for Marvell SoC built-in RTC.
583 $(eval $(call KernelPackage,rtc-marvell))
586 define KernelPackage/rtc-armada38x
587 SUBMENU:=$(OTHER_MENU)
588 TITLE:=Marvell Armada 38x SoC built-in RTC support
589 DEPENDS:=@RTC_SUPPORT @TARGET_mvebu
590 KCONFIG:=CONFIG_RTC_DRV_ARMADA38X
591 FILES:=$(LINUX_DIR)/drivers/rtc/rtc-armada38x.ko
592 AUTOLOAD:=$(call AutoProbe,rtc-armada38x)
595 define KernelPackage/rtc-armada38x/description
596 Kernel module for Marvell Armada 38x SoC built-in RTC.
599 $(eval $(call KernelPackage,rtc-armada38x))
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
607 FILES:=$(LINUX_DIR)/drivers/rtc/rtc-pcf8563.ko
608 AUTOLOAD:=$(call AutoProbe,rtc-pcf8563)
611 define KernelPackage/rtc-pcf8563/description
612 Kernel module for Philips PCF8563 RTC chip.
613 The Epson RTC8564 should work as well.
616 $(eval $(call KernelPackage,rtc-pcf8563))
619 define KernelPackage/rtc-pcf2123
620 SUBMENU:=$(OTHER_MENU)
621 TITLE:=Philips PCF2123 RTC support
622 DEPENDS:=@RTC_SUPPORT
623 KCONFIG:=CONFIG_RTC_DRV_PCF2123
624 FILES:=$(LINUX_DIR)/drivers/rtc/rtc-pcf2123.ko
625 AUTOLOAD:=$(call AutoProbe,rtc-pcf2123)
628 define KernelPackage/rtc-pcf2123/description
629 Kernel module for Philips PCF2123 RTC chip
632 $(eval $(call KernelPackage,rtc-pcf2123))
634 define KernelPackage/rtc-pt7c4338
635 SUBMENU:=$(OTHER_MENU)
636 TITLE:=Pericom PT7C4338 RTC support
637 DEPENDS:=@RTC_SUPPORT +kmod-i2c-core
638 KCONFIG:=CONFIG_RTC_DRV_PT7C4338
639 FILES:=$(LINUX_DIR)/drivers/rtc/rtc-pt7c4338.ko
640 AUTOLOAD:=$(call AutoProbe,rtc-pt7c4338)
643 define KernelPackage/rtc-pt7c4338/description
644 Kernel module for Pericom PT7C4338 i2c RTC chip
647 $(eval $(call KernelPackage,rtc-pt7c4338))
650 define KernelPackage/mtdtests
651 SUBMENU:=$(OTHER_MENU)
652 TITLE:=MTD subsystem tests
653 KCONFIG:=CONFIG_MTD_TESTS
655 $(LINUX_DIR)/drivers/mtd/tests/mtd_nandecctest.ko \
656 $(LINUX_DIR)/drivers/mtd/tests/mtd_oobtest.ko \
657 $(LINUX_DIR)/drivers/mtd/tests/mtd_pagetest.ko \
658 $(LINUX_DIR)/drivers/mtd/tests/mtd_readtest.ko \
659 $(LINUX_DIR)/drivers/mtd/tests/mtd_speedtest.ko \
660 $(LINUX_DIR)/drivers/mtd/tests/mtd_stresstest.ko \
661 $(LINUX_DIR)/drivers/mtd/tests/mtd_subpagetest.ko \
662 $(LINUX_DIR)/drivers/mtd/tests/mtd_torturetest.ko
665 define KernelPackage/mtdtests/description
666 Kernel modules for MTD subsystem/driver testing
669 $(eval $(call KernelPackage,mtdtests))
672 define KernelPackage/serial-8250
673 SUBMENU:=$(OTHER_MENU)
675 KCONFIG:= CONFIG_SERIAL_8250 \
676 CONFIG_SERIAL_8250_NR_UARTS=16 \
677 CONFIG_SERIAL_8250_RUNTIME_UARTS=16 \
678 CONFIG_SERIAL_8250_EXTENDED=y \
679 CONFIG_SERIAL_8250_MANY_PORTS=y \
680 CONFIG_SERIAL_8250_SHARE_IRQ=y \
681 CONFIG_SERIAL_8250_DETECT_IRQ=n \
682 CONFIG_SERIAL_8250_RSA=n
683 FILES:=$(LINUX_DIR)/drivers/tty/serial/8250/8250.ko
686 define KernelPackage/serial-8250/description
687 Kernel module for 8250 UART based serial ports
690 $(eval $(call KernelPackage,serial-8250))
693 define KernelPackage/regmap
694 SUBMENU:=$(OTHER_MENU)
695 TITLE:=Generic register map support
696 DEPENDS:=+kmod-lib-lzo +kmod-i2c-core
697 KCONFIG:=CONFIG_REGMAP \
703 $(LINUX_DIR)/drivers/base/regmap/regmap-core.ko \
704 $(LINUX_DIR)/drivers/base/regmap/regmap-i2c.ko \
705 $(LINUX_DIR)/drivers/base/regmap/regmap-mmio.ko \
706 $(if $(CONFIG_SPI),$(LINUX_DIR)/drivers/base/regmap/regmap-spi.ko)
707 AUTOLOAD:=$(call AutoLoad,21,regmap-core regmap-i2c regmap-mmio regmap-spi)
710 define KernelPackage/regmap/description
711 Generic register map support
714 $(eval $(call KernelPackage,regmap))
716 define KernelPackage/ikconfig
717 SUBMENU:=$(OTHER_MENU)
718 TITLE:=Kernel configuration via /proc/config.gz
719 KCONFIG:=CONFIG_IKCONFIG \
720 CONFIG_IKCONFIG_PROC=y
721 FILES:=$(LINUX_DIR)/kernel/configs.ko
722 AUTOLOAD:=$(call AutoLoad,70,configs)
725 define KernelPackage/ikconfig/description
726 Kernel configuration via /proc/config.gz
729 $(eval $(call KernelPackage,ikconfig))
732 define KernelPackage/zram
733 SUBMENU:=$(OTHER_MENU)
735 DEPENDS:=+kmod-lib-lzo +kmod-lib-lz4
739 CONFIG_ZRAM_DEBUG=n \
740 CONFIG_PGTABLE_MAPPING=n \
741 CONFIG_ZSMALLOC_STAT=n \
742 CONFIG_ZRAM_LZ4_COMPRESS=y
744 $(LINUX_DIR)/mm/zsmalloc.ko \
745 $(LINUX_DIR)/drivers/block/zram/zram.ko
746 AUTOLOAD:=$(call AutoLoad,20,zsmalloc zram)
749 define KernelPackage/zram/description
750 Compressed RAM block device support
753 $(eval $(call KernelPackage,zram))
756 define KernelPackage/mvsdio
757 SUBMENU:=$(OTHER_MENU)
758 TITLE:=Marvell SDIO support
759 DEPENDS:=@TARGET_orion||TARGET_kirkwood||TARGET_mvebu +kmod-mmc
760 KCONFIG:=CONFIG_MMC_MVSDIO
761 FILES:=$(LINUX_DIR)/drivers/mmc/host/mvsdio.ko
762 AUTOLOAD:=$(call AutoProbe,mvsdio)
765 define KernelPackage/mvsdio/description
766 Kernel support for the Marvell SDIO controller
769 $(eval $(call KernelPackage,mvsdio))
772 define KernelPackage/pps
773 SUBMENU:=$(OTHER_MENU)
776 FILES:=$(LINUX_DIR)/drivers/pps/pps_core.ko
777 AUTOLOAD:=$(call AutoLoad,17,pps_core,1)
780 define KernelPackage/pps/description
781 PPS (Pulse Per Second) is a special pulse provided by some GPS
782 antennae. Userland can use it to get a high-precision time
786 $(eval $(call KernelPackage,pps))
789 define KernelPackage/pps-gpio
790 SUBMENU:=$(OTHER_MENU)
791 TITLE:=PPS client using GPIO
793 KCONFIG:=CONFIG_PPS_CLIENT_GPIO
794 FILES:=$(LINUX_DIR)/drivers/pps/clients/pps-gpio.ko
795 AUTOLOAD:=$(call AutoLoad,18,pps-gpio,1)
798 define KernelPackage/pps-gpio/description
799 Support for a PPS source using GPIO. To be useful you must
800 also register a platform device specifying the GPIO pin and
801 other options, usually in your board setup.
804 $(eval $(call KernelPackage,pps-gpio))
807 define KernelPackage/ptp
808 SUBMENU:=$(OTHER_MENU)
809 TITLE:=PTP clock support
811 KCONFIG:=CONFIG_PTP_1588_CLOCK
812 FILES:=$(LINUX_DIR)/drivers/ptp/ptp.ko
813 AUTOLOAD:=$(call AutoLoad,18,ptp,1)
816 define KernelPackage/ptp/description
817 The IEEE 1588 standard defines a method to precisely
818 synchronize distributed clocks over Ethernet networks.
821 $(eval $(call KernelPackage,ptp))
824 define KernelPackage/ptp-gianfar
825 SUBMENU:=$(OTHER_MENU)
826 TITLE:=Freescale Gianfar PTP support
827 DEPENDS:=@TARGET_mpc85xx +kmod-gianfar +kmod-ptp
828 KCONFIG:=CONFIG_PTP_1588_CLOCK_GIANFAR
829 FILES:=$(LINUX_DIR)/drivers/net/ethernet/freescale/gianfar_ptp.ko
830 AUTOLOAD:=$(call AutoProbe,gianfar_ptp)
833 define KernelPackage/ptp-gianfar/description
834 Kernel module for IEEE 1588 support for Freescale
835 Gianfar Ethernet drivers
838 $(eval $(call KernelPackage,ptp-gianfar))
841 define KernelPackage/random-core
842 SUBMENU:=$(OTHER_MENU)
843 TITLE:=Hardware Random Number Generator Core support
844 KCONFIG:=CONFIG_HW_RANDOM
845 FILES:=$(LINUX_DIR)/drivers/char/hw_random/rng-core.ko
848 define KernelPackage/random-core/description
849 Kernel module for the HW random number generator core infrastructure
852 $(eval $(call KernelPackage,random-core))
855 define KernelPackage/thermal
856 SUBMENU:=$(OTHER_MENU)
857 TITLE:=Generic Thermal sysfs driver
858 DEPENDS:=+kmod-hwmon-core
862 CONFIG_THERMAL_OF=y \
863 CONFIG_THERMAL_DEFAULT_GOV_STEP_WISE=y \
864 CONFIG_THERMAL_DEFAULT_GOV_FAIR_SHARE=n \
865 CONFIG_THERMAL_DEFAULT_GOV_USER_SPACE=n \
866 CONFIG_THERMAL_GOV_FAIR_SHARE=n \
867 CONFIG_THERMAL_GOV_STEP_WISE=y \
868 CONFIG_THERMAL_GOV_USER_SPACE=n \
869 CONFIG_THERMAL_HWMON=y \
870 CONFIG_THERMAL_EMULATION=n
871 FILES:=$(LINUX_DIR)/drivers/thermal/thermal_sys.ko
872 AUTOLOAD:=$(call AutoProbe,thermal_sys)
875 define KernelPackage/thermal/description
876 Generic Thermal Sysfs driver offers a generic mechanism for thermal
877 management. Usually it's made up of one or more thermal zone and cooling
881 $(eval $(call KernelPackage,thermal))
884 define KernelPackage/thermal-armada
885 SUBMENU:=$(OTHER_MENU)
886 TITLE:=Armada 370/XP thermal management
887 DEPENDS:=@TARGET_mvebu +kmod-thermal
888 KCONFIG:=CONFIG_ARMADA_THERMAL
889 FILES:=$(LINUX_DIR)/drivers/thermal/armada_thermal.ko
890 AUTOLOAD:=$(call AutoProbe,armada_thermal)
893 define KernelPackage/thermal-armada/description
894 Enable this module if you want to have support for thermal management
895 controller present in Armada 370 and Armada XP SoC.
898 $(eval $(call KernelPackage,thermal-armada))
901 define KernelPackage/thermal-imx
902 SUBMENU:=$(OTHER_MENU)
903 TITLE:=Temperature sensor driver for Freescale i.MX SoCs
904 DEPENDS:=@TARGET_imx6 +kmod-thermal
906 CONFIG_CPU_THERMAL=y \
908 FILES:=$(LINUX_DIR)/drivers/thermal/imx_thermal.ko
909 AUTOLOAD:=$(call AutoProbe,imx_thermal)
912 define KernelPackage/thermal-imx/description
913 Support for Temperature Monitor (TEMPMON) found on Freescale i.MX SoCs.
914 It supports one critical trip point and one passive trip point. The
915 cpufreq is used as the cooling device to throttle CPUs when the
916 passive trip is crossed.
919 $(eval $(call KernelPackage,thermal-imx))
922 define KernelPackage/thermal-kirkwood
923 SUBMENU:=$(OTHER_MENU)
924 TITLE:=Temperature sensor on Marvell Kirkwood SoCs
925 DEPENDS:=@TARGET_kirkwood +kmod-thermal
926 KCONFIG:=CONFIG_KIRKWOOD_THERMAL
927 FILES:=$(LINUX_DIR)/drivers/thermal/kirkwood_thermal.ko
928 AUTOLOAD:=$(call AutoProbe,kirkwood_thermal)
931 define KernelPackage/thermal-kirkwood/description
932 Support for the Kirkwood thermal sensor driver into the Linux thermal
933 framework. Only kirkwood 88F6282 and 88F6283 have this sensor.
936 $(eval $(call KernelPackage,thermal-kirkwood))
939 define KernelPackage/gpio-beeper
940 SUBMENU:=$(OTHER_MENU)
941 TITLE:=GPIO beeper support
942 DEPENDS:=+kmod-input-core
944 CONFIG_INPUT_MISC=y \
945 CONFIG_INPUT_GPIO_BEEPER
947 $(LINUX_DIR)/drivers/input/misc/gpio-beeper.ko
948 AUTOLOAD:=$(call AutoLoad,50,gpio-beeper)
951 define KernelPackage/gpio-beeper/description
952 This enables playing beeps through an GPIO-connected buzzer
955 $(eval $(call KernelPackage,gpio-beeper))
958 define KernelPackage/echo
959 SUBMENU:=$(OTHER_MENU)
960 TITLE:=Line Echo Canceller
962 FILES:=$(LINUX_DIR)/drivers/misc/echo/echo.ko
963 AUTOLOAD:=$(call AutoLoad,50,echo)
966 define KernelPackage/echo/description
967 This driver provides line echo cancelling support for mISDN and
971 $(eval $(call KernelPackage,echo))