overlays: i2c-sensor: Add the ad799x ADC family

Add support for the AD799[1,2,3,4,5,7,8,9] ADCs to the i2c-sensor
overlay.

Signed-off-by: Phil Elwell <phil@raspberrypi.com>
This commit is contained in:
Phil Elwell
2025-10-24 10:15:52 +01:00
committed by Dom Cobley
parent 38d14fe82e
commit 36f4e6d11b
2 changed files with 52 additions and 5 deletions

View File

@@ -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,<param>=<val>
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

View File

@@ -864,6 +864,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__ {
@@ -945,6 +959,14 @@
veml3235 = <0>,"+53";
tmp117 = <0>,"+54+98";
scd4x = <0>,"+55";
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",
@@ -959,7 +981,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",