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 \
264 ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),ge,3.16.0)),1)
265 FILES:=$(LINUX_DIR)/drivers/iio/adc/ad799x.ko
267 FILES:=$(LINUX_DIR)/drivers/staging/iio/adc/ad799x.ko
269 AUTOLOAD:=$(call AutoLoad,56,ad799x)
272 define KernelPackage/iio-ad799x/description
273 support for Analog Devices:
274 ad7991, ad7995, ad7999, ad7992, ad7993, ad7994, ad7997, ad7998
275 i2c analog to digital converters (ADC).
278 $(eval $(call KernelPackage,iio-ad799x))
281 define KernelPackage/iio-dht11
282 SUBMENU:=$(OTHER_MENU)
283 DEPENDS:=kmod-iio-core @GPIO_SUPPORT @USES_DEVICETREE
284 TITLE:=DHT11 (and compatible) humidity and temperature sensors
287 FILES:=$(LINUX_DIR)/drivers/iio/humidity/dht11.ko
288 AUTOLOAD:=$(call AutoLoad,56,dht11)
291 define KernelPackage/iio-dht11/description
292 support for DHT11 and DHT22 digitial humidity and temperature sensors
293 attached at GPIO lines. You will need a custom device tree file to
294 specify the GPIO line to use.
297 $(eval $(call KernelPackage,iio-dht11))
300 define KernelPackage/lp
301 SUBMENU:=$(OTHER_MENU)
302 TITLE:=Parallel port and line printer support
309 $(LINUX_DIR)/drivers/parport/parport.ko \
310 $(LINUX_DIR)/drivers/char/lp.ko \
311 $(LINUX_DIR)/drivers/char/ppdev.ko
312 AUTOLOAD:=$(call AutoLoad,50,parport lp)
315 $(eval $(call KernelPackage,lp))
318 define KernelPackage/mmc
319 SUBMENU:=$(OTHER_MENU)
320 TITLE:=MMC/SD Card Support
325 CONFIG_MMC_UNSAFE_RESUME=n \
326 CONFIG_MMC_BLOCK_BOUNCE=y \
327 CONFIG_MMC_TIFM_SD=n \
331 $(LINUX_DIR)/drivers/mmc/core/mmc_core.ko \
332 $(LINUX_DIR)/drivers/mmc/card/mmc_block.ko
333 AUTOLOAD:=$(call AutoProbe,mmc_core mmc_block,1)
336 define KernelPackage/mmc/description
337 Kernel support for MMC/SD cards
340 $(eval $(call KernelPackage,mmc))
343 define KernelPackage/sdhci
344 SUBMENU:=$(OTHER_MENU)
345 TITLE:=Secure Digital Host Controller Interface support
349 CONFIG_MMC_SDHCI_PLTFM \
350 CONFIG_MMC_SDHCI_PCI=n
352 $(LINUX_DIR)/drivers/mmc/host/sdhci.ko \
353 $(LINUX_DIR)/drivers/mmc/host/sdhci-pltfm.ko
355 AUTOLOAD:=$(call AutoProbe,sdhci sdhci-pltfm,1)
358 define KernelPackage/sdhci/description
359 Kernel support for SDHCI Hosts
362 $(eval $(call KernelPackage,sdhci))
365 define KernelPackage/oprofile
366 SUBMENU:=$(OTHER_MENU)
367 TITLE:=OProfile profiling support
368 KCONFIG:=CONFIG_OPROFILE
369 FILES:=$(LINUX_DIR)/arch/$(LINUX_KARCH)/oprofile/oprofile.ko
370 DEPENDS:=@KERNEL_PROFILING
373 define KernelPackage/oprofile/description
374 Kernel module for support for oprofile system profiling
377 $(eval $(call KernelPackage,oprofile))
380 define KernelPackage/rfkill
381 SUBMENU:=$(OTHER_MENU)
382 TITLE:=RF switch subsystem support
383 DEPENDS:=@USE_RFKILL +kmod-input-core
386 CONFIG_RFKILL_INPUT=y \
387 CONFIG_RFKILL_LEDS=y \
390 $(LINUX_DIR)/net/rfkill/rfkill.ko
391 AUTOLOAD:=$(call AutoLoad,20,rfkill)
394 define KernelPackage/rfkill/description
395 Say Y here if you want to have control over RF switches
396 found on many WiFi and Bluetooth cards
399 $(eval $(call KernelPackage,rfkill))
402 define KernelPackage/softdog
403 SUBMENU:=$(OTHER_MENU)
404 TITLE:=Software watchdog driver
405 KCONFIG:=CONFIG_SOFT_WATCHDOG
406 FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/softdog.ko
407 AUTOLOAD:=$(call AutoLoad,50,softdog)
410 define KernelPackage/softdog/description
411 Software watchdog driver
414 $(eval $(call KernelPackage,softdog))
417 define KernelPackage/ssb
418 SUBMENU:=$(OTHER_MENU)
419 TITLE:=Silicon Sonics Backplane glue code
420 DEPENDS:=@PCI_SUPPORT @!TARGET_brcm47xx @!TARGET_brcm63xx
423 CONFIG_SSB_B43_PCI_BRIDGE=y \
424 CONFIG_SSB_DRIVER_MIPS=n \
425 CONFIG_SSB_DRIVER_PCICORE=y \
426 CONFIG_SSB_DRIVER_PCICORE_POSSIBLE=y \
427 CONFIG_SSB_PCIHOST=y \
428 CONFIG_SSB_PCIHOST_POSSIBLE=y \
429 CONFIG_SSB_POSSIBLE=y \
432 FILES:=$(LINUX_DIR)/drivers/ssb/ssb.ko
433 AUTOLOAD:=$(call AutoLoad,18,ssb,1)
436 define KernelPackage/ssb/description
437 Silicon Sonics Backplane glue code.
440 $(eval $(call KernelPackage,ssb))
443 define KernelPackage/bcma
444 SUBMENU:=$(OTHER_MENU)
446 DEPENDS:=@PCI_SUPPORT @!TARGET_brcm47xx @!TARGET_ppc40x
449 CONFIG_BCMA_POSSIBLE=y \
450 CONFIG_BCMA_BLOCKIO=y \
451 CONFIG_BCMA_HOST_PCI_POSSIBLE=y \
452 CONFIG_BCMA_HOST_PCI=y \
453 CONFIG_BCMA_HOST_SOC=n \
454 CONFIG_BCMA_DRIVER_MIPS=n \
455 CONFIG_BCMA_DRIVER_PCI_HOSTMODE=n \
456 CONFIG_BCMA_DRIVER_GMAC_CMN=n \
458 FILES:=$(LINUX_DIR)/drivers/bcma/bcma.ko
459 AUTOLOAD:=$(call AutoLoad,29,bcma)
462 define KernelPackage/bcma/description
463 Bus driver for Broadcom specific Advanced Microcontroller Bus Architecture
466 $(eval $(call KernelPackage,bcma))
469 define KernelPackage/wdt-omap
470 SUBMENU:=$(OTHER_MENU)
471 TITLE:=OMAP Watchdog timer
472 DEPENDS:=@(TARGET_omap24xx||TARGET_omap35xx)
473 KCONFIG:=CONFIG_OMAP_WATCHDOG
474 FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/omap_wdt.ko
475 AUTOLOAD:=$(call AutoLoad,50,omap_wdt.ko)
478 define KernelPackage/wdt-omap/description
479 Kernel module for TI omap watchdog timer
482 $(eval $(call KernelPackage,wdt-omap))
485 define KernelPackage/wdt-orion
486 SUBMENU:=$(OTHER_MENU)
487 TITLE:=Marvell Orion Watchdog timer
488 DEPENDS:=@TARGET_orion||TARGET_kirkwood||TARGET_mvebu
489 KCONFIG:=CONFIG_ORION_WATCHDOG
490 FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/orion_wdt.ko
491 AUTOLOAD:=$(call AutoLoad,50,orion_wdt)
494 define KernelPackage/wdt-orion/description
495 Kernel module for Marvell Orion, Kirkwood and Armada XP/370 watchdog timer
498 $(eval $(call KernelPackage,wdt-orion))
501 define KernelPackage/booke-wdt
502 SUBMENU:=$(OTHER_MENU)
503 TITLE:=PowerPC Book-E Watchdog Timer
504 DEPENDS:=@(TARGET_mpc85xx||TARGET_ppc40x||TARGET_ppc44x)
505 KCONFIG:=CONFIG_BOOKE_WDT
506 FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/booke_wdt.ko
507 AUTOLOAD:=$(call AutoLoad,50,booke_wdt)
510 define KernelPackage/booke-wdt/description
511 Kernel module for PowerPC Book-E Watchdog Timer
514 $(eval $(call KernelPackage,booke-wdt))
517 define KernelPackage/rtc-ds1307
518 SUBMENU:=$(OTHER_MENU)
519 TITLE:=Dallas/Maxim DS1307 (and compatible) RTC support
520 $(call AddDepends/rtc)
521 DEPENDS+=+kmod-i2c-core
522 KCONFIG:=CONFIG_RTC_DRV_DS1307
523 FILES:=$(LINUX_DIR)/drivers/rtc/rtc-ds1307.ko
524 AUTOLOAD:=$(call AutoProbe,rtc-ds1307)
527 define KernelPackage/rtc-ds1307/description
528 Kernel module for Dallas/Maxim DS1307/DS1337/DS1338/DS1340/DS1388/DS3231,
529 Epson RX-8025 and various other compatible RTC chips connected via I2C.
532 $(eval $(call KernelPackage,rtc-ds1307))
535 define KernelPackage/rtc-ds1672
536 SUBMENU:=$(OTHER_MENU)
537 TITLE:=Dallas/Maxim DS1672 RTC support
538 $(call AddDepends/rtc)
539 DEPENDS+=+kmod-i2c-core
540 KCONFIG:=CONFIG_RTC_DRV_DS1672
541 FILES:=$(LINUX_DIR)/drivers/rtc/rtc-ds1672.ko
542 AUTOLOAD:=$(call AutoProbe,rtc-ds1672)
545 define KernelPackage/rtc-ds1672/description
546 Kernel module for Dallas/Maxim DS1672 RTC.
549 $(eval $(call KernelPackage,rtc-ds1672))
552 define KernelPackage/rtc-isl1208
553 SUBMENU:=$(OTHER_MENU)
554 TITLE:=Intersil ISL1208 RTC support
555 $(call AddDepends/rtc)
556 DEPENDS+=+kmod-i2c-core
557 KCONFIG:=CONFIG_RTC_DRV_ISL1208
558 FILES:=$(LINUX_DIR)/drivers/rtc/rtc-isl1208.ko
559 AUTOLOAD:=$(call AutoProbe,rtc-isl1208)
562 define KernelPackage/rtc-isl1208/description
563 Kernel module for Intersil ISL1208 RTC.
566 $(eval $(call KernelPackage,rtc-isl1208))
569 define KernelPackage/rtc-marvell
570 SUBMENU:=$(OTHER_MENU)
571 TITLE:=Marvell SoC built-in RTC support
572 $(call AddDepends/rtc)
573 DEPENDS+=@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))
585 define KernelPackage/rtc-pcf8563
586 SUBMENU:=$(OTHER_MENU)
587 TITLE:=Philips PCF8563/Epson RTC8564 RTC support
588 $(call AddDepends/rtc,+kmod-i2c-core)
589 KCONFIG:=CONFIG_RTC_DRV_PCF8563
590 FILES:=$(LINUX_DIR)/drivers/rtc/rtc-pcf8563.ko
591 AUTOLOAD:=$(call AutoProbe,rtc-pcf8563)
594 define KernelPackage/rtc-pcf8563/description
595 Kernel module for Philips PCF8563 RTC chip.
596 The Epson RTC8564 should work as well.
599 $(eval $(call KernelPackage,rtc-pcf8563))
602 define KernelPackage/rtc-pcf2123
603 SUBMENU:=$(OTHER_MENU)
604 TITLE:=Philips PCF2123 RTC support
605 $(call AddDepends/rtc)
606 KCONFIG:=CONFIG_RTC_DRV_PCF2123
607 FILES:=$(LINUX_DIR)/drivers/rtc/rtc-pcf2123.ko
608 AUTOLOAD:=$(call AutoProbe,rtc-pcf2123)
611 define KernelPackage/rtc-pcf2123/description
612 Kernel module for Philips PCF2123 RTC chip
615 $(eval $(call KernelPackage,rtc-pcf2123))
617 define KernelPackage/rtc-pt7c4338
618 SUBMENU:=$(OTHER_MENU)
619 TITLE:=Pericom PT7C4338 RTC support
620 $(call AddDepends/rtc,+kmod-i2c-core)
621 KCONFIG:=CONFIG_RTC_DRV_PT7C4338
622 FILES:=$(LINUX_DIR)/drivers/rtc/rtc-pt7c4338.ko
623 AUTOLOAD:=$(call AutoProbe,rtc-pt7c4338)
626 define KernelPackage/rtc-pt7c4338/description
627 Kernel module for Pericom PT7C4338 i2c RTC chip
630 $(eval $(call KernelPackage,rtc-pt7c4338))
633 define KernelPackage/mtdtests
634 SUBMENU:=$(OTHER_MENU)
635 TITLE:=MTD subsystem tests
636 KCONFIG:=CONFIG_MTD_TESTS
639 $(LINUX_DIR)/drivers/mtd/tests/mtd_nandecctest.ko \
640 $(LINUX_DIR)/drivers/mtd/tests/mtd_oobtest.ko \
641 $(LINUX_DIR)/drivers/mtd/tests/mtd_pagetest.ko \
642 $(LINUX_DIR)/drivers/mtd/tests/mtd_readtest.ko \
643 $(LINUX_DIR)/drivers/mtd/tests/mtd_speedtest.ko \
644 $(LINUX_DIR)/drivers/mtd/tests/mtd_stresstest.ko \
645 $(LINUX_DIR)/drivers/mtd/tests/mtd_subpagetest.ko \
646 $(LINUX_DIR)/drivers/mtd/tests/mtd_torturetest.ko
649 define KernelPackage/mtdtests/description
650 Kernel modules for MTD subsystem/driver testing
653 $(eval $(call KernelPackage,mtdtests))
656 define KernelPackage/nand
657 SUBMENU:=$(OTHER_MENU)
658 TITLE:=NAND flash support
659 KCONFIG:=CONFIG_MTD_NAND \
660 CONFIG_MTD_NAND_IDS \
663 $(LINUX_DIR)/drivers/mtd/nand/nand_ids.ko \
664 $(LINUX_DIR)/drivers/mtd/nand/nand_ecc.ko \
665 $(LINUX_DIR)/drivers/mtd/nand/nand.ko
666 AUTOLOAD:=$(call AutoLoad,20,nand_ids nand_ecc nand)
669 define KernelPackage/nand/description
670 Kernel module for NAND support
673 $(eval $(call KernelPackage,nand))
676 define KernelPackage/nandsim
677 SUBMENU:=$(OTHER_MENU)
678 TITLE:=NAND simulator
680 KCONFIG:=CONFIG_MTD_NAND_NANDSIM
681 FILES:=$(LINUX_DIR)/drivers/mtd/nand/nandsim.ko
684 define KernelPackage/nandsim/description
685 Kernel module for NAND flash simulation.
688 $(eval $(call KernelPackage,nandsim))
690 define KernelPackage/serial-8250
691 SUBMENU:=$(OTHER_MENU)
693 KCONFIG:= CONFIG_SERIAL_8250 \
694 CONFIG_SERIAL_8250_NR_UARTS=16 \
695 CONFIG_SERIAL_8250_RUNTIME_UARTS=16 \
696 CONFIG_SERIAL_8250_EXTENDED=y \
697 CONFIG_SERIAL_8250_MANY_PORTS=y \
698 CONFIG_SERIAL_8250_SHARE_IRQ=y \
699 CONFIG_SERIAL_8250_DETECT_IRQ=n \
700 CONFIG_SERIAL_8250_RSA=n
701 FILES:=$(LINUX_DIR)/drivers/tty/serial/8250/8250.ko
704 define KernelPackage/serial-8250/description
705 Kernel module for 8250 UART based serial ports
708 $(eval $(call KernelPackage,serial-8250))
711 define KernelPackage/regmap
712 SUBMENU:=$(OTHER_MENU)
713 TITLE:=Generic register map support
714 DEPENDS:=+kmod-lib-lzo +kmod-i2c-core
715 KCONFIG:=CONFIG_REGMAP \
720 $(LINUX_DIR)/drivers/base/regmap/regmap-core.ko \
721 $(LINUX_DIR)/drivers/base/regmap/regmap-i2c.ko \
722 $(if $(CONFIG_SPI),$(LINUX_DIR)/drivers/base/regmap/regmap-spi.ko)
723 AUTOLOAD:=$(call AutoLoad,21,regmap-core regmap-i2c regmap-spi)
726 define KernelPackage/regmap/description
727 Generic register map support
730 $(eval $(call KernelPackage,regmap))
732 define KernelPackage/ikconfig
733 SUBMENU:=$(OTHER_MENU)
734 TITLE:=Kernel configuration via /proc/config.gz
735 KCONFIG:=CONFIG_IKCONFIG \
736 CONFIG_IKCONFIG_PROC=y
737 FILES:=$(LINUX_DIR)/kernel/configs.ko
738 AUTOLOAD:=$(call AutoLoad,70,configs)
741 define KernelPackage/ikconfig/description
742 Kernel configuration via /proc/config.gz
745 $(eval $(call KernelPackage,ikconfig))
748 define KernelPackage/zram
749 SUBMENU:=$(OTHER_MENU)
751 DEPENDS:=+kmod-lib-lzo @!TARGET_ep93xx
755 CONFIG_ZRAM_DEBUG=n \
756 CONFIG_PGTABLE_MAPPING=n \
757 CONFIG_ZRAM_LZ4_COMPRESS=y
758 ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),ge,3.14.0)),1)
760 $(LINUX_DIR)/mm/zsmalloc.ko \
761 $(LINUX_DIR)/drivers/block/zram/zram.ko
764 $(LINUX_DIR)/drivers/staging/zsmalloc/zsmalloc.ko \
765 $(LINUX_DIR)/drivers/staging/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||TARGET_mvebu +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/ptp
829 SUBMENU:=$(OTHER_MENU)
830 TITLE:=PTP clock support
832 KCONFIG:=CONFIG_PTP_1588_CLOCK
833 FILES:=$(LINUX_DIR)/drivers/ptp/ptp.ko
834 AUTOLOAD:=$(call AutoLoad,18,ptp,1)
837 define KernelPackage/ptp/description
838 The IEEE 1588 standard defines a method to precisely
839 synchronize distributed clocks over Ethernet networks.
842 $(eval $(call KernelPackage,ptp))
845 define KernelPackage/ptp-gianfar
846 SUBMENU:=$(OTHER_MENU)
847 TITLE:=Freescale Gianfar PTP support
848 DEPENDS:=@TARGET_mpc85xx +kmod-gianfar +kmod-ptp
849 KCONFIG:=CONFIG_PTP_1588_CLOCK_GIANFAR
850 FILES:=$(LINUX_DIR)/drivers/net/ethernet/freescale/gianfar_ptp.ko
851 AUTOLOAD:=$(call AutoProbe,gianfar_ptp)
854 define KernelPackage/ptp-gianfar/description
855 Kernel module for IEEE 1588 support for Freescale
856 Gianfar Ethernet drivers
859 $(eval $(call KernelPackage,ptp-gianfar))
862 define KernelPackage/random-core
863 SUBMENU:=$(OTHER_MENU)
864 TITLE:=Hardware Random Number Generator Core support
865 KCONFIG:=CONFIG_HW_RANDOM
866 FILES:=$(LINUX_DIR)/drivers/char/hw_random/rng-core.ko
869 define KernelPackage/random-core/description
870 Kernel module for the HW random number generator core infrastructure
873 $(eval $(call KernelPackage,random-core))
876 define KernelPackage/thermal
877 SUBMENU:=$(OTHER_MENU)
878 TITLE:=Generic Thermal sysfs driver
879 DEPENDS:=+kmod-hwmon-core
883 CONFIG_THERMAL_OF=y \
884 CONFIG_THERMAL_DEFAULT_GOV_STEP_WISE=y \
885 CONFIG_THERMAL_DEFAULT_GOV_FAIR_SHARE=n \
886 CONFIG_THERMAL_DEFAULT_GOV_USER_SPACE=n \
887 CONFIG_THERMAL_GOV_FAIR_SHARE=n \
888 CONFIG_THERMAL_GOV_STEP_WISE=y \
889 CONFIG_THERMAL_GOV_USER_SPACE=n \
890 CONFIG_THERMAL_HWMON=y \
891 CONFIG_THERMAL_EMULATION=n
892 FILES:=$(LINUX_DIR)/drivers/thermal/thermal_sys.ko
893 AUTOLOAD:=$(call AutoProbe,thermal_sys)
896 define KernelPackage/thermal/description
897 Generic Thermal Sysfs driver offers a generic mechanism for thermal
898 management. Usually it's made up of one or more thermal zone and cooling
902 $(eval $(call KernelPackage,thermal))
905 define KernelPackage/thermal-armada
906 SUBMENU:=$(OTHER_MENU)
907 TITLE:=Armada 370/XP thermal management
908 DEPENDS:=@TARGET_mvebu +kmod-thermal
909 KCONFIG:=CONFIG_ARMADA_THERMAL
910 FILES:=$(LINUX_DIR)/drivers/thermal/armada_thermal.ko
911 AUTOLOAD:=$(call AutoProbe,armada_thermal)
914 define KernelPackage/thermal-armada/description
915 Enable this module if you want to have support for thermal management
916 controller present in Armada 370 and Armada XP SoC.
919 $(eval $(call KernelPackage,thermal-armada))
922 define KernelPackage/thermal-imx
923 SUBMENU:=$(OTHER_MENU)
924 TITLE:=Temperature sensor driver for Freescale i.MX SoCs
925 DEPENDS:=@TARGET_imx6 +kmod-thermal
927 CONFIG_CPU_THERMAL=y \
929 FILES:=$(LINUX_DIR)/drivers/thermal/imx_thermal.ko
930 AUTOLOAD:=$(call AutoProbe,imx_thermal)
933 define KernelPackage/thermal-imx/description
934 Support for Temperature Monitor (TEMPMON) found on Freescale i.MX SoCs.
935 It supports one critical trip point and one passive trip point. The
936 cpufreq is used as the cooling device to throttle CPUs when the
937 passive trip is crossed.
940 $(eval $(call KernelPackage,thermal-imx))
943 define KernelPackage/thermal-kirkwood
944 SUBMENU:=$(OTHER_MENU)
945 TITLE:=Temperature sensor on Marvell Kirkwood SoCs
946 DEPENDS:=@TARGET_kirkwood +kmod-thermal
947 KCONFIG:=CONFIG_KIRKWOOD_THERMAL
948 FILES:=$(LINUX_DIR)/drivers/thermal/kirkwood_thermal.ko
949 AUTOLOAD:=$(call AutoProbe,kirkwood_thermal)
952 define KernelPackage/thermal-kirkwood/description
953 Support for the Kirkwood thermal sensor driver into the Linux thermal
954 framework. Only kirkwood 88F6282 and 88F6283 have this sensor.
957 $(eval $(call KernelPackage,thermal-kirkwood))
960 define KernelPackage/gpio-beeper
961 SUBMENU:=$(OTHER_MENU)
962 TITLE:=GPIO beeper support
964 CONFIG_INPUT_MISC=y \
965 CONFIG_INPUT_GPIO_BEEPER
967 $(LINUX_DIR)/drivers/input/misc/gpio-beeper.ko
968 AUTOLOAD:=$(call AutoLoad,50,gpio-beeper)
969 $(call AddDepends/input)
972 define KernelPackage/gpio-beeper/description
973 This enables playing beeps through an GPIO-connected buzzer
976 $(eval $(call KernelPackage,gpio-beeper))