Re: [PATCH v11 00/11] iio: adc: Add support for AVIA HX710B ADC

Jonathan Cameron <[email protected]>
Newsgroups org.kernel.vger.linux-iio,org.kernel.vger.linux-devicetree,org.kernel.vger.linux-kernel
Message-ID <20260724223205.25184e92@jic23-huawei>
On Fri, 24 Jul 2026 05:51:25 +0530
Piyush Patle <[email protected]> wrote:

> On Mon, Jun 15, 2026 at 2:34 AM Jonathan Cameron <[email protected]> wrote:
> >
> > On Thu,  4 Jun 2026 00:18:48 +0530
> > Piyush Patle <[email protected]> wrote:
> >  
> > > The HX710B is a 24-bit ADC from AVIA Semiconductor, related to the
> > > HX711 already supported in this driver.  Unlike the HX711 (which has
> > > selectable gain and two input channels), the HX710B has a fixed gain
> > > of 128 and two operating modes selected by the trailing PD_SCK pulse
> > > count after each conversion:
> > >
> > >   25 pulses (1 trailing): differential input at 10 SPS
> > >   26 pulses (2 trailing): DVDD-AVDD supply monitor at 40 SPS
> > >   27 pulses (3 trailing): differential input at 40 SPS
> > >
> > > This series first extends the existing HX711 binding and driver with
> > > preparatory refactoring, then adds HX710B support on top.
> > >
> > > The differential input is exposed as a single IIO channel with
> > > IIO_CHAN_INFO_SAMP_FREQ, allowing userspace to select 10 or 40 SPS
> > > without needing two separate channels for the same physical input.
> > > The supply monitor is a second channel at fixed 40 SPS.
> > >
> > > This revision is rebased onto current mainline.  Note that
> > > iio_device_claim_direct_mode() / iio_device_release_direct_mode() were
> > > removed from the IIO core since v10, so 11/11 now uses the replacement
> > > iio_device_claim_direct() / iio_device_release_direct() API.
> > >
> > > Tested on a PocketBeagle2 (TI AM625): the avia,hx710b node probes and
> > > the driver registers its two IIO channels.
> > >
> > > Changes from v10:
> > >   - 02/11: Retitled to "add VSUP and DVDD supply properties"; the
> > >     commit message now documents both supplies (the patch already
> > >     added both; only the title/text were out of sync). [Jonathan]
> > >   - 04/11: Reworded commit message so DVDD is no longer described as
> > >     HX710B-specific (it is added for both parts in 02/11). The
> > >     compatible match now uses "contains: const: avia,hx710b" so the
> > >     constraints still apply if the compatible is later used as a
> > >     fallback. dvdd-supply is now required for HX710B (in the HX710B
> > >     branch only, so existing HX711 device trees are unaffected) and
> > >     added to the HX710B example. [Jonathan, Conor, Sashiko]
> > >   - 11/11: Kconfig title and file header use "similar" instead of
> > >     "compatible". Simplified the tail of hx711_set_hx710b_channel()
> > >     to "return hx711_wait_for_ready()". Dropped an unrelated
> > >     reindentation of the iio_push_to_buffers_with_timestamp() call.
> > >     Converted hx710b_write_raw() to the new
> > >     iio_device_claim_direct() API (see above). [Jonathan]
> > >
> > > The Reviewed-by (Andy Shevchenko) and Acked-by (Conor Dooley) tags on
> > > 02/11 and 04/11 are carried over although those patches changed; please
> > > re-confirm if you disagree with the reworked constraints.  
> > As the only comments I had (well mostly sashiko) were on the 710b patch
> > at the end and some patches were queued from previous patches, I now have
> > patches 1-3 and 5-10 applied to the testing branch of iio.git.  
> 
> Thanks a lot for picking those up, and for the reviews through the
> series.
> 
> Two questions, mostly to make sure I do the right thing next:
> 
> Looking at mainline I currently only see 01/11 ("dt-bindings: iio: adc:
> hx711: clean up existing binding text") and 05/11 ("iio: adc: hx711:
> move scale computation to per-device storage") under my name.  I assume
> the rest are still sitting in testing/togreg and will flow in at the
> next merge window rather than anything having gone missing, is that
> right?  Just checking I'm reading the tree correctly, no rush from my
> side.

Exactly that - assuming nothing odd happens they should go into mainline
in the next merge window. 

> 
> For the two that weren't applied, 04/11 (dt-bindings HX710B) and 11/11
> (driver HX710B support): would you prefer I resend just those two as a
> standalone v12 based on the testing branch, once I've worked through
> the remaining comments from you and Sashiko?  That seemed cleaner than
> reposting all eleven, but happy to send the full series again if you'd
> rather have it that way.

Go for the togreg branch (it's a little behind but should have all your
work on it) and make sure to have a Based-on entry in the cover letter.
I'm not sure if Sashiko will find the right thing test on but worth a go.


> 
> If there is anything still outstanding on 04/11 or 11/11 beyond what
> was raised on v11, please do point me at it and I'll fold it in.

Not that I know of, but we'll see on v11 :)

Jonathan

> 
> Thanks,
> Piyush
> >
> > Thanks,
> >
> > Jonathan
> >  
> > >
> > > Patches 01/11, 03/11, and 05/11 are unchanged from v10.
> > >
> > > Piyush Patle (11):
> > >   dt-bindings: iio: adc: hx711: clean up existing binding text
> > >   dt-bindings: iio: adc: hx711: add VSUP and DVDD supply properties
> > >   dt-bindings: iio: adc: hx711: add RATE GPIO property
> > >   dt-bindings: iio: adc: hx711: add HX710B support
> > >   iio: adc: hx711: move scale computation to per-device storage
> > >   iio: adc: hx711: introduce hx711_chip_info structure
> > >   iio: adc: hx711: pass trailing pulse count into hx711_read
> > >   iio: adc: hx711: split variable assignments in hx711_read and
> > >     hx711_reset
> > >   iio: adc: hx711: localize loop iterators in hx711_read
> > >   iio: adc: hx711: pass iio_chan_spec to hx711_reset_read
> > >   iio: adc: hx711: add support for HX710B
> > >
> > >  .../bindings/iio/adc/avia-hx711.yaml          |  82 ++++-
> > >  drivers/iio/adc/Kconfig                       |   8 +-
> > >  drivers/iio/adc/hx711.c                       | 343 +++++++++++++++---
> > >  3 files changed, 359 insertions(+), 74 deletions(-)
> > >  
> >
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.