diff --git a/arch/arm/boot/dts/overlays/README b/arch/arm/boot/dts/overlays/README
index c7df8e3b1a4928..2640a5678432a3 100644
--- a/arch/arm/boot/dts/overlays/README
+++ b/arch/arm/boot/dts/overlays/README
@@ -2421,16 +2421,40 @@ Name: i2c-sensor
Info: Adds support for a number of I2C barometric pressure, temperature,
light level and chemical sensors on i2c_arm
Load: dtoverlay=i2c-sensor,=
-Params: addr Set the address for the ADS7828, ADS7830,
- ADT7410, AS73211, AS7331, BH1750, BME280,
- BME680, BMP280, BMP380, BMP58x, CCS811, DS1621,
- HDC100X, HDC3020, JC42, LM75, MCP980x,
+Params: addr Set the address for the AD799X, ADS7828,
+ ADS7830, ADT7410, AS73211, AS7331, BH1750,
+ BME280, BME680, BMP280, BMP380, BMP58x, CCS811,
+ DS1621, HDC100X, HDC3020, JC42, LM75, MCP980x,
MPU6050, MPU9250, MS5637, MS5803, MS5805,
MS5837, MS8607, SHT3x, TMP102 or VEML6030.
i2c-bus Supports all the standard I2C bus selection
parameters - see "dtoverlay -h i2c-bus"
+ ad7991 Select the Analog Devices AD7991 ADC
+ Valid addresses 0x28-0x29, default 0x28
+
+ ad7992 Select the Analog Devices AD7992 ADC
+ Valid addresses 0x20-0x24, default 0x20
+
+ ad7993 Select the Analog Devices AD7993 ADC
+ Valid addresses 0x20-0x24, default 0x20
+
+ ad7994 Select the Analog Devices AD7994 ADC
+ Valid addresses 0x20-0x24, default 0x20
+
+ ad7995 Select the Analog Devices AD7995 ADC
+ Valid addresses 0x28-0x29, default 0x28
+
+ ad7997 Select the Analog Devices AD7997 ADC
+ Valid addresses 0x20-0x24, default 0x20
+
+ ad7998 Select the Analog Devices AD7998 ADC
+ Valid addresses 0x20-0x24, default 0x20
+
+ ad7999 Select the Analog Devices AD7999 ADC
+ Valid address 0x29 (the default)
+
ads7828 Select the TI ADS7828 50kHz 8-channel 12bit ADC
Valid addresses 0x48-0x4b, default 0x48
diff --git a/arch/arm/boot/dts/overlays/i2c-sensor-common.dtsi b/arch/arm/boot/dts/overlays/i2c-sensor-common.dtsi
index 5213b38e675539..5d52b16c8d47b3 100755
--- a/arch/arm/boot/dts/overlays/i2c-sensor-common.dtsi
+++ b/arch/arm/boot/dts/overlays/i2c-sensor-common.dtsi
@@ -818,6 +818,20 @@
};
};
+ fragment@56 {
+ target = <&i2cbus>;
+ __dormant__ {
+ #address-cells = <1>;
+ #size-cells = <0>;
+ status = "okay";
+
+ ad799x: ad799x@20 {
+ compatible = "adi,ad799x"; // To be overridden
+ reg = <0x20>;
+ };
+ };
+ };
+
fragment@98 {
target-path = "/";
__dormant__ {
@@ -896,6 +910,14 @@
veml6030 = <0>,"+50+99";
tmp117 = <0>,"+51+98";
scd4x = <0>,"+52";
+ ad7991 = <0>,"+56", <&ad799x>,"compatible=adi,ad7991", <&ad799x>,"reg:0=0x28";
+ ad7992 = <0>,"+56", <&ad799x>,"compatible=adi,ad7992";
+ ad7993 = <0>,"+56", <&ad799x>,"compatible=adi,ad7993";
+ ad7994 = <0>,"+56", <&ad799x>,"compatible=adi,ad7994";
+ ad7995 = <0>,"+56", <&ad799x>,"compatible=adi,ad7995", <&ad799x>,"reg:0=0x28";
+ ad7997 = <0>,"+56", <&ad799x>,"compatible=adi,ad7997";
+ ad7998 = <0>,"+56", <&ad799x>,"compatible=adi,ad7998";
+ ad7999 = <0>,"+56", <&ad799x>,"compatible=adi,ad7999", <&ad799x>,"reg:0=0x29";
addr = <&bme280>,"reg:0", <&bmp280>,"reg:0", <&tmp102>,"reg:0",
<&lm75>,"reg:0", <&hdc100x>,"reg:0", <&sht3x>,"reg:0",
@@ -910,7 +932,8 @@
<&as7331>,"reg:0", <&adxl345>,"reg:0",
<&ads7828>,"reg:0", <&ads7830>,"reg:0",
<&adxl355>,"reg:0", <&bmp58x>,"reg:0",
- <&veml6030>,"reg:0", <&tmp117>,"reg:0";
+ <&veml6030>,"reg:0", <&tmp117>,"reg:0",
+ <&ad799x>,"reg:0";
int_pin = <&int_pins>, "brcm,pins:0",
<&int_pins>, "reg:0",
<&max30102>, "interrupts:0",
diff --git a/arch/arm/configs/bcm2709_defconfig b/arch/arm/configs/bcm2709_defconfig
index 308a25dd51eafb..47e07e0b20ec3b 100644
--- a/arch/arm/configs/bcm2709_defconfig
+++ b/arch/arm/configs/bcm2709_defconfig
@@ -1432,6 +1432,7 @@ CONFIG_IIO=m
CONFIG_IIO_BUFFER_CB=m
CONFIG_IIO_SW_TRIGGER=m
CONFIG_ADXL355_I2C=m
+CONFIG_AD799X=m
CONFIG_MCP320X=m
CONFIG_MCP3422=m
CONFIG_TI_ADS1015=m
diff --git a/arch/arm/configs/bcm2711_defconfig b/arch/arm/configs/bcm2711_defconfig
index 003e89e0bd0e1f..74b20392c5e64c 100644
--- a/arch/arm/configs/bcm2711_defconfig
+++ b/arch/arm/configs/bcm2711_defconfig
@@ -1476,6 +1476,7 @@ CONFIG_IIO=m
CONFIG_IIO_BUFFER_CB=m
CONFIG_IIO_SW_TRIGGER=m
CONFIG_ADXL355_I2C=m
+CONFIG_AD799X=m
CONFIG_MCP320X=m
CONFIG_MCP3422=m
CONFIG_TI_ADS1015=m
diff --git a/arch/arm/configs/bcmrpi_defconfig b/arch/arm/configs/bcmrpi_defconfig
index 09523c520d1b33..fc36f87c389a23 100644
--- a/arch/arm/configs/bcmrpi_defconfig
+++ b/arch/arm/configs/bcmrpi_defconfig
@@ -1424,6 +1424,7 @@ CONFIG_IIO=m
CONFIG_IIO_BUFFER_CB=m
CONFIG_IIO_SW_TRIGGER=m
CONFIG_ADXL355_I2C=m
+CONFIG_AD799X=m
CONFIG_MCP320X=m
CONFIG_MCP3422=m
CONFIG_TI_ADS1015=m
diff --git a/arch/arm64/configs/bcm2711_defconfig b/arch/arm64/configs/bcm2711_defconfig
index cab13cedcdf009..941a3a2d2dfc88 100644
--- a/arch/arm64/configs/bcm2711_defconfig
+++ b/arch/arm64/configs/bcm2711_defconfig
@@ -1545,6 +1545,7 @@ CONFIG_IIO=m
CONFIG_IIO_BUFFER_CB=m
CONFIG_IIO_SW_TRIGGER=m
CONFIG_ADXL355_I2C=m
+CONFIG_AD799X=m
CONFIG_MCP320X=m
CONFIG_MCP3422=m
CONFIG_TI_ADS1015=m
diff --git a/arch/arm64/configs/bcm2711_rt_defconfig b/arch/arm64/configs/bcm2711_rt_defconfig
index 239b9ae0088228..0db620a1c34ebe 100644
--- a/arch/arm64/configs/bcm2711_rt_defconfig
+++ b/arch/arm64/configs/bcm2711_rt_defconfig
@@ -1544,6 +1544,7 @@ CONFIG_IIO=m
CONFIG_IIO_BUFFER_CB=m
CONFIG_IIO_SW_TRIGGER=m
CONFIG_ADXL355_I2C=m
+CONFIG_AD799X=m
CONFIG_MCP320X=m
CONFIG_MCP3422=m
CONFIG_TI_ADS1015=m
diff --git a/arch/arm64/configs/bcm2712_defconfig b/arch/arm64/configs/bcm2712_defconfig
index e6f0904704447c..e46ddbbfb9786f 100644
--- a/arch/arm64/configs/bcm2712_defconfig
+++ b/arch/arm64/configs/bcm2712_defconfig
@@ -1547,6 +1547,7 @@ CONFIG_IIO=m
CONFIG_IIO_BUFFER_CB=m
CONFIG_IIO_SW_TRIGGER=m
CONFIG_ADXL355_I2C=m
+CONFIG_AD799X=m
CONFIG_MCP320X=m
CONFIG_MCP3422=m
CONFIG_TI_ADS1015=m