devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v3 1/2] dt-bindings: hwmon: Add MAX6639
@ 2023-08-03 14:43 Naresh Solanki
  2023-08-04 15:48 ` Conor Dooley
                   ` (2 more replies)
  0 siblings, 3 replies; 9+ messages in thread
From: Naresh Solanki @ 2023-08-03 14:43 UTC (permalink / raw)
  To: Guenter Roeck, krzysztof.kozlowski+dt, Jean Delvare, Rob Herring,
	Conor Dooley, Naresh Solanki
  Cc: Marcello Sylvester Bauer, linux-hwmon, devicetree, linux-kernel

From: Marcello Sylvester Bauer <sylv@sylv.io>

Add binding documentation for Maxim MAX6639 fan-speed controller.

Signed-off-by: Marcello Sylvester Bauer <sylv@sylv.io>
Signed-off-by: Naresh Solanki <Naresh.Solanki@9elements.com>
---
Changes in V3:
- Update title
- Add pulses-per-revolution, supplies & interrupts
Changes in V2:
- Update subject
- Drop blank lines
---
 .../bindings/hwmon/maxim,max6639.yaml         | 60 +++++++++++++++++++
 1 file changed, 60 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/hwmon/maxim,max6639.yaml

diff --git a/Documentation/devicetree/bindings/hwmon/maxim,max6639.yaml b/Documentation/devicetree/bindings/hwmon/maxim,max6639.yaml
new file mode 100644
index 000000000000..b3292061ca58
--- /dev/null
+++ b/Documentation/devicetree/bindings/hwmon/maxim,max6639.yaml
@@ -0,0 +1,60 @@
+# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/hwmon/maxim,max6639.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Maxim MAX6639 Fan Controller
+
+maintainers:
+  - Naresh Solanki <Naresh.Solanki@9elements.com>
+
+description: |
+  The MAX6639 is a 2-channel temperature monitor with dual, automatic, PWM
+  fan-speed controller.  It monitors its own temperature and one external
+  diode-connected transistor or the temperatures of two external diode-connected
+  transistors, typically available in CPUs, FPGAs, or GPUs.
+
+  Datasheets:
+    https://datasheets.maximintegrated.com/en/ds/MAX6639-MAX6639F.pdf
+
+properties:
+  compatible:
+    enum:
+      - maxim,max6639
+
+  reg:
+    maxItems: 1
+
+  fan-supply:
+    description: Phandle to the regulator that provides power to the fan.
+
+  interrupts:
+    maxItems: 1
+
+  pulses-per-revolution:
+    description:
+      Define the number of pulses per fan revolution for each tachometer
+      input as an integer.
+    $ref: /schemas/types.yaml#/definitions/uint32
+    enum: [1, 2, 3, 4]
+    default: 2
+
+required:
+  - compatible
+  - reg
+
+additionalProperties: false
+
+examples:
+  - |
+    i2c {
+      #address-cells = <1>;
+      #size-cells = <0>;
+
+      fan-controller@10 {
+        compatible = "maxim,max6639";
+        reg = <0x10>;
+      };
+    };
+...

base-commit: cb7022b8976e3c4d12cea2e7bb820a2944e2fd7b
-- 
2.41.0


^ permalink raw reply related	[flat|nested] 9+ messages in thread

* Re: [PATCH v3 1/2] dt-bindings: hwmon: Add MAX6639
  2023-08-03 14:43 [PATCH v3 1/2] dt-bindings: hwmon: Add MAX6639 Naresh Solanki
@ 2023-08-04 15:48 ` Conor Dooley
  2023-08-04 16:10   ` Guenter Roeck
  2023-08-05 20:24 ` Krzysztof Kozlowski
  2023-08-10  4:01 ` Guenter Roeck
  2 siblings, 1 reply; 9+ messages in thread
From: Conor Dooley @ 2023-08-04 15:48 UTC (permalink / raw)
  To: Naresh Solanki
  Cc: Guenter Roeck, krzysztof.kozlowski+dt, Jean Delvare, Rob Herring,
	Conor Dooley, Marcello Sylvester Bauer, linux-hwmon, devicetree,
	linux-kernel

[-- Attachment #1: Type: text/plain, Size: 2425 bytes --]

On Thu, Aug 03, 2023 at 04:43:59PM +0200, Naresh Solanki wrote:
> From: Marcello Sylvester Bauer <sylv@sylv.io>
> 
> Add binding documentation for Maxim MAX6639 fan-speed controller.
> 
> Signed-off-by: Marcello Sylvester Bauer <sylv@sylv.io>
> Signed-off-by: Naresh Solanki <Naresh.Solanki@9elements.com>
> ---
> Changes in V3:
> - Update title
> - Add pulses-per-revolution, supplies & interrupts
> Changes in V2:
> - Update subject
> - Drop blank lines
> ---
>  .../bindings/hwmon/maxim,max6639.yaml         | 60 +++++++++++++++++++
>  1 file changed, 60 insertions(+)
>  create mode 100644 Documentation/devicetree/bindings/hwmon/maxim,max6639.yaml
> 
> diff --git a/Documentation/devicetree/bindings/hwmon/maxim,max6639.yaml b/Documentation/devicetree/bindings/hwmon/maxim,max6639.yaml
> new file mode 100644
> index 000000000000..b3292061ca58
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/hwmon/maxim,max6639.yaml
> @@ -0,0 +1,60 @@
> +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/hwmon/maxim,max6639.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Maxim MAX6639 Fan Controller
> +
> +maintainers:
> +  - Naresh Solanki <Naresh.Solanki@9elements.com>
> +
> +description: |
> +  The MAX6639 is a 2-channel temperature monitor with dual, automatic, PWM
> +  fan-speed controller.  It monitors its own temperature and one external
> +  diode-connected transistor or the temperatures of two external diode-connected
> +  transistors, typically available in CPUs, FPGAs, or GPUs.

> +  fan-supply:
> +    description: Phandle to the regulator that provides power to the fan.

> +  pulses-per-revolution:
> +    description:
> +      Define the number of pulses per fan revolution for each tachometer
> +      input as an integer.
> +    $ref: /schemas/types.yaml#/definitions/uint32
> +    enum: [1, 2, 3, 4]
> +    default: 2

Apologies if I am digging up old wounds here, since there was quite a
bit of back and forth on the last version, but these two newly added
properties look to be common with the "pwm-fan" and with
"adi,axi-fan-control". At what point should these live in a common
schema instead?

Otherwise, this looks okay to me, although I'll leave things to
Krzysztof since he had a lot to say about the previous version.

Thanks,
Conor.

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 228 bytes --]

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PATCH v3 1/2] dt-bindings: hwmon: Add MAX6639
  2023-08-04 15:48 ` Conor Dooley
@ 2023-08-04 16:10   ` Guenter Roeck
  2023-08-05 20:26     ` Krzysztof Kozlowski
  2023-08-10 23:11     ` Rob Herring
  0 siblings, 2 replies; 9+ messages in thread
From: Guenter Roeck @ 2023-08-04 16:10 UTC (permalink / raw)
  To: Conor Dooley, Naresh Solanki
  Cc: krzysztof.kozlowski+dt, Jean Delvare, Rob Herring, Conor Dooley,
	Marcello Sylvester Bauer, linux-hwmon, devicetree, linux-kernel

On 8/4/23 08:48, Conor Dooley wrote:
> On Thu, Aug 03, 2023 at 04:43:59PM +0200, Naresh Solanki wrote:
>> From: Marcello Sylvester Bauer <sylv@sylv.io>
>>
>> Add binding documentation for Maxim MAX6639 fan-speed controller.
>>
>> Signed-off-by: Marcello Sylvester Bauer <sylv@sylv.io>
>> Signed-off-by: Naresh Solanki <Naresh.Solanki@9elements.com>
>> ---
>> Changes in V3:
>> - Update title
>> - Add pulses-per-revolution, supplies & interrupts
>> Changes in V2:
>> - Update subject
>> - Drop blank lines
>> ---
>>   .../bindings/hwmon/maxim,max6639.yaml         | 60 +++++++++++++++++++
>>   1 file changed, 60 insertions(+)
>>   create mode 100644 Documentation/devicetree/bindings/hwmon/maxim,max6639.yaml
>>
>> diff --git a/Documentation/devicetree/bindings/hwmon/maxim,max6639.yaml b/Documentation/devicetree/bindings/hwmon/maxim,max6639.yaml
>> new file mode 100644
>> index 000000000000..b3292061ca58
>> --- /dev/null
>> +++ b/Documentation/devicetree/bindings/hwmon/maxim,max6639.yaml
>> @@ -0,0 +1,60 @@
>> +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
>> +%YAML 1.2
>> +---
>> +$id: http://devicetree.org/schemas/hwmon/maxim,max6639.yaml#
>> +$schema: http://devicetree.org/meta-schemas/core.yaml#
>> +
>> +title: Maxim MAX6639 Fan Controller
>> +
>> +maintainers:
>> +  - Naresh Solanki <Naresh.Solanki@9elements.com>
>> +
>> +description: |
>> +  The MAX6639 is a 2-channel temperature monitor with dual, automatic, PWM
>> +  fan-speed controller.  It monitors its own temperature and one external
>> +  diode-connected transistor or the temperatures of two external diode-connected
>> +  transistors, typically available in CPUs, FPGAs, or GPUs.
> 
>> +  fan-supply:
>> +    description: Phandle to the regulator that provides power to the fan.
> 
>> +  pulses-per-revolution:
>> +    description:
>> +      Define the number of pulses per fan revolution for each tachometer
>> +      input as an integer.
>> +    $ref: /schemas/types.yaml#/definitions/uint32
>> +    enum: [1, 2, 3, 4]
>> +    default: 2
> 
> Apologies if I am digging up old wounds here, since there was quite a
> bit of back and forth on the last version, but these two newly added
> properties look to be common with the "pwm-fan" and with
> "adi,axi-fan-control". At what point should these live in a common
> schema instead?
> 
> Otherwise, this looks okay to me, although I'll leave things to
> Krzysztof since he had a lot to say about the previous version.
> 

Rob has said that he won't accept any fan controller bindings without a generic
schema. At the same time he has said that he expects properties such as the
number of pulses per revolution to be attached to a 'fan' description, and he
wants pwm related properties of fan controllers to be modeled as pwm controllers.
And now we have a notion of a regulator providing power to the fan (which again
would be the fan controller, at least in cases where the fan controller
provides direct voltage to the fan). On top of that, this fan-supply property
should presumably, again, be part of a fan description and not be part of the
controller description. I don't think anyone knows how to make this all work
(I for sure don't), so it is very unlikely we'll see a generic fan controller
schema anytime soon.

Given that neither fan-supply nor pulses-per-revolution is implemented in the
driver, and given that I am not aware of any fans which would have a value for
pulses-per-revolution other than 2, my personal suggestion would be to add the
chip to trivial devices and be done with it for the time being.

Guenter


^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PATCH v3 1/2] dt-bindings: hwmon: Add MAX6639
  2023-08-03 14:43 [PATCH v3 1/2] dt-bindings: hwmon: Add MAX6639 Naresh Solanki
  2023-08-04 15:48 ` Conor Dooley
@ 2023-08-05 20:24 ` Krzysztof Kozlowski
  2023-08-10  4:01 ` Guenter Roeck
  2 siblings, 0 replies; 9+ messages in thread
From: Krzysztof Kozlowski @ 2023-08-05 20:24 UTC (permalink / raw)
  To: Naresh Solanki, Guenter Roeck, krzysztof.kozlowski+dt,
	Jean Delvare, Rob Herring, Conor Dooley
  Cc: Marcello Sylvester Bauer, linux-hwmon, devicetree, linux-kernel

On 03/08/2023 16:43, Naresh Solanki wrote:
> From: Marcello Sylvester Bauer <sylv@sylv.io>
> 
> Add binding documentation for Maxim MAX6639 fan-speed controller.
> 
> Signed-off-by: Marcello Sylvester Bauer <sylv@sylv.io>
> Signed-off-by: Naresh Solanki <Naresh.Solanki@9elements.com>
> ---

...

> +examples:
> +  - |
> +    i2c {
> +      #address-cells = <1>;
> +      #size-cells = <0>;
> +
> +      fan-controller@10 {
> +        compatible = "maxim,max6639";
> +        reg = <0x10>;

I wished the examples were a bit more complete (not only 40% of your
properties). Well, that's not a stopper, so:

Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>

Best regards,
Krzysztof


^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PATCH v3 1/2] dt-bindings: hwmon: Add MAX6639
  2023-08-04 16:10   ` Guenter Roeck
@ 2023-08-05 20:26     ` Krzysztof Kozlowski
  2023-08-10 23:11     ` Rob Herring
  1 sibling, 0 replies; 9+ messages in thread
From: Krzysztof Kozlowski @ 2023-08-05 20:26 UTC (permalink / raw)
  To: Guenter Roeck, Conor Dooley, Naresh Solanki
  Cc: krzysztof.kozlowski+dt, Jean Delvare, Rob Herring, Conor Dooley,
	Marcello Sylvester Bauer, linux-hwmon, devicetree, linux-kernel

On 04/08/2023 18:10, Guenter Roeck wrote:
> On 8/4/23 08:48, Conor Dooley wrote:
>> On Thu, Aug 03, 2023 at 04:43:59PM +0200, Naresh Solanki wrote:
>>> From: Marcello Sylvester Bauer <sylv@sylv.io>
>>>
>>> Add binding documentation for Maxim MAX6639 fan-speed controller.
>>>
>>> Signed-off-by: Marcello Sylvester Bauer <sylv@sylv.io>
>>> Signed-off-by: Naresh Solanki <Naresh.Solanki@9elements.com>
>>> ---
>>> Changes in V3:
>>> - Update title
>>> - Add pulses-per-revolution, supplies & interrupts
>>> Changes in V2:
>>> - Update subject
>>> - Drop blank lines
>>> ---
>>>   .../bindings/hwmon/maxim,max6639.yaml         | 60 +++++++++++++++++++
>>>   1 file changed, 60 insertions(+)
>>>   create mode 100644 Documentation/devicetree/bindings/hwmon/maxim,max6639.yaml
>>>
>>> diff --git a/Documentation/devicetree/bindings/hwmon/maxim,max6639.yaml b/Documentation/devicetree/bindings/hwmon/maxim,max6639.yaml
>>> new file mode 100644
>>> index 000000000000..b3292061ca58
>>> --- /dev/null
>>> +++ b/Documentation/devicetree/bindings/hwmon/maxim,max6639.yaml
>>> @@ -0,0 +1,60 @@
>>> +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
>>> +%YAML 1.2
>>> +---
>>> +$id: http://devicetree.org/schemas/hwmon/maxim,max6639.yaml#
>>> +$schema: http://devicetree.org/meta-schemas/core.yaml#
>>> +
>>> +title: Maxim MAX6639 Fan Controller
>>> +
>>> +maintainers:
>>> +  - Naresh Solanki <Naresh.Solanki@9elements.com>
>>> +
>>> +description: |
>>> +  The MAX6639 is a 2-channel temperature monitor with dual, automatic, PWM
>>> +  fan-speed controller.  It monitors its own temperature and one external
>>> +  diode-connected transistor or the temperatures of two external diode-connected
>>> +  transistors, typically available in CPUs, FPGAs, or GPUs.
>>
>>> +  fan-supply:
>>> +    description: Phandle to the regulator that provides power to the fan.
>>
>>> +  pulses-per-revolution:
>>> +    description:
>>> +      Define the number of pulses per fan revolution for each tachometer
>>> +      input as an integer.
>>> +    $ref: /schemas/types.yaml#/definitions/uint32
>>> +    enum: [1, 2, 3, 4]
>>> +    default: 2
>>
>> Apologies if I am digging up old wounds here, since there was quite a
>> bit of back and forth on the last version, but these two newly added
>> properties look to be common with the "pwm-fan" and with
>> "adi,axi-fan-control". At what point should these live in a common
>> schema instead?
>>
>> Otherwise, this looks okay to me, although I'll leave things to
>> Krzysztof since he had a lot to say about the previous version.
>>
> 
> Rob has said that he won't accept any fan controller bindings without a generic
> schema. At the same time he has said that he expects properties such as the
> number of pulses per revolution to be attached to a 'fan' description, and he
> wants pwm related properties of fan controllers to be modeled as pwm controllers.
> And now we have a notion of a regulator providing power to the fan (which again
> would be the fan controller, at least in cases where the fan controller
> provides direct voltage to the fan). On top of that, this fan-supply property
> should presumably, again, be part of a fan description and not be part of the
> controller description. I don't think anyone knows how to make this all work
> (I for sure don't), so it is very unlikely we'll see a generic fan controller
> schema anytime soon.
> 
> Given that neither fan-supply nor pulses-per-revolution is implemented in the
> driver, and given that I am not aware of any fans which would have a value for
> pulses-per-revolution other than 2, my personal suggestion would be to add the
> chip to trivial devices and be done with it for the time being.

Yeah, this also would work.

Best regards,
Krzysztof


^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PATCH v3 1/2] dt-bindings: hwmon: Add MAX6639
  2023-08-03 14:43 [PATCH v3 1/2] dt-bindings: hwmon: Add MAX6639 Naresh Solanki
  2023-08-04 15:48 ` Conor Dooley
  2023-08-05 20:24 ` Krzysztof Kozlowski
@ 2023-08-10  4:01 ` Guenter Roeck
  2 siblings, 0 replies; 9+ messages in thread
From: Guenter Roeck @ 2023-08-10  4:01 UTC (permalink / raw)
  To: Naresh Solanki
  Cc: krzysztof.kozlowski+dt, Jean Delvare, Rob Herring, Conor Dooley,
	Marcello Sylvester Bauer, linux-hwmon, devicetree, linux-kernel

On Thu, Aug 03, 2023 at 04:43:59PM +0200, Naresh Solanki wrote:
> From: Marcello Sylvester Bauer <sylv@sylv.io>
> 
> Add binding documentation for Maxim MAX6639 fan-speed controller.
> 
> Signed-off-by: Marcello Sylvester Bauer <sylv@sylv.io>
> Signed-off-by: Naresh Solanki <Naresh.Solanki@9elements.com>
> Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>

Applied to hwmon-next.

Thanks,
Guenter

> ---
> Changes in V3:
> - Update title
> - Add pulses-per-revolution, supplies & interrupts
> Changes in V2:
> - Update subject
> - Drop blank lines
> ---
>  .../bindings/hwmon/maxim,max6639.yaml         | 60 +++++++++++++++++++
>  1 file changed, 60 insertions(+)
>  create mode 100644 Documentation/devicetree/bindings/hwmon/maxim,max6639.yaml
> 
> 
> base-commit: cb7022b8976e3c4d12cea2e7bb820a2944e2fd7b
> 
> diff --git a/Documentation/devicetree/bindings/hwmon/maxim,max6639.yaml b/Documentation/devicetree/bindings/hwmon/maxim,max6639.yaml
> new file mode 100644
> index 000000000000..b3292061ca58
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/hwmon/maxim,max6639.yaml
> @@ -0,0 +1,60 @@
> +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/hwmon/maxim,max6639.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Maxim MAX6639 Fan Controller
> +
> +maintainers:
> +  - Naresh Solanki <Naresh.Solanki@9elements.com>
> +
> +description: |
> +  The MAX6639 is a 2-channel temperature monitor with dual, automatic, PWM
> +  fan-speed controller.  It monitors its own temperature and one external
> +  diode-connected transistor or the temperatures of two external diode-connected
> +  transistors, typically available in CPUs, FPGAs, or GPUs.
> +
> +  Datasheets:
> +    https://datasheets.maximintegrated.com/en/ds/MAX6639-MAX6639F.pdf
> +
> +properties:
> +  compatible:
> +    enum:
> +      - maxim,max6639
> +
> +  reg:
> +    maxItems: 1
> +
> +  fan-supply:
> +    description: Phandle to the regulator that provides power to the fan.
> +
> +  interrupts:
> +    maxItems: 1
> +
> +  pulses-per-revolution:
> +    description:
> +      Define the number of pulses per fan revolution for each tachometer
> +      input as an integer.
> +    $ref: /schemas/types.yaml#/definitions/uint32
> +    enum: [1, 2, 3, 4]
> +    default: 2
> +
> +required:
> +  - compatible
> +  - reg
> +
> +additionalProperties: false
> +
> +examples:
> +  - |
> +    i2c {
> +      #address-cells = <1>;
> +      #size-cells = <0>;
> +
> +      fan-controller@10 {
> +        compatible = "maxim,max6639";
> +        reg = <0x10>;
> +      };
> +    };
> +...

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PATCH v3 1/2] dt-bindings: hwmon: Add MAX6639
  2023-08-04 16:10   ` Guenter Roeck
  2023-08-05 20:26     ` Krzysztof Kozlowski
@ 2023-08-10 23:11     ` Rob Herring
  2023-08-10 23:54       ` Guenter Roeck
  2023-08-11 10:42       ` Naresh Solanki
  1 sibling, 2 replies; 9+ messages in thread
From: Rob Herring @ 2023-08-10 23:11 UTC (permalink / raw)
  To: Guenter Roeck
  Cc: Conor Dooley, Naresh Solanki, krzysztof.kozlowski+dt,
	Jean Delvare, Conor Dooley, Marcello Sylvester Bauer, linux-hwmon,
	devicetree, linux-kernel

On Fri, Aug 04, 2023 at 09:10:37AM -0700, Guenter Roeck wrote:
> On 8/4/23 08:48, Conor Dooley wrote:
> > On Thu, Aug 03, 2023 at 04:43:59PM +0200, Naresh Solanki wrote:
> > > From: Marcello Sylvester Bauer <sylv@sylv.io>
> > > 
> > > Add binding documentation for Maxim MAX6639 fan-speed controller.
> > > 
> > > Signed-off-by: Marcello Sylvester Bauer <sylv@sylv.io>
> > > Signed-off-by: Naresh Solanki <Naresh.Solanki@9elements.com>
> > > ---
> > > Changes in V3:
> > > - Update title
> > > - Add pulses-per-revolution, supplies & interrupts
> > > Changes in V2:
> > > - Update subject
> > > - Drop blank lines
> > > ---
> > >   .../bindings/hwmon/maxim,max6639.yaml         | 60 +++++++++++++++++++
> > >   1 file changed, 60 insertions(+)
> > >   create mode 100644 Documentation/devicetree/bindings/hwmon/maxim,max6639.yaml
> > > 
> > > diff --git a/Documentation/devicetree/bindings/hwmon/maxim,max6639.yaml b/Documentation/devicetree/bindings/hwmon/maxim,max6639.yaml
> > > new file mode 100644
> > > index 000000000000..b3292061ca58
> > > --- /dev/null
> > > +++ b/Documentation/devicetree/bindings/hwmon/maxim,max6639.yaml
> > > @@ -0,0 +1,60 @@
> > > +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
> > > +%YAML 1.2
> > > +---
> > > +$id: http://devicetree.org/schemas/hwmon/maxim,max6639.yaml#
> > > +$schema: http://devicetree.org/meta-schemas/core.yaml#
> > > +
> > > +title: Maxim MAX6639 Fan Controller
> > > +
> > > +maintainers:
> > > +  - Naresh Solanki <Naresh.Solanki@9elements.com>
> > > +
> > > +description: |
> > > +  The MAX6639 is a 2-channel temperature monitor with dual, automatic, PWM
> > > +  fan-speed controller.  It monitors its own temperature and one external
> > > +  diode-connected transistor or the temperatures of two external diode-connected
> > > +  transistors, typically available in CPUs, FPGAs, or GPUs.
> > 
> > > +  fan-supply:
> > > +    description: Phandle to the regulator that provides power to the fan.
> > 
> > > +  pulses-per-revolution:
> > > +    description:
> > > +      Define the number of pulses per fan revolution for each tachometer
> > > +      input as an integer.
> > > +    $ref: /schemas/types.yaml#/definitions/uint32
> > > +    enum: [1, 2, 3, 4]
> > > +    default: 2
> > 
> > Apologies if I am digging up old wounds here, since there was quite a
> > bit of back and forth on the last version, but these two newly added
> > properties look to be common with the "pwm-fan" and with
> > "adi,axi-fan-control". At what point should these live in a common
> > schema instead?
> > 
> > Otherwise, this looks okay to me, although I'll leave things to
> > Krzysztof since he had a lot to say about the previous version.
> > 
> 
> Rob has said that he won't accept any fan controller bindings without a generic
> schema. At the same time he has said that he expects properties such as the
> number of pulses per revolution to be attached to a 'fan' description, and he
> wants pwm related properties of fan controllers to be modeled as pwm controllers.
> And now we have a notion of a regulator providing power to the fan (which again
> would be the fan controller, at least in cases where the fan controller
> provides direct voltage to the fan). On top of that, this fan-supply property
> should presumably, again, be part of a fan description and not be part of the
> controller description. I don't think anyone knows how to make this all work
> (I for sure don't), so it is very unlikely we'll see a generic fan controller
> schema anytime soon.

I thought what was done earlier in this series was somewhat close. And 
there are some bindings that already look pretty close to what a common 
binding should. But it seems no one wants to worry about more than their 
1 device.

In case it's not clear, as-is, this binding is a NAK for me.

> Given that neither fan-supply nor pulses-per-revolution is implemented in the
> driver, and given that I am not aware of any fans which would have a value for
> pulses-per-revolution other than 2, my personal suggestion would be to add the
> chip to trivial devices and be done with it for the time being.

I'm fine with that too. Just keep kicking that can...

Rob

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PATCH v3 1/2] dt-bindings: hwmon: Add MAX6639
  2023-08-10 23:11     ` Rob Herring
@ 2023-08-10 23:54       ` Guenter Roeck
  2023-08-11 10:42       ` Naresh Solanki
  1 sibling, 0 replies; 9+ messages in thread
From: Guenter Roeck @ 2023-08-10 23:54 UTC (permalink / raw)
  To: Rob Herring
  Cc: Conor Dooley, Naresh Solanki, krzysztof.kozlowski+dt,
	Jean Delvare, Conor Dooley, Marcello Sylvester Bauer, linux-hwmon,
	devicetree, linux-kernel

On 8/10/23 16:11, Rob Herring wrote:
> On Fri, Aug 04, 2023 at 09:10:37AM -0700, Guenter Roeck wrote:
>> On 8/4/23 08:48, Conor Dooley wrote:
>>> On Thu, Aug 03, 2023 at 04:43:59PM +0200, Naresh Solanki wrote:
>>>> From: Marcello Sylvester Bauer <sylv@sylv.io>
>>>>
>>>> Add binding documentation for Maxim MAX6639 fan-speed controller.
>>>>
>>>> Signed-off-by: Marcello Sylvester Bauer <sylv@sylv.io>
>>>> Signed-off-by: Naresh Solanki <Naresh.Solanki@9elements.com>
>>>> ---
>>>> Changes in V3:
>>>> - Update title
>>>> - Add pulses-per-revolution, supplies & interrupts
>>>> Changes in V2:
>>>> - Update subject
>>>> - Drop blank lines
>>>> ---
>>>>    .../bindings/hwmon/maxim,max6639.yaml         | 60 +++++++++++++++++++
>>>>    1 file changed, 60 insertions(+)
>>>>    create mode 100644 Documentation/devicetree/bindings/hwmon/maxim,max6639.yaml
>>>>
>>>> diff --git a/Documentation/devicetree/bindings/hwmon/maxim,max6639.yaml b/Documentation/devicetree/bindings/hwmon/maxim,max6639.yaml
>>>> new file mode 100644
>>>> index 000000000000..b3292061ca58
>>>> --- /dev/null
>>>> +++ b/Documentation/devicetree/bindings/hwmon/maxim,max6639.yaml
>>>> @@ -0,0 +1,60 @@
>>>> +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
>>>> +%YAML 1.2
>>>> +---
>>>> +$id: http://devicetree.org/schemas/hwmon/maxim,max6639.yaml#
>>>> +$schema: http://devicetree.org/meta-schemas/core.yaml#
>>>> +
>>>> +title: Maxim MAX6639 Fan Controller
>>>> +
>>>> +maintainers:
>>>> +  - Naresh Solanki <Naresh.Solanki@9elements.com>
>>>> +
>>>> +description: |
>>>> +  The MAX6639 is a 2-channel temperature monitor with dual, automatic, PWM
>>>> +  fan-speed controller.  It monitors its own temperature and one external
>>>> +  diode-connected transistor or the temperatures of two external diode-connected
>>>> +  transistors, typically available in CPUs, FPGAs, or GPUs.
>>>
>>>> +  fan-supply:
>>>> +    description: Phandle to the regulator that provides power to the fan.
>>>
>>>> +  pulses-per-revolution:
>>>> +    description:
>>>> +      Define the number of pulses per fan revolution for each tachometer
>>>> +      input as an integer.
>>>> +    $ref: /schemas/types.yaml#/definitions/uint32
>>>> +    enum: [1, 2, 3, 4]
>>>> +    default: 2
>>>
>>> Apologies if I am digging up old wounds here, since there was quite a
>>> bit of back and forth on the last version, but these two newly added
>>> properties look to be common with the "pwm-fan" and with
>>> "adi,axi-fan-control". At what point should these live in a common
>>> schema instead?
>>>
>>> Otherwise, this looks okay to me, although I'll leave things to
>>> Krzysztof since he had a lot to say about the previous version.
>>>
>>
>> Rob has said that he won't accept any fan controller bindings without a generic
>> schema. At the same time he has said that he expects properties such as the
>> number of pulses per revolution to be attached to a 'fan' description, and he
>> wants pwm related properties of fan controllers to be modeled as pwm controllers.
>> And now we have a notion of a regulator providing power to the fan (which again
>> would be the fan controller, at least in cases where the fan controller
>> provides direct voltage to the fan). On top of that, this fan-supply property
>> should presumably, again, be part of a fan description and not be part of the
>> controller description. I don't think anyone knows how to make this all work
>> (I for sure don't), so it is very unlikely we'll see a generic fan controller
>> schema anytime soon.
> 
> I thought what was done earlier in this series was somewhat close. And
> there are some bindings that already look pretty close to what a common
> binding should. But it seems no one wants to worry about more than their
> 1 device.
> 
> In case it's not clear, as-is, this binding is a NAK for me.
> 

Ok, I'll drop it.

Guenter

>> Given that neither fan-supply nor pulses-per-revolution is implemented in the
>> driver, and given that I am not aware of any fans which would have a value for
>> pulses-per-revolution other than 2, my personal suggestion would be to add the
>> chip to trivial devices and be done with it for the time being.
> 
> I'm fine with that too. Just keep kicking that can...
> 
> Rob


^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PATCH v3 1/2] dt-bindings: hwmon: Add MAX6639
  2023-08-10 23:11     ` Rob Herring
  2023-08-10 23:54       ` Guenter Roeck
@ 2023-08-11 10:42       ` Naresh Solanki
  1 sibling, 0 replies; 9+ messages in thread
From: Naresh Solanki @ 2023-08-11 10:42 UTC (permalink / raw)
  To: Rob Herring
  Cc: Guenter Roeck, Conor Dooley, krzysztof.kozlowski+dt, Jean Delvare,
	Conor Dooley, Marcello Sylvester Bauer, linux-hwmon, devicetree,
	linux-kernel

Hi Rob,


On Fri, 11 Aug 2023 at 04:41, Rob Herring <robh@kernel.org> wrote:
>
> On Fri, Aug 04, 2023 at 09:10:37AM -0700, Guenter Roeck wrote:
> > On 8/4/23 08:48, Conor Dooley wrote:
> > > On Thu, Aug 03, 2023 at 04:43:59PM +0200, Naresh Solanki wrote:
> > > > From: Marcello Sylvester Bauer <sylv@sylv.io>
> > > >
> > > > Add binding documentation for Maxim MAX6639 fan-speed controller.
> > > >
> > > > Signed-off-by: Marcello Sylvester Bauer <sylv@sylv.io>
> > > > Signed-off-by: Naresh Solanki <Naresh.Solanki@9elements.com>
> > > > ---
> > > > Changes in V3:
> > > > - Update title
> > > > - Add pulses-per-revolution, supplies & interrupts
> > > > Changes in V2:
> > > > - Update subject
> > > > - Drop blank lines
> > > > ---
> > > >   .../bindings/hwmon/maxim,max6639.yaml         | 60 +++++++++++++++++++
> > > >   1 file changed, 60 insertions(+)
> > > >   create mode 100644 Documentation/devicetree/bindings/hwmon/maxim,max6639.yaml
> > > >
> > > > diff --git a/Documentation/devicetree/bindings/hwmon/maxim,max6639.yaml b/Documentation/devicetree/bindings/hwmon/maxim,max6639.yaml
> > > > new file mode 100644
> > > > index 000000000000..b3292061ca58
> > > > --- /dev/null
> > > > +++ b/Documentation/devicetree/bindings/hwmon/maxim,max6639.yaml
> > > > @@ -0,0 +1,60 @@
> > > > +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
> > > > +%YAML 1.2
> > > > +---
> > > > +$id: http://devicetree.org/schemas/hwmon/maxim,max6639.yaml#
> > > > +$schema: http://devicetree.org/meta-schemas/core.yaml#
> > > > +
> > > > +title: Maxim MAX6639 Fan Controller
> > > > +
> > > > +maintainers:
> > > > +  - Naresh Solanki <Naresh.Solanki@9elements.com>
> > > > +
> > > > +description: |
> > > > +  The MAX6639 is a 2-channel temperature monitor with dual, automatic, PWM
> > > > +  fan-speed controller.  It monitors its own temperature and one external
> > > > +  diode-connected transistor or the temperatures of two external diode-connected
> > > > +  transistors, typically available in CPUs, FPGAs, or GPUs.
> > >
> > > > +  fan-supply:
> > > > +    description: Phandle to the regulator that provides power to the fan.
> > >
> > > > +  pulses-per-revolution:
> > > > +    description:
> > > > +      Define the number of pulses per fan revolution for each tachometer
> > > > +      input as an integer.
> > > > +    $ref: /schemas/types.yaml#/definitions/uint32
> > > > +    enum: [1, 2, 3, 4]
> > > > +    default: 2
> > >
> > > Apologies if I am digging up old wounds here, since there was quite a
> > > bit of back and forth on the last version, but these two newly added
> > > properties look to be common with the "pwm-fan" and with
> > > "adi,axi-fan-control". At what point should these live in a common
> > > schema instead?
> > >
> > > Otherwise, this looks okay to me, although I'll leave things to
> > > Krzysztof since he had a lot to say about the previous version.
> > >
> >
> > Rob has said that he won't accept any fan controller bindings without a generic
> > schema. At the same time he has said that he expects properties such as the
> > number of pulses per revolution to be attached to a 'fan' description, and he
> > wants pwm related properties of fan controllers to be modeled as pwm controllers.
> > And now we have a notion of a regulator providing power to the fan (which again
> > would be the fan controller, at least in cases where the fan controller
> > provides direct voltage to the fan). On top of that, this fan-supply property
> > should presumably, again, be part of a fan description and not be part of the
> > controller description. I don't think anyone knows how to make this all work
> > (I for sure don't), so it is very unlikely we'll see a generic fan controller
> > schema anytime soon.
>
> I thought what was done earlier in this series was somewhat close. And
> there are some bindings that already look pretty close to what a common
> binding should. But it seems no one wants to worry about more than their
> 1 device.

The DT binding for common fan properties is:
https://lore.kernel.org/lkml/20221130144626.GA2647609@roeck-us.net/t/#m15ce07c3c43c46506acc389bf24d616646e05653

I wasn't sure on how to address properties for DC controlled fans.

Regards,
Naresh
>
> In case it's not clear, as-is, this binding is a NAK for me.
>
> > Given that neither fan-supply nor pulses-per-revolution is implemented in the
> > driver, and given that I am not aware of any fans which would have a value for
> > pulses-per-revolution other than 2, my personal suggestion would be to add the
> > chip to trivial devices and be done with it for the time being.
>
> I'm fine with that too. Just keep kicking that can...
>
> Rob

^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2023-08-11 10:42 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-08-03 14:43 [PATCH v3 1/2] dt-bindings: hwmon: Add MAX6639 Naresh Solanki
2023-08-04 15:48 ` Conor Dooley
2023-08-04 16:10   ` Guenter Roeck
2023-08-05 20:26     ` Krzysztof Kozlowski
2023-08-10 23:11     ` Rob Herring
2023-08-10 23:54       ` Guenter Roeck
2023-08-11 10:42       ` Naresh Solanki
2023-08-05 20:24 ` Krzysztof Kozlowski
2023-08-10  4:01 ` Guenter Roeck

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).