iio.mk 7.0 KB

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