RE: [PATCH v2] iio: adc: ad_sigma_delta: fix CS held asserted after single conversion

From: Sabau, Radu bogdan

Date: Mon May 18 2026 - 06:00:56 EST


> -----Original Message-----
> From: Sabau, Radu bogdan
> Sent: Monday, May 18, 2026 12:38 PM\

...

> > > I would then say that the solutions are 1 of :
> > > - add rdy-gpios as well where has_registers are false.
> > > - add another else with return 0, since if the DRDY is not low, it will be after
> > enable_irq,
> > > and if it is low, it will be triggered afterwards and clock data correctly. For
> > these devices
> > > as far as I can tell, there should be no spurious signals, only the DRDY
> > interrupt unless
> > > clocking data. I may be wrong though, and perhaps the rdy-gpios is the
> safer
> > move,
> > > though this would mean less churn.
> >
> > I would expect the need for rdy-gpios to be the same whether not not
> > the chip has registers (only depends on the interrupt controller).
>
> I would too, would then add rdy-gpios where needed instead.
>

Sorry for the confusion, I misread your reply. You're right - the need for rdy-gpios
depends on the interrupt controller, not on whether the device has registers.
Since register-based devices work correctly without rdy-gpios, the same applies
to non-register devices. Adding rdy-gpios selectively for has_registers = false
devices would be inconsistent.

The correct fix is the else { return 0; } path in ad_sigma_delta_clear_pending_event(),
which prevents the spurious SPI read for devices with neither registers nor rdy-gpiod.
I'll keep the driver fix and drop the idea of touching the bindings.

> >
> > >
> > > What do you guys think?
> > >
> > > Thanks,
> > > Radu
> > >