Re: [PATCH 2/5] dt-bindings: iio: ad74413r: make refin-supply optional

From: Rasmus Villemoes
Date: Mon Nov 14 2022 - 03:11:06 EST


On 12/11/2022 17.54, Jonathan Cameron wrote:
> On Fri, 11 Nov 2022 15:39:18 +0100
> Rasmus Villemoes <linux@xxxxxxxxxxxxxxxxxx> wrote:
>
>> The ad74412r/ad74413r has an internal 2.5V reference output, which (by
>> tying the REFOUT pin to the REFIN pin) can be used in lieu of an
>> external 2.5V input reference. So stop marking refin-supply as
>> required.
>>
>> Signed-off-by: Rasmus Villemoes <linux@xxxxxxxxxxxxxxxxxx>
>
>
> Interesting corner case. Given we have no way of knowing if the
> wiring has REFOUT connected to REFIN I see two ways we should fix this.
>
> 1) Just have any DT doing this provide a fixed regulator.
> 2) Have the REFOUT supported as an actual regulator - in theory it might be
> wired to other devices. This might get a little interesting ordering
> wise as we'll want to register the regulator before we try to consume
> it in the same driver. I'm also not 100% sure there are no other issues
> in a driver providing and consuming the same regulator.

Hm, I don't like the idea of exposing REFOUT as a real regulator. As you
write, there's gonna be interesting chicken-and-egg problems, and I also
don't think it can actually deliver any meaningful current, i.e. it
can't really (and shouldn't) be used for supplying other peripherals.

A third option is to have a boolean property to explicitly indicate that
"yes, we're using refout as refin", and then make the requirement in the
schema be "refin-supply XOR refout-as-refin".

But I think the simplest is (1), I will just add a fixed-regulator with
a suitable comment in my .dts, and patches 2,3 can be ignored.

Thanks,
Rasmus