kernel: add missing zram option
[openwrt.git] / package / kernel / linux / modules / other.mk
index 15c9120..406eb52 100644 (file)
@@ -162,6 +162,22 @@ endef
 
 $(eval $(call KernelPackage,gpio-nxp-74hc164))
 
+define KernelPackage/gpio-pca953x
+  SUBMENU:=$(OTHER_MENU)
+  DEPENDS:=@GPIO_SUPPORT +kmod-i2c-core
+  TITLE:=PCA95xx, TCA64xx, and MAX7310 I/O ports
+  KCONFIG:=CONFIG_GPIO_PCA953X
+  FILES:=$(LINUX_DIR)/drivers/gpio/gpio-pca953x.ko
+  AUTOLOAD:=$(call AutoLoad,55,gpio-pca953x)
+endef
+
+define KernelPackage/gpio-pca953x/description
+ Kernel module for MAX731{0,2,3,5}, PCA6107, PCA953{4-9}, PCA955{4-7},
+ PCA957{4,5} and TCA64{08,16} I2C GPIO expanders
+endef
+
+$(eval $(call KernelPackage,gpio-pca953x))
+
 define KernelPackage/gpio-pcf857x
   SUBMENU:=$(OTHER_MENU)
   DEPENDS:=@GPIO_SUPPORT +kmod-i2c-core
@@ -177,6 +193,51 @@ endef
 
 $(eval $(call KernelPackage,gpio-pcf857x))
 
+define KernelPackage/iio-core
+  SUBMENU:=$(OTHER_MENU)
+  DEPENDS:=@!LINUX_3_3 @!LINUX_3_6
+  TITLE:=Industrial IO core
+  KCONFIG:= \
+       CONFIG_IIO \
+       CONFIG_IIO_BUFFER=y \
+       CONFIG_IIO_KFIFO_BUF \
+       CONFIG_IIO_TRIGGER=y \
+       CONFIG_IIO_TRIGGERED_BUFFER
+  FILES:= \
+       $(LINUX_DIR)/drivers/iio/industrialio.ko \
+       $(if $(CONFIG_IIO_TRIGGERED_BUFFER),$(LINUX_DIR)/drivers/iio/industrialio-triggered-buffer.ko) \
+       $(LINUX_DIR)/drivers/iio/kfifo_buf.ko
+  AUTOLOAD:=$(call AutoLoad,55,industrialio kfifo_buf industrialio-triggered-buffer)
+endef
+
+define KernelPackage/iio-core/description
+ The industrial I/O subsystem provides a unified framework for
+ drivers for many different types of embedded sensors using a
+ number of different physical interfaces (i2c, spi, etc)
+endef
+
+$(eval $(call KernelPackage,iio-core))
+
+
+define KernelPackage/iio-ad799x
+  SUBMENU:=$(OTHER_MENU)
+  DEPENDS:=kmod-i2c-core kmod-iio-core
+  TITLE:=Analog Devices AD799x ADC driver
+  KCONFIG:= \
+       CONFIG_AD799X_RING_BUFFER=y \
+       CONFIG_AD799X
+  FILES:=$(LINUX_DIR)/drivers/staging/iio/adc/ad799x.ko
+  AUTOLOAD:=$(call AutoLoad,56,ad799x)
+endef
+
+define KernelPackage/iio-ad799x/description
+ support for Analog Devices:
+ ad7991, ad7995, ad7999, ad7992, ad7993, ad7994, ad7997, ad7998
+ i2c analog to digital converters (ADC). WARNING! This driver is still staging!
+endef
+
+$(eval $(call KernelPackage,iio-ad799x))
+
 define KernelPackage/lp
   SUBMENU:=$(OTHER_MENU)
   TITLE:=Parallel port and line printer support
@@ -204,7 +265,6 @@ define KernelPackage/mmc
        CONFIG_MMC_DEBUG=n \
        CONFIG_MMC_UNSAFE_RESUME=n \
        CONFIG_MMC_BLOCK_BOUNCE=y \
-       CONFIG_MMC_SDHCI=n \
        CONFIG_MMC_TIFM_SD=n \
        CONFIG_MMC_WBSD=n \
        CONFIG_SDIO_UART=n
@@ -221,6 +281,28 @@ endef
 $(eval $(call KernelPackage,mmc))
 
 
+define KernelPackage/sdhci
+  SUBMENU:=$(OTHER_MENU)
+  TITLE:=Secure Digital Host Controller Interface support
+  DEPENDS:=+kmod-mmc
+  KCONFIG:= \
+       CONFIG_MMC_SDHCI \
+       CONFIG_MMC_SDHCI_PLTFM \
+       CONFIG_MMC_SDHCI_PCI=n
+  FILES:= \
+       $(LINUX_DIR)/drivers/mmc/host/sdhci.ko \
+       $(LINUX_DIR)/drivers/mmc/host/sdhci-pltfm.ko
+
+  AUTOLOAD:=$(call AutoProbe,sdhci sdhci-pltfm,1)
+endef
+
+define KernelPackage/sdhci/description
+ Kernel support for SDHCI Hosts
+endef
+
+$(eval $(call KernelPackage,sdhci))
+
+
 define KernelPackage/oprofile
   SUBMENU:=$(OTHER_MENU)
   TITLE:=OProfile profiling support
@@ -403,6 +485,23 @@ endef
 $(eval $(call KernelPackage,pwm-gpio))
 
 
+define KernelPackage/rtc-ds1672
+  SUBMENU:=$(OTHER_MENU)
+  TITLE:=Dallas/Maxim DS1672 RTC support
+  $(call AddDepends/rtc)
+  DEPENDS+=+kmod-i2c-core
+  KCONFIG:=CONFIG_RTC_DRV_DS1672
+  FILES:=$(LINUX_DIR)/drivers/rtc/rtc-ds1672.ko
+  AUTOLOAD:=$(call AutoProbe,rtc-ds1672)
+endef
+
+define KernelPackage/rtc-ds1672/description
+ Kernel module for Dallas/Maxim DS1672 RTC.
+endef
+
+$(eval $(call KernelPackage,rtc-ds1672))
+
+
 define KernelPackage/rtc-isl1208
   SUBMENU:=$(OTHER_MENU)
   TITLE:=Intersil ISL1208 RTC support
@@ -573,7 +672,7 @@ define KernelPackage/regmap
   FILES:= \
        $(LINUX_DIR)/drivers/base/regmap/regmap-core.ko \
        $(LINUX_DIR)/drivers/base/regmap/regmap-i2c.ko \
-       $(LINUX_DIR)/drivers/base/regmap/regmap-spi.ko
+       $(if $(CONFIG_SPI),$(LINUX_DIR)/drivers/base/regmap/regmap-spi.ko)
   AUTOLOAD:=$(call AutoLoad,21,regmap-core regmap-i2c regmap-spi)
 endef
 
@@ -606,7 +705,8 @@ define KernelPackage/zram
   KCONFIG:= \
        CONFIG_ZSMALLOC \
        CONFIG_ZRAM \
-       CONFIG_ZRAM_DEBUG=n
+       CONFIG_ZRAM_DEBUG=n \
+       CONFIG_PGTABLE_MAPPING=n
   FILES:= \
        $(LINUX_DIR)/drivers/staging/zsmalloc/zsmalloc.ko \
        $(LINUX_DIR)/drivers/staging/zram/zram.ko
@@ -699,3 +799,85 @@ define KernelPackage/random-core/description
 endef
 
 $(eval $(call KernelPackage,random-core))
+
+
+define KernelPackage/thermal
+  SUBMENU:=$(OTHER_MENU)
+  TITLE:=Generic Thermal sysfs driver
+  DEPENDS:=+kmod-hwmon-core
+  HIDDEN:=1
+  KCONFIG:= \
+       CONFIG_THERMAL \
+       CONFIG_THERMAL_DEFAULT_GOV_STEP_WISE=y \
+       CONFIG_THERMAL_DEFAULT_GOV_FAIR_SHARE=n \
+       CONFIG_THERMAL_DEFAULT_GOV_USER_SPACE=n \
+       CONFIG_THERMAL_GOV_FAIR_SHARE=n \
+       CONFIG_THERMAL_GOV_STEP_WISE=y \
+       CONFIG_THERMAL_GOV_USER_SPACE=n \
+       CONFIG_THERMAL_EMULATION=n
+  FILES:=$(LINUX_DIR)/drivers/thermal/thermal_sys.ko
+  AUTOLOAD:=$(call AutoProbe,thermal_sys)
+endef
+
+define KernelPackage/thermal/description
+ Generic Thermal Sysfs driver offers a generic mechanism for thermal
+ management. Usually it's made up of one or more thermal zone and cooling
+ device.
+endef
+
+$(eval $(call KernelPackage,thermal))
+
+
+define KernelPackage/thermal-armada
+  SUBMENU:=$(OTHER_MENU)
+  TITLE:=Armada 370/XP thermal management
+  DEPENDS:=@TARGET_mvebu +kmod-thermal
+  KCONFIG:=CONFIG_ARMADA_THERMAL
+  FILES:=$(LINUX_DIR)/drivers/thermal/armada_thermal.ko
+  AUTOLOAD:=$(call AutoProbe,armada_thermal)
+endef
+
+define KernelPackage/thermal-armada/description
+ Enable this module if you want to have support for thermal management
+ controller present in Armada 370 and Armada XP SoC.
+endef
+
+$(eval $(call KernelPackage,thermal-armada))
+
+
+define KernelPackage/thermal-imx
+  SUBMENU:=$(OTHER_MENU)
+  TITLE:=Temperature sensor driver for Freescale i.MX SoCs
+  DEPENDS:=@TARGET_imx6 +kmod-thermal
+  KCONFIG:= \
+       CONFIG_CPU_THERMAL=y \
+       CONFIG_IMX_THERMAL
+  FILES:=$(LINUX_DIR)/drivers/thermal/imx_thermal.ko
+  AUTOLOAD:=$(call AutoProbe,imx_thermal)
+endef
+
+define KernelPackage/thermal-imx/description
+ Support for Temperature Monitor (TEMPMON) found on Freescale i.MX SoCs.
+ It supports one critical trip point and one passive trip point. The
+ cpufreq is used as the cooling device to throttle CPUs when the
+ passive trip is crossed.
+endef
+
+$(eval $(call KernelPackage,thermal-imx))
+
+
+define KernelPackage/thermal-kirkwood
+  SUBMENU:=$(OTHER_MENU)
+  TITLE:=Temperature sensor on Marvell Kirkwood SoCs
+  DEPENDS:=@TARGET_kirkwood +kmod-thermal
+  KCONFIG:=CONFIG_KIRKWOOD_THERMAL
+  FILES:=$(LINUX_DIR)/drivers/thermal/kirkwood_thermal.ko
+  AUTOLOAD:=$(call AutoProbe,kirkwood_thermal)
+endef
+
+define KernelPackage/thermal-kirkwood/description
+ Support for the Kirkwood thermal sensor driver into the Linux thermal
+ framework. Only kirkwood 88F6282 and 88F6283 have this sensor.
+endef
+
+$(eval $(call KernelPackage,thermal-kirkwood))