[1/2] dt-bindings: hwmon: max31827: use supply pin name

Message ID 20230921142005.102263-1-antoniu.miclaus@analog.com
State New
Headers
Series [1/2] dt-bindings: hwmon: max31827: use supply pin name |

Commit Message

Antoniu Miclaus Sept. 21, 2023, 2:20 p.m. UTC
  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 <antoniu.miclaus@analog.com>
---
 Documentation/devicetree/bindings/hwmon/adi,max31827.yaml | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)
  

Comments

Rob Herring Sept. 22, 2023, 9:12 p.m. UTC | #1
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 <antoniu.miclaus@analog.com>
> ---
>  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
>
  
Antoniu Miclaus Sept. 23, 2023, 2:19 p.m. UTC | #2
> 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 <antoniu.miclaus@analog.com>
> > ---
> >  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
> >
  
Guenter Roeck Sept. 24, 2023, 12:02 p.m. UTC | #3
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
  
Nuno Sá Sept. 25, 2023, 6:54 a.m. UTC | #4
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á
  
Antoniu Miclaus Sept. 25, 2023, 8:15 a.m. UTC | #5
> 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!
  

Patch

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>;
         };
     };
 ...