2023-09-22 03:13:39

by Antoniu Miclaus

[permalink] [raw]
Subject: [PATCH 1/2] dt-bindings: hwmon: max31827: use supply pin name

The actual hardware pin name for the supply of max31827 is vdd.
Update the dt-binding to reflect the hardware properties accordingly.

Signed-off-by: Antoniu Miclaus <[email protected]>
---
Documentation/devicetree/bindings/hwmon/adi,max31827.yaml | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/Documentation/devicetree/bindings/hwmon/adi,max31827.yaml b/Documentation/devicetree/bindings/hwmon/adi,max31827.yaml
index 2dc8b07b4d3b..21f2d350373b 100644
--- a/Documentation/devicetree/bindings/hwmon/adi,max31827.yaml
+++ b/Documentation/devicetree/bindings/hwmon/adi,max31827.yaml
@@ -27,7 +27,7 @@ properties:
reg:
maxItems: 1

- vref-supply:
+ vdd-supply:
description:
Must have values in the interval (1.6V; 3.6V) in order for the device to
function correctly.
@@ -35,7 +35,7 @@ properties:
required:
- compatible
- reg
- - vref-supply
+ - vdd-supply

additionalProperties: false

@@ -48,7 +48,7 @@ examples:
temperature-sensor@42 {
compatible = "adi,max31827";
reg = <0x42>;
- vref-supply = <&reg_vdd>;
+ vdd-supply = <&reg_vdd>;
};
};
...
--
2.42.0


2023-09-22 21:25:27

by Rob Herring

[permalink] [raw]
Subject: Re: [PATCH 1/2] dt-bindings: hwmon: max31827: use supply pin name

On Thu, Sep 21, 2023 at 05:20:03PM +0300, Antoniu Miclaus wrote:
> The actual hardware pin name for the supply of max31827 is vdd.
> Update the dt-binding to reflect the hardware properties accordingly.

Changing this breaks the ABI. I see the old one wasn't used by the
driver, but that's just one driver potentially. You need some
justification here why it's okay to break the ABI.

>
> Signed-off-by: Antoniu Miclaus <[email protected]>
> ---
> Documentation/devicetree/bindings/hwmon/adi,max31827.yaml | 6 +++---
> 1 file changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/Documentation/devicetree/bindings/hwmon/adi,max31827.yaml b/Documentation/devicetree/bindings/hwmon/adi,max31827.yaml
> index 2dc8b07b4d3b..21f2d350373b 100644
> --- a/Documentation/devicetree/bindings/hwmon/adi,max31827.yaml
> +++ b/Documentation/devicetree/bindings/hwmon/adi,max31827.yaml
> @@ -27,7 +27,7 @@ properties:
> reg:
> maxItems: 1
>
> - vref-supply:
> + vdd-supply:
> description:
> Must have values in the interval (1.6V; 3.6V) in order for the device to
> function correctly.
> @@ -35,7 +35,7 @@ properties:
> required:
> - compatible
> - reg
> - - vref-supply
> + - vdd-supply
>
> additionalProperties: false
>
> @@ -48,7 +48,7 @@ examples:
> temperature-sensor@42 {
> compatible = "adi,max31827";
> reg = <0x42>;
> - vref-supply = <&reg_vdd>;
> + vdd-supply = <&reg_vdd>;
> };
> };
> ...
> --
> 2.42.0
>

2023-09-24 02:07:16

by Antoniu Miclaus

[permalink] [raw]
Subject: RE: [PATCH 1/2] dt-bindings: hwmon: max31827: use supply pin name



> On Thu, Sep 21, 2023 at 05:20:03PM +0300, Antoniu Miclaus wrote:
> > The actual hardware pin name for the supply of max31827 is vdd.
> > Update the dt-binding to reflect the hardware properties accordingly.
>
> Changing this breaks the ABI. I see the old one wasn't used by the
> driver, but that's just one driver potentially. You need some
> justification here why it's okay to break the ABI.
>
As I mentioned also in the commit description, the supply should match the
actual hardware pin name. Otherwise it might create confusion. Usually vref
refers to an external voltage reference pin used for ADC/DACs which is not
exactly the case for this part, taking into account that there is no "reference"
word mentioned in the datasheet at all. VREF and VDD are usually separate
hardware pins. There is a hint indeed in the dts example that the vref-supply
might be referenced to a vdd regulator node, but from my point of view
that is not enough. Moreover the current vref-supply is not handled at all in
the driver, it is only mentioned in the dt-binding (That's why I added a second
patch in the series handling the supply).

If the justification is not enough to apply this change, then I can keep only the
second patch, which handles the regulator in the driver and use the old `vref`
naming which currently appears only in the dt-binding.

Antoniu
> >
> > Signed-off-by: Antoniu Miclaus <[email protected]>
> > ---
> > Documentation/devicetree/bindings/hwmon/adi,max31827.yaml | 6 +++--
> -
> > 1 file changed, 3 insertions(+), 3 deletions(-)
> >
> > diff --git
> a/Documentation/devicetree/bindings/hwmon/adi,max31827.yaml
> b/Documentation/devicetree/bindings/hwmon/adi,max31827.yaml
> > index 2dc8b07b4d3b..21f2d350373b 100644
> > --- a/Documentation/devicetree/bindings/hwmon/adi,max31827.yaml
> > +++ b/Documentation/devicetree/bindings/hwmon/adi,max31827.yaml
> > @@ -27,7 +27,7 @@ properties:
> > reg:
> > maxItems: 1
> >
> > - vref-supply:
> > + vdd-supply:
> > description:
> > Must have values in the interval (1.6V; 3.6V) in order for the device to
> > function correctly.
> > @@ -35,7 +35,7 @@ properties:
> > required:
> > - compatible
> > - reg
> > - - vref-supply
> > + - vdd-supply
> >
> > additionalProperties: false
> >
> > @@ -48,7 +48,7 @@ examples:
> > temperature-sensor@42 {
> > compatible = "adi,max31827";
> > reg = <0x42>;
> > - vref-supply = <&reg_vdd>;
> > + vdd-supply = <&reg_vdd>;
> > };
> > };
> > ...
> > --
> > 2.42.0
> >

2023-09-24 18:38:19

by Guenter Roeck

[permalink] [raw]
Subject: Re: [PATCH 1/2] dt-bindings: hwmon: max31827: use supply pin name

On Sat, Sep 23, 2023 at 02:19:45PM +0000, Miclaus, Antoniu wrote:
>
>
> > On Thu, Sep 21, 2023 at 05:20:03PM +0300, Antoniu Miclaus wrote:
> > > The actual hardware pin name for the supply of max31827 is vdd.
> > > Update the dt-binding to reflect the hardware properties accordingly.
> >
> > Changing this breaks the ABI. I see the old one wasn't used by the
> > driver, but that's just one driver potentially. You need some
> > justification here why it's okay to break the ABI.
> >
> As I mentioned also in the commit description, the supply should match the
> actual hardware pin name. Otherwise it might create confusion. Usually vref
> refers to an external voltage reference pin used for ADC/DACs which is not
> exactly the case for this part, taking into account that there is no "reference"
> word mentioned in the datasheet at all. VREF and VDD are usually separate
> hardware pins. There is a hint indeed in the dts example that the vref-supply
> might be referenced to a vdd regulator node, but from my point of view
> that is not enough. Moreover the current vref-supply is not handled at all in
> the driver, it is only mentioned in the dt-binding (That's why I added a second
> patch in the series handling the supply).
>
> If the justification is not enough to apply this change, then I can keep only the
> second patch, which handles the regulator in the driver and use the old `vref`
> naming which currently appears only in the dt-binding.
>

That would have been a good argument when the property was introduced, but if
there are any systems with existing bindings out there they will use the old
name and fail after this change is applied.

I don't thnk it is mandated that every system in the world would publish their
devicetree bindings in the kernel. That would not scale. So any argument along
the line of "this binding is not used" is not really a valid argument.

Guenter

2023-09-25 13:53:42

by Nuno Sá

[permalink] [raw]
Subject: Re: [PATCH 1/2] dt-bindings: hwmon: max31827: use supply pin name

On Sun, 2023-09-24 at 05:02 -0700, Guenter Roeck wrote:
> On Sat, Sep 23, 2023 at 02:19:45PM +0000, Miclaus, Antoniu wrote:
> >
> >
> > > On Thu, Sep 21, 2023 at 05:20:03PM +0300, Antoniu Miclaus wrote:
> > > > The actual hardware pin name for the supply of max31827 is vdd.
> > > > Update the dt-binding to reflect the hardware properties accordingly.
> > >
> > > Changing this breaks the ABI. I see the old one wasn't used by the
> > > driver, but that's just one driver potentially. You need some
> > > justification here why it's okay to break the ABI.
> > >
> > As I mentioned also in the commit description, the supply should match the
> > actual hardware pin name. Otherwise it might create confusion. Usually vref
> > refers to an external voltage reference pin used for ADC/DACs which is not
> > exactly the case for this part, taking into account that there is no "reference"
> > word mentioned in the datasheet at all. VREF and VDD are usually separate
> > hardware pins. There is a hint indeed in the dts example that the vref-supply
> > might be referenced to a vdd regulator node, but from my point of view
> > that is not enough. Moreover the current vref-supply is not handled at all in
> > the driver, it is only mentioned in the dt-binding (That's why I added a second
> > patch in the series handling the supply).
> >
> > If the justification is not enough to apply this change, then I can keep only the
> > second patch, which handles the regulator in the driver and use the  old `vref`
> > naming which currently appears only in the dt-binding.
> >
>
> That would have been a good argument when the property was introduced, but if
> there are any systems with existing bindings out there they will use the old
> name and fail after this change is applied.
>

How about introducing the new property and add 'deprecated: true' to the old one. I
guess the second patch would still remain as-is. Or is this just not worth the noise?

- Nuno Sá

2023-09-26 02:24:19

by Antoniu Miclaus

[permalink] [raw]
Subject: RE: [PATCH 1/2] dt-bindings: hwmon: max31827: use supply pin name

> On Sat, Sep 23, 2023 at 02:19:45PM +0000, Miclaus, Antoniu wrote:
> >
> >
> > > On Thu, Sep 21, 2023 at 05:20:03PM +0300, Antoniu Miclaus wrote:
> > > > The actual hardware pin name for the supply of max31827 is vdd.
> > > > Update the dt-binding to reflect the hardware properties accordingly.
> > >
> > > Changing this breaks the ABI. I see the old one wasn't used by the
> > > driver, but that's just one driver potentially. You need some
> > > justification here why it's okay to break the ABI.
> > >
> > As I mentioned also in the commit description, the supply should match the
> > actual hardware pin name. Otherwise it might create confusion. Usually
> vref
> > refers to an external voltage reference pin used for ADC/DACs which is not
> > exactly the case for this part, taking into account that there is no
> "reference"
> > word mentioned in the datasheet at all. VREF and VDD are usually separate
> > hardware pins. There is a hint indeed in the dts example that the vref-
> supply
> > might be referenced to a vdd regulator node, but from my point of view
> > that is not enough. Moreover the current vref-supply is not handled at all in
> > the driver, it is only mentioned in the dt-binding (That's why I added a
> second
> > patch in the series handling the supply).
> >
> > If the justification is not enough to apply this change, then I can keep only
> the
> > second patch, which handles the regulator in the driver and use the old
> `vref`
> > naming which currently appears only in the dt-binding.
> >
>
> That would have been a good argument when the property was introduced,
> but if
> there are any systems with existing bindings out there they will use the old
> name and fail after this change is applied.
>
> I don't thnk it is mandated that every system in the world would publish their
> devicetree bindings in the kernel. That would not scale. So any argument
> along
> the line of "this binding is not used" is not really a valid argument.
>
> Guenter
Will keep then only the second patch which targets the driver.
Thanks for the feedback!