From 51d87cac37edbd3d6dd79aa905813ac83d9aae49 Mon Sep 17 00:00:00 2001 From: Gerald Pape Date: Wed, 1 Nov 2017 11:15:32 +0100 Subject: [PATCH] Include tsl4531, veml6070 and hdc100x dtoverlay (#2252) This commit adds the needed kernel config keys and extends the i2c-sensor-overlay.dts file with support for: * the Texas Instruments HDC100x temp sensor * the AMS TSL4531 digital ambient light sensor * the Vishay VEML6070 ultraviolet light sensor --- arch/arm/boot/dts/overlays/README | 13 ++++- .../boot/dts/overlays/i2c-sensor-overlay.dts | 50 ++++++++++++++++++- arch/arm/configs/bcm2709_defconfig | 3 ++ arch/arm/configs/bcmrpi_defconfig | 3 ++ 4 files changed, 66 insertions(+), 3 deletions(-) diff --git a/arch/arm/boot/dts/overlays/README b/arch/arm/boot/dts/overlays/README index 3f5924f5375f..68496003d906 100644 --- a/arch/arm/boot/dts/overlays/README +++ b/arch/arm/boot/dts/overlays/README @@ -745,8 +745,8 @@ Name: i2c-sensor Info: Adds support for a number of I2C barometric pressure and temperature sensors on i2c_arm Load: dtoverlay=i2c-sensor,= -Params: addr Set the address for the BME280, BMP280, TMP102 - or LM75 +Params: addr Set the address for the BME280, BMP280, TMP102, + HDC100X or LM75 bme280 Select the Bosch Sensortronic BME280 Valid addresses 0x76-0x77, default 0x76 @@ -771,6 +771,15 @@ Params: addr Set the address for the BME280, BMP280, TMP102 tmp102 Select the Texas Instruments TMP102 temp sensor Valid addresses 0x48-0x4b, default 0x48 + hdc100x Select the Texas Instruments HDC100x temp sensor + Valid addresses 0x40-0x43, default 0x40 + + tsl4531 Select the AMS TSL4531 digital ambient light + sensor + + veml6070 Select the Vishay VEML6070 ultraviolet light + sensor + Name: i2c0-bcm2708 Info: Enable the i2c_bcm2708 driver for the i2c0 bus. Not all pin combinations diff --git a/arch/arm/boot/dts/overlays/i2c-sensor-overlay.dts b/arch/arm/boot/dts/overlays/i2c-sensor-overlay.dts index 17c27e3b666a..28e6fa3b659d 100644 --- a/arch/arm/boot/dts/overlays/i2c-sensor-overlay.dts +++ b/arch/arm/boot/dts/overlays/i2c-sensor-overlay.dts @@ -126,9 +126,54 @@ }; }; + fragment@8 { + target = <&i2c_arm>; + __dormant__ { + #address-cells = <1>; + #size-cells = <0>; + status = "okay"; + + hdc100x: hdc100x@40 { + compatible = "hdc100x"; + reg = <0x40>; + status = "okay"; + }; + }; + }; + + fragment@9 { + target = <&i2c_arm>; + __dormant__ { + #address-cells = <1>; + #size-cells = <0>; + status = "okay"; + + tsl4531: tsl4531@29 { + compatible = "tsl4531"; + reg = <0x29>; + status = "okay"; + }; + }; + }; + + fragment@10 { + target = <&i2c_arm>; + __dormant__ { + #address-cells = <1>; + #size-cells = <0>; + status = "okay"; + + veml6070: veml6070@38 { + compatible = "veml6070"; + reg = <0x38>; + status = "okay"; + }; + }; + }; + __overrides__ { addr = <&bme280>,"reg:0", <&bmp280>,"reg:0", <&tmp102>,"reg:0", - <&lm75>,"reg:0"; + <&lm75>,"reg:0",<&hdc100x>,"reg:0"; bme280 = <0>,"+0"; bmp085 = <0>,"+1"; bmp180 = <0>,"+2"; @@ -138,5 +183,8 @@ lm75addr = <&lm75>,"reg:0"; si7020 = <0>,"+6"; tmp102 = <0>,"+7"; + hdc100x = <0>,"+8"; + tsl4531 = <0>,"+9"; + veml6070 = <0>,"+10"; }; }; diff --git a/arch/arm/configs/bcm2709_defconfig b/arch/arm/configs/bcm2709_defconfig index 10be4184f8bf..ae00d41e75e6 100644 --- a/arch/arm/configs/bcm2709_defconfig +++ b/arch/arm/configs/bcm2709_defconfig @@ -1188,8 +1188,11 @@ CONFIG_IIO_BUFFER_CB=m CONFIG_MCP320X=m CONFIG_MCP3422=m CONFIG_DHT11=m +CONFIG_HDC100X=m CONFIG_HTU21=m CONFIG_INV_MPU6050_I2C=m +CONFIG_TSL4531=m +CONFIG_VEML6070=m CONFIG_BMP280=m CONFIG_PWM_BCM2835=m CONFIG_PWM_PCA9685=m diff --git a/arch/arm/configs/bcmrpi_defconfig b/arch/arm/configs/bcmrpi_defconfig index 76842f6fd2c5..2cd41c262320 100644 --- a/arch/arm/configs/bcmrpi_defconfig +++ b/arch/arm/configs/bcmrpi_defconfig @@ -1197,8 +1197,11 @@ CONFIG_IIO_BUFFER_CB=m CONFIG_MCP320X=m CONFIG_MCP3422=m CONFIG_DHT11=m +CONFIG_HDC100X=m CONFIG_HTU21=m CONFIG_INV_MPU6050_I2C=m +CONFIG_TSL4531=m +CONFIG_VEML6070=m CONFIG_BMP280=m CONFIG_PWM_BCM2835=m CONFIG_PWM_PCA9685=m -- 2.30.2