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-iphc
14 USBMENU:=$(OTHER_MENU)
15 TITLE:=6lowpan shared code
17 KCONFIG:=CONFIG_6LOWPAN_IPHC
19 FILES:=$(LINUX_DIR)/net/ieee802154/6lowpan_iphc.ko
20 AUTOLOAD:=$(call Autoprobe,6lowpan_iphc)
23 define KernelPackage/6lowpan-iphc/description
24 Shared 6lowpan code for IEEE 802.15.4 and Bluetooth.
27 $(eval $(call KernelPackage,6lowpan-iphc))
29 define KernelPackage/bluetooth
30 SUBMENU:=$(OTHER_MENU)
31 TITLE:=Bluetooth support
32 DEPENDS:=@USB_SUPPORT +kmod-usb-core +kmod-crypto-hash +!LINUX_3_10:kmod-6lowpan-iphc +kmod-lib-crc16 +kmod-hid
39 CONFIG_BLUEZ_HCIUART \
50 CONFIG_BT_HCIUART_H4 \
53 $(call AddDepends/rfkill)
55 $(LINUX_DIR)/net/bluetooth/bluetooth.ko \
56 $(LINUX_DIR)/net/bluetooth/rfcomm/rfcomm.ko \
57 $(LINUX_DIR)/net/bluetooth/bnep/bnep.ko \
58 $(LINUX_DIR)/net/bluetooth/hidp/hidp.ko \
59 $(LINUX_DIR)/drivers/bluetooth/hci_uart.ko \
60 $(LINUX_DIR)/drivers/bluetooth/btusb.ko
61 AUTOLOAD:=$(call AutoProbe,bluetooth rfcomm bnep hidp hci_uart btusb)
64 define KernelPackage/bluetooth/description
65 Kernel support for Bluetooth devices
68 $(eval $(call KernelPackage,bluetooth))
71 define KernelPackage/bluetooth_6lowpan
72 SUBMENU:=$(OTHER_MENU)
73 TITLE:=Bluetooth 6LoWPAN support
74 DEPENDS:=+kmod-bluetooth @!LINUX_3_10 @!LINUX_3_14
79 $(LINUX_DIR)/net/bluetooth/bluetooth_6lowpan.ko \
80 $(LINUX_DIR)/net/6lowpan/6lowpan.ko
81 AUTOLOAD:=$(call AutoProbe,bluetooth)
84 define KernelPackage/bluetooth_6lowpan/description
85 Kernel support for 6LoWPAN over Bluetooth Low Energy devices
88 $(eval $(call KernelPackage,bluetooth_6lowpan))
91 define KernelPackage/bluetooth-hci-h4p
92 SUBMENU:=$(OTHER_MENU)
93 TITLE:=HCI driver with H4 Nokia extensions
94 DEPENDS:=@TARGET_omap24xx +kmod-bluetooth
95 KCONFIG:=CONFIG_BT_HCIH4P
96 FILES:=$(LINUX_DIR)/drivers/bluetooth/hci_h4p/hci_h4p.ko
97 AUTOLOAD:=$(call AutoProbe,hci_h4p)
100 define KernelPackage/bluetooth-hci-h4p/description
101 HCI driver with H4 Nokia extensions
104 $(eval $(call KernelPackage,bluetooth-hci-h4p))
107 define KernelPackage/eeprom-93cx6
108 SUBMENU:=$(OTHER_MENU)
109 TITLE:=EEPROM 93CX6 support
110 KCONFIG:=CONFIG_EEPROM_93CX6
111 FILES:=$(LINUX_DIR)/drivers/misc/eeprom/eeprom_93cx6.ko
112 AUTOLOAD:=$(call AutoLoad,20,eeprom_93cx6)
115 define KernelPackage/eeprom-93cx6/description
116 Kernel module for EEPROM 93CX6 support
119 $(eval $(call KernelPackage,eeprom-93cx6))
122 define KernelPackage/eeprom-at24
123 SUBMENU:=$(OTHER_MENU)
124 TITLE:=EEPROM AT24 support
125 KCONFIG:=CONFIG_EEPROM_AT24
126 DEPENDS:=+kmod-i2c-core
127 FILES:=$(LINUX_DIR)/drivers/misc/eeprom/at24.ko
128 AUTOLOAD:=$(call AutoProbe,at24)
131 define KernelPackage/eeprom-at24/description
132 Kernel module for most I2C EEPROMs
135 $(eval $(call KernelPackage,eeprom-at24))
138 define KernelPackage/eeprom-at25
139 SUBMENU:=$(OTHER_MENU)
140 TITLE:=EEPROM AT25 support
141 KCONFIG:=CONFIG_EEPROM_AT25
142 FILES:=$(LINUX_DIR)/drivers/misc/eeprom/at25.ko
143 AUTOLOAD:=$(call AutoProbe,at25)
146 define KernelPackage/eeprom-at25/description
147 Kernel module for most SPI EEPROMs
150 $(eval $(call KernelPackage,eeprom-at25))
153 define KernelPackage/gpio-dev
154 SUBMENU:=$(OTHER_MENU)
155 TITLE:=Generic GPIO char device support
156 DEPENDS:=@GPIO_SUPPORT
157 KCONFIG:=CONFIG_GPIO_DEVICE
158 FILES:=$(LINUX_DIR)/drivers/char/gpio_dev.ko
159 AUTOLOAD:=$(call AutoLoad,40,gpio_dev)
162 define KernelPackage/gpio-dev/description
163 Kernel module to allows control of GPIO pins using a character device.
166 $(eval $(call KernelPackage,gpio-dev))
169 define KernelPackage/gpio-mcp23s08
170 SUBMENU:=$(OTHER_MENU)
171 TITLE:=Microchip MCP23xxx I/O expander
172 DEPENDS:=@GPIO_SUPPORT +PACKAGE_kmod-i2c-core:kmod-i2c-core
173 KCONFIG:=CONFIG_GPIO_MCP23S08
174 FILES:=$(LINUX_DIR)/drivers/gpio/gpio-mcp23s08.ko
175 AUTOLOAD:=$(call AutoLoad,40,gpio-mcp23s08)
178 define KernelPackage/gpio-mcp23s08/description
179 Kernel module for Microchip MCP23xxx SPI/I2C I/O expander
182 $(eval $(call KernelPackage,gpio-mcp23s08))
185 define KernelPackage/gpio-nxp-74hc164
186 SUBMENU:=$(OTHER_MENU)
187 TITLE:=NXP 74HC164 GPIO expander support
188 KCONFIG:=CONFIG_GPIO_NXP_74HC164
189 FILES:=$(LINUX_DIR)/drivers/gpio/nxp_74hc164.ko
190 AUTOLOAD:=$(call AutoProbe,nxp_74hc164)
193 define KernelPackage/gpio-nxp-74hc164/description
194 Kernel module for NXP 74HC164 GPIO expander
197 $(eval $(call KernelPackage,gpio-nxp-74hc164))
199 define KernelPackage/gpio-pca953x
200 SUBMENU:=$(OTHER_MENU)
201 DEPENDS:=@GPIO_SUPPORT +kmod-i2c-core
202 TITLE:=PCA95xx, TCA64xx, and MAX7310 I/O ports
203 KCONFIG:=CONFIG_GPIO_PCA953X
204 FILES:=$(LINUX_DIR)/drivers/gpio/gpio-pca953x.ko
205 AUTOLOAD:=$(call AutoLoad,55,gpio-pca953x)
208 define KernelPackage/gpio-pca953x/description
209 Kernel module for MAX731{0,2,3,5}, PCA6107, PCA953{4-9}, PCA955{4-7},
210 PCA957{4,5} and TCA64{08,16} I2C GPIO expanders
213 $(eval $(call KernelPackage,gpio-pca953x))
215 define KernelPackage/gpio-pcf857x
216 SUBMENU:=$(OTHER_MENU)
217 DEPENDS:=@GPIO_SUPPORT +kmod-i2c-core
218 TITLE:=PCX857x, PCA967x and MAX732X I2C GPIO expanders
219 KCONFIG:=CONFIG_GPIO_PCF857X
220 FILES:=$(LINUX_DIR)/drivers/gpio/gpio-pcf857x.ko
221 AUTOLOAD:=$(call AutoLoad,55,gpio-pcf857x)
224 define KernelPackage/gpio-pcf857x/description
225 Kernel module for PCF857x, PCA{85,96}7x, and MAX732[89] I2C GPIO expanders
228 $(eval $(call KernelPackage,gpio-pcf857x))
230 define KernelPackage/iio-core
231 SUBMENU:=$(OTHER_MENU)
232 TITLE:=Industrial IO core
235 CONFIG_IIO_BUFFER=y \
236 CONFIG_IIO_KFIFO_BUF \
237 CONFIG_IIO_TRIGGER=y \
238 CONFIG_IIO_TRIGGERED_BUFFER
240 $(LINUX_DIR)/drivers/iio/industrialio.ko \
241 $(if $(CONFIG_IIO_TRIGGERED_BUFFER),$(LINUX_DIR)/drivers/iio/industrialio-triggered-buffer.ko) \
242 $(LINUX_DIR)/drivers/iio/kfifo_buf.ko
243 AUTOLOAD:=$(call AutoLoad,55,industrialio kfifo_buf industrialio-triggered-buffer)
246 define KernelPackage/iio-core/description
247 The industrial I/O subsystem provides a unified framework for
248 drivers for many different types of embedded sensors using a
249 number of different physical interfaces (i2c, spi, etc)
252 $(eval $(call KernelPackage,iio-core))
255 define KernelPackage/iio-ad799x
256 SUBMENU:=$(OTHER_MENU)
257 DEPENDS:=kmod-i2c-core kmod-iio-core
258 TITLE:=Analog Devices AD799x ADC driver
260 CONFIG_AD799X_RING_BUFFER=y \
263 $(LINUX_DIR)/drivers/staging/iio/adc/ad799x.ko@lt3.16 \
264 $(LINUX_DIR)/drivers/iio/adc/ad799x.ko@ge3.16
265 AUTOLOAD:=$(call AutoLoad,56,ad799x)
268 define KernelPackage/iio-ad799x/description
269 support for Analog Devices:
270 ad7991, ad7995, ad7999, ad7992, ad7993, ad7994, ad7997, ad7998
271 i2c analog to digital converters (ADC).
274 $(eval $(call KernelPackage,iio-ad799x))
277 define KernelPackage/iio-dht11
278 SUBMENU:=$(OTHER_MENU)
279 DEPENDS:=kmod-iio-core @GPIO_SUPPORT @USES_DEVICETREE
280 TITLE:=DHT11 (and compatible) humidity and temperature sensors
283 FILES:=$(LINUX_DIR)/drivers/iio/humidity/dht11.ko
284 AUTOLOAD:=$(call AutoLoad,56,dht11)
287 define KernelPackage/iio-dht11/description
288 support for DHT11 and DHT22 digitial humidity and temperature sensors
289 attached at GPIO lines. You will need a custom device tree file to
290 specify the GPIO line to use.
293 $(eval $(call KernelPackage,iio-dht11))
296 define KernelPackage/lp
297 SUBMENU:=$(OTHER_MENU)
298 TITLE:=Parallel port and line printer support
305 $(LINUX_DIR)/drivers/parport/parport.ko \
306 $(LINUX_DIR)/drivers/char/lp.ko \
307 $(LINUX_DIR)/drivers/char/ppdev.ko
308 AUTOLOAD:=$(call AutoLoad,50,parport lp)
311 $(eval $(call KernelPackage,lp))
314 define KernelPackage/mmc
315 SUBMENU:=$(OTHER_MENU)
316 TITLE:=MMC/SD Card Support
321 CONFIG_MMC_UNSAFE_RESUME=n \
322 CONFIG_MMC_BLOCK_BOUNCE=y \
323 CONFIG_MMC_TIFM_SD=n \
327 $(LINUX_DIR)/drivers/mmc/core/mmc_core.ko \
328 $(LINUX_DIR)/drivers/mmc/card/mmc_block.ko
329 AUTOLOAD:=$(call AutoProbe,mmc_core mmc_block,1)
332 define KernelPackage/mmc/description
333 Kernel support for MMC/SD cards
336 $(eval $(call KernelPackage,mmc))
339 define KernelPackage/sdhci
340 SUBMENU:=$(OTHER_MENU)
341 TITLE:=Secure Digital Host Controller Interface support
345 CONFIG_MMC_SDHCI_PLTFM \
346 CONFIG_MMC_SDHCI_PCI=n
348 $(LINUX_DIR)/drivers/mmc/host/sdhci.ko \
349 $(LINUX_DIR)/drivers/mmc/host/sdhci-pltfm.ko
351 AUTOLOAD:=$(call AutoProbe,sdhci sdhci-pltfm,1)
354 define KernelPackage/sdhci/description
355 Kernel support for SDHCI Hosts
358 $(eval $(call KernelPackage,sdhci))
361 define KernelPackage/oprofile
362 SUBMENU:=$(OTHER_MENU)
363 TITLE:=OProfile profiling support
364 KCONFIG:=CONFIG_OPROFILE
365 FILES:=$(LINUX_DIR)/arch/$(LINUX_KARCH)/oprofile/oprofile.ko
366 DEPENDS:=@KERNEL_PROFILING
369 define KernelPackage/oprofile/description
370 Kernel module for support for oprofile system profiling
373 $(eval $(call KernelPackage,oprofile))
376 define KernelPackage/rfkill
377 SUBMENU:=$(OTHER_MENU)
378 TITLE:=RF switch subsystem support
379 DEPENDS:=@USE_RFKILL +kmod-input-core
382 CONFIG_RFKILL_INPUT=y \
383 CONFIG_RFKILL_LEDS=y \
386 $(LINUX_DIR)/net/rfkill/rfkill.ko
387 AUTOLOAD:=$(call AutoLoad,20,rfkill)
390 define KernelPackage/rfkill/description
391 Say Y here if you want to have control over RF switches
392 found on many WiFi and Bluetooth cards
395 $(eval $(call KernelPackage,rfkill))
398 define KernelPackage/softdog
399 SUBMENU:=$(OTHER_MENU)
400 TITLE:=Software watchdog driver
401 KCONFIG:=CONFIG_SOFT_WATCHDOG
402 FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/softdog.ko
403 AUTOLOAD:=$(call AutoLoad,50,softdog)
406 define KernelPackage/softdog/description
407 Software watchdog driver
410 $(eval $(call KernelPackage,softdog))
413 define KernelPackage/ssb
414 SUBMENU:=$(OTHER_MENU)
415 TITLE:=Silicon Sonics Backplane glue code
416 DEPENDS:=@PCI_SUPPORT @!TARGET_brcm47xx @!TARGET_brcm63xx
419 CONFIG_SSB_B43_PCI_BRIDGE=y \
420 CONFIG_SSB_DRIVER_MIPS=n \
421 CONFIG_SSB_DRIVER_PCICORE=y \
422 CONFIG_SSB_DRIVER_PCICORE_POSSIBLE=y \
423 CONFIG_SSB_PCIHOST=y \
424 CONFIG_SSB_PCIHOST_POSSIBLE=y \
425 CONFIG_SSB_POSSIBLE=y \
428 FILES:=$(LINUX_DIR)/drivers/ssb/ssb.ko
429 AUTOLOAD:=$(call AutoLoad,18,ssb,1)
432 define KernelPackage/ssb/description
433 Silicon Sonics Backplane glue code.
436 $(eval $(call KernelPackage,ssb))
439 define KernelPackage/bcma
440 SUBMENU:=$(OTHER_MENU)
442 DEPENDS:=@PCI_SUPPORT @!TARGET_brcm47xx
445 CONFIG_BCMA_POSSIBLE=y \
446 CONFIG_BCMA_BLOCKIO=y \
447 CONFIG_BCMA_HOST_PCI_POSSIBLE=y \
448 CONFIG_BCMA_HOST_PCI=y \
449 CONFIG_BCMA_HOST_SOC=n \
450 CONFIG_BCMA_DRIVER_MIPS=n \
451 CONFIG_BCMA_DRIVER_PCI_HOSTMODE=n \
452 CONFIG_BCMA_DRIVER_GMAC_CMN=n \
454 FILES:=$(LINUX_DIR)/drivers/bcma/bcma.ko
455 AUTOLOAD:=$(call AutoLoad,29,bcma)
458 define KernelPackage/bcma/description
459 Bus driver for Broadcom specific Advanced Microcontroller Bus Architecture
462 $(eval $(call KernelPackage,bcma))
465 define KernelPackage/wdt-omap
466 SUBMENU:=$(OTHER_MENU)
467 TITLE:=OMAP Watchdog timer
468 DEPENDS:=@(TARGET_omap24xx||TARGET_omap35xx)
469 KCONFIG:=CONFIG_OMAP_WATCHDOG
470 FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/omap_wdt.ko
471 AUTOLOAD:=$(call AutoLoad,50,omap_wdt.ko)
474 define KernelPackage/wdt-omap/description
475 Kernel module for TI omap watchdog timer
478 $(eval $(call KernelPackage,wdt-omap))
481 define KernelPackage/wdt-orion
482 SUBMENU:=$(OTHER_MENU)
483 TITLE:=Marvell Orion Watchdog timer
484 DEPENDS:=@TARGET_orion||TARGET_kirkwood||TARGET_mvebu
485 KCONFIG:=CONFIG_ORION_WATCHDOG
486 FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/orion_wdt.ko
487 AUTOLOAD:=$(call AutoLoad,50,orion_wdt)
490 define KernelPackage/wdt-orion/description
491 Kernel module for Marvell Orion, Kirkwood and Armada XP/370 watchdog timer
494 $(eval $(call KernelPackage,wdt-orion))
497 define KernelPackage/booke-wdt
498 SUBMENU:=$(OTHER_MENU)
499 TITLE:=PowerPC Book-E Watchdog Timer
500 DEPENDS:=@(TARGET_mpc85xx||TARGET_ppc40x||TARGET_ppc44x)
501 KCONFIG:=CONFIG_BOOKE_WDT
502 FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/booke_wdt.ko
503 AUTOLOAD:=$(call AutoLoad,50,booke_wdt)
506 define KernelPackage/booke-wdt/description
507 Kernel module for PowerPC Book-E Watchdog Timer
510 $(eval $(call KernelPackage,booke-wdt))
513 define KernelPackage/rtc-ds1307
514 SUBMENU:=$(OTHER_MENU)
515 TITLE:=Dallas/Maxim DS1307 (and compatible) RTC support
516 DEPENDS:=@RTC_SUPPORT +kmod-i2c-core
517 KCONFIG:=CONFIG_RTC_DRV_DS1307
518 FILES:=$(LINUX_DIR)/drivers/rtc/rtc-ds1307.ko
519 AUTOLOAD:=$(call AutoProbe,rtc-ds1307)
522 define KernelPackage/rtc-ds1307/description
523 Kernel module for Dallas/Maxim DS1307/DS1337/DS1338/DS1340/DS1388/DS3231,
524 Epson RX-8025 and various other compatible RTC chips connected via I2C.
527 $(eval $(call KernelPackage,rtc-ds1307))
530 define KernelPackage/rtc-ds1672
531 SUBMENU:=$(OTHER_MENU)
532 TITLE:=Dallas/Maxim DS1672 RTC support
533 DEPENDS:=@RTC_SUPPORT +kmod-i2c-core
534 KCONFIG:=CONFIG_RTC_DRV_DS1672
535 FILES:=$(LINUX_DIR)/drivers/rtc/rtc-ds1672.ko
536 AUTOLOAD:=$(call AutoProbe,rtc-ds1672)
539 define KernelPackage/rtc-ds1672/description
540 Kernel module for Dallas/Maxim DS1672 RTC.
543 $(eval $(call KernelPackage,rtc-ds1672))
546 define KernelPackage/rtc-isl1208
547 SUBMENU:=$(OTHER_MENU)
548 TITLE:=Intersil ISL1208 RTC support
549 DEPENDS:=@RTC_SUPPORT +kmod-i2c-core
550 KCONFIG:=CONFIG_RTC_DRV_ISL1208
551 FILES:=$(LINUX_DIR)/drivers/rtc/rtc-isl1208.ko
552 AUTOLOAD:=$(call AutoProbe,rtc-isl1208)
555 define KernelPackage/rtc-isl1208/description
556 Kernel module for Intersil ISL1208 RTC.
559 $(eval $(call KernelPackage,rtc-isl1208))
562 define KernelPackage/rtc-marvell
563 SUBMENU:=$(OTHER_MENU)
564 TITLE:=Marvell SoC built-in RTC support
565 DEPENDS:=@RTC_SUPPORT @TARGET_kirkwood||TARGET_orion||TARGET_mvebu
566 KCONFIG:=CONFIG_RTC_DRV_MV
567 FILES:=$(LINUX_DIR)/drivers/rtc/rtc-mv.ko
568 AUTOLOAD:=$(call AutoProbe,rtc-mv)
571 define KernelPackage/rtc-marvell/description
572 Kernel module for Marvell SoC built-in RTC.
575 $(eval $(call KernelPackage,rtc-marvell))
577 define KernelPackage/rtc-pcf8563
578 SUBMENU:=$(OTHER_MENU)
579 TITLE:=Philips PCF8563/Epson RTC8564 RTC support
580 DEPENDS:=@RTC_SUPPORT +kmod-i2c-core
581 KCONFIG:=CONFIG_RTC_DRV_PCF8563
582 FILES:=$(LINUX_DIR)/drivers/rtc/rtc-pcf8563.ko
583 AUTOLOAD:=$(call AutoProbe,rtc-pcf8563)
586 define KernelPackage/rtc-pcf8563/description
587 Kernel module for Philips PCF8563 RTC chip.
588 The Epson RTC8564 should work as well.
591 $(eval $(call KernelPackage,rtc-pcf8563))
594 define KernelPackage/rtc-pcf2123
595 SUBMENU:=$(OTHER_MENU)
596 TITLE:=Philips PCF2123 RTC support
597 DEPENDS:=@RTC_SUPPORT
598 KCONFIG:=CONFIG_RTC_DRV_PCF2123
599 FILES:=$(LINUX_DIR)/drivers/rtc/rtc-pcf2123.ko
600 AUTOLOAD:=$(call AutoProbe,rtc-pcf2123)
603 define KernelPackage/rtc-pcf2123/description
604 Kernel module for Philips PCF2123 RTC chip
607 $(eval $(call KernelPackage,rtc-pcf2123))
609 define KernelPackage/rtc-pt7c4338
610 SUBMENU:=$(OTHER_MENU)
611 TITLE:=Pericom PT7C4338 RTC support
612 DEPENDS:=@RTC_SUPPORT +kmod-i2c-core
613 KCONFIG:=CONFIG_RTC_DRV_PT7C4338
614 FILES:=$(LINUX_DIR)/drivers/rtc/rtc-pt7c4338.ko
615 AUTOLOAD:=$(call AutoProbe,rtc-pt7c4338)
618 define KernelPackage/rtc-pt7c4338/description
619 Kernel module for Pericom PT7C4338 i2c RTC chip
622 $(eval $(call KernelPackage,rtc-pt7c4338))
625 define KernelPackage/mtdtests
626 SUBMENU:=$(OTHER_MENU)
627 TITLE:=MTD subsystem tests
628 KCONFIG:=CONFIG_MTD_TESTS
631 $(LINUX_DIR)/drivers/mtd/tests/mtd_nandecctest.ko \
632 $(LINUX_DIR)/drivers/mtd/tests/mtd_oobtest.ko \
633 $(LINUX_DIR)/drivers/mtd/tests/mtd_pagetest.ko \
634 $(LINUX_DIR)/drivers/mtd/tests/mtd_readtest.ko \
635 $(LINUX_DIR)/drivers/mtd/tests/mtd_speedtest.ko \
636 $(LINUX_DIR)/drivers/mtd/tests/mtd_stresstest.ko \
637 $(LINUX_DIR)/drivers/mtd/tests/mtd_subpagetest.ko \
638 $(LINUX_DIR)/drivers/mtd/tests/mtd_torturetest.ko
641 define KernelPackage/mtdtests/description
642 Kernel modules for MTD subsystem/driver testing
645 $(eval $(call KernelPackage,mtdtests))
648 define KernelPackage/nand
649 SUBMENU:=$(OTHER_MENU)
650 TITLE:=NAND flash support
651 KCONFIG:=CONFIG_MTD_NAND \
652 CONFIG_MTD_NAND_IDS \
655 $(LINUX_DIR)/drivers/mtd/nand/nand_ids.ko \
656 $(LINUX_DIR)/drivers/mtd/nand/nand_ecc.ko \
657 $(LINUX_DIR)/drivers/mtd/nand/nand.ko
658 AUTOLOAD:=$(call AutoLoad,20,nand_ids nand_ecc nand)
661 define KernelPackage/nand/description
662 Kernel module for NAND support
665 $(eval $(call KernelPackage,nand))
668 define KernelPackage/nandsim
669 SUBMENU:=$(OTHER_MENU)
670 TITLE:=NAND simulator
672 KCONFIG:=CONFIG_MTD_NAND_NANDSIM
673 FILES:=$(LINUX_DIR)/drivers/mtd/nand/nandsim.ko
676 define KernelPackage/nandsim/description
677 Kernel module for NAND flash simulation.
680 $(eval $(call KernelPackage,nandsim))
682 define KernelPackage/serial-8250
683 SUBMENU:=$(OTHER_MENU)
685 KCONFIG:= CONFIG_SERIAL_8250 \
686 CONFIG_SERIAL_8250_NR_UARTS=16 \
687 CONFIG_SERIAL_8250_RUNTIME_UARTS=16 \
688 CONFIG_SERIAL_8250_EXTENDED=y \
689 CONFIG_SERIAL_8250_MANY_PORTS=y \
690 CONFIG_SERIAL_8250_SHARE_IRQ=y \
691 CONFIG_SERIAL_8250_DETECT_IRQ=n \
692 CONFIG_SERIAL_8250_RSA=n
693 FILES:=$(LINUX_DIR)/drivers/tty/serial/8250/8250.ko
696 define KernelPackage/serial-8250/description
697 Kernel module for 8250 UART based serial ports
700 $(eval $(call KernelPackage,serial-8250))
703 define KernelPackage/regmap
704 SUBMENU:=$(OTHER_MENU)
705 TITLE:=Generic register map support
706 DEPENDS:=+kmod-lib-lzo +kmod-i2c-core
707 KCONFIG:=CONFIG_REGMAP \
712 $(LINUX_DIR)/drivers/base/regmap/regmap-core.ko \
713 $(LINUX_DIR)/drivers/base/regmap/regmap-i2c.ko \
714 $(if $(CONFIG_SPI),$(LINUX_DIR)/drivers/base/regmap/regmap-spi.ko)
715 AUTOLOAD:=$(call AutoLoad,21,regmap-core regmap-i2c regmap-spi)
718 define KernelPackage/regmap/description
719 Generic register map support
722 $(eval $(call KernelPackage,regmap))
724 define KernelPackage/ikconfig
725 SUBMENU:=$(OTHER_MENU)
726 TITLE:=Kernel configuration via /proc/config.gz
727 KCONFIG:=CONFIG_IKCONFIG \
728 CONFIG_IKCONFIG_PROC=y
729 FILES:=$(LINUX_DIR)/kernel/configs.ko
730 AUTOLOAD:=$(call AutoLoad,70,configs)
733 define KernelPackage/ikconfig/description
734 Kernel configuration via /proc/config.gz
737 $(eval $(call KernelPackage,ikconfig))
740 define KernelPackage/zram
741 SUBMENU:=$(OTHER_MENU)
743 DEPENDS:=+kmod-lib-lzo +(!LINUX_3_10&&!LINUX_3_14):kmod-lib-lz4
747 CONFIG_ZRAM_DEBUG=n \
748 CONFIG_PGTABLE_MAPPING=n \
749 CONFIG_ZSMALLOC_STAT=n \
750 CONFIG_ZRAM_LZ4_COMPRESS=y
752 $(LINUX_DIR)/drivers/staging/zsmalloc/zsmalloc.ko@lt3.14 \
753 $(LINUX_DIR)/drivers/staging/zram/zram.ko@lt3.14 \
754 $(LINUX_DIR)/mm/zsmalloc.ko@ge3.14 \
755 $(LINUX_DIR)/drivers/block/zram/zram.ko@ge3.14
756 AUTOLOAD:=$(call AutoLoad,20,zsmalloc zram)
759 define KernelPackage/zram/description
760 Compressed RAM block device support
763 $(eval $(call KernelPackage,zram))
766 define KernelPackage/mvsdio
767 SUBMENU:=$(OTHER_MENU)
768 TITLE:=Marvell SDIO support
769 DEPENDS:=@TARGET_orion||TARGET_kirkwood||TARGET_mvebu +kmod-mmc
770 KCONFIG:=CONFIG_MMC_MVSDIO
771 FILES:=$(LINUX_DIR)/drivers/mmc/host/mvsdio.ko
772 AUTOLOAD:=$(call AutoProbe,mvsdio)
775 define KernelPackage/mvsdio/description
776 Kernel support for the Marvell SDIO controller
779 $(eval $(call KernelPackage,mvsdio))
782 define KernelPackage/pps
783 SUBMENU:=$(OTHER_MENU)
786 FILES:=$(LINUX_DIR)/drivers/pps/pps_core.ko
787 AUTOLOAD:=$(call AutoLoad,17,pps_core,1)
790 define KernelPackage/pps/description
791 PPS (Pulse Per Second) is a special pulse provided by some GPS
792 antennae. Userland can use it to get a high-precision time
796 $(eval $(call KernelPackage,pps))
799 define KernelPackage/pps-gpio
800 SUBMENU:=$(OTHER_MENU)
801 TITLE:=PPS client using GPIO
803 KCONFIG:=CONFIG_PPS_CLIENT_GPIO
804 FILES:=$(LINUX_DIR)/drivers/pps/clients/pps-gpio.ko
805 AUTOLOAD:=$(call AutoLoad,18,pps-gpio,1)
808 define KernelPackage/pps-gpio/description
809 Support for a PPS source using GPIO. To be useful you must
810 also register a platform device specifying the GPIO pin and
811 other options, usually in your board setup.
814 $(eval $(call KernelPackage,pps-gpio))
817 define KernelPackage/ptp
818 SUBMENU:=$(OTHER_MENU)
819 TITLE:=PTP clock support
821 KCONFIG:=CONFIG_PTP_1588_CLOCK
822 FILES:=$(LINUX_DIR)/drivers/ptp/ptp.ko
823 AUTOLOAD:=$(call AutoLoad,18,ptp,1)
826 define KernelPackage/ptp/description
827 The IEEE 1588 standard defines a method to precisely
828 synchronize distributed clocks over Ethernet networks.
831 $(eval $(call KernelPackage,ptp))
834 define KernelPackage/ptp-gianfar
835 SUBMENU:=$(OTHER_MENU)
836 TITLE:=Freescale Gianfar PTP support
837 DEPENDS:=@TARGET_mpc85xx +kmod-gianfar +kmod-ptp
838 KCONFIG:=CONFIG_PTP_1588_CLOCK_GIANFAR
839 FILES:=$(LINUX_DIR)/drivers/net/ethernet/freescale/gianfar_ptp.ko
840 AUTOLOAD:=$(call AutoProbe,gianfar_ptp)
843 define KernelPackage/ptp-gianfar/description
844 Kernel module for IEEE 1588 support for Freescale
845 Gianfar Ethernet drivers
848 $(eval $(call KernelPackage,ptp-gianfar))
851 define KernelPackage/random-core
852 SUBMENU:=$(OTHER_MENU)
853 TITLE:=Hardware Random Number Generator Core support
854 KCONFIG:=CONFIG_HW_RANDOM
855 FILES:=$(LINUX_DIR)/drivers/char/hw_random/rng-core.ko
858 define KernelPackage/random-core/description
859 Kernel module for the HW random number generator core infrastructure
862 $(eval $(call KernelPackage,random-core))
865 define KernelPackage/thermal
866 SUBMENU:=$(OTHER_MENU)
867 TITLE:=Generic Thermal sysfs driver
868 DEPENDS:=+kmod-hwmon-core
872 CONFIG_THERMAL_OF=y \
873 CONFIG_THERMAL_DEFAULT_GOV_STEP_WISE=y \
874 CONFIG_THERMAL_DEFAULT_GOV_FAIR_SHARE=n \
875 CONFIG_THERMAL_DEFAULT_GOV_USER_SPACE=n \
876 CONFIG_THERMAL_GOV_FAIR_SHARE=n \
877 CONFIG_THERMAL_GOV_STEP_WISE=y \
878 CONFIG_THERMAL_GOV_USER_SPACE=n \
879 CONFIG_THERMAL_HWMON=y \
880 CONFIG_THERMAL_EMULATION=n
881 FILES:=$(LINUX_DIR)/drivers/thermal/thermal_sys.ko
882 AUTOLOAD:=$(call AutoProbe,thermal_sys)
885 define KernelPackage/thermal/description
886 Generic Thermal Sysfs driver offers a generic mechanism for thermal
887 management. Usually it's made up of one or more thermal zone and cooling
891 $(eval $(call KernelPackage,thermal))
894 define KernelPackage/thermal-armada
895 SUBMENU:=$(OTHER_MENU)
896 TITLE:=Armada 370/XP thermal management
897 DEPENDS:=@TARGET_mvebu +kmod-thermal
898 KCONFIG:=CONFIG_ARMADA_THERMAL
899 FILES:=$(LINUX_DIR)/drivers/thermal/armada_thermal.ko
900 AUTOLOAD:=$(call AutoProbe,armada_thermal)
903 define KernelPackage/thermal-armada/description
904 Enable this module if you want to have support for thermal management
905 controller present in Armada 370 and Armada XP SoC.
908 $(eval $(call KernelPackage,thermal-armada))
911 define KernelPackage/thermal-imx
912 SUBMENU:=$(OTHER_MENU)
913 TITLE:=Temperature sensor driver for Freescale i.MX SoCs
914 DEPENDS:=@TARGET_imx6 +kmod-thermal
916 CONFIG_CPU_THERMAL=y \
918 FILES:=$(LINUX_DIR)/drivers/thermal/imx_thermal.ko
919 AUTOLOAD:=$(call AutoProbe,imx_thermal)
922 define KernelPackage/thermal-imx/description
923 Support for Temperature Monitor (TEMPMON) found on Freescale i.MX SoCs.
924 It supports one critical trip point and one passive trip point. The
925 cpufreq is used as the cooling device to throttle CPUs when the
926 passive trip is crossed.
929 $(eval $(call KernelPackage,thermal-imx))
932 define KernelPackage/thermal-kirkwood
933 SUBMENU:=$(OTHER_MENU)
934 TITLE:=Temperature sensor on Marvell Kirkwood SoCs
935 DEPENDS:=@TARGET_kirkwood +kmod-thermal
936 KCONFIG:=CONFIG_KIRKWOOD_THERMAL
937 FILES:=$(LINUX_DIR)/drivers/thermal/kirkwood_thermal.ko
938 AUTOLOAD:=$(call AutoProbe,kirkwood_thermal)
941 define KernelPackage/thermal-kirkwood/description
942 Support for the Kirkwood thermal sensor driver into the Linux thermal
943 framework. Only kirkwood 88F6282 and 88F6283 have this sensor.
946 $(eval $(call KernelPackage,thermal-kirkwood))
949 define KernelPackage/gpio-beeper
950 SUBMENU:=$(OTHER_MENU)
951 TITLE:=GPIO beeper support
952 DEPENDS:=+kmod-input-core
954 CONFIG_INPUT_MISC=y \
955 CONFIG_INPUT_GPIO_BEEPER
957 $(LINUX_DIR)/drivers/input/misc/gpio-beeper.ko
958 AUTOLOAD:=$(call AutoLoad,50,gpio-beeper)
961 define KernelPackage/gpio-beeper/description
962 This enables playing beeps through an GPIO-connected buzzer
965 $(eval $(call KernelPackage,gpio-beeper))
968 define KernelPackage/echo
969 SUBMENU:=$(OTHER_MENU)
970 TITLE:=Line Echo Canceller
972 FILES:=$(LINUX_DIR)/drivers/misc/echo/echo.ko
973 AUTOLOAD:=$(call AutoLoad,50,echo)
976 define KernelPackage/echo/description
977 This driver provides line echo cancelling support for mISDN and
981 $(eval $(call KernelPackage,echo))