2021-10-09 10:46:57

by David Heidelberg

[permalink] [raw]
Subject: [PATCH] WIP: dt-bindings: arm: hwmon: gpio-fan: Convert txt bindings to yaml

Convert fan devices connected to GPIOs to the YAML syntax.

Signed-off-by: David Heidelberg <[email protected]>
---
.../devicetree/bindings/hwmon/gpio-fan.txt | 41 -----------
.../devicetree/bindings/hwmon/gpio-fan.yaml | 69 +++++++++++++++++++
2 files changed, 69 insertions(+), 41 deletions(-)
delete mode 100644 Documentation/devicetree/bindings/hwmon/gpio-fan.txt
create mode 100644 Documentation/devicetree/bindings/hwmon/gpio-fan.yaml

diff --git a/Documentation/devicetree/bindings/hwmon/gpio-fan.txt b/Documentation/devicetree/bindings/hwmon/gpio-fan.txt
deleted file mode 100644
index f4cfa350f6a1..000000000000
--- a/Documentation/devicetree/bindings/hwmon/gpio-fan.txt
+++ /dev/null
@@ -1,41 +0,0 @@
-Bindings for fan connected to GPIO lines
-
-Required properties:
-- compatible : "gpio-fan"
-
-Optional properties:
-- gpios: Specifies the pins that map to bits in the control value,
- ordered MSB-->LSB.
-- gpio-fan,speed-map: A mapping of possible fan RPM speeds and the
- control value that should be set to achieve them. This array
- must have the RPM values in ascending order.
-- alarm-gpios: This pin going active indicates something is wrong with
- the fan, and a udev event will be fired.
-- #cooling-cells: If used as a cooling device, must be <2>
- Also see:
- Documentation/devicetree/bindings/thermal/thermal-cooling-devices.yaml
- min and max states are derived from the speed-map of the fan.
-
-Note: At least one the "gpios" or "alarm-gpios" properties must be set.
-
-Examples:
-
- gpio_fan {
- compatible = "gpio-fan";
- gpios = <&gpio1 14 1
- &gpio1 13 1>;
- gpio-fan,speed-map = <0 0
- 3000 1
- 6000 2>;
- alarm-gpios = <&gpio1 15 1>;
- };
- gpio_fan_cool: gpio_fan {
- compatible = "gpio-fan";
- gpios = <&gpio2 14 1
- &gpio2 13 1>;
- gpio-fan,speed-map = <0 0>,
- <3000 1>,
- <6000 2>;
- alarm-gpios = <&gpio2 15 1>;
- #cooling-cells = <2>; /* min followed by max */
- };
diff --git a/Documentation/devicetree/bindings/hwmon/gpio-fan.yaml b/Documentation/devicetree/bindings/hwmon/gpio-fan.yaml
new file mode 100644
index 000000000000..e2db65d58a92
--- /dev/null
+++ b/Documentation/devicetree/bindings/hwmon/gpio-fan.yaml
@@ -0,0 +1,69 @@
+# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: "http://devicetree.org/schemas/hwmon/gpio-fan.yaml#"
+$schema: "http://devicetree.org/meta-schemas/core.yaml#"
+
+title: Bindings for fan connected to GPIO lines
+
+maintainers:
+ - Rob Herring <[email protected]>
+
+properties:
+ compatible:
+ const: gpio-fan
+
+ gpios:
+ description: |
+ Specifies the pins that map to bits in the control value,
+ ordered MSB-->LSB.
+
+ gpio-fan,speed-map:
+ $ref: /schemas/types.yaml#/definitions/uint32-array
+ minItems: 4
+ maxItems: 254
+ description: |
+ A mapping of possible fan RPM speeds and the
+ control value that should be set to achieve them. This array
+ must have the RPM values in ascending order.
+
+ alarm-gpios:
+ description: |
+ This pin going active indicates something is wrong with
+ the fan, and a udev event will be fired.
+
+ '#cooling-cells':
+ const: 2
+
+required:
+ - compatible
+ - gpio-fan,speed-map
+
+anyOf:
+ - required: [gpios]
+ - required: [alarm-gpios]
+
+additionalProperties: false
+
+examples:
+ - |
+ gpio_fan {
+ compatible = "gpio-fan";
+ gpios = <&gpio1 14 1
+ &gpio1 13 1>;
+ gpio-fan,speed-map = <0 0
+ 3000 1
+ 6000 2>;
+ alarm-gpios = <&gpio1 15 1>;
+ };
+ - |
+ gpio_fan_cool: gpio_fan {
+ compatible = "gpio-fan";
+ gpios = <&gpio2 14 1
+ &gpio2 13 1>;
+ gpio-fan,speed-map = <0 0
+ 3000 1
+ 6000 2>;
+ alarm-gpios = <&gpio2 15 1>;
+ #cooling-cells = <2>; /* min followed by max */
+ };
--
2.33.0


2021-10-10 20:28:31

by Rob Herring (Arm)

[permalink] [raw]
Subject: Re: [PATCH] WIP: dt-bindings: arm: hwmon: gpio-fan: Convert txt bindings to yaml

On Sat, 09 Oct 2021 12:43:09 +0200, David Heidelberg wrote:
> Convert fan devices connected to GPIOs to the YAML syntax.
>
> Signed-off-by: David Heidelberg <[email protected]>
> ---
> .../devicetree/bindings/hwmon/gpio-fan.txt | 41 -----------
> .../devicetree/bindings/hwmon/gpio-fan.yaml | 69 +++++++++++++++++++
> 2 files changed, 69 insertions(+), 41 deletions(-)
> delete mode 100644 Documentation/devicetree/bindings/hwmon/gpio-fan.txt
> create mode 100644 Documentation/devicetree/bindings/hwmon/gpio-fan.yaml
>

Running 'make dtbs_check' with the schema in this patch gives the
following warnings. Consider if they are expected or the schema is
incorrect. These may not be new warnings.

Note that it is not yet a requirement to have 0 warnings for dtbs_check.
This will change in the future.

Full log is available here: https://patchwork.ozlabs.org/patch/1538743


fan: 'gpio-fan,speed-map' is a required property
arch/arm/boot/dts/kirkwood-nas2big.dt.yaml
arch/arm/boot/dts/kirkwood-net2big.dt.yaml

gpio-fan: gpio-fan,speed-map: 'anyOf' conditional failed, one must be fixed:
arch/arm/boot/dts/gemini-dlink-dir-685.dt.yaml
arch/arm/boot/dts/gemini-dlink-dns-313.dt.yaml

gpio_fan: gpio-fan,speed-map: 'anyOf' conditional failed, one must be fixed:
arch/arm/boot/dts/am57xx-beagle-x15.dt.yaml
arch/arm/boot/dts/am57xx-beagle-x15-revb1.dt.yaml
arch/arm/boot/dts/am57xx-beagle-x15-revc.dt.yaml

gpio-fan: gpio-fan,speed-map: 'oneOf' conditional failed, one must be fixed:
arch/arm/boot/dts/gemini-dlink-dir-685.dt.yaml
arch/arm/boot/dts/gemini-dlink-dns-313.dt.yaml

gpio_fan: gpio-fan,speed-map: 'oneOf' conditional failed, one must be fixed:
arch/arm/boot/dts/am57xx-beagle-x15.dt.yaml
arch/arm/boot/dts/am57xx-beagle-x15-revb1.dt.yaml
arch/arm/boot/dts/am57xx-beagle-x15-revc.dt.yaml

2021-10-10 22:46:08

by David Heidelberg

[permalink] [raw]
Subject: Re: [PATCH] WIP: dt-bindings: arm: hwmon: gpio-fan: Convert txt bindings to yaml




On Sun, Oct 10 2021 at 14:31:56 -0500, Rob Herring <[email protected]>
wrote:
> On Sat, 09 Oct 2021 12:43:09 +0200, David Heidelberg wrote:
>> Convert fan devices connected to GPIOs to the YAML syntax.
>>
>> Signed-off-by: David Heidelberg <[email protected]>
>> ---
>> .../devicetree/bindings/hwmon/gpio-fan.txt | 41 -----------
>> .../devicetree/bindings/hwmon/gpio-fan.yaml | 69
>> +++++++++++++++++++
>> 2 files changed, 69 insertions(+), 41 deletions(-)
>> delete mode 100644
>> Documentation/devicetree/bindings/hwmon/gpio-fan.txt
>> create mode 100644
>> Documentation/devicetree/bindings/hwmon/gpio-fan.yaml
>>
>
> Running 'make dtbs_check' with the schema in this patch gives the
> following warnings. Consider if they are expected or the schema is
> incorrect. These may not be new warnings.
>
> Note that it is not yet a requirement to have 0 warnings for
> dtbs_check.
> This will change in the future.
>
> Full log is available here: https://patchwork.ozlabs.org/patch/1538743
>
>
> fan: 'gpio-fan,speed-map' is a required property
> arch/arm/boot/dts/kirkwood-nas2big.dt.yaml
> arch/arm/boot/dts/kirkwood-net2big.dt.yaml
This sounds correct.

>
> gpio-fan: gpio-fan,speed-map: 'anyOf' conditional failed, one must be
> fixed:
> arch/arm/boot/dts/gemini-dlink-dir-685.dt.yaml
> arch/arm/boot/dts/gemini-dlink-dns-313.dt.yaml
>
Look like two arrays instead one expected.

> gpio_fan: gpio-fan,speed-map: 'anyOf' conditional failed, one must be
> fixed:
> arch/arm/boot/dts/am57xx-beagle-x15.dt.yaml
> arch/arm/boot/dts/am57xx-beagle-x15-revb1.dt.yaml
> arch/arm/boot/dts/am57xx-beagle-x15-revc.dt.yaml
Look like two arrays instead one expected.

>
> gpio-fan: gpio-fan,speed-map: 'oneOf' conditional failed, one must be
> fixed:
> arch/arm/boot/dts/gemini-dlink-dir-685.dt.yaml
> arch/arm/boot/dts/gemini-dlink-dns-313.dt.yaml
>
Look like three arrays instead one expected.

> gpio_fan: gpio-fan,speed-map: 'oneOf' conditional failed, one must be
> fixed:
> arch/arm/boot/dts/am57xx-beagle-x15.dt.yaml
> arch/arm/boot/dts/am57xx-beagle-x15-revb1.dt.yaml
> arch/arm/boot/dts/am57xx-beagle-x15-revc.dt.yaml
>
Look like two arrays instead one expected.

I can send patches to solve these warnings.

David
>


2021-10-11 18:50:30

by Rob Herring (Arm)

[permalink] [raw]
Subject: Re: [PATCH] WIP: dt-bindings: arm: hwmon: gpio-fan: Convert txt bindings to yaml

On Sun, Oct 10, 2021 at 4:50 PM David Heidelberg <[email protected]> wrote:
>
>
>
>
> On Sun, Oct 10 2021 at 14:31:56 -0500, Rob Herring <[email protected]>
> wrote:
> > On Sat, 09 Oct 2021 12:43:09 +0200, David Heidelberg wrote:
> >> Convert fan devices connected to GPIOs to the YAML syntax.
> >>
> >> Signed-off-by: David Heidelberg <[email protected]>
> >> ---
> >> .../devicetree/bindings/hwmon/gpio-fan.txt | 41 -----------
> >> .../devicetree/bindings/hwmon/gpio-fan.yaml | 69
> >> +++++++++++++++++++
> >> 2 files changed, 69 insertions(+), 41 deletions(-)
> >> delete mode 100644
> >> Documentation/devicetree/bindings/hwmon/gpio-fan.txt
> >> create mode 100644
> >> Documentation/devicetree/bindings/hwmon/gpio-fan.yaml
> >>
> >
> > Running 'make dtbs_check' with the schema in this patch gives the
> > following warnings. Consider if they are expected or the schema is
> > incorrect. These may not be new warnings.
> >
> > Note that it is not yet a requirement to have 0 warnings for
> > dtbs_check.
> > This will change in the future.
> >
> > Full log is available here: https://patchwork.ozlabs.org/patch/1538743
> >
> >
> > fan: 'gpio-fan,speed-map' is a required property
> > arch/arm/boot/dts/kirkwood-nas2big.dt.yaml
> > arch/arm/boot/dts/kirkwood-net2big.dt.yaml
> This sounds correct.
>
> >
> > gpio-fan: gpio-fan,speed-map: 'anyOf' conditional failed, one must be
> > fixed:
> > arch/arm/boot/dts/gemini-dlink-dir-685.dt.yaml
> > arch/arm/boot/dts/gemini-dlink-dns-313.dt.yaml
> >
> Look like two arrays instead one expected.
>
> > gpio_fan: gpio-fan,speed-map: 'anyOf' conditional failed, one must be
> > fixed:
> > arch/arm/boot/dts/am57xx-beagle-x15.dt.yaml
> > arch/arm/boot/dts/am57xx-beagle-x15-revb1.dt.yaml
> > arch/arm/boot/dts/am57xx-beagle-x15-revc.dt.yaml
> Look like two arrays instead one expected.
>
> >
> > gpio-fan: gpio-fan,speed-map: 'oneOf' conditional failed, one must be
> > fixed:
> > arch/arm/boot/dts/gemini-dlink-dir-685.dt.yaml
> > arch/arm/boot/dts/gemini-dlink-dns-313.dt.yaml
> >
> Look like three arrays instead one expected.
>
> > gpio_fan: gpio-fan,speed-map: 'oneOf' conditional failed, one must be
> > fixed:
> > arch/arm/boot/dts/am57xx-beagle-x15.dt.yaml
> > arch/arm/boot/dts/am57xx-beagle-x15-revb1.dt.yaml
> > arch/arm/boot/dts/am57xx-beagle-x15-revc.dt.yaml
> >
> Look like two arrays instead one expected.
>
> I can send patches to solve these warnings.

Certainly not required, but would be nice. I sent it more for whether
anything in the schema should change.

Rob

2021-10-19 21:37:35

by Rob Herring (Arm)

[permalink] [raw]
Subject: Re: [PATCH] WIP: dt-bindings: arm: hwmon: gpio-fan: Convert txt bindings to yaml

On Sat, Oct 09, 2021 at 12:43:09PM +0200, David Heidelberg wrote:
> Convert fan devices connected to GPIOs to the YAML syntax.
>
> Signed-off-by: David Heidelberg <[email protected]>
> ---
> .../devicetree/bindings/hwmon/gpio-fan.txt | 41 -----------
> .../devicetree/bindings/hwmon/gpio-fan.yaml | 69 +++++++++++++++++++
> 2 files changed, 69 insertions(+), 41 deletions(-)
> delete mode 100644 Documentation/devicetree/bindings/hwmon/gpio-fan.txt
> create mode 100644 Documentation/devicetree/bindings/hwmon/gpio-fan.yaml
>
> diff --git a/Documentation/devicetree/bindings/hwmon/gpio-fan.txt b/Documentation/devicetree/bindings/hwmon/gpio-fan.txt
> deleted file mode 100644
> index f4cfa350f6a1..000000000000
> --- a/Documentation/devicetree/bindings/hwmon/gpio-fan.txt
> +++ /dev/null
> @@ -1,41 +0,0 @@
> -Bindings for fan connected to GPIO lines
> -
> -Required properties:
> -- compatible : "gpio-fan"
> -
> -Optional properties:
> -- gpios: Specifies the pins that map to bits in the control value,
> - ordered MSB-->LSB.
> -- gpio-fan,speed-map: A mapping of possible fan RPM speeds and the
> - control value that should be set to achieve them. This array
> - must have the RPM values in ascending order.
> -- alarm-gpios: This pin going active indicates something is wrong with
> - the fan, and a udev event will be fired.
> -- #cooling-cells: If used as a cooling device, must be <2>
> - Also see:
> - Documentation/devicetree/bindings/thermal/thermal-cooling-devices.yaml
> - min and max states are derived from the speed-map of the fan.
> -
> -Note: At least one the "gpios" or "alarm-gpios" properties must be set.
> -
> -Examples:
> -
> - gpio_fan {
> - compatible = "gpio-fan";
> - gpios = <&gpio1 14 1
> - &gpio1 13 1>;
> - gpio-fan,speed-map = <0 0
> - 3000 1
> - 6000 2>;
> - alarm-gpios = <&gpio1 15 1>;
> - };
> - gpio_fan_cool: gpio_fan {
> - compatible = "gpio-fan";
> - gpios = <&gpio2 14 1
> - &gpio2 13 1>;
> - gpio-fan,speed-map = <0 0>,
> - <3000 1>,
> - <6000 2>;
> - alarm-gpios = <&gpio2 15 1>;
> - #cooling-cells = <2>; /* min followed by max */
> - };
> diff --git a/Documentation/devicetree/bindings/hwmon/gpio-fan.yaml b/Documentation/devicetree/bindings/hwmon/gpio-fan.yaml
> new file mode 100644
> index 000000000000..e2db65d58a92
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/hwmon/gpio-fan.yaml
> @@ -0,0 +1,69 @@
> +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: "http://devicetree.org/schemas/hwmon/gpio-fan.yaml#"
> +$schema: "http://devicetree.org/meta-schemas/core.yaml#"
> +
> +title: Bindings for fan connected to GPIO lines
> +
> +maintainers:
> + - Rob Herring <[email protected]>

Just [email protected]

> +
> +properties:
> + compatible:
> + const: gpio-fan
> +
> + gpios:
> + description: |
> + Specifies the pins that map to bits in the control value,
> + ordered MSB-->LSB.

minItems: 1
maxItems: 7 ?

> +
> + gpio-fan,speed-map:
> + $ref: /schemas/types.yaml#/definitions/uint32-array
> + minItems: 4
> + maxItems: 254
> + description: |
> + A mapping of possible fan RPM speeds and the
> + control value that should be set to achieve them. This array
> + must have the RPM values in ascending order.

Really this should be a uint32-matrix with this schema:

items:
minItems: 2
maxItems: 127
items:
- description: fan speed in RPMs
- description: control value

> +
> + alarm-gpios:
> + description: |
> + This pin going active indicates something is wrong with
> + the fan, and a udev event will be fired.

maxItems: 1

udev is a linuxism and shouldn't be in the binding.

> +
> + '#cooling-cells':
> + const: 2
> +
> +required:
> + - compatible
> + - gpio-fan,speed-map
> +
> +anyOf:
> + - required: [gpios]

How is 'gpios' not always required?

> + - required: [alarm-gpios]
> +
> +additionalProperties: false
> +
> +examples:
> + - |
> + gpio_fan {
> + compatible = "gpio-fan";
> + gpios = <&gpio1 14 1
> + &gpio1 13 1>;
> + gpio-fan,speed-map = <0 0
> + 3000 1
> + 6000 2>;

Brackets needed around each pair.

> + alarm-gpios = <&gpio1 15 1>;
> + };
> + - |
> + gpio_fan_cool: gpio_fan {
> + compatible = "gpio-fan";
> + gpios = <&gpio2 14 1
> + &gpio2 13 1>;
> + gpio-fan,speed-map = <0 0
> + 3000 1
> + 6000 2>;
> + alarm-gpios = <&gpio2 15 1>;
> + #cooling-cells = <2>; /* min followed by max */
> + };
> --
> 2.33.0
>
>

2021-10-28 13:54:12

by David Heidelberg

[permalink] [raw]
Subject: Re: [PATCH] WIP: dt-bindings: arm: hwmon: gpio-fan: Convert txt bindings to yaml




On Tue, Oct 19 2021 at 16:35:17 -0500, Rob Herring <[email protected]>
wrote:
> On Sat, Oct 09, 2021 at 12:43:09PM +0200, David Heidelberg wrote:
>> Convert fan devices connected to GPIOs to the YAML syntax.
>>
>> Signed-off-by: David Heidelberg <[email protected]>
>> ---
>> .../devicetree/bindings/hwmon/gpio-fan.txt | 41 -----------
>> .../devicetree/bindings/hwmon/gpio-fan.yaml | 69
>> +++++++++++++++++++
>> 2 files changed, 69 insertions(+), 41 deletions(-)
>> delete mode 100644
>> Documentation/devicetree/bindings/hwmon/gpio-fan.txt
>> create mode 100644
>> Documentation/devicetree/bindings/hwmon/gpio-fan.yaml
>>
>> diff --git a/Documentation/devicetree/bindings/hwmon/gpio-fan.txt
>> b/Documentation/devicetree/bindings/hwmon/gpio-fan.txt
>> deleted file mode 100644
>> index f4cfa350f6a1..000000000000
>> --- a/Documentation/devicetree/bindings/hwmon/gpio-fan.txt
>> +++ /dev/null
>> @@ -1,41 +0,0 @@
>> -Bindings for fan connected to GPIO lines
>> -
>> -Required properties:
>> -- compatible : "gpio-fan"
>> -
>> -Optional properties:
>> -- gpios: Specifies the pins that map to bits in the control value,
>> - ordered MSB-->LSB.
>> -- gpio-fan,speed-map: A mapping of possible fan RPM speeds and the
>> - control value that should be set to achieve them. This array
>> - must have the RPM values in ascending order.
>> -- alarm-gpios: This pin going active indicates something is wrong
>> with
>> - the fan, and a udev event will be fired.
>> -- #cooling-cells: If used as a cooling device, must be <2>
>> - Also see:
>> -
>> Documentation/devicetree/bindings/thermal/thermal-cooling-devices.yaml
>> - min and max states are derived from the speed-map of the fan.
>> -
>> -Note: At least one the "gpios" or "alarm-gpios" properties must be
>> set.
>> -
>> -Examples:
>> -
>> - gpio_fan {
>> - compatible = "gpio-fan";
>> - gpios = <&gpio1 14 1
>> - &gpio1 13 1>;
>> - gpio-fan,speed-map = <0 0
>> - 3000 1
>> - 6000 2>;
>> - alarm-gpios = <&gpio1 15 1>;
>> - };
>> - gpio_fan_cool: gpio_fan {
>> - compatible = "gpio-fan";
>> - gpios = <&gpio2 14 1
>> - &gpio2 13 1>;
>> - gpio-fan,speed-map = <0 0>,
>> - <3000 1>,
>> - <6000 2>;
>> - alarm-gpios = <&gpio2 15 1>;
>> - #cooling-cells = <2>; /* min followed by max */
>> - };
>> diff --git a/Documentation/devicetree/bindings/hwmon/gpio-fan.yaml
>> b/Documentation/devicetree/bindings/hwmon/gpio-fan.yaml
>> new file mode 100644
>> index 000000000000..e2db65d58a92
>> --- /dev/null
>> +++ b/Documentation/devicetree/bindings/hwmon/gpio-fan.yaml
>> @@ -0,0 +1,69 @@
>> +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
>> +%YAML 1.2
>> +---
>> +$id: "http://devicetree.org/schemas/hwmon/gpio-fan.yaml#"
>> +$schema: "http://devicetree.org/meta-schemas/core.yaml#"
>> +
>> +title: Bindings for fan connected to GPIO lines
>> +
>> +maintainers:
>> + - Rob Herring <[email protected]>
>
> Just [email protected]
>
>> +
>> +properties:
>> + compatible:
>> + const: gpio-fan
>> +
>> + gpios:
>> + description: |
>> + Specifies the pins that map to bits in the control value,
>> + ordered MSB-->LSB.
>
> minItems: 1
> maxItems: 7 ?
>
>> +
>> + gpio-fan,speed-map:
>> + $ref: /schemas/types.yaml#/definitions/uint32-array
>> + minItems: 4
>> + maxItems: 254
>> + description: |
>> + A mapping of possible fan RPM speeds and the
>> + control value that should be set to achieve them. This array
>> + must have the RPM values in ascending order.
>
> Really this should be a uint32-matrix with this schema:
>
> items:
> minItems: 2
> maxItems: 127
> items:
> - description: fan speed in RPMs
> - description: control value
>
>> +
>> + alarm-gpios:
>> + description: |
>> + This pin going active indicates something is wrong with
>> + the fan, and a udev event will be fired.
>
> maxItems: 1
>
> udev is a linuxism and shouldn't be in the binding.
>
>> +
>> + '#cooling-cells':
>> + const: 2
>> +
>> +required:
>> + - compatible
>> + - gpio-fan,speed-map
>> +
>> +anyOf:
>> + - required: [gpios]
>
> How is 'gpios' not always required?
>
>> + - required: [alarm-gpios]
>> +
>> +additionalProperties: false
>> +
>> +examples:
>> + - |
>> + gpio_fan {
>> + compatible = "gpio-fan";
>> + gpios = <&gpio1 14 1
>> + &gpio1 13 1>;
>> + gpio-fan,speed-map = <0 0
>> + 3000 1
>> + 6000 2>;
>
> Brackets needed around each pair.

Well, that's the issue. I would love to use u32-matrix, but all the
drivers use < x1 x2 y1 x2 ... z1 z2 > syntax and driver suggests it's
the right solution.
* Speed map is in the form <RPM ctrl_val RPM ctrl_val ...>

Someone had to rewrite the driver and the DTS files to fix it. We could
mark old format as deprecated and use u32-matrix, but for now with
current drivers it's not a solution.

What you think? Should I document it as it is (so u32-array)?

David

>
>> + alarm-gpios = <&gpio1 15 1>;
>> + };
>> + - |
>> + gpio_fan_cool: gpio_fan {
>> + compatible = "gpio-fan";
>> + gpios = <&gpio2 14 1
>> + &gpio2 13 1>;
>> + gpio-fan,speed-map = <0 0
>> + 3000 1
>> + 6000 2>;
>> + alarm-gpios = <&gpio2 15 1>;
>> + #cooling-cells = <2>; /* min followed by max */
>> + };
>> --
>> 2.33.0
>>
>>