diff mbox series

[v6,2/2] dt-bindings: hwmon: isl68137: add bindings to support voltage dividers

Message ID 1dff1f63a2e122788e2c17f192472705491aa5b8.1730326916.git.grantpeltier93@gmail.com (mailing list archive)
State Accepted
Headers show
Series dt-bindings: hwmon: pmbus: add bindings for isl68137 | expand

Commit Message

Grant Peltier Oct. 30, 2024, 10:41 p.m. UTC
Add devicetree bindings to support declaring optional voltage dividers to
the rail outputs of supported digital multiphase regulators. Some
applications require Vout to exceed the voltage range that the Vsense pin
can detect. This binding definition allows users to define the
characteristics of a voltage divider placed between Vout and the Vsense
pin for any rail powered by the device.

These bindings copy the vout-voltage-divider property defined in the
maxim,max20730 bindings schema since it is the best fit for the use case
of scaling hwmon PMBus telemetry. The generic voltage-divider property
used by many iio drivers was determined to be a poor fit because that
schema is tied directly to iio for the purpose of scaling io-channel
voltages and the isl68137 driver is not an iio driver.

Signed-off-by: Grant Peltier <grantpeltier93@gmail.com>
---
 .../hwmon/pmbus/renesas,isl68137.yaml         | 147 ++++++++++++++++++
 1 file changed, 147 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/hwmon/pmbus/renesas,isl68137.yaml

Comments

Rob Herring (Arm) Oct. 31, 2024, 6:18 p.m. UTC | #1
On Wed, 30 Oct 2024 17:41:39 -0500, Grant Peltier wrote:
> Add devicetree bindings to support declaring optional voltage dividers to
> the rail outputs of supported digital multiphase regulators. Some
> applications require Vout to exceed the voltage range that the Vsense pin
> can detect. This binding definition allows users to define the
> characteristics of a voltage divider placed between Vout and the Vsense
> pin for any rail powered by the device.
> 
> These bindings copy the vout-voltage-divider property defined in the
> maxim,max20730 bindings schema since it is the best fit for the use case
> of scaling hwmon PMBus telemetry. The generic voltage-divider property
> used by many iio drivers was determined to be a poor fit because that
> schema is tied directly to iio for the purpose of scaling io-channel
> voltages and the isl68137 driver is not an iio driver.
> 
> Signed-off-by: Grant Peltier <grantpeltier93@gmail.com>
> ---
>  .../hwmon/pmbus/renesas,isl68137.yaml         | 147 ++++++++++++++++++
>  1 file changed, 147 insertions(+)
>  create mode 100644 Documentation/devicetree/bindings/hwmon/pmbus/renesas,isl68137.yaml
> 


Please add Acked-by/Reviewed-by tags when posting new versions. However,
there's no need to repost patches *only* to add the tags. The upstream
maintainer will do that for acks received on the version they apply.

If a tag was not added on purpose, please state why and what changed.

Missing tags:

Reviewed-by: Rob Herring (Arm) <robh@kernel.org>
Rob Herring (Arm) Oct. 31, 2024, 6:18 p.m. UTC | #2
On Wed, 30 Oct 2024 17:41:39 -0500, Grant Peltier wrote:
> Add devicetree bindings to support declaring optional voltage dividers to
> the rail outputs of supported digital multiphase regulators. Some
> applications require Vout to exceed the voltage range that the Vsense pin
> can detect. This binding definition allows users to define the
> characteristics of a voltage divider placed between Vout and the Vsense
> pin for any rail powered by the device.
> 
> These bindings copy the vout-voltage-divider property defined in the
> maxim,max20730 bindings schema since it is the best fit for the use case
> of scaling hwmon PMBus telemetry. The generic voltage-divider property
> used by many iio drivers was determined to be a poor fit because that
> schema is tied directly to iio for the purpose of scaling io-channel
> voltages and the isl68137 driver is not an iio driver.
> 
> Signed-off-by: Grant Peltier <grantpeltier93@gmail.com>
> ---
>  .../hwmon/pmbus/renesas,isl68137.yaml         | 147 ++++++++++++++++++
>  1 file changed, 147 insertions(+)
>  create mode 100644 Documentation/devicetree/bindings/hwmon/pmbus/renesas,isl68137.yaml
> 

Reviewed-by: Rob Herring (Arm) <robh@kernel.org>
Guenter Roeck Nov. 1, 2024, 2:28 p.m. UTC | #3
On Wed, Oct 30, 2024 at 05:41:39PM -0500, Grant Peltier wrote:
> Add devicetree bindings to support declaring optional voltage dividers to
> the rail outputs of supported digital multiphase regulators. Some
> applications require Vout to exceed the voltage range that the Vsense pin
> can detect. This binding definition allows users to define the
> characteristics of a voltage divider placed between Vout and the Vsense
> pin for any rail powered by the device.
> 
> These bindings copy the vout-voltage-divider property defined in the
> maxim,max20730 bindings schema since it is the best fit for the use case
> of scaling hwmon PMBus telemetry. The generic voltage-divider property
> used by many iio drivers was determined to be a poor fit because that
> schema is tied directly to iio for the purpose of scaling io-channel
> voltages and the isl68137 driver is not an iio driver.
> 
> Signed-off-by: Grant Peltier <grantpeltier93@gmail.com>
> Reviewed-by: Rob Herring (Arm) <robh@kernel.org>

Applied.

Thanks,
Guenter
Rob Herring (Arm) Nov. 4, 2024, 3:08 p.m. UTC | #4
On Wed, Oct 30, 2024 at 5:41 PM Grant Peltier <grantpeltier93@gmail.com> wrote:
>
> Add devicetree bindings to support declaring optional voltage dividers to
> the rail outputs of supported digital multiphase regulators. Some
> applications require Vout to exceed the voltage range that the Vsense pin
> can detect. This binding definition allows users to define the
> characteristics of a voltage divider placed between Vout and the Vsense
> pin for any rail powered by the device.
>
> These bindings copy the vout-voltage-divider property defined in the
> maxim,max20730 bindings schema since it is the best fit for the use case
> of scaling hwmon PMBus telemetry. The generic voltage-divider property
> used by many iio drivers was determined to be a poor fit because that
> schema is tied directly to iio for the purpose of scaling io-channel
> voltages and the isl68137 driver is not an iio driver.
>
> Signed-off-by: Grant Peltier <grantpeltier93@gmail.com>
> ---
>  .../hwmon/pmbus/renesas,isl68137.yaml         | 147 ++++++++++++++++++
>  1 file changed, 147 insertions(+)
>  create mode 100644 Documentation/devicetree/bindings/hwmon/pmbus/renesas,isl68137.yaml
>
> diff --git a/Documentation/devicetree/bindings/hwmon/pmbus/renesas,isl68137.yaml b/Documentation/devicetree/bindings/hwmon/pmbus/renesas,isl68137.yaml
> new file mode 100644
> index 000000000000..ed659c2baadf
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/hwmon/pmbus/renesas,isl68137.yaml
> @@ -0,0 +1,147 @@
> +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +
> +$id: http://devicetree.org/schemas/hwmon/pmbus/renesas,isl68137.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Renesas Digital Multiphase Voltage Regulators with PMBus
> +
> +maintainers:
> +  - Grant Peltier <grant.peltier.jg@renesas.com>
> +
> +description: |
> +  Renesas digital multiphase voltage regulators with PMBus.
> +  https://www.renesas.com/en/products/power-management/multiphase-power/multiphase-dcdc-switching-controllers
> +
> +properties:
> +  compatible:
> +    enum:

Somehow "isl68137" is missing from your list. "make
dt_compatible_check" reports it as not documented.

> +      - renesas,isl68220
> +      - renesas,isl68221
> +      - renesas,isl68222
> +      - renesas,isl68223
> +      - renesas,isl68224
> +      - renesas,isl68225
> +      - renesas,isl68226
> +      - renesas,isl68227
> +      - renesas,isl68229
> +      - renesas,isl68233
> +      - renesas,isl68239
> +      - renesas,isl69222
> +      - renesas,isl69223
> +      - renesas,isl69224
> +      - renesas,isl69225
> +      - renesas,isl69227
> +      - renesas,isl69228
> +      - renesas,isl69234
> +      - renesas,isl69236
> +      - renesas,isl69239
> +      - renesas,isl69242
> +      - renesas,isl69243
> +      - renesas,isl69247
> +      - renesas,isl69248
> +      - renesas,isl69254
> +      - renesas,isl69255
> +      - renesas,isl69256
> +      - renesas,isl69259
> +      - renesas,isl69260
> +      - renesas,isl69268
> +      - renesas,isl69269
> +      - renesas,isl69298
> +      - renesas,raa228000
> +      - renesas,raa228004
> +      - renesas,raa228006
> +      - renesas,raa228228
> +      - renesas,raa229001
> +      - renesas,raa229004
Guenter Roeck Nov. 5, 2024, 1:20 a.m. UTC | #5
On 11/4/24 07:08, Rob Herring wrote:
> On Wed, Oct 30, 2024 at 5:41 PM Grant Peltier <grantpeltier93@gmail.com> wrote:
>>
>> Add devicetree bindings to support declaring optional voltage dividers to
>> the rail outputs of supported digital multiphase regulators. Some
>> applications require Vout to exceed the voltage range that the Vsense pin
>> can detect. This binding definition allows users to define the
>> characteristics of a voltage divider placed between Vout and the Vsense
>> pin for any rail powered by the device.
>>
>> These bindings copy the vout-voltage-divider property defined in the
>> maxim,max20730 bindings schema since it is the best fit for the use case
>> of scaling hwmon PMBus telemetry. The generic voltage-divider property
>> used by many iio drivers was determined to be a poor fit because that
>> schema is tied directly to iio for the purpose of scaling io-channel
>> voltages and the isl68137 driver is not an iio driver.
>>
>> Signed-off-by: Grant Peltier <grantpeltier93@gmail.com>
>> ---
>>   .../hwmon/pmbus/renesas,isl68137.yaml         | 147 ++++++++++++++++++
>>   1 file changed, 147 insertions(+)
>>   create mode 100644 Documentation/devicetree/bindings/hwmon/pmbus/renesas,isl68137.yaml
>>
>> diff --git a/Documentation/devicetree/bindings/hwmon/pmbus/renesas,isl68137.yaml b/Documentation/devicetree/bindings/hwmon/pmbus/renesas,isl68137.yaml
>> new file mode 100644
>> index 000000000000..ed659c2baadf
>> --- /dev/null
>> +++ b/Documentation/devicetree/bindings/hwmon/pmbus/renesas,isl68137.yaml
>> @@ -0,0 +1,147 @@
>> +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
>> +%YAML 1.2
>> +---
>> +
>> +$id: http://devicetree.org/schemas/hwmon/pmbus/renesas,isl68137.yaml#
>> +$schema: http://devicetree.org/meta-schemas/core.yaml#
>> +
>> +title: Renesas Digital Multiphase Voltage Regulators with PMBus
>> +
>> +maintainers:
>> +  - Grant Peltier <grant.peltier.jg@renesas.com>
>> +
>> +description: |
>> +  Renesas digital multiphase voltage regulators with PMBus.
>> +  https://www.renesas.com/en/products/power-management/multiphase-power/multiphase-dcdc-switching-controllers
>> +
>> +properties:
>> +  compatible:
>> +    enum:
> 
> Somehow "isl68137" is missing from your list. "make
> dt_compatible_check" reports it as not documented.
> 

Turns out it is also documented as "isil,isl68137" in trivial-devices.yaml
(together with isil,isl69260). Both are referenced in .dts files. How should
that be handled ?

Thanks,
Guenter

>> +      - renesas,isl68220
>> +      - renesas,isl68221
>> +      - renesas,isl68222
>> +      - renesas,isl68223
>> +      - renesas,isl68224
>> +      - renesas,isl68225
>> +      - renesas,isl68226
>> +      - renesas,isl68227
>> +      - renesas,isl68229
>> +      - renesas,isl68233
>> +      - renesas,isl68239
>> +      - renesas,isl69222
>> +      - renesas,isl69223
>> +      - renesas,isl69224
>> +      - renesas,isl69225
>> +      - renesas,isl69227
>> +      - renesas,isl69228
>> +      - renesas,isl69234
>> +      - renesas,isl69236
>> +      - renesas,isl69239
>> +      - renesas,isl69242
>> +      - renesas,isl69243
>> +      - renesas,isl69247
>> +      - renesas,isl69248
>> +      - renesas,isl69254
>> +      - renesas,isl69255
>> +      - renesas,isl69256
>> +      - renesas,isl69259
>> +      - renesas,isl69260
>> +      - renesas,isl69268
>> +      - renesas,isl69269
>> +      - renesas,isl69298
>> +      - renesas,raa228000
>> +      - renesas,raa228004
>> +      - renesas,raa228006
>> +      - renesas,raa228228
>> +      - renesas,raa229001
>> +      - renesas,raa229004
Rob Herring (Arm) Nov. 5, 2024, 12:19 p.m. UTC | #6
On Mon, Nov 4, 2024 at 7:20 PM Guenter Roeck <linux@roeck-us.net> wrote:
>
> On 11/4/24 07:08, Rob Herring wrote:
> > On Wed, Oct 30, 2024 at 5:41 PM Grant Peltier <grantpeltier93@gmail.com> wrote:
> >>
> >> Add devicetree bindings to support declaring optional voltage dividers to
> >> the rail outputs of supported digital multiphase regulators. Some
> >> applications require Vout to exceed the voltage range that the Vsense pin
> >> can detect. This binding definition allows users to define the
> >> characteristics of a voltage divider placed between Vout and the Vsense
> >> pin for any rail powered by the device.
> >>
> >> These bindings copy the vout-voltage-divider property defined in the
> >> maxim,max20730 bindings schema since it is the best fit for the use case
> >> of scaling hwmon PMBus telemetry. The generic voltage-divider property
> >> used by many iio drivers was determined to be a poor fit because that
> >> schema is tied directly to iio for the purpose of scaling io-channel
> >> voltages and the isl68137 driver is not an iio driver.
> >>
> >> Signed-off-by: Grant Peltier <grantpeltier93@gmail.com>
> >> ---
> >>   .../hwmon/pmbus/renesas,isl68137.yaml         | 147 ++++++++++++++++++
> >>   1 file changed, 147 insertions(+)
> >>   create mode 100644 Documentation/devicetree/bindings/hwmon/pmbus/renesas,isl68137.yaml
> >>
> >> diff --git a/Documentation/devicetree/bindings/hwmon/pmbus/renesas,isl68137.yaml b/Documentation/devicetree/bindings/hwmon/pmbus/renesas,isl68137.yaml
> >> new file mode 100644
> >> index 000000000000..ed659c2baadf
> >> --- /dev/null
> >> +++ b/Documentation/devicetree/bindings/hwmon/pmbus/renesas,isl68137.yaml
> >> @@ -0,0 +1,147 @@
> >> +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
> >> +%YAML 1.2
> >> +---
> >> +
> >> +$id: http://devicetree.org/schemas/hwmon/pmbus/renesas,isl68137.yaml#
> >> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> >> +
> >> +title: Renesas Digital Multiphase Voltage Regulators with PMBus
> >> +
> >> +maintainers:
> >> +  - Grant Peltier <grant.peltier.jg@renesas.com>
> >> +
> >> +description: |
> >> +  Renesas digital multiphase voltage regulators with PMBus.
> >> +  https://www.renesas.com/en/products/power-management/multiphase-power/multiphase-dcdc-switching-controllers
> >> +
> >> +properties:
> >> +  compatible:
> >> +    enum:
> >
> > Somehow "isl68137" is missing from your list. "make
> > dt_compatible_check" reports it as not documented.
> >
>
> Turns out it is also documented as "isil,isl68137" in trivial-devices.yaml
> (together with isil,isl69260). Both are referenced in .dts files. How should
> that be handled ?

Move those compatibles here. And this file should be renamed to
isil,isl68137.yaml or some other actual compatible value.

Rob
Guenter Roeck Nov. 5, 2024, 3:45 p.m. UTC | #7
On 11/5/24 04:19, Rob Herring wrote:
> On Mon, Nov 4, 2024 at 7:20 PM Guenter Roeck <linux@roeck-us.net> wrote:
>>
>> On 11/4/24 07:08, Rob Herring wrote:
>>> On Wed, Oct 30, 2024 at 5:41 PM Grant Peltier <grantpeltier93@gmail.com> wrote:
>>>>
>>>> Add devicetree bindings to support declaring optional voltage dividers to
>>>> the rail outputs of supported digital multiphase regulators. Some
>>>> applications require Vout to exceed the voltage range that the Vsense pin
>>>> can detect. This binding definition allows users to define the
>>>> characteristics of a voltage divider placed between Vout and the Vsense
>>>> pin for any rail powered by the device.
>>>>
>>>> These bindings copy the vout-voltage-divider property defined in the
>>>> maxim,max20730 bindings schema since it is the best fit for the use case
>>>> of scaling hwmon PMBus telemetry. The generic voltage-divider property
>>>> used by many iio drivers was determined to be a poor fit because that
>>>> schema is tied directly to iio for the purpose of scaling io-channel
>>>> voltages and the isl68137 driver is not an iio driver.
>>>>
>>>> Signed-off-by: Grant Peltier <grantpeltier93@gmail.com>
>>>> ---
>>>>    .../hwmon/pmbus/renesas,isl68137.yaml         | 147 ++++++++++++++++++
>>>>    1 file changed, 147 insertions(+)
>>>>    create mode 100644 Documentation/devicetree/bindings/hwmon/pmbus/renesas,isl68137.yaml
>>>>
>>>> diff --git a/Documentation/devicetree/bindings/hwmon/pmbus/renesas,isl68137.yaml b/Documentation/devicetree/bindings/hwmon/pmbus/renesas,isl68137.yaml
>>>> new file mode 100644
>>>> index 000000000000..ed659c2baadf
>>>> --- /dev/null
>>>> +++ b/Documentation/devicetree/bindings/hwmon/pmbus/renesas,isl68137.yaml
>>>> @@ -0,0 +1,147 @@
>>>> +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
>>>> +%YAML 1.2
>>>> +---
>>>> +
>>>> +$id: http://devicetree.org/schemas/hwmon/pmbus/renesas,isl68137.yaml#
>>>> +$schema: http://devicetree.org/meta-schemas/core.yaml#
>>>> +
>>>> +title: Renesas Digital Multiphase Voltage Regulators with PMBus
>>>> +
>>>> +maintainers:
>>>> +  - Grant Peltier <grant.peltier.jg@renesas.com>
>>>> +
>>>> +description: |
>>>> +  Renesas digital multiphase voltage regulators with PMBus.
>>>> +  https://www.renesas.com/en/products/power-management/multiphase-power/multiphase-dcdc-switching-controllers
>>>> +
>>>> +properties:
>>>> +  compatible:
>>>> +    enum:
>>>
>>> Somehow "isl68137" is missing from your list. "make
>>> dt_compatible_check" reports it as not documented.
>>>
>>
>> Turns out it is also documented as "isil,isl68137" in trivial-devices.yaml
>> (together with isil,isl69260). Both are referenced in .dts files. How should
>> that be handled ?
> 
> Move those compatibles here. And this file should be renamed to
> isil,isl68137.yaml or some other actual compatible value.
> 

I guess that is a bit more complicated since Renesas acquired Intersil.
Is there a common guidance explaining how new compatibles should be defined
in such situations ?

Anyway, I had the patches queued in linux-next. I dropped them until
this is sorted out.

Guenter
Conor Dooley Nov. 5, 2024, 6:35 p.m. UTC | #8
On Tue, Nov 05, 2024 at 07:45:38AM -0800, Guenter Roeck wrote:
> On 11/5/24 04:19, Rob Herring wrote:
> > On Mon, Nov 4, 2024 at 7:20 PM Guenter Roeck <linux@roeck-us.net> wrote:
> > > 
> > > On 11/4/24 07:08, Rob Herring wrote:
> > > > On Wed, Oct 30, 2024 at 5:41 PM Grant Peltier <grantpeltier93@gmail.com> wrote:
> > > > > 
> > > > > Add devicetree bindings to support declaring optional voltage dividers to
> > > > > the rail outputs of supported digital multiphase regulators. Some
> > > > > applications require Vout to exceed the voltage range that the Vsense pin
> > > > > can detect. This binding definition allows users to define the
> > > > > characteristics of a voltage divider placed between Vout and the Vsense
> > > > > pin for any rail powered by the device.
> > > > > 
> > > > > These bindings copy the vout-voltage-divider property defined in the
> > > > > maxim,max20730 bindings schema since it is the best fit for the use case
> > > > > of scaling hwmon PMBus telemetry. The generic voltage-divider property
> > > > > used by many iio drivers was determined to be a poor fit because that
> > > > > schema is tied directly to iio for the purpose of scaling io-channel
> > > > > voltages and the isl68137 driver is not an iio driver.
> > > > > 
> > > > > Signed-off-by: Grant Peltier <grantpeltier93@gmail.com>
> > > > > ---
> > > > >    .../hwmon/pmbus/renesas,isl68137.yaml         | 147 ++++++++++++++++++
> > > > >    1 file changed, 147 insertions(+)
> > > > >    create mode 100644 Documentation/devicetree/bindings/hwmon/pmbus/renesas,isl68137.yaml
> > > > > 
> > > > > diff --git a/Documentation/devicetree/bindings/hwmon/pmbus/renesas,isl68137.yaml b/Documentation/devicetree/bindings/hwmon/pmbus/renesas,isl68137.yaml
> > > > > new file mode 100644
> > > > > index 000000000000..ed659c2baadf
> > > > > --- /dev/null
> > > > > +++ b/Documentation/devicetree/bindings/hwmon/pmbus/renesas,isl68137.yaml
> > > > > @@ -0,0 +1,147 @@
> > > > > +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
> > > > > +%YAML 1.2
> > > > > +---
> > > > > +
> > > > > +$id: http://devicetree.org/schemas/hwmon/pmbus/renesas,isl68137.yaml#
> > > > > +$schema: http://devicetree.org/meta-schemas/core.yaml#
> > > > > +
> > > > > +title: Renesas Digital Multiphase Voltage Regulators with PMBus
> > > > > +
> > > > > +maintainers:
> > > > > +  - Grant Peltier <grant.peltier.jg@renesas.com>
> > > > > +
> > > > > +description: |
> > > > > +  Renesas digital multiphase voltage regulators with PMBus.
> > > > > +  https://www.renesas.com/en/products/power-management/multiphase-power/multiphase-dcdc-switching-controllers
> > > > > +
> > > > > +properties:
> > > > > +  compatible:
> > > > > +    enum:
> > > > 
> > > > Somehow "isl68137" is missing from your list. "make
> > > > dt_compatible_check" reports it as not documented.
> > > > 
> > > 
> > > Turns out it is also documented as "isil,isl68137" in trivial-devices.yaml
> > > (together with isil,isl69260). Both are referenced in .dts files. How should
> > > that be handled ?
> > 
> > Move those compatibles here. And this file should be renamed to
> > isil,isl68137.yaml or some other actual compatible value.
> > 
> 
> I guess that is a bit more complicated since Renesas acquired Intersil.
> Is there a common guidance explaining how new compatibles should be defined
> in such situations ?
> 
> Anyway, I had the patches queued in linux-next. I dropped them until
> this is sorted out.

The old ones with existing compatibles should keep their names, the new ones
should probably match whatever is in their datasheet so that people can
have an easier time.
Geert Uytterhoeven Nov. 5, 2024, 6:41 p.m. UTC | #9
Hi Conor,

On Tue, Nov 5, 2024 at 7:35 PM Conor Dooley <conor@kernel.org> wrote:
> On Tue, Nov 05, 2024 at 07:45:38AM -0800, Guenter Roeck wrote:
> > On 11/5/24 04:19, Rob Herring wrote:
> > > On Mon, Nov 4, 2024 at 7:20 PM Guenter Roeck <linux@roeck-us.net> wrote:
> > > > Turns out it is also documented as "isil,isl68137" in trivial-devices.yaml
> > > > (together with isil,isl69260). Both are referenced in .dts files. How should
> > > > that be handled ?
> > >
> > > Move those compatibles here. And this file should be renamed to
> > > isil,isl68137.yaml or some other actual compatible value.
> > >
> >
> > I guess that is a bit more complicated since Renesas acquired Intersil.
> > Is there a common guidance explaining how new compatibles should be defined
> > in such situations ?
> >
> > Anyway, I had the patches queued in linux-next. I dropped them until
> > this is sorted out.
>
> The old ones with existing compatibles should keep their names, the new ones
> should probably match whatever is in their datasheet so that people can
> have an easier time.

Renesas seems to have a document about that:
https://www.renesas.com/en/document/gde/intersil-part-code-nomenclature-guide

But of course that doesn't help with the vendor prefix...

Gr{oetje,eeting}s,

                        Geert
diff mbox series

Patch

diff --git a/Documentation/devicetree/bindings/hwmon/pmbus/renesas,isl68137.yaml b/Documentation/devicetree/bindings/hwmon/pmbus/renesas,isl68137.yaml
new file mode 100644
index 000000000000..ed659c2baadf
--- /dev/null
+++ b/Documentation/devicetree/bindings/hwmon/pmbus/renesas,isl68137.yaml
@@ -0,0 +1,147 @@ 
+# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
+%YAML 1.2
+---
+
+$id: http://devicetree.org/schemas/hwmon/pmbus/renesas,isl68137.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Renesas Digital Multiphase Voltage Regulators with PMBus
+
+maintainers:
+  - Grant Peltier <grant.peltier.jg@renesas.com>
+
+description: |
+  Renesas digital multiphase voltage regulators with PMBus.
+  https://www.renesas.com/en/products/power-management/multiphase-power/multiphase-dcdc-switching-controllers
+
+properties:
+  compatible:
+    enum:
+      - renesas,isl68220
+      - renesas,isl68221
+      - renesas,isl68222
+      - renesas,isl68223
+      - renesas,isl68224
+      - renesas,isl68225
+      - renesas,isl68226
+      - renesas,isl68227
+      - renesas,isl68229
+      - renesas,isl68233
+      - renesas,isl68239
+      - renesas,isl69222
+      - renesas,isl69223
+      - renesas,isl69224
+      - renesas,isl69225
+      - renesas,isl69227
+      - renesas,isl69228
+      - renesas,isl69234
+      - renesas,isl69236
+      - renesas,isl69239
+      - renesas,isl69242
+      - renesas,isl69243
+      - renesas,isl69247
+      - renesas,isl69248
+      - renesas,isl69254
+      - renesas,isl69255
+      - renesas,isl69256
+      - renesas,isl69259
+      - renesas,isl69260
+      - renesas,isl69268
+      - renesas,isl69269
+      - renesas,isl69298
+      - renesas,raa228000
+      - renesas,raa228004
+      - renesas,raa228006
+      - renesas,raa228228
+      - renesas,raa229001
+      - renesas,raa229004
+
+  reg:
+    maxItems: 1
+
+  '#address-cells':
+    const: 1
+
+  '#size-cells':
+    const: 0
+
+patternProperties:
+  "^channel@([0-3])$":
+    type: object
+    description:
+      Container for properties specific to a particular channel (rail).
+
+    properties:
+      reg:
+        description: The channel (rail) index.
+        items:
+          minimum: 0
+          maximum: 3
+
+      vout-voltage-divider:
+        description: |
+          Resistances of a voltage divider placed between Vout and the voltage
+          sense (Vsense) pin for the given channel (rail). It has two numbers
+          representing the resistances of the voltage divider provided as
+          <Rout Rtotal> which yields an adjusted Vout as
+          Vout_adj = Vout * Rtotal / Rout given the original Vout as reported
+          by the Vsense pin. Given a circuit configuration similar to the one
+          below, Rtotal = R1 + Rout.
+
+            Vout ----.
+                     |
+                  .-----.
+                  | R1  |
+                  '-----'
+                     |
+                     +---- Vsense
+                     |
+                  .-----.
+                  | Rout|
+                  '-----'
+                     |
+                    GND
+
+        $ref: /schemas/types.yaml#/definitions/uint32-array
+        minItems: 2
+        maxItems: 2
+
+    required:
+      - reg
+
+    additionalProperties: false
+
+required:
+  - compatible
+  - reg
+
+additionalProperties: false
+
+examples:
+  - |
+    i2c {
+      #address-cells = <1>;
+      #size-cells = <0>;
+
+      isl68239@60 {
+        compatible = "renesas,isl68239";
+        reg = <0x60>;
+      };
+    };
+  - |
+    i2c {
+      #address-cells = <1>;
+      #size-cells = <0>;
+
+      isl68239@60 {
+        compatible = "renesas,isl68239";
+        reg = <0x60>;
+        #address-cells = <1>;
+        #size-cells = <0>;
+
+        channel@0 {
+          reg = <0>;
+          vout-voltage-divider = <1000 2000>;  // Reported Vout/Pout would be scaled by 2
+        };
+      };
+    };