Re: [PATCH v2 1/6] dt-bindings: hwmon: add binding for adi,adt7470

From: Krzysztof Kozlowski

Date: Mon Jul 20 2026 - 02:47:51 EST


On Fri, Jul 17, 2026 at 05:59:14PM -0300, Luiz Angelo Daros de Luca wrote:
> The Analog Devices ADT7470 is a temperature monitor and PWM fan
> controller. It supports up to 10 external temperature sensors and
> up to 4 PWM fan outputs.

A nit, subject: drop second/last, redundant "binding for". The
"dt-bindings" prefix is already stating that these are bindings.
See also:
https://elixir.bootlin.com/linux/v7.1-rc7/source/Documentation/devicetree/bindings/submitting-patches.rst#L23

>
> Add the YAML device tree binding documentation for it. This includes

s/YAML//
There is no YAML in Devicetree.

> support for the thermal framework by defining the "#thermal-sensor-cells"
> property, and support for the PWM subsystem by defining the "#pwm-cells"
> property.
>
> Signed-off-by: Luiz Angelo Daros de Luca <luizluca@xxxxxxxxx>
> ---
> .../devicetree/bindings/hwmon/adi,adt7470.yaml | 62 ++++++++++++++++++++++
> 1 file changed, 62 insertions(+)
>
> diff --git a/Documentation/devicetree/bindings/hwmon/adi,adt7470.yaml b/Documentation/devicetree/bindings/hwmon/adi,adt7470.yaml
> new file mode 100644
> index 000000000000..14bb6359c91f
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/hwmon/adi,adt7470.yaml
> @@ -0,0 +1,62 @@
> +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/hwmon/adi,adt7470.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Analog Devices ADT7470 hwmon sensor
> +
> +maintainers:
> + - Luiz Angelo Daros de Luca <luizluca@xxxxxxxxx>
> +
> +description: |

Do not need '|' unless you need to preserve formatting.

> + The ADT7470 is a temperature monitor and multiple PWM outputs.
> + It supports monitoring up to 10 external temperature sensors and controlling
> + up to four fans.

"controling fans" is confusing and suggests this is a fan controller, so
you would need to reference proper schema for that. It is just PWM
output, no? PWM output could also go to LEDs or motors (well, fan is a
motor).

> +
> +properties:
> + compatible:
> + const: adi,adt7470
> +
> + reg:
> + maxItems: 1
> +
> + "#pwm-cells":
> + const: 2
> + description: |
> + Number of cells in a PWM specifier.
> + - The first cell is the PWM channel (0 to 3).
> + - The second cell is the PWM period in nanoseconds.
> +
> + "#thermal-sensor-cells":
> + const: 1
> + description: |

Do not need '|' unless you need to preserve formatting.

> + Number of cells required to uniquely identify the temperature sensors.
> + Valid index values are 0 to 9, corresponding to temp1 through temp10.
> +
> +required:
> + - compatible
> + - reg
> +
> +additionalProperties: false
> +
> +examples:
> + - |
> + i2c {
> + #address-cells = <1>;
> + #size-cells = <0>;
> +
> + adt7470: hwmon@2f {
> + compatible = "adi,adt7470";
> + reg = <0x2f>;
> + #pwm-cells = <2>;
> + #thermal-sensor-cells = <1>;
> + };
> + };
> +
> + fan0 {

Drio the node, not relevant. And then drop adt7470 label from hwmon
node.

> + compatible = "pwm-fan";
> + /* Connects to PWM channel 0 with a 50000 ns (20 kHz) period */
> + pwms = <&adt7470 0 50000>;
> + cooling-levels = <0 100 150 255>;
> + };
>
> --
> 2.55.0
>