iio.mk 6.1 KB

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