2 # This is free software, licensed under the GNU General Public License v2.
3 # See /LICENSE for more information.
6 IIO_MENU
:=Industrial I
/O Modules
9 define KernelPackage
/iio-core
11 TITLE
:=Industrial IO core
16 FILES
:=$(LINUX_DIR
)/drivers
/iio
/industrialio.ko
17 AUTOLOAD
:=$(call AutoLoad
,55,industrialio
)
20 define KernelPackage
/iio-core
/description
21 The industrial I
/O subsystem provides a unified framework for
22 drivers for many different types of embedded sensors using a
23 number of different physical interfaces
(i2c
, spi
, etc
)
26 $(eval
$(call KernelPackage
,iio-core
))
29 define KernelPackage
/iio-kfifo-buf
31 TITLE
:=Industrial I
/O buffering based on kfifo
32 DEPENDS
:=+kmod-iio-core
33 KCONFIG
:=CONFIG_IIO_KFIFO_BUF
34 FILES
:=$(LINUX_DIR
)/drivers
/iio
/buffer
/kfifo_buf.ko
35 AUTOLOAD
:=$(call AutoLoad
,55,kfifo_buf
)
38 define KernelPackage
/iio-kfifo-buf
/description
39 A simple fifo based on kfifo. Note that this currently provides no buffer
40 events so it is up to userspace to work out how often to read from the buffer.
43 $(eval
$(call KernelPackage
,iio-kfifo-buf
))
46 define KernelPackage
/industrialio-triggered-buffer
48 TITLE
:=Provides helper functions for setting up triggered buffers.
49 DEPENDS
:=+kmod-iio-core
+kmod-iio-kfifo-buf
50 KCONFIG
:=CONFIG_IIO_TRIGGERED_BUFFER
51 FILES
:=$(LINUX_DIR
)/drivers
/iio
/buffer
/industrialio-triggered-buffer.ko
52 AUTOLOAD
:=$(call AutoLoad
,55,industrialio-triggered-buffer
)
55 define KernelPackage
/industrialio-triggered-buffer
/description
56 Provides helper functions for setting up triggered buffers.
59 $(eval
$(call KernelPackage
,industrialio-triggered-buffer
))
62 define KernelPackage
/iio-ad799x
64 DEPENDS
:=+kmod-i2c-core
+kmod-iio-core
+kmod-industrialio-triggered-buffer
65 TITLE
:=Analog Devices AD799x ADC driver
67 CONFIG_AD799X_RING_BUFFER
=y \
69 FILES
:=$(LINUX_DIR
)/drivers
/iio
/adc
/ad799x.ko
70 AUTOLOAD
:=$(call AutoLoad
,56,ad799x
)
73 define KernelPackage
/iio-ad799x
/description
74 support for Analog Devices
:
75 ad7991
, ad7995
, ad7999
, ad7992
, ad7993
, ad7994
, ad7997
, ad7998
76 i2c analog to digital converters
(ADC
).
79 $(eval
$(call KernelPackage
,iio-ad799x
))
81 define KernelPackage
/iio-ads1015
83 DEPENDS
:=+kmod-i2c-core
+kmod-iio-core
+kmod-regmap-i2c
+kmod-industrialio-triggered-buffer
84 TITLE
:=Texas Instruments ADS1015 ADC driver
85 KCONFIG
:= CONFIG_TI_ADS1015
86 FILES
:=$(LINUX_DIR
)/drivers
/iio
/adc
/ti-ads1015.ko
87 AUTOLOAD
:=$(call AutoLoad
,56,ti-ads1015
)
90 define KernelPackage
/iio-ads1015
/description
91 This driver adds support for Texas Instruments ADS1015 and ADS1115 ADCs.
94 $(eval
$(call KernelPackage
,iio-ads1015
))
96 define KernelPackage
/iio-hmc5843
98 DEPENDS
:=+kmod-i2c-core
+kmod-iio-core
+kmod-regmap-i2c
+kmod-industrialio-triggered-buffer
99 TITLE
:=Honeywell HMC58x3 Magnetometer
100 KCONFIG
:= CONFIG_SENSORS_HMC5843_I2C
102 $(LINUX_DIR
)/drivers
/iio
/magnetometer
/hmc5843_i2c.ko \
103 $(LINUX_DIR
)/drivers
/iio
/magnetometer
/hmc5843_core.ko
104 AUTOLOAD
:=$(call AutoLoad
,56,hmc5843
)
107 define KernelPackage
/iio-hmc5843
/description
108 Honeywell HMC5843
/5883/5883L 3-Axis Magnetometer
111 $(eval
$(call KernelPackage
,iio-hmc5843
))
113 define KernelPackage
/iio-bh1750
115 DEPENDS
:=+kmod-i2c-core
+kmod-iio-core
116 TITLE
:=ROHM BH1750 ambient light sensor
117 KCONFIG
:= CONFIG_BH1750
118 FILES
:=$(LINUX_DIR
)/drivers
/iio
/light
/bh1750.ko
119 AUTOLOAD
:=$(call AutoLoad
,56,bh1750
)
121 define KernelPackage
/iio-bh1750
/description
122 ROHM BH1750 ambient light sensor
(i2c bus
)
124 $(eval
$(call KernelPackage
,iio-bh1750
))
126 define KernelPackage
/iio-am2315
128 DEPENDS
:=+kmod-i2c-core
+kmod-iio-core
+kmod-industrialio-triggered-buffer
129 TITLE
:=Asong AM2315 humidity
/temperature sensor
130 KCONFIG
:= CONFIG_AM2315
131 FILES
:=$(LINUX_DIR
)/drivers
/iio
/humidity
/am2315.ko
132 AUTOLOAD
:=$(call AutoLoad
,56,am2315
)
134 define KernelPackage
/iio-am2315
/description
135 Aosong AM2315 humidity
/temperature sensor
(I2C bus
)
137 $(eval
$(call KernelPackage
,iio-am2315
))
139 define KernelPackage
/iio-mxs-lradc
141 DEPENDS
:=@TARGET_mxs
+kmod-iio-core
+kmod-industrialio-triggered-buffer
142 TITLE
:=Freescale i.MX23
/i.MX28 LRADC ADC driver
145 FILES
:=$(LINUX_DIR
)/drivers
/iio
/adc
/mxs-lradc-adc.ko
146 AUTOLOAD
:=$(call AutoLoad
,56,mxs-lradc-adc
)
149 define KernelPackage
/iio-mxs-lradc
/description
150 Support for Freescale
's i.MX23/i.MX28 SoC internal Low-Resolution ADC
153 $(eval $(call KernelPackage,iio-mxs-lradc))
155 define KernelPackage/iio-dht11
157 DEPENDS:=+kmod-iio-core @GPIO_SUPPORT @USES_DEVICETREE
158 TITLE:=DHT11 (and compatible) humidity and temperature sensors
161 FILES:=$(LINUX_DIR)/drivers/iio/humidity/dht11.ko
162 AUTOLOAD:=$(call AutoLoad,56,dht11)
165 define KernelPackage/iio-dht11/description
166 support for DHT11 and DHT22 digitial humidity and temperature sensors
167 attached at GPIO lines. You will need a custom device tree file to
168 specify the GPIO line to use.
171 $(eval $(call KernelPackage,iio-dht11))
174 define KernelPackage/iio-bme680
176 TITLE:=BME680 gas/humidity/pressure/temperature sensor
177 DEPENDS:=+kmod-iio-core +kmod-regmap-core
178 KCONFIG:=CONFIG_BME680
179 FILES:=$(LINUX_DIR)/drivers/iio/chemical/bme680_core.ko
182 define KernelPackage/iio-bme680/description
183 This driver adds support for Bosch Sensortec BME680 sensor with gas,
184 humidity, pressure and temperatue sensing capability.
187 $(eval $(call KernelPackage,iio-bme680))
189 define KernelPackage/iio-bme680-i2c
191 TITLE:=BME680 gas/humidity/pressure/temperature sensor (I2C)
192 DEPENDS:=+kmod-iio-bme680 +kmod-regmap-i2c
193 KCONFIG:=CONFIG_BME680_I2C
194 FILES:=$(LINUX_DIR)/drivers/iio/chemical/bme680_i2c.ko
195 AUTOLOAD:=$(call AutoProbe,bme680-i2c)
197 define KernelPackage/iio-bme680-i2c/description
198 This driver adds support for Bosch Sensortec's BME680 connected via I2C.
201 $(eval
$(call KernelPackage
,iio-bme680-i2c
))
203 define KernelPackage
/iio-bme680-spi
205 TITLE
:=BME680 gas
/humidity
/pressure
/temperature sensor
(SPI
)
206 DEPENDS
:=+kmod-iio-bme680
+kmod-regmap-spi
207 KCONFIG
:=CONFIG_BME680_SPI
208 FILES
:=$(LINUX_DIR
)/drivers
/iio
/chemical
/bme680_spi.ko
209 AUTOLOAD
:=$(call AutoProbe
,bme680-spi
)
211 define KernelPackage
/iio-bme680-spi
/description
212 This driver adds support for Bosch Sensortec
's BME680 connected via SPI.
215 $(eval $(call KernelPackage,iio-bme680-spi))
218 define KernelPackage/iio-bmp280
220 TITLE:=BMP180/BMP280/BME280 pressure/temperatur sensor
221 DEPENDS:=+kmod-iio-core +kmod-regmap-core
222 KCONFIG:=CONFIG_BMP280
223 FILES:=$(LINUX_DIR)/drivers/iio/pressure/bmp280.ko
226 define KernelPackage/iio-bmp280/description
227 This driver adds support for Bosch Sensortec BMP180 and BMP280 pressure and
228 temperature sensors. Also supports the BME280 with an additional humidity
232 $(eval $(call KernelPackage,iio-bmp280))
235 define KernelPackage/iio-bmp280-i2c
237 TITLE:=BMP180/BMP280/BME280 pressure/temperatur sensor (I2C)
238 DEPENDS:=+kmod-iio-bmp280 +kmod-i2c-core +kmod-regmap-i2c
239 KCONFIG:=CONFIG_BMP280_I2C
240 FILES:=$(LINUX_DIR)/drivers/iio/pressure/bmp280-i2c.ko
241 AUTOLOAD:=$(call AutoProbe,bmp280-i2c)
243 define KernelPackage/iio-bmp280-i2c/description
244 This driver adds support for Bosch Sensortec's digital pressure and
245 temperature sensor connected via I2C.
248 $(eval
$(call KernelPackage
,iio-bmp280-i2c
))
251 define KernelPackage
/iio-bmp280-spi
253 TITLE
:=BMP180
/BMP280
/BME280 pressure
/temperatur sensor
(SPI
)
254 DEPENDS
:=+kmod-iio-bmp280
+kmod-spi-bitbang
255 KCONFIG
:=CONFIG_BMP280_SPI
256 FILES
:=$(LINUX_DIR
)/drivers
/iio
/pressure
/bmp280-spi.ko
257 AUTOLOAD
:=$(call AutoProbe
,bmp280-spi
)
259 define KernelPackage
/iio-bmp280-spi
/description
260 This driver adds support for Bosch Sensortec
's digital pressure and
261 temperature sensor connected via SPI.
264 $(eval $(call KernelPackage,iio-bmp280-spi))
266 define KernelPackage/iio-htu21
268 DEPENDS:=+kmod-i2c-core +kmod-iio-core
269 TITLE:=HTU21 humidity & temperature sensor
272 CONFIG_IIO_MS_SENSORS_I2C
274 $(LINUX_DIR)/drivers/iio/humidity/htu21.ko \
275 $(LINUX_DIR)/drivers/iio/common/ms_sensors/ms_sensors_i2c.ko
276 AUTOLOAD:=$(call AutoLoad,56,htu21)
279 define KernelPackage/iio-htu21/description
280 support for the Measurement Specialties HTU21 humidity and
282 This driver is also used for MS8607 temperature, pressure & humidity
286 $(eval $(call KernelPackage,iio-htu21))
289 define KernelPackage/iio-ccs811
291 DEPENDS:=+kmod-i2c-core +kmod-iio-core +kmod-industrialio-triggered-buffer
292 TITLE:=AMS CCS811 VOC sensor
295 FILES:= $(LINUX_DIR)/drivers/iio/chemical/ccs811.ko
296 AUTOLOAD:=$(call AutoLoad,56,ccs811)
299 define KernelPackage/iio-ccs811/description
300 Support for the AMS CCS811 VOC (Volatile Organic Compounds) sensor
303 $(eval $(call KernelPackage,iio-ccs811))
306 define KernelPackage/iio-si7020
308 DEPENDS:=+kmod-i2c-core +kmod-iio-core
309 TITLE:=Silicon Labs Si7020 sensor
310 KCONFIG:= CONFIG_SI7020
311 FILES:=$(LINUX_DIR)/drivers/iio/humidity/si7020.ko
312 AUTOLOAD:=$(call AutoLoad,56,si7020)
315 define KernelPackage/iio-si7020/description
316 Support for Silicon Labs Si7020 family of relative humidity and
317 temperature sensors connected via I2C. Following models are usable:
318 Si7013, Si7020, Si7021, Hoperf TH06.
321 $(eval $(call KernelPackage,iio-si7020))
324 define KernelPackage/iio-st_accel
326 TITLE:=STMicroelectronics accelerometer 3-Axis Driver
327 DEPENDS:=+kmod-iio-core +kmod-regmap-core +kmod-industrialio-triggered-buffer
329 CONFIG_IIO_ST_ACCEL_3AXIS \
330 CONFIG_IIO_ST_SENSORS_CORE
332 $(LINUX_DIR)/drivers/iio/accel/st_accel.ko \
333 $(LINUX_DIR)/drivers/iio/common/st_sensors/st_sensors.ko
336 define KernelPackage/iio-st_accel/description
337 This package adds support for STMicroelectronics accelerometers:
338 LSM303DLH, LSM303DLHC, LIS3DH, LSM330D, LSM330DL, LSM330DLC,
339 LIS331DLH, LSM303DL, LSM303DLM, LSM330, LIS2DH12, H3LIS331DL,
340 LNG2DM, LIS3DE, LIS2DE12
343 $(eval $(call KernelPackage,iio-st_accel))
346 define KernelPackage/iio-st_accel-i2c
348 TITLE:=STMicroelectronics accelerometer 3-Axis Driver (I2C)
349 DEPENDS:=+kmod-iio-st_accel +kmod-i2c-core +kmod-regmap-i2c
350 KCONFIG:= CONFIG_IIO_ST_ACCEL_I2C_3AXIS
352 $(LINUX_DIR)/drivers/iio/accel/st_accel_i2c.ko \
353 $(LINUX_DIR)/drivers/iio/common/st_sensors/st_sensors_i2c.ko
354 AUTOLOAD:=$(call AutoLoad,56,st_accel_i2c)
357 define KernelPackage/iio-st_accel-i2c/description
358 This package adds support for STMicroelectronics I2C based accelerometers
361 $(eval $(call KernelPackage,iio-st_accel-i2c))
364 define KernelPackage/iio-st_accel-spi
366 TITLE:=STMicroelectronics accelerometer 3-Axis Driver (SPI)
367 DEPENDS:=+kmod-iio-st_accel +kmod-regmap-spi
368 KCONFIG:= CONFIG_IIO_ST_ACCEL_SPI_3AXIS
370 $(LINUX_DIR)/drivers/iio/accel/st_accel_spi.ko \
371 $(LINUX_DIR)/drivers/iio/common/st_sensors/st_sensors_spi.ko
372 AUTOLOAD:=$(call AutoLoad,56,st_accel_spi)
375 define KernelPackage/iio-st_accel-spi/description
376 This package adds support for STMicroelectronics SPI based accelerometers
379 $(eval $(call KernelPackage,iio-st_accel-spi))
382 define KernelPackage/iio-lsm6dsx
384 DEPENDS:=+kmod-iio-core +kmod-iio-kfifo-buf +kmod-regmap-core
385 TITLE:=ST LSM6DSx driver for IMU MEMS sensors
386 KCONFIG:=CONFIG_IIO_ST_LSM6DSX
387 FILES:=$(LINUX_DIR)/drivers/iio/imu/st_lsm6dsx/st_lsm6dsx.ko
388 AUTOLOAD:=$(call AutoProbe,st_lsm6dsx)
391 define KernelPackage/iio-lsm6dsx/description
392 Support for the ST LSM6DSx and related IMU MEMS sensors.
395 $(eval $(call KernelPackage,iio-lsm6dsx))
398 define KernelPackage/iio-lsm6dsx-i2c
400 DEPENDS:=+kmod-iio-lsm6dsx +kmod-i2c-core +kmod-regmap-i2c
401 TITLE:=ST LSM6DSx driver for IMU MEMS sensors (I2C)
402 KCONFIG:=CONFIG_IIO_ST_LSM6DSX
403 FILES:=$(LINUX_DIR)/drivers/iio/imu/st_lsm6dsx/st_lsm6dsx_i2c.ko
404 AUTOLOAD:=$(call AutoProbe,st_lsm6dsx-i2c)
407 define KernelPackage/iio-lsm6dsx-i2c/description
408 Support for the ST LSM6DSx and related IMU MEMS I2C sensors.
411 $(eval $(call KernelPackage,iio-lsm6dsx-i2c))
414 define KernelPackage/iio-lsm6dsx-spi
416 DEPENDS:=+kmod-iio-lsm6dsx +kmod-regmap-spi
417 TITLE:=ST LSM6DSx driver for IMU MEMS sensors (SPI)
418 KCONFIG:=CONFIG_IIO_ST_LSM6DSX
419 FILES:=$(LINUX_DIR)/drivers/iio/imu/st_lsm6dsx/st_lsm6dsx_spi.ko
420 AUTOLOAD:=$(call AutoProbe,st_lsm6dsx-spi)
423 define KernelPackage/iio-lsm6dsx-spi/description
424 Support for the ST LSM6DSx and related IMU MEMS SPI sensors.
427 $(eval $(call KernelPackage,iio-lsm6dsx-spi))
430 define KernelPackage/iio-sps30
432 DEPENDS:=+kmod-i2c-core +kmod-iio-core +kmod-industrialio-triggered-buffer +kmod-lib-crc8
433 TITLE:=Sensirion SPS30 particulate matter sensor
434 KCONFIG:=CONFIG_SPS30
435 FILES:=$(LINUX_DIR)/drivers/iio/chemical/sps30.ko
436 AUTOLOAD:=$(call AutoProbe,sps30)
439 define KernelPackage/iio-sps30/description
440 Support for the Sensirion SPS30 particulate matter sensor.
443 $(eval $(call KernelPackage,iio-sps30))
446 define KernelPackage/iio-tsl4531
448 DEPENDS:=+kmod-i2c-core +kmod-iio-core
449 TITLE:=TAOS TSL4531 ambient light sensor
450 KCONFIG:= CONFIG_TSL4531
451 FILES:=$(LINUX_DIR)/drivers/iio/light/tsl4531.ko
452 AUTOLOAD:=$(call AutoLoad,56,tsl4531)
455 define KernelPackage/iio-tsl4531/description
456 Support for TAOS TSL4531x family of ambient light sensors
457 connected via I2C. Following models are usable:
458 TSL45311, TSL45313, TSL45315, TSL45317.
461 $(eval $(call KernelPackage,iio-tsl4531))
464 define KernelPackage/iio-fxas21002c
466 TITLE:=Freescale FXAS21002C 3-axis gyro driver
467 DEPENDS:=+kmod-iio-core +kmod-regmap-core +kmod-industrialio-triggered-buffer
468 KCONFIG:= CONFIG_FXAS21002C
469 FILES:=$(LINUX_DIR)/drivers/iio/gyro/fxas21002c_core.ko
470 AUTOLOAD:=$(call AutoLoad,56,fxas21002c)
473 define KernelPackage/iio-fxas21002c/description
474 Support for Freescale FXAS21002C 3-axis gyro.
477 $(eval $(call KernelPackage,iio-fxas21002c))
480 define KernelPackage/iio-fxas21002c-i2c
482 TITLE:=Freescale FXAS21002C 3-axis gyro driver (I2C)
483 DEPENDS:=+kmod-iio-fxas21002c +kmod-i2c-core +kmod-regmap-i2c
484 KCONFIG:= CONFIG_FXAS21002C_I2C
485 FILES:=$(LINUX_DIR)/drivers/iio/gyro/fxas21002c_i2c.ko
486 AUTOLOAD:=$(call AutoLoad,56,fxas21002c_i2c)
489 define KernelPackage/iio-fxas21002c-i2c/description
490 Support for Freescale FXAS21002C 3-axis gyro
495 $(eval $(call KernelPackage,iio-fxas21002c-i2c))
497 define KernelPackage/iio-fxas21002c-spi
499 DEPENDS:=+kmod-iio-fxas21002c +kmod-regmap-spi
500 TITLE:=Freescale FXAS21002C 3-axis gyro driver (SPI)
501 KCONFIG:= CONFIG_FXAS21002C_SPI
502 FILES:=$(LINUX_DIR)/drivers/iio/gyro/fxas21002c_spi.ko
503 AUTOLOAD:=$(call AutoLoad,56,fxas21002c_spi)
506 define KernelPackage/iio-fxas21002c-spi/description
507 Support for Freescale FXAS21002C 3-axis gyro
511 $(eval $(call KernelPackage,iio-fxas21002c-spi))
514 define KernelPackage/iio-fxos8700
516 TITLE:=Freescale FXOS8700 3-axis accelerometer driver
517 DEPENDS:=+kmod-iio-core +kmod-regmap-core
518 KCONFIG:= CONFIG_FXOS8700
519 FILES:=$(LINUX_DIR)/drivers/iio/imu/fxos8700_core.ko
520 AUTOLOAD:=$(call AutoLoad,56,fxos8700)
523 define KernelPackage/iio-fxos8700/description
524 Support for Freescale FXOS8700 3-axis accelerometer.
527 $(eval $(call KernelPackage,iio-fxos8700))
530 define KernelPackage/iio-fxos8700-i2c
532 TITLE:=Freescale FXOS8700 3-axis acceleromter driver (I2C)
533 DEPENDS:=+kmod-iio-fxos8700 +kmod-i2c-core +kmod-regmap-i2c
534 KCONFIG:= CONFIG_FXOS8700_I2C
535 FILES:=$(LINUX_DIR)/drivers/iio/imu/fxos8700_i2c.ko
536 AUTOLOAD:=$(call AutoLoad,56,fxos8700_i2c)
539 define KernelPackage/iio-fxos8700-i2c/description
540 Support for Freescale FXOS8700 3-axis accelerometer
545 $(eval $(call KernelPackage,iio-fxos8700-i2c))
547 define KernelPackage/iio-fxos8700-spi
549 DEPENDS:=+kmod-iio-fxos8700 +kmod-regmap-spi
550 TITLE:=Freescale FXOS8700 3-axis accelerometer driver (SPI)
551 KCONFIG:= CONFIG_FXOS8700_SPI
552 FILES:=$(LINUX_DIR)/drivers/iio/imu/fxos8700_spi.ko
553 AUTOLOAD:=$(call AutoLoad,56,fxos8700_spi)
556 define KernelPackage/iio-fxos8700-spi/description
557 Support for Freescale FXOS8700 3-axis accelerometer
561 $(eval $(call KernelPackage,iio-fxos8700-spi))