kernel: add kmod-usb-serial-mos7840
[oweals/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_4_9||LINUX_4_14) +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))