iio.mk 5.7 KB

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