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
16 DEPENDS:=@!LINUX_3_8 @!LINUX_3_10 @!LINUX_3_13
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_8&&!LINUX_3_10&&!LINUX_3_13):kmod-6lowpan-iphc
39 CONFIG_BLUEZ_HCIUART \
50 CONFIG_BT_HCIUART_H4 \
53 $(call AddDepends/crc16)
54 $(call AddDepends/hid)
55 $(call AddDepends/rfkill)
57 $(LINUX_DIR)/net/bluetooth/bluetooth.ko \
58 $(LINUX_DIR)/net/bluetooth/rfcomm/rfcomm.ko \
59 $(LINUX_DIR)/net/bluetooth/bnep/bnep.ko \
60 $(LINUX_DIR)/net/bluetooth/hidp/hidp.ko \
61 $(LINUX_DIR)/drivers/bluetooth/hci_uart.ko \
62 $(LINUX_DIR)/drivers/bluetooth/btusb.ko
63 AUTOLOAD:=$(call AutoProbe,bluetooth rfcomm bnep hidp hci_uart btusb)
66 define KernelPackage/bluetooth/description
67 Kernel support for Bluetooth devices
70 $(eval $(call KernelPackage,bluetooth))
73 define KernelPackage/bluetooth_6lowpan
74 SUBMENU:=$(OTHER_MENU)
75 TITLE:=Bluetooth 6LoWPAN support
76 DEPENDS:=+kmod-bluetooth @!(LINUX_3_8||LINUX_3_10||LINUX_3_13||LINUX_3_14)
81 $(LINUX_DIR)/net/bluetooth/bluetooth_6lowpan.ko \
82 $(LINUX_DIR)/net/6lowpan/6lowpan.ko
83 AUTOLOAD:=$(call AutoProbe,bluetooth)
86 define KernelPackage/bluetooth_6lowpan/description
87 Kernel support for 6LoWPAN over Bluetooth Low Energy devices
90 $(eval $(call KernelPackage,bluetooth_6lowpan))
93 define KernelPackage/bluetooth-hci-h4p
94 SUBMENU:=$(OTHER_MENU)
95 TITLE:=HCI driver with H4 Nokia extensions
96 DEPENDS:=@TARGET_omap24xx +kmod-bluetooth
97 KCONFIG:=CONFIG_BT_HCIH4P
98 FILES:=$(LINUX_DIR)/drivers/bluetooth/hci_h4p/hci_h4p.ko
99 AUTOLOAD:=$(call AutoProbe,hci_h4p)
102 define KernelPackage/bluetooth-hci-h4p/description
103 HCI driver with H4 Nokia extensions
106 $(eval $(call KernelPackage,bluetooth-hci-h4p))
109 define KernelPackage/eeprom-93cx6
110 SUBMENU:=$(OTHER_MENU)
111 TITLE:=EEPROM 93CX6 support
112 KCONFIG:=CONFIG_EEPROM_93CX6
113 FILES:=$(LINUX_DIR)/drivers/misc/eeprom/eeprom_93cx6.ko
114 AUTOLOAD:=$(call AutoLoad,20,eeprom_93cx6)
117 define KernelPackage/eeprom-93cx6/description
118 Kernel module for EEPROM 93CX6 support
121 $(eval $(call KernelPackage,eeprom-93cx6))
124 define KernelPackage/eeprom-at24
125 SUBMENU:=$(OTHER_MENU)
126 TITLE:=EEPROM AT24 support
127 KCONFIG:=CONFIG_EEPROM_AT24
128 DEPENDS:=+kmod-i2c-core
129 FILES:=$(LINUX_DIR)/drivers/misc/eeprom/at24.ko
130 AUTOLOAD:=$(call AutoProbe,at24)
133 define KernelPackage/eeprom-at24/description
134 Kernel module for most I2C EEPROMs
137 $(eval $(call KernelPackage,eeprom-at24))
140 define KernelPackage/eeprom-at25
141 SUBMENU:=$(OTHER_MENU)
142 TITLE:=EEPROM AT25 support
143 KCONFIG:=CONFIG_EEPROM_AT25
144 FILES:=$(LINUX_DIR)/drivers/misc/eeprom/at25.ko
145 AUTOLOAD:=$(call AutoProbe,at25)
148 define KernelPackage/eeprom-at25/description
149 Kernel module for most SPI EEPROMs
152 $(eval $(call KernelPackage,eeprom-at25))
155 define KernelPackage/gpio-dev
156 SUBMENU:=$(OTHER_MENU)
157 TITLE:=Generic GPIO char device support
158 DEPENDS:=@GPIO_SUPPORT
159 KCONFIG:=CONFIG_GPIO_DEVICE
160 FILES:=$(LINUX_DIR)/drivers/char/gpio_dev.ko
161 AUTOLOAD:=$(call AutoLoad,40,gpio_dev)
164 define KernelPackage/gpio-dev/description
165 Kernel module to allows control of GPIO pins using a character device.
168 $(eval $(call KernelPackage,gpio-dev))
171 define KernelPackage/gpio-mcp23s08
172 SUBMENU:=$(OTHER_MENU)
173 TITLE:=Microchip MCP23xxx I/O expander
174 DEPENDS:=@GPIO_SUPPORT +PACKAGE_kmod-i2c-core:kmod-i2c-core
175 KCONFIG:=CONFIG_GPIO_MCP23S08
176 FILES:=$(LINUX_DIR)/drivers/gpio/gpio-mcp23s08.ko
177 AUTOLOAD:=$(call AutoLoad,40,gpio-mcp23s08)
180 define KernelPackage/gpio-mcp23s08/description
181 Kernel module for Microchip MCP23xxx SPI/I2C I/O expander
184 $(eval $(call KernelPackage,gpio-mcp23s08))
187 define KernelPackage/gpio-nxp-74hc164
188 SUBMENU:=$(OTHER_MENU)
189 TITLE:=NXP 74HC164 GPIO expander support
190 KCONFIG:=CONFIG_GPIO_NXP_74HC164
191 FILES:=$(LINUX_DIR)/drivers/gpio/nxp_74hc164.ko
192 AUTOLOAD:=$(call AutoProbe,nxp_74hc164)
195 define KernelPackage/gpio-nxp-74hc164/description
196 Kernel module for NXP 74HC164 GPIO expander
199 $(eval $(call KernelPackage,gpio-nxp-74hc164))
201 define KernelPackage/gpio-pca953x
202 SUBMENU:=$(OTHER_MENU)
203 DEPENDS:=@GPIO_SUPPORT +kmod-i2c-core
204 TITLE:=PCA95xx, TCA64xx, and MAX7310 I/O ports
205 KCONFIG:=CONFIG_GPIO_PCA953X
206 FILES:=$(LINUX_DIR)/drivers/gpio/gpio-pca953x.ko
207 AUTOLOAD:=$(call AutoLoad,55,gpio-pca953x)
210 define KernelPackage/gpio-pca953x/description
211 Kernel module for MAX731{0,2,3,5}, PCA6107, PCA953{4-9}, PCA955{4-7},
212 PCA957{4,5} and TCA64{08,16} I2C GPIO expanders
215 $(eval $(call KernelPackage,gpio-pca953x))
217 define KernelPackage/gpio-pcf857x
218 SUBMENU:=$(OTHER_MENU)
219 DEPENDS:=@GPIO_SUPPORT +kmod-i2c-core
220 TITLE:=PCX857x, PCA967x and MAX732X I2C GPIO expanders
221 KCONFIG:=CONFIG_GPIO_PCF857X
222 FILES:=$(LINUX_DIR)/drivers/gpio/gpio-pcf857x.ko
223 AUTOLOAD:=$(call AutoLoad,55,gpio-pcf857x)
226 define KernelPackage/gpio-pcf857x/description
227 Kernel module for PCF857x, PCA{85,96}7x, and MAX732[89] I2C GPIO expanders
230 $(eval $(call KernelPackage,gpio-pcf857x))
232 define KernelPackage/iio-core
233 SUBMENU:=$(OTHER_MENU)
234 TITLE:=Industrial IO core
237 CONFIG_IIO_BUFFER=y \
238 CONFIG_IIO_KFIFO_BUF \
239 CONFIG_IIO_TRIGGER=y \
240 CONFIG_IIO_TRIGGERED_BUFFER
242 $(LINUX_DIR)/drivers/iio/industrialio.ko \
243 $(if $(CONFIG_IIO_TRIGGERED_BUFFER),$(LINUX_DIR)/drivers/iio/industrialio-triggered-buffer.ko) \
244 $(LINUX_DIR)/drivers/iio/kfifo_buf.ko
245 AUTOLOAD:=$(call AutoLoad,55,industrialio kfifo_buf industrialio-triggered-buffer)
248 define KernelPackage/iio-core/description
249 The industrial I/O subsystem provides a unified framework for
250 drivers for many different types of embedded sensors using a
251 number of different physical interfaces (i2c, spi, etc)
254 $(eval $(call KernelPackage,iio-core))
257 define KernelPackage/iio-ad799x
258 SUBMENU:=$(OTHER_MENU)
259 DEPENDS:=kmod-i2c-core kmod-iio-core
260 TITLE:=Analog Devices AD799x ADC driver
262 CONFIG_AD799X_RING_BUFFER=y \
265 $(LINUX_DIR)/drivers/staging/iio/adc/ad799x.ko@lt3.16 \
266 $(LINUX_DIR)/drivers/iio/adc/ad799x.ko@ge3.16
267 AUTOLOAD:=$(call AutoLoad,56,ad799x)
270 define KernelPackage/iio-ad799x/description
271 support for Analog Devices:
272 ad7991, ad7995, ad7999, ad7992, ad7993, ad7994, ad7997, ad7998
273 i2c analog to digital converters (ADC).
276 $(eval $(call KernelPackage,iio-ad799x))
279 define KernelPackage/iio-dht11
280 SUBMENU:=$(OTHER_MENU)
281 DEPENDS:=kmod-iio-core @GPIO_SUPPORT @USES_DEVICETREE
282 TITLE:=DHT11 (and compatible) humidity and temperature sensors
285 FILES:=$(LINUX_DIR)/drivers/iio/humidity/dht11.ko
286 AUTOLOAD:=$(call AutoLoad,56,dht11)
289 define KernelPackage/iio-dht11/description
290 support for DHT11 and DHT22 digitial humidity and temperature sensors
291 attached at GPIO lines. You will need a custom device tree file to
292 specify the GPIO line to use.
295 $(eval $(call KernelPackage,iio-dht11))
298 define KernelPackage/lp
299 SUBMENU:=$(OTHER_MENU)
300 TITLE:=Parallel port and line printer support
307 $(LINUX_DIR)/drivers/parport/parport.ko \
308 $(LINUX_DIR)/drivers/char/lp.ko \
309 $(LINUX_DIR)/drivers/char/ppdev.ko
310 AUTOLOAD:=$(call AutoLoad,50,parport lp)
313 $(eval $(call KernelPackage,lp))
316 define KernelPackage/mmc
317 SUBMENU:=$(OTHER_MENU)
318 TITLE:=MMC/SD Card Support
323 CONFIG_MMC_UNSAFE_RESUME=n \
324 CONFIG_MMC_BLOCK_BOUNCE=y \
325 CONFIG_MMC_TIFM_SD=n \
329 $(LINUX_DIR)/drivers/mmc/core/mmc_core.ko \
330 $(LINUX_DIR)/drivers/mmc/card/mmc_block.ko
331 AUTOLOAD:=$(call AutoProbe,mmc_core mmc_block,1)
334 define KernelPackage/mmc/description
335 Kernel support for MMC/SD cards
338 $(eval $(call KernelPackage,mmc))
341 define KernelPackage/sdhci
342 SUBMENU:=$(OTHER_MENU)
343 TITLE:=Secure Digital Host Controller Interface support
347 CONFIG_MMC_SDHCI_PLTFM \
348 CONFIG_MMC_SDHCI_PCI=n
350 $(LINUX_DIR)/drivers/mmc/host/sdhci.ko \
351 $(LINUX_DIR)/drivers/mmc/host/sdhci-pltfm.ko
353 AUTOLOAD:=$(call AutoProbe,sdhci sdhci-pltfm,1)
356 define KernelPackage/sdhci/description
357 Kernel support for SDHCI Hosts
360 $(eval $(call KernelPackage,sdhci))
363 define KernelPackage/oprofile
364 SUBMENU:=$(OTHER_MENU)
365 TITLE:=OProfile profiling support
366 KCONFIG:=CONFIG_OPROFILE
367 FILES:=$(LINUX_DIR)/arch/$(LINUX_KARCH)/oprofile/oprofile.ko
368 DEPENDS:=@KERNEL_PROFILING
371 define KernelPackage/oprofile/description
372 Kernel module for support for oprofile system profiling
375 $(eval $(call KernelPackage,oprofile))
378 define KernelPackage/rfkill
379 SUBMENU:=$(OTHER_MENU)
380 TITLE:=RF switch subsystem support
381 DEPENDS:=@USE_RFKILL +kmod-input-core
384 CONFIG_RFKILL_INPUT=y \
385 CONFIG_RFKILL_LEDS=y \
388 $(LINUX_DIR)/net/rfkill/rfkill.ko
389 AUTOLOAD:=$(call AutoLoad,20,rfkill)
392 define KernelPackage/rfkill/description
393 Say Y here if you want to have control over RF switches
394 found on many WiFi and Bluetooth cards
397 $(eval $(call KernelPackage,rfkill))
400 define KernelPackage/softdog
401 SUBMENU:=$(OTHER_MENU)
402 TITLE:=Software watchdog driver
403 KCONFIG:=CONFIG_SOFT_WATCHDOG
404 FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/softdog.ko
405 AUTOLOAD:=$(call AutoLoad,50,softdog)
408 define KernelPackage/softdog/description
409 Software watchdog driver
412 $(eval $(call KernelPackage,softdog))
415 define KernelPackage/ssb
416 SUBMENU:=$(OTHER_MENU)
417 TITLE:=Silicon Sonics Backplane glue code
418 DEPENDS:=@PCI_SUPPORT @!TARGET_brcm47xx @!TARGET_brcm63xx
421 CONFIG_SSB_B43_PCI_BRIDGE=y \
422 CONFIG_SSB_DRIVER_MIPS=n \
423 CONFIG_SSB_DRIVER_PCICORE=y \
424 CONFIG_SSB_DRIVER_PCICORE_POSSIBLE=y \
425 CONFIG_SSB_PCIHOST=y \
426 CONFIG_SSB_PCIHOST_POSSIBLE=y \
427 CONFIG_SSB_POSSIBLE=y \
430 FILES:=$(LINUX_DIR)/drivers/ssb/ssb.ko
431 AUTOLOAD:=$(call AutoLoad,18,ssb,1)
434 define KernelPackage/ssb/description
435 Silicon Sonics Backplane glue code.
438 $(eval $(call KernelPackage,ssb))
441 define KernelPackage/bcma
442 SUBMENU:=$(OTHER_MENU)
444 DEPENDS:=@PCI_SUPPORT @!TARGET_brcm47xx @!TARGET_ppc40x
447 CONFIG_BCMA_POSSIBLE=y \
448 CONFIG_BCMA_BLOCKIO=y \
449 CONFIG_BCMA_HOST_PCI_POSSIBLE=y \
450 CONFIG_BCMA_HOST_PCI=y \
451 CONFIG_BCMA_HOST_SOC=n \
452 CONFIG_BCMA_DRIVER_MIPS=n \
453 CONFIG_BCMA_DRIVER_PCI_HOSTMODE=n \
454 CONFIG_BCMA_DRIVER_GMAC_CMN=n \
456 FILES:=$(LINUX_DIR)/drivers/bcma/bcma.ko
457 AUTOLOAD:=$(call AutoLoad,29,bcma)
460 define KernelPackage/bcma/description
461 Bus driver for Broadcom specific Advanced Microcontroller Bus Architecture
464 $(eval $(call KernelPackage,bcma))
467 define KernelPackage/wdt-omap
468 SUBMENU:=$(OTHER_MENU)
469 TITLE:=OMAP Watchdog timer
470 DEPENDS:=@(TARGET_omap24xx||TARGET_omap35xx)
471 KCONFIG:=CONFIG_OMAP_WATCHDOG
472 FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/omap_wdt.ko
473 AUTOLOAD:=$(call AutoLoad,50,omap_wdt.ko)
476 define KernelPackage/wdt-omap/description
477 Kernel module for TI omap watchdog timer
480 $(eval $(call KernelPackage,wdt-omap))
483 define KernelPackage/wdt-orion
484 SUBMENU:=$(OTHER_MENU)
485 TITLE:=Marvell Orion Watchdog timer
486 DEPENDS:=@TARGET_orion||TARGET_kirkwood||TARGET_mvebu
487 KCONFIG:=CONFIG_ORION_WATCHDOG
488 FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/orion_wdt.ko
489 AUTOLOAD:=$(call AutoLoad,50,orion_wdt)
492 define KernelPackage/wdt-orion/description
493 Kernel module for Marvell Orion, Kirkwood and Armada XP/370 watchdog timer
496 $(eval $(call KernelPackage,wdt-orion))
499 define KernelPackage/booke-wdt
500 SUBMENU:=$(OTHER_MENU)
501 TITLE:=PowerPC Book-E Watchdog Timer
502 DEPENDS:=@(TARGET_mpc85xx||TARGET_ppc40x||TARGET_ppc44x)
503 KCONFIG:=CONFIG_BOOKE_WDT
504 FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/booke_wdt.ko
505 AUTOLOAD:=$(call AutoLoad,50,booke_wdt)
508 define KernelPackage/booke-wdt/description
509 Kernel module for PowerPC Book-E Watchdog Timer
512 $(eval $(call KernelPackage,booke-wdt))
515 define KernelPackage/rtc-ds1307
516 SUBMENU:=$(OTHER_MENU)
517 TITLE:=Dallas/Maxim DS1307 (and compatible) RTC support
518 $(call AddDepends/rtc)
519 DEPENDS+=+kmod-i2c-core
520 KCONFIG:=CONFIG_RTC_DRV_DS1307
521 FILES:=$(LINUX_DIR)/drivers/rtc/rtc-ds1307.ko
522 AUTOLOAD:=$(call AutoProbe,rtc-ds1307)
525 define KernelPackage/rtc-ds1307/description
526 Kernel module for Dallas/Maxim DS1307/DS1337/DS1338/DS1340/DS1388/DS3231,
527 Epson RX-8025 and various other compatible RTC chips connected via I2C.
530 $(eval $(call KernelPackage,rtc-ds1307))
533 define KernelPackage/rtc-ds1672
534 SUBMENU:=$(OTHER_MENU)
535 TITLE:=Dallas/Maxim DS1672 RTC support
536 $(call AddDepends/rtc)
537 DEPENDS+=+kmod-i2c-core
538 KCONFIG:=CONFIG_RTC_DRV_DS1672
539 FILES:=$(LINUX_DIR)/drivers/rtc/rtc-ds1672.ko
540 AUTOLOAD:=$(call AutoProbe,rtc-ds1672)
543 define KernelPackage/rtc-ds1672/description
544 Kernel module for Dallas/Maxim DS1672 RTC.
547 $(eval $(call KernelPackage,rtc-ds1672))
550 define KernelPackage/rtc-isl1208
551 SUBMENU:=$(OTHER_MENU)
552 TITLE:=Intersil ISL1208 RTC support
553 $(call AddDepends/rtc)
554 DEPENDS+=+kmod-i2c-core
555 KCONFIG:=CONFIG_RTC_DRV_ISL1208
556 FILES:=$(LINUX_DIR)/drivers/rtc/rtc-isl1208.ko
557 AUTOLOAD:=$(call AutoProbe,rtc-isl1208)
560 define KernelPackage/rtc-isl1208/description
561 Kernel module for Intersil ISL1208 RTC.
564 $(eval $(call KernelPackage,rtc-isl1208))
567 define KernelPackage/rtc-marvell
568 SUBMENU:=$(OTHER_MENU)
569 TITLE:=Marvell SoC built-in RTC support
570 $(call AddDepends/rtc)
571 DEPENDS+=@TARGET_kirkwood||TARGET_orion||TARGET_mvebu
572 KCONFIG:=CONFIG_RTC_DRV_MV
573 FILES:=$(LINUX_DIR)/drivers/rtc/rtc-mv.ko
574 AUTOLOAD:=$(call AutoProbe,rtc-mv)
577 define KernelPackage/rtc-marvell/description
578 Kernel module for Marvell SoC built-in RTC.
581 $(eval $(call KernelPackage,rtc-marvell))
583 define KernelPackage/rtc-pcf8563
584 SUBMENU:=$(OTHER_MENU)
585 TITLE:=Philips PCF8563/Epson RTC8564 RTC support
586 $(call AddDepends/rtc,+kmod-i2c-core)
587 KCONFIG:=CONFIG_RTC_DRV_PCF8563
588 FILES:=$(LINUX_DIR)/drivers/rtc/rtc-pcf8563.ko
589 AUTOLOAD:=$(call AutoProbe,rtc-pcf8563)
592 define KernelPackage/rtc-pcf8563/description
593 Kernel module for Philips PCF8563 RTC chip.
594 The Epson RTC8564 should work as well.
597 $(eval $(call KernelPackage,rtc-pcf8563))
600 define KernelPackage/rtc-pcf2123
601 SUBMENU:=$(OTHER_MENU)
602 TITLE:=Philips PCF2123 RTC support
603 $(call AddDepends/rtc)
604 KCONFIG:=CONFIG_RTC_DRV_PCF2123
605 FILES:=$(LINUX_DIR)/drivers/rtc/rtc-pcf2123.ko
606 AUTOLOAD:=$(call AutoProbe,rtc-pcf2123)
609 define KernelPackage/rtc-pcf2123/description
610 Kernel module for Philips PCF2123 RTC chip
613 $(eval $(call KernelPackage,rtc-pcf2123))
615 define KernelPackage/rtc-pt7c4338
616 SUBMENU:=$(OTHER_MENU)
617 TITLE:=Pericom PT7C4338 RTC support
618 $(call AddDepends/rtc,+kmod-i2c-core)
619 KCONFIG:=CONFIG_RTC_DRV_PT7C4338
620 FILES:=$(LINUX_DIR)/drivers/rtc/rtc-pt7c4338.ko
621 AUTOLOAD:=$(call AutoProbe,rtc-pt7c4338)
624 define KernelPackage/rtc-pt7c4338/description
625 Kernel module for Pericom PT7C4338 i2c RTC chip
628 $(eval $(call KernelPackage,rtc-pt7c4338))
631 define KernelPackage/mtdtests
632 SUBMENU:=$(OTHER_MENU)
633 TITLE:=MTD subsystem tests
634 KCONFIG:=CONFIG_MTD_TESTS
637 $(LINUX_DIR)/drivers/mtd/tests/mtd_nandecctest.ko \
638 $(LINUX_DIR)/drivers/mtd/tests/mtd_oobtest.ko \
639 $(LINUX_DIR)/drivers/mtd/tests/mtd_pagetest.ko \
640 $(LINUX_DIR)/drivers/mtd/tests/mtd_readtest.ko \
641 $(LINUX_DIR)/drivers/mtd/tests/mtd_speedtest.ko \
642 $(LINUX_DIR)/drivers/mtd/tests/mtd_stresstest.ko \
643 $(LINUX_DIR)/drivers/mtd/tests/mtd_subpagetest.ko \
644 $(LINUX_DIR)/drivers/mtd/tests/mtd_torturetest.ko
647 define KernelPackage/mtdtests/description
648 Kernel modules for MTD subsystem/driver testing
651 $(eval $(call KernelPackage,mtdtests))
654 define KernelPackage/nand
655 SUBMENU:=$(OTHER_MENU)
656 TITLE:=NAND flash support
657 KCONFIG:=CONFIG_MTD_NAND \
658 CONFIG_MTD_NAND_IDS \
661 $(LINUX_DIR)/drivers/mtd/nand/nand_ids.ko \
662 $(LINUX_DIR)/drivers/mtd/nand/nand_ecc.ko \
663 $(LINUX_DIR)/drivers/mtd/nand/nand.ko
664 AUTOLOAD:=$(call AutoLoad,20,nand_ids nand_ecc nand)
667 define KernelPackage/nand/description
668 Kernel module for NAND support
671 $(eval $(call KernelPackage,nand))
674 define KernelPackage/nandsim
675 SUBMENU:=$(OTHER_MENU)
676 TITLE:=NAND simulator
678 KCONFIG:=CONFIG_MTD_NAND_NANDSIM
679 FILES:=$(LINUX_DIR)/drivers/mtd/nand/nandsim.ko
682 define KernelPackage/nandsim/description
683 Kernel module for NAND flash simulation.
686 $(eval $(call KernelPackage,nandsim))
688 define KernelPackage/serial-8250
689 SUBMENU:=$(OTHER_MENU)
691 KCONFIG:= CONFIG_SERIAL_8250 \
692 CONFIG_SERIAL_8250_NR_UARTS=16 \
693 CONFIG_SERIAL_8250_RUNTIME_UARTS=16 \
694 CONFIG_SERIAL_8250_EXTENDED=y \
695 CONFIG_SERIAL_8250_MANY_PORTS=y \
696 CONFIG_SERIAL_8250_SHARE_IRQ=y \
697 CONFIG_SERIAL_8250_DETECT_IRQ=n \
698 CONFIG_SERIAL_8250_RSA=n
699 FILES:=$(LINUX_DIR)/drivers/tty/serial/8250/8250$(if $(CONFIG_LINUX_3_8),_core).ko
702 define KernelPackage/serial-8250/description
703 Kernel module for 8250 UART based serial ports
706 $(eval $(call KernelPackage,serial-8250))
709 define KernelPackage/regmap
710 SUBMENU:=$(OTHER_MENU)
711 TITLE:=Generic register map support
712 DEPENDS:=+kmod-lib-lzo +kmod-i2c-core
713 KCONFIG:=CONFIG_REGMAP \
718 $(LINUX_DIR)/drivers/base/regmap/regmap-core.ko \
719 $(LINUX_DIR)/drivers/base/regmap/regmap-i2c.ko \
720 $(if $(CONFIG_SPI),$(LINUX_DIR)/drivers/base/regmap/regmap-spi.ko)
721 AUTOLOAD:=$(call AutoLoad,21,regmap-core regmap-i2c regmap-spi)
724 define KernelPackage/regmap/description
725 Generic register map support
728 $(eval $(call KernelPackage,regmap))
730 define KernelPackage/ikconfig
731 SUBMENU:=$(OTHER_MENU)
732 TITLE:=Kernel configuration via /proc/config.gz
733 KCONFIG:=CONFIG_IKCONFIG \
734 CONFIG_IKCONFIG_PROC=y
735 FILES:=$(LINUX_DIR)/kernel/configs.ko
736 AUTOLOAD:=$(call AutoLoad,70,configs)
739 define KernelPackage/ikconfig/description
740 Kernel configuration via /proc/config.gz
743 $(eval $(call KernelPackage,ikconfig))
746 define KernelPackage/zram
747 SUBMENU:=$(OTHER_MENU)
749 DEPENDS:=+kmod-lib-lzo @!TARGET_ep93xx +(!LINUX_3_8&&!LINUX_3_10&&!LINUX_3_13&&!LINUX_3_14):kmod-lib-lz4
753 CONFIG_ZRAM_DEBUG=n \
754 CONFIG_PGTABLE_MAPPING=n \
755 CONFIG_ZRAM_LZ4_COMPRESS=y
757 $(LINUX_DIR)/drivers/staging/zsmalloc/zsmalloc.ko@lt3.14 \
758 $(LINUX_DIR)/drivers/staging/zram/zram.ko@lt3.14 \
759 $(LINUX_DIR)/mm/zsmalloc.ko@ge3.14 \
760 $(LINUX_DIR)/drivers/block/zram/zram.ko@ge3.14
761 AUTOLOAD:=$(call AutoLoad,20,zsmalloc zram)
764 define KernelPackage/zram/description
765 Compressed RAM block device support
768 $(eval $(call KernelPackage,zram))
771 define KernelPackage/mvsdio
772 SUBMENU:=$(OTHER_MENU)
773 TITLE:=Marvell SDIO support
774 DEPENDS:=@TARGET_orion||TARGET_kirkwood||TARGET_mvebu +kmod-mmc
775 KCONFIG:=CONFIG_MMC_MVSDIO
776 FILES:=$(LINUX_DIR)/drivers/mmc/host/mvsdio.ko
777 AUTOLOAD:=$(call AutoProbe,mvsdio)
780 define KernelPackage/mvsdio/description
781 Kernel support for the Marvell SDIO controller
784 $(eval $(call KernelPackage,mvsdio))
787 define KernelPackage/pps
788 SUBMENU:=$(OTHER_MENU)
791 FILES:=$(LINUX_DIR)/drivers/pps/pps_core.ko
792 AUTOLOAD:=$(call AutoLoad,17,pps_core,1)
795 define KernelPackage/pps/description
796 PPS (Pulse Per Second) is a special pulse provided by some GPS
797 antennae. Userland can use it to get a high-precision time
801 $(eval $(call KernelPackage,pps))
804 define KernelPackage/pps-gpio
805 SUBMENU:=$(OTHER_MENU)
806 TITLE:=PPS client using GPIO
808 KCONFIG:=CONFIG_PPS_CLIENT_GPIO
809 FILES:=$(LINUX_DIR)/drivers/pps/clients/pps-gpio.ko
810 AUTOLOAD:=$(call AutoLoad,18,pps-gpio,1)
813 define KernelPackage/pps-gpio/description
814 Support for a PPS source using GPIO. To be useful you must
815 also register a platform device specifying the GPIO pin and
816 other options, usually in your board setup.
819 $(eval $(call KernelPackage,pps-gpio))
822 define KernelPackage/ptp
823 SUBMENU:=$(OTHER_MENU)
824 TITLE:=PTP clock support
826 KCONFIG:=CONFIG_PTP_1588_CLOCK
827 FILES:=$(LINUX_DIR)/drivers/ptp/ptp.ko
828 AUTOLOAD:=$(call AutoLoad,18,ptp,1)
831 define KernelPackage/ptp/description
832 The IEEE 1588 standard defines a method to precisely
833 synchronize distributed clocks over Ethernet networks.
836 $(eval $(call KernelPackage,ptp))
839 define KernelPackage/ptp-gianfar
840 SUBMENU:=$(OTHER_MENU)
841 TITLE:=Freescale Gianfar PTP support
842 DEPENDS:=@TARGET_mpc85xx +kmod-gianfar +kmod-ptp
843 KCONFIG:=CONFIG_PTP_1588_CLOCK_GIANFAR
844 FILES:=$(LINUX_DIR)/drivers/net/ethernet/freescale/gianfar_ptp.ko
845 AUTOLOAD:=$(call AutoProbe,gianfar_ptp)
848 define KernelPackage/ptp-gianfar/description
849 Kernel module for IEEE 1588 support for Freescale
850 Gianfar Ethernet drivers
853 $(eval $(call KernelPackage,ptp-gianfar))
856 define KernelPackage/random-core
857 SUBMENU:=$(OTHER_MENU)
858 TITLE:=Hardware Random Number Generator Core support
859 KCONFIG:=CONFIG_HW_RANDOM
860 FILES:=$(LINUX_DIR)/drivers/char/hw_random/rng-core.ko
863 define KernelPackage/random-core/description
864 Kernel module for the HW random number generator core infrastructure
867 $(eval $(call KernelPackage,random-core))
870 define KernelPackage/thermal
871 SUBMENU:=$(OTHER_MENU)
872 TITLE:=Generic Thermal sysfs driver
873 DEPENDS:=+kmod-hwmon-core
877 CONFIG_THERMAL_OF=y \
878 CONFIG_THERMAL_DEFAULT_GOV_STEP_WISE=y \
879 CONFIG_THERMAL_DEFAULT_GOV_FAIR_SHARE=n \
880 CONFIG_THERMAL_DEFAULT_GOV_USER_SPACE=n \
881 CONFIG_THERMAL_GOV_FAIR_SHARE=n \
882 CONFIG_THERMAL_GOV_STEP_WISE=y \
883 CONFIG_THERMAL_GOV_USER_SPACE=n \
884 CONFIG_THERMAL_HWMON=y \
885 CONFIG_THERMAL_EMULATION=n
886 FILES:=$(LINUX_DIR)/drivers/thermal/thermal_sys.ko
887 AUTOLOAD:=$(call AutoProbe,thermal_sys)
890 define KernelPackage/thermal/description
891 Generic Thermal Sysfs driver offers a generic mechanism for thermal
892 management. Usually it's made up of one or more thermal zone and cooling
896 $(eval $(call KernelPackage,thermal))
899 define KernelPackage/thermal-armada
900 SUBMENU:=$(OTHER_MENU)
901 TITLE:=Armada 370/XP thermal management
902 DEPENDS:=@TARGET_mvebu +kmod-thermal
903 KCONFIG:=CONFIG_ARMADA_THERMAL
904 FILES:=$(LINUX_DIR)/drivers/thermal/armada_thermal.ko
905 AUTOLOAD:=$(call AutoProbe,armada_thermal)
908 define KernelPackage/thermal-armada/description
909 Enable this module if you want to have support for thermal management
910 controller present in Armada 370 and Armada XP SoC.
913 $(eval $(call KernelPackage,thermal-armada))
916 define KernelPackage/thermal-imx
917 SUBMENU:=$(OTHER_MENU)
918 TITLE:=Temperature sensor driver for Freescale i.MX SoCs
919 DEPENDS:=@TARGET_imx6 +kmod-thermal
921 CONFIG_CPU_THERMAL=y \
923 FILES:=$(LINUX_DIR)/drivers/thermal/imx_thermal.ko
924 AUTOLOAD:=$(call AutoProbe,imx_thermal)
927 define KernelPackage/thermal-imx/description
928 Support for Temperature Monitor (TEMPMON) found on Freescale i.MX SoCs.
929 It supports one critical trip point and one passive trip point. The
930 cpufreq is used as the cooling device to throttle CPUs when the
931 passive trip is crossed.
934 $(eval $(call KernelPackage,thermal-imx))
937 define KernelPackage/thermal-kirkwood
938 SUBMENU:=$(OTHER_MENU)
939 TITLE:=Temperature sensor on Marvell Kirkwood SoCs
940 DEPENDS:=@TARGET_kirkwood +kmod-thermal
941 KCONFIG:=CONFIG_KIRKWOOD_THERMAL
942 FILES:=$(LINUX_DIR)/drivers/thermal/kirkwood_thermal.ko
943 AUTOLOAD:=$(call AutoProbe,kirkwood_thermal)
946 define KernelPackage/thermal-kirkwood/description
947 Support for the Kirkwood thermal sensor driver into the Linux thermal
948 framework. Only kirkwood 88F6282 and 88F6283 have this sensor.
951 $(eval $(call KernelPackage,thermal-kirkwood))
954 define KernelPackage/gpio-beeper
955 SUBMENU:=$(OTHER_MENU)
956 TITLE:=GPIO beeper support
958 CONFIG_INPUT_MISC=y \
959 CONFIG_INPUT_GPIO_BEEPER
961 $(LINUX_DIR)/drivers/input/misc/gpio-beeper.ko
962 AUTOLOAD:=$(call AutoLoad,50,gpio-beeper)
963 $(call AddDepends/input)
966 define KernelPackage/gpio-beeper/description
967 This enables playing beeps through an GPIO-connected buzzer
970 $(eval $(call KernelPackage,gpio-beeper))