Re: [PATCH] dt-bindings: iio: admv1014: make all regs required

From: Jonathan Cameron
Date: Mon Jul 31 2023 - 06:13:19 EST


On Mon, 31 Jul 2023 07:40:14 +0000
"Miclaus, Antoniu" <Antoniu.Miclaus@xxxxxxxxxx> wrote:

> > -----Original Message-----
> > From: Jonathan Cameron <jic23@xxxxxxxxxx>
> > Sent: Saturday, July 29, 2023 2:55 PM
> > To: Miclaus, Antoniu <Antoniu.Miclaus@xxxxxxxxxx>
> > Cc: Krzysztof Kozlowski <krzysztof.kozlowski@xxxxxxxxxx>;
> > robh+dt@xxxxxxxxxx; krzysztof.kozlowski+dt@xxxxxxxxxx;
> > conor+dt@xxxxxxxxxx; linux-iio@xxxxxxxxxxxxxxx;
> > devicetree@xxxxxxxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx
> > Subject: Re: [PATCH] dt-bindings: iio: admv1014: make all regs required
> >
> > [External]
> >
> > On Thu, 27 Jul 2023 12:02:04 +0000
> > "Miclaus, Antoniu" <Antoniu.Miclaus@xxxxxxxxxx> wrote:
> >
> > > > -----Original Message-----
> > > > From: Krzysztof Kozlowski <krzysztof.kozlowski@xxxxxxxxxx>
> > > > Sent: Thursday, July 27, 2023 2:47 PM
> > > > To: Miclaus, Antoniu <Antoniu.Miclaus@xxxxxxxxxx>; jic23@xxxxxxxxxx;
> > > > robh+dt@xxxxxxxxxx; krzysztof.kozlowski+dt@xxxxxxxxxx;
> > > > conor+dt@xxxxxxxxxx; linux-iio@xxxxxxxxxxxxxxx;
> > > > devicetree@xxxxxxxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx
> > > > Subject: Re: [PATCH] dt-bindings: iio: admv1014: make all regs required
> > > >
> > > > [External]
> > > >
> > > > On 27/07/2023 13:31, Antoniu Miclaus wrote:
> > > > > Since the regulators are required in the driver implementation, make
> > > > > them required also in the bindings.
> >
> > This bit is probably not strictly true. Try no providing them and you will
> > probably find stub regulators created on assumption they are fixed regs
> > that we aren't interested in controlling.
> >
> > > > >
> > > >
> > > > The true reason should be whether the hardware requires them.
> > Because if
> > > > hardware does not need some, the driver should be fixed.
> > > The datasheet is not very explicit on this topic, but all the specifications of
> > the
> > > part are built around these pins being supplied.
> > > Moreover, the evaluation board or the part comes with all VCC pins
> > connected
> > > to fixed supplies.
> >
> > Agreed - these should be required in the binding.
> >
> Hello Jonathan,
>
> Not sure if I fully understand. Should I drop this patch?

Patch is good. The binding should state these are required - it doesn't
mean that the driver will fail to probe on systems that doesn't provide
them. It does encourage any new DTS files to incorporate them which is
good to have.

Only thing that needs changing is the patch should not justify the
addition of these to the binding because they 'are required in the
driver implementation'. Just drop that statement and the patch is
fine.



> And also drop the "required" of the regulators in the admv1013 patch?
> https://patchwork.kernel.org/project/linux-iio/patch/20230727110121.93546-1-antoniu.miclaus@xxxxxxxxxx/

As long as the patch doesn't say anything about what the driver does
then it is fine. Note DT bindings and patch descriptions for them should
never mention the driver.

Jonathan

>
> Thanks,
> > There was an old disagreement on this in which it they were not marked
> > required in some bindings because the regulator subsystem would assume
> > they
> > were fixed supplies that were just missing in the DT and so provides stub
> > regulators.
> > My understanding at least has changed and now we mark the required even
> > if
> > the driver works fine on some boards without them being supplied.
> >
> > Note though that this means the whole of trivial-devices.yaml is garbage
> > as very few devices actually work without any power :)
> >
> > Jonathan
> >
> >
> >
> > > > Best regards,
> > > > Krzysztof
> > >
>