[PATCH v5 04/11] dt-bindings: iio: adc: hx711: add HX710B support

Piyush Patle
2026-04-29T05:46:10Z

Add the avia,hx710b compatible and document the HX710B-specific
DVDD and VREF supplies.

Add constraints that forbid HX711-only properties on HX710B nodes and
require vref-supply for HX710B, then add a separate HX710B example.

Keep the existing HX711-only binding extensions in earlier patches so
this change is limited to the new variant.

Signed-off-by: Piyush Patle <piyushpatle228@gmail.com>
---
Changes in v5:
- Split this out of the old combined binding update so the HX710B
additions stand on their own.
- Require explicit vref-supply for HX710B nodes instead of documenting
an implicit fallback.
- Use a single if/then/else schema block for the HX710B versus HX711
property constraints.
Changes in v4:
- Add vref-supply for the HX710B VREF pin.
- Remove dvdd-supply from the HX710B forbidden properties.
- Add an HX710B example and the vref-supply constraint for HX711/HX710B.
- Update the HX710B description to avoid channel-number wording.
Changes in v3:
- Drop the old vref wording from avdd-supply and remove the separate
HX710B example used earlier.
Changes in v2:
- Add the HX710B-compatible, dvdd-supply, and the initial HX710B/HX711
constraints in the combined binding update.
---
.../bindings/iio/adc/avia-hx711.yaml | 42 ++++++++++++++++++-
1 file changed, 41 insertions(+), 1 deletion(-)

diff --git a/Documentation/devicetree/bindings/iio/adc/avia-hx711.yaml b/Documentation/devicetree/bindings/iio/adc/avia-hx711.yaml
index 9134bbe41379..b2b5c7bdf05e 100644
--- a/Documentation/devicetree/bindings/iio/adc/avia-hx711.yaml
+++ b/Documentation/devicetree/bindings/iio/adc/avia-hx711.yaml
@@ -4,7 +4,7 @@
$id: http://devicetree.org/schemas/iio/adc/avia-hx711.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

-title: AVIA HX711 ADC chip for weight cells
+title: AVIA HX711 and HX710B ADCs

maintainers:
- Andreas Klinger <ak@it-klinger.de>
@@ -14,9 +14,14 @@ description: |
differential input channels. Channel A supports gain 64 and 128;
channel B supports gain 32.

+ The HX710B is a 24-bit ADC with fixed gain of 128. One input measures
+ the differential voltage between the two input pins; a second measures
+ the DVDD-AVDD supply voltage difference for battery level detection.
+
properties:
compatible:
enum:
+ - avia,hx710b
- avia,hx711

sck-gpios:
@@ -44,6 +49,17 @@ properties:
RATE pin state is determined by the board wiring.
maxItems: 1

+ dvdd-supply:
+ description:
+ Digital supply voltage (DVDD). For the HX710B, DVDD must be
+ greater than or equal to AVDD. When DVDD is a battery rail and
+ AVDD is a regulated supply, one channel monitors the DVDD-AVDD
+ difference for battery level detection.
+
+ vref-supply:
+ description:
+ Reference voltage input (VREF).
+
clock-frequency:
description:
Controls the SCK bit-bang timing. The value is used to derive the
@@ -53,6 +69,21 @@ properties:
maximum: 2500000
default: 400000

+allOf:
+ - if:
+ properties:
+ compatible:
+ const: avia,hx710b
+ then:
+ properties:
+ vsup-supply: false
+ rate-gpios: false
+ required:
+ - vref-supply
+ else:
+ properties:
+ vref-supply: false
+
required:
- compatible
- sck-gpios
@@ -72,3 +103,12 @@ examples:
avdd-supply = <&avdd>;
clock-frequency = <100000>;
};
+ - |
+ #include <dt-bindings/gpio/gpio.h>
+ weight {
+ compatible = "avia,hx710b";
+ sck-gpios = <&gpio3 10 GPIO_ACTIVE_HIGH>;
+ dout-gpios = <&gpio0 7 GPIO_ACTIVE_HIGH>;
+ avdd-supply = <&avdd>;
+ vref-supply = <&vref>;
+ };
--
2.43.0