kernel: Remove dependencies on old kernels
[openwrt/openwrt.git] / package / kernel / linux / modules / iio.mk
1 #
2 # This is free software, licensed under the GNU General Public License v2.
3 # See /LICENSE for more information.
4 #
5
6 IIO_MENU:=Industrial I/O Modules
7
8
9 define KernelPackage/iio-core
10 SUBMENU:=$(IIO_MENU)
11 TITLE:=Industrial IO core
12 KCONFIG:= \
13 CONFIG_IIO \
14 CONFIG_IIO_BUFFER=y \
15 CONFIG_IIO_KFIFO_BUF \
16 CONFIG_IIO_TRIGGER=y \
17 CONFIG_IIO_TRIGGERED_BUFFER
18 FILES:= \
19 $(LINUX_DIR)/drivers/iio/industrialio.ko \
20 $(if $(CONFIG_IIO_TRIGGERED_BUFFER),$(LINUX_DIR)/drivers/iio/industrialio-triggered-buffer.ko@lt4.4) \
21 $(if $(CONFIG_IIO_TRIGGERED_BUFFER),$(LINUX_DIR)/drivers/iio/buffer/industrialio-triggered-buffer.ko@ge4.4) \
22 $(LINUX_DIR)/drivers/iio/kfifo_buf.ko@lt4.4 \
23 $(LINUX_DIR)/drivers/iio/buffer/kfifo_buf.ko@ge4.4
24 AUTOLOAD:=$(call AutoLoad,55,industrialio kfifo_buf industrialio-triggered-buffer)
25 endef
26
27 define KernelPackage/iio-core/description
28 The industrial I/O subsystem provides a unified framework for
29 drivers for many different types of embedded sensors using a
30 number of different physical interfaces (i2c, spi, etc)
31 endef
32
33 $(eval $(call KernelPackage,iio-core))
34
35
36 define KernelPackage/iio-ad799x
37 SUBMENU:=$(IIO_MENU)
38 DEPENDS:=+kmod-i2c-core +kmod-iio-core
39 TITLE:=Analog Devices AD799x ADC driver
40 KCONFIG:= \
41 CONFIG_AD799X_RING_BUFFER=y \
42 CONFIG_AD799X
43 FILES:=$(LINUX_DIR)/drivers/iio/adc/ad799x.ko
44 AUTOLOAD:=$(call AutoLoad,56,ad799x)
45 endef
46
47 define KernelPackage/iio-ad799x/description
48 support for Analog Devices:
49 ad7991, ad7995, ad7999, ad7992, ad7993, ad7994, ad7997, ad7998
50 i2c analog to digital converters (ADC).
51 endef
52
53 $(eval $(call KernelPackage,iio-ad799x))
54
55 define KernelPackage/iio-am2315
56 SUBMENU:=$(IIO_MENU)
57 DEPENDS:=+kmod-i2c-core +kmod-iio-core
58 TITLE:=Asong AM2315 humidity/temperature sensor
59 KCONFIG:= CONFIG_AM2315
60 FILES:=$(LINUX_DIR)/drivers/iio/humidity/am2315.ko
61 AUTOLOAD:=$(call AutoLoad,56,am2315)
62 endef
63 define KernelPackage/iio-am2315/description
64 Aosong AM2315 humidity/temperature sensor (I2C bus)
65 endef
66 $(eval $(call KernelPackage,iio-am2315))
67
68 define KernelPackage/iio-mxs-lradc
69 SUBMENU:=$(IIO_MENU)
70 DEPENDS:=@TARGET_mxs +kmod-iio-core
71 TITLE:=Freescale i.MX23/i.MX28 LRADC ADC driver
72 KCONFIG:= \
73 CONFIG_MXS_LRADC_ADC
74 FILES:=$(LINUX_DIR)/drivers/iio/adc/mxs-lradc-adc.ko
75 AUTOLOAD:=$(call AutoLoad,56,mxs-lradc-adc)
76 endef
77
78 define KernelPackage/iio-mxs-lradc/description
79 Support for Freescale's i.MX23/i.MX28 SoC internal Low-Resolution ADC
80 endef
81
82 $(eval $(call KernelPackage,iio-mxs-lradc))
83
84 define KernelPackage/iio-dht11
85 SUBMENU:=$(IIO_MENU)
86 DEPENDS:=+kmod-iio-core @GPIO_SUPPORT @USES_DEVICETREE
87 TITLE:=DHT11 (and compatible) humidity and temperature sensors
88 KCONFIG:= \
89 CONFIG_DHT11
90 FILES:=$(LINUX_DIR)/drivers/iio/humidity/dht11.ko
91 AUTOLOAD:=$(call AutoLoad,56,dht11)
92 endef
93
94 define KernelPackage/iio-dht11/description
95 support for DHT11 and DHT22 digitial humidity and temperature sensors
96 attached at GPIO lines. You will need a custom device tree file to
97 specify the GPIO line to use.
98 endef
99
100 $(eval $(call KernelPackage,iio-dht11))
101
102 define KernelPackage/iio-bmp280
103 SUBMENU:=$(IIO_MENU)
104 TITLE:=BMP180/BMP280/BME280 pressure/temperatur sensor
105 DEPENDS:=@!LINUX_3_18 +kmod-iio-core +kmod-regmap
106 KCONFIG:=CONFIG_BMP280
107 FILES:=$(LINUX_DIR)/drivers/iio/pressure/bmp280.ko
108 endef
109
110 define KernelPackage/iio-bmp280/description
111 This driver adds support for Bosch Sensortec BMP180 and BMP280 pressure and
112 temperature sensors. Also supports the BME280 with an additional humidity
113 sensor channel.
114 endef
115
116 $(eval $(call KernelPackage,iio-bmp280))
117
118
119 define KernelPackage/iio-bmp280-i2c
120 SUBMENU:=$(IIO_MENU)
121 TITLE:=BMP180/BMP280/BME280 pressure/temperatur sensor (I2C)
122 DEPENDS:=+kmod-iio-bmp280 +kmod-i2c-core
123 KCONFIG:=CONFIG_BMP280_I2C
124 FILES:=$(LINUX_DIR)/drivers/iio/pressure/bmp280-i2c.ko
125 AUTOLOAD:=$(call AutoProbe,iio-bmp280-i2c)
126 endef
127 define KernelPackage/iio-bmp280-i2c/description
128 This driver adds support for Bosch Sensortec's digital pressure and
129 temperature sensor connected via I2C.
130 endef
131
132 $(eval $(call KernelPackage,iio-bmp280-i2c))
133
134
135 define KernelPackage/iio-bmp280-spi
136 SUBMENU:=$(IIO_MENU)
137 TITLE:=BMP180/BMP280/BME280 pressure/temperatur sensor (SPI)
138 DEPENDS:=+kmod-iio-bmp280 +kmod-spi-bitbang
139 KCONFIG:=CONFIG_BMP280_SPI
140 FILES:=$(LINUX_DIR)/drivers/iio/pressure/bmp280-spi.ko
141 AUTOLOAD:=$(call AutoProbe,iio-bmp280-spi)
142 endef
143 define KernelPackage/iio-bmp280-spi/description
144 This driver adds support for Bosch Sensortec's digital pressure and
145 temperature sensor connected via SPI.
146 endef
147
148 $(eval $(call KernelPackage,iio-bmp280-spi))
149
150 define KernelPackage/iio-htu21
151 SUBMENU:=$(IIO_MENU)
152 DEPENDS:=+kmod-i2c-core +kmod-iio-core
153 TITLE:=HTU21 humidity & temperature sensor
154 KCONFIG:= \
155 CONFIG_HTU21 \
156 CONFIG_IIO_MS_SENSORS_I2C
157 FILES:= \
158 $(LINUX_DIR)/drivers/iio/humidity/htu21.ko \
159 $(LINUX_DIR)/drivers/iio/common/ms_sensors/ms_sensors_i2c.ko
160 AUTOLOAD:=$(call AutoLoad,56,htu21)
161 endef
162
163 define KernelPackage/iio-htu21/description
164 support for the Measurement Specialties HTU21 humidity and
165 temperature sensor.
166 This driver is also used for MS8607 temperature, pressure & humidity
167 sensor
168 endef
169
170 $(eval $(call KernelPackage,iio-htu21))
171
172
173 define KernelPackage/iio-si7020
174 SUBMENU:=$(IIO_MENU)
175 DEPENDS:=+kmod-i2c-core +kmod-iio-core
176 TITLE:=Silicon Labs Si7020 sensor
177 KCONFIG:= CONFIG_SI7020
178 FILES:=$(LINUX_DIR)/drivers/iio/humidity/si7020.ko
179 AUTOLOAD:=$(call AutoLoad,56,si7020)
180 endef
181
182 define KernelPackage/iio-si7020/description
183 Support for Silicon Labs Si7020 family of relative humidity and
184 temperature sensors connected via I2C. Following models are usable:
185 Si7013, Si7020, Si7021, Hoperf TH06.
186 endef
187
188 $(eval $(call KernelPackage,iio-si7020))
189
190
191 define KernelPackage/iio-tsl4531
192 SUBMENU:=$(IIO_MENU)
193 DEPENDS:=+kmod-i2c-core +kmod-iio-core
194 TITLE:=TAOS TSL4531 ambient light sensor
195 KCONFIG:= CONFIG_TSL4531
196 FILES:=$(LINUX_DIR)/drivers/iio/light/tsl4531.ko
197 AUTOLOAD:=$(call AutoLoad,56,tsl4531)
198 endef
199
200 define KernelPackage/iio-tsl4531/description
201 Support for TAOS TSL4531x family of ambient light sensors
202 connected via I2C. Following models are usable:
203 TSL45311, TSL45313, TSL45315, TSL45317.
204 endef
205
206 $(eval $(call KernelPackage,iio-tsl4531))