iio.mk 6.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219
  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/[email protected]) \
  18. $(if $(CONFIG_IIO_TRIGGERED_BUFFER),$(LINUX_DIR)/drivers/iio/buffer/[email protected]) \
  19. $(LINUX_DIR)/drivers/iio/[email protected] \
  20. $(LINUX_DIR)/drivers/iio/buffer/[email protected]
  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-bh1750
  46. SUBMENU:=$(IIO_MENU)
  47. DEPENDS:=+kmod-i2c-core +kmod-iio-core
  48. TITLE:=ROHM BH1750 ambient light sensor
  49. KCONFIG:= CONFIG_BH1750
  50. FILES:=$(LINUX_DIR)/drivers/iio/light/bh1750.ko
  51. AUTOLOAD:=$(call AutoLoad,56,bh1750)
  52. endef
  53. define KernelPackage/iio-bh1750/description
  54. ROHM BH1750 ambient light sensor (i2c bus)
  55. endef
  56. $(eval $(call KernelPackage,iio-bh1750))
  57. define KernelPackage/iio-am2315
  58. SUBMENU:=$(IIO_MENU)
  59. DEPENDS:=+kmod-i2c-core +kmod-iio-core
  60. TITLE:=Asong AM2315 humidity/temperature sensor
  61. KCONFIG:= CONFIG_AM2315
  62. FILES:=$(LINUX_DIR)/drivers/iio/humidity/am2315.ko
  63. AUTOLOAD:=$(call AutoLoad,56,am2315)
  64. endef
  65. define KernelPackage/iio-am2315/description
  66. Aosong AM2315 humidity/temperature sensor (I2C bus)
  67. endef
  68. $(eval $(call KernelPackage,iio-am2315))
  69. define KernelPackage/iio-mxs-lradc
  70. SUBMENU:=$(IIO_MENU)
  71. DEPENDS:=@TARGET_mxs +kmod-iio-core
  72. TITLE:=Freescale i.MX23/i.MX28 LRADC ADC driver
  73. KCONFIG:= \
  74. CONFIG_MXS_LRADC_ADC
  75. FILES:=$(LINUX_DIR)/drivers/iio/adc/mxs-lradc-adc.ko
  76. AUTOLOAD:=$(call AutoLoad,56,mxs-lradc-adc)
  77. endef
  78. define KernelPackage/iio-mxs-lradc/description
  79. Support for Freescale's i.MX23/i.MX28 SoC internal Low-Resolution ADC
  80. endef
  81. $(eval $(call KernelPackage,iio-mxs-lradc))
  82. define KernelPackage/iio-dht11
  83. SUBMENU:=$(IIO_MENU)
  84. DEPENDS:=+kmod-iio-core @GPIO_SUPPORT @USES_DEVICETREE
  85. TITLE:=DHT11 (and compatible) humidity and temperature sensors
  86. KCONFIG:= \
  87. CONFIG_DHT11
  88. FILES:=$(LINUX_DIR)/drivers/iio/humidity/dht11.ko
  89. AUTOLOAD:=$(call AutoLoad,56,dht11)
  90. endef
  91. define KernelPackage/iio-dht11/description
  92. support for DHT11 and DHT22 digitial humidity and temperature sensors
  93. attached at GPIO lines. You will need a custom device tree file to
  94. specify the GPIO line to use.
  95. endef
  96. $(eval $(call KernelPackage,iio-dht11))
  97. define KernelPackage/iio-bmp280
  98. SUBMENU:=$(IIO_MENU)
  99. TITLE:=BMP180/BMP280/BME280 pressure/temperatur sensor
  100. DEPENDS:=@!LINUX_3_18 +kmod-iio-core +kmod-regmap
  101. KCONFIG:=CONFIG_BMP280
  102. FILES:=$(LINUX_DIR)/drivers/iio/pressure/bmp280.ko
  103. endef
  104. define KernelPackage/iio-bmp280/description
  105. This driver adds support for Bosch Sensortec BMP180 and BMP280 pressure and
  106. temperature sensors. Also supports the BME280 with an additional humidity
  107. sensor channel.
  108. endef
  109. $(eval $(call KernelPackage,iio-bmp280))
  110. define KernelPackage/iio-bmp280-i2c
  111. SUBMENU:=$(IIO_MENU)
  112. TITLE:=BMP180/BMP280/BME280 pressure/temperatur sensor (I2C)
  113. DEPENDS:=+kmod-iio-bmp280 +kmod-i2c-core
  114. KCONFIG:=CONFIG_BMP280_I2C
  115. FILES:=$(LINUX_DIR)/drivers/iio/pressure/bmp280-i2c.ko
  116. AUTOLOAD:=$(call AutoProbe,iio-bmp280-i2c)
  117. endef
  118. define KernelPackage/iio-bmp280-i2c/description
  119. This driver adds support for Bosch Sensortec's digital pressure and
  120. temperature sensor connected via I2C.
  121. endef
  122. $(eval $(call KernelPackage,iio-bmp280-i2c))
  123. define KernelPackage/iio-bmp280-spi
  124. SUBMENU:=$(IIO_MENU)
  125. TITLE:=BMP180/BMP280/BME280 pressure/temperatur sensor (SPI)
  126. DEPENDS:=+kmod-iio-bmp280 +kmod-spi-bitbang
  127. KCONFIG:=CONFIG_BMP280_SPI
  128. FILES:=$(LINUX_DIR)/drivers/iio/pressure/bmp280-spi.ko
  129. AUTOLOAD:=$(call AutoProbe,iio-bmp280-spi)
  130. endef
  131. define KernelPackage/iio-bmp280-spi/description
  132. This driver adds support for Bosch Sensortec's digital pressure and
  133. temperature sensor connected via SPI.
  134. endef
  135. $(eval $(call KernelPackage,iio-bmp280-spi))
  136. define KernelPackage/iio-htu21
  137. SUBMENU:=$(IIO_MENU)
  138. DEPENDS:=+kmod-i2c-core +kmod-iio-core
  139. TITLE:=HTU21 humidity & temperature sensor
  140. KCONFIG:= \
  141. CONFIG_HTU21 \
  142. CONFIG_IIO_MS_SENSORS_I2C
  143. FILES:= \
  144. $(LINUX_DIR)/drivers/iio/humidity/htu21.ko \
  145. $(LINUX_DIR)/drivers/iio/common/ms_sensors/ms_sensors_i2c.ko
  146. AUTOLOAD:=$(call AutoLoad,56,htu21)
  147. endef
  148. define KernelPackage/iio-htu21/description
  149. support for the Measurement Specialties HTU21 humidity and
  150. temperature sensor.
  151. This driver is also used for MS8607 temperature, pressure & humidity
  152. sensor
  153. endef
  154. $(eval $(call KernelPackage,iio-htu21))
  155. define KernelPackage/iio-si7020
  156. SUBMENU:=$(IIO_MENU)
  157. DEPENDS:=+kmod-i2c-core +kmod-iio-core
  158. TITLE:=Silicon Labs Si7020 sensor
  159. KCONFIG:= CONFIG_SI7020
  160. FILES:=$(LINUX_DIR)/drivers/iio/humidity/si7020.ko
  161. AUTOLOAD:=$(call AutoLoad,56,si7020)
  162. endef
  163. define KernelPackage/iio-si7020/description
  164. Support for Silicon Labs Si7020 family of relative humidity and
  165. temperature sensors connected via I2C. Following models are usable:
  166. Si7013, Si7020, Si7021, Hoperf TH06.
  167. endef
  168. $(eval $(call KernelPackage,iio-si7020))
  169. define KernelPackage/iio-tsl4531
  170. SUBMENU:=$(IIO_MENU)
  171. DEPENDS:=+kmod-i2c-core +kmod-iio-core
  172. TITLE:=TAOS TSL4531 ambient light sensor
  173. KCONFIG:= CONFIG_TSL4531
  174. FILES:=$(LINUX_DIR)/drivers/iio/light/tsl4531.ko
  175. AUTOLOAD:=$(call AutoLoad,56,tsl4531)
  176. endef
  177. define KernelPackage/iio-tsl4531/description
  178. Support for TAOS TSL4531x family of ambient light sensors
  179. connected via I2C. Following models are usable:
  180. TSL45311, TSL45313, TSL45315, TSL45317.
  181. endef
  182. $(eval $(call KernelPackage,iio-tsl4531))