From: David Lechner <dlechner@baylibre.com>
To: Piyush Patle <piyushpatle228@gmail.com>,
ak@it-klinger.de, jic23@kernel.org
Cc: nuno.sa@analog.com, andy@kernel.org, robh@kernel.org,
krzk+dt@kernel.org, conor+dt@kernel.org,
linux-iio@vger.kernel.org, devicetree@vger.kernel.org,
linux-kernel@vger.kernel.org
Subject: Re: [PATCH v4 1/7] dt-bindings: iio: adc: avia-hx711: add avia,hx710b compatible
Date: Mon, 27 Apr 2026 10:29:19 -0500 [thread overview]
Message-ID: <93a7ca0d-46a1-4b14-8f49-348018c4158b@baylibre.com> (raw)
In-Reply-To: <20260427100950.33936-2-piyushpatle228@gmail.com>
On 4/27/26 5:09 AM, Piyush Patle wrote:
> The HX710B shares the same two-wire interface as the HX711 but differs
> in its channel and gain model: gain is fixed at 128 and the number of
> trailing PD_SCK pulses selects the input channel rather than the gain.
>
> Add avia,hx710b to the compatible enum. Document the chip differences
> in the description and add chip-specific supply properties (dvdd-supply,
> vsup-supply, vref-supply) and a rate-gpios property for the HX711 RATE
> pin. Add allOf constraints that forbid HX711-only properties on HX710B
> nodes and vice versa. Clarify the clock-frequency description to
> reflect its actual purpose: controlling the SCK bit-bang timing.
Krzysztof gave a Reviewed-by on the last revision [1], so you need to
include that here or explain why you didn't pick it up. If you just make
a trivial change, you can still pick it up. In this case though, I think
that enough changes were made that it is worth having a DT maintainer have
another look.
https://lore.kernel.org/linux-iio/20260423-famous-tody-of-opposition-73c8af@quoll/
>
> Signed-off-by: Piyush Patle <piyushpatle228@gmail.com>
> ---
> Changes in v4:
> - Add vref-supply for the HX710B VREF reference voltage pin.
> - Remove dvdd-supply from the HX710B forbidden properties list; the
> HX710B has a DVDD supply and the DVDD-AVDD channel relies on it.
> - Add allOf block forbidding vref-supply on HX711 nodes.
> - Add an HX710B example showing vref-supply.
> - Update description: avoid specific channel-number references in
> hardware text.
>
> Changes in v3:
> - Drop the vref-supply mention from avdd-supply; no such binding
> property exists.
> - Drop the clock-frequency sentence that repeated the schema default.
> - Restore the example node name to weight.
> - Remove the separate HX710B example.
>
> Changes in v2:
> - Remove driver implementation details from the description and describe
> hardware behaviour only.
> - Drop unrelated punctuation cleanup.
> - Add dvdd-supply and vsup-supply optional properties for HX711.
> - Add rate-gpios optional property for the HX711 RATE pin and forbid it
> on HX710B.
> - Add the allOf if/then block forbidding HX711-only properties on
> HX710B nodes.
> - Clarify clock-frequency as SCK bit-bang timing, not a crystal or
> external clock input.
> - Sort compatible enum alphabetically.
> - Remove redundant example comments.
> - Update the HX711 example to exercise rate-gpios.
> ---
> .../bindings/iio/adc/avia-hx711.yaml | 82 +++++++++++++++----
> 1 file changed, 67 insertions(+), 15 deletions(-)
>
> diff --git a/Documentation/devicetree/bindings/iio/adc/avia-hx711.yaml b/Documentation/devicetree/bindings/iio/adc/avia-hx711.yaml
> index 9c57eb13f892..fddd296bfaca 100644
> --- a/Documentation/devicetree/bindings/iio/adc/avia-hx711.yaml
> +++ b/Documentation/devicetree/bindings/iio/adc/avia-hx711.yaml
> @@ -4,49 +4,91 @@
> $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>
>
> description: |
> - Bit-banging driver using two GPIOs:
> - - sck-gpio gives a clock to the sensor with 24 cycles for data retrieval
> - and up to 3 cycles for selection of the input channel and gain for the
> - next measurement
> - - dout-gpio is the sensor data the sensor responds to the clock
> + The HX711 is a 24-bit ADC with selectable gain (32/64/128) and two
> + differential input channels. Channel A supports gain 64 and 128;
> + channel B supports gain 32.
>
> - Specifications about the driver can be found at:
> - http://www.aviaic.com/ENProducts.aspx
> + 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:
> description:
> - Definition of the GPIO for the clock (output). In the datasheet it is
> - named PD_SCK
> + GPIO for the clock output (PD_SCK in the datasheet).
> maxItems: 1
>
> dout-gpios:
> description:
> - Definition of the GPIO for the data-out sent by the sensor in
> - response to the clock (input).
> - See Documentation/devicetree/bindings/gpio/gpio.txt for information
> - on how to specify a consumer gpio.
> + GPIO for the data output from the sensor (DOUT in the datasheet).
> maxItems: 1
>
> avdd-supply:
> description:
> - Definition of the regulator used as analog supply
> + Analog supply voltage (AVDD). Also serves as the voltage reference on
> + both chips.
> +
> + 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.
> +
> + vsup-supply:
> + description:
> + Supply voltage for the on-chip regulator (VSUP). HX711 only.
> +
> + vref-supply:
> + description:
> + Reference voltage input (VREF). HX710B only. When omitted, the driver
> + assumes VREF is tied to AVDD on the board.
> +
> + rate-gpios:
> + description:
> + GPIO connected to the RATE pin (HX711 only). When driven low the
> + output data rate is 10 SPS; when driven high it is 80 SPS. If
> + omitted the RATE pin state is determined by the board wiring.
> + maxItems: 1
>
> clock-frequency:
> + description:
> + Controls the SCK bit-bang timing. The value is used to derive the
> + delay between SCK edges; keep the SCK high time below 60 us to
> + avoid triggering chip power-down mode.
> minimum: 20000
> maximum: 2500000
> default: 400000
>
> +allOf:
> + - if:
> + properties:
> + compatible:
> + const: avia,hx710b
> + then:
> + properties:
> + vsup-supply: false
> + rate-gpios: false
> +
> + - if:
Could just be else:
Probably OK either way though.
> + properties:
> + compatible:
> + const: avia,hx711
> + then:
> + properties:
> + vref-supply: false
> +
> required:
> - compatible
> - sck-gpios
> @@ -62,6 +104,16 @@ examples:
> compatible = "avia,hx711";
> sck-gpios = <&gpio3 10 GPIO_ACTIVE_HIGH>;
> dout-gpios = <&gpio0 7 GPIO_ACTIVE_HIGH>;
> + rate-gpios = <&gpio0 9 GPIO_ACTIVE_HIGH>;
> 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>;
> + };
next prev parent reply other threads:[~2026-04-27 15:29 UTC|newest]
Thread overview: 33+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-04-27 10:09 [PATCH v4 0/7] iio: adc: hx711: add HX710B support Piyush Patle
2026-04-27 10:09 ` [PATCH v4 1/7] dt-bindings: iio: adc: avia-hx711: add avia,hx710b compatible Piyush Patle
2026-04-27 15:29 ` David Lechner [this message]
2026-04-27 22:36 ` Piyush Patle
2026-04-28 17:49 ` Jonathan Cameron
2026-04-27 10:09 ` [PATCH v4 2/7] iio: adc: hx711: move scale computation to per-device storage Piyush Patle
2026-04-27 14:02 ` Andy Shevchenko
2026-04-27 22:38 ` Piyush Patle
2026-04-28 17:52 ` Jonathan Cameron
2026-04-27 10:09 ` [PATCH v4 3/7] iio: adc: hx711: update Kconfig, module description and file header Piyush Patle
2026-04-27 10:26 ` Joshua Crofts
2026-04-27 13:46 ` Andy Shevchenko
2026-04-27 13:49 ` Joshua Crofts
2026-04-28 17:54 ` Jonathan Cameron
2026-04-28 18:03 ` Joshua Crofts
2026-04-29 9:57 ` Andy Shevchenko
2026-04-29 10:27 ` Jonathan Cameron
2026-04-27 13:58 ` Andy Shevchenko
2026-04-27 14:19 ` Andy Shevchenko
2026-04-27 10:09 ` [PATCH v4 4/7] iio: adc: hx711: introduce hx711_chip_info per-variant structure Piyush Patle
2026-04-27 14:08 ` Andy Shevchenko
2026-04-27 14:14 ` Andy Shevchenko
2026-04-27 22:47 ` Piyush Patle
2026-04-28 17:57 ` Jonathan Cameron
2026-04-27 22:44 ` Piyush Patle
2026-04-27 10:09 ` [PATCH v4 5/7] iio: adc: hx711: pass trailing pulse count into hx711_read() Piyush Patle
2026-04-27 14:12 ` Andy Shevchenko
2026-04-27 22:49 ` Piyush Patle
2026-04-27 10:09 ` [PATCH v4 6/7] iio: adc: hx711: pass iio_chan_spec to hx711_reset_read() Piyush Patle
2026-04-27 14:16 ` Andy Shevchenko
2026-04-27 10:09 ` [PATCH v4 7/7] iio: adc: hx711: add support for HX710B Piyush Patle
2026-04-27 14:34 ` Andy Shevchenko
2026-04-27 23:06 ` Piyush Patle
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=93a7ca0d-46a1-4b14-8f49-348018c4158b@baylibre.com \
--to=dlechner@baylibre.com \
--cc=ak@it-klinger.de \
--cc=andy@kernel.org \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=jic23@kernel.org \
--cc=krzk+dt@kernel.org \
--cc=linux-iio@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=nuno.sa@analog.com \
--cc=piyushpatle228@gmail.com \
--cc=robh@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox