Re: [PATCH v7 1/6] dt-bindings: Add IEI vendor prefix and IEI WT61P803 PUZZLE driver bindings

From: Rob Herring
Date: Wed Oct 28 2020 - 18:22:05 EST


On Sun, Oct 25, 2020 at 02:59:11AM +0200, Luka Kovacic wrote:
> Add the IEI WT61P803 PUZZLE Device Tree bindings for MFD, HWMON and LED
> drivers. A new vendor prefix is also added accordingly for
> IEI Integration Corp.
>
> Signed-off-by: Luka Kovacic <luka.kovacic@xxxxxxxxxx>
> Cc: Luka Perkov <luka.perkov@xxxxxxxxxx>
> Cc: Robert Marko <robert.marko@xxxxxxxxxx>
> ---
> .../hwmon/iei,wt61p803-puzzle-hwmon.yaml | 53 ++++++++++++
> .../leds/iei,wt61p803-puzzle-leds.yaml | 45 ++++++++++
> .../bindings/mfd/iei,wt61p803-puzzle.yaml | 83 +++++++++++++++++++
> .../devicetree/bindings/vendor-prefixes.yaml | 2 +
> 4 files changed, 183 insertions(+)
> create mode 100644 Documentation/devicetree/bindings/hwmon/iei,wt61p803-puzzle-hwmon.yaml
> create mode 100644 Documentation/devicetree/bindings/leds/iei,wt61p803-puzzle-leds.yaml
> create mode 100644 Documentation/devicetree/bindings/mfd/iei,wt61p803-puzzle.yaml
>
> diff --git a/Documentation/devicetree/bindings/hwmon/iei,wt61p803-puzzle-hwmon.yaml b/Documentation/devicetree/bindings/hwmon/iei,wt61p803-puzzle-hwmon.yaml
> new file mode 100644
> index 000000000000..c24a24e90495
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/hwmon/iei,wt61p803-puzzle-hwmon.yaml
> @@ -0,0 +1,53 @@
> +# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/hwmon/iei,wt61p803-puzzle-hwmon.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: IEI WT61P803 PUZZLE MCU HWMON module from IEI Integration Corp.
> +
> +maintainers:
> + - Luka Kovacic <luka.kovacic@xxxxxxxxxx>
> +
> +description: |
> + This module is a part of the IEI WT61P803 PUZZLE MFD device. For more details
> + see Documentation/devicetree/bindings/mfd/iei,wt61p803-puzzle.yaml.
> +
> + The HWMON module is a sub-node of the MCU node in the Device Tree.
> +
> +properties:
> + compatible:
> + const: iei,wt61p803-puzzle-hwmon
> +
> + "#address-cells":
> + const: 1
> +
> + "#size-cells":
> + const: 0
> +
> +patternProperties:
> + "^fan-group@[0-1]$":
> + type: object
> + properties:
> + reg:
> + minimum: 0
> + maximum: 1
> + description:
> + Fan group ID
> +
> + cooling-levels:
> + minItems: 1
> + maxItems: 255
> + description:
> + Cooling levels for the fans (PWM value mapping)
> + description: |
> + Properties for each fan group.
> + required:
> + - reg
> +
> +required:
> + - compatible
> + - "#address-cells"
> + - "#size-cells"
> +
> +additionalProperties: false
> diff --git a/Documentation/devicetree/bindings/leds/iei,wt61p803-puzzle-leds.yaml b/Documentation/devicetree/bindings/leds/iei,wt61p803-puzzle-leds.yaml
> new file mode 100644
> index 000000000000..bbf264c13189
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/leds/iei,wt61p803-puzzle-leds.yaml
> @@ -0,0 +1,45 @@
> +# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/leds/iei,wt61p803-puzzle-leds.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: IEI WT61P803 PUZZLE MCU LED module from IEI Integration Corp.
> +
> +maintainers:
> + - Luka Kovacic <luka.kovacic@xxxxxxxxxx>
> +
> +description: |
> + This module is a part of the IEI WT61P803 PUZZLE MFD device. For more details
> + see Documentation/devicetree/bindings/mfd/iei,wt61p803-puzzle.yaml.
> +
> + The LED module is a sub-node of the MCU node in the Device Tree.
> +
> +properties:
> + compatible:
> + const: iei,wt61p803-puzzle-leds
> +
> + "#address-cells":
> + const: 1
> +
> + "#size-cells":
> + const: 0
> +
> + "led@0":
> + type: object
> + $ref: common.yaml
> + description: |
> + Properties for a single LED.
> + properties:
> + reg:
> + description:
> + Index of the LED. Only one LED is supported at the moment.
> + minimum: 0
> + maximum: 0

'const: 0' instead.

> +
> +required:
> + - compatible
> + - "#address-cells"
> + - "#size-cells"
> +
> +additionalProperties: false
> diff --git a/Documentation/devicetree/bindings/mfd/iei,wt61p803-puzzle.yaml b/Documentation/devicetree/bindings/mfd/iei,wt61p803-puzzle.yaml
> new file mode 100644
> index 000000000000..64264c664c48
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/mfd/iei,wt61p803-puzzle.yaml
> @@ -0,0 +1,83 @@
> +# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/mfd/iei,wt61p803-puzzle.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: IEI WT61P803 PUZZLE MCU from IEI Integration Corp.
> +
> +maintainers:
> + - Luka Kovacic <luka.kovacic@xxxxxxxxxx>
> +
> +description: |
> + IEI WT61P803 PUZZLE MCU is embedded in some IEI Puzzle series boards.
> + It's used for controlling system power states, fans, LEDs and temperature
> + sensors.
> +
> + For Device Tree bindings of other sub-modules (HWMON, LEDs) refer to the
> + binding documents under the respective subsystem directories.
> +
> +properties:
> + compatible:
> + const: iei,wt61p803-puzzle
> +
> + current-speed:
> + description:
> + Serial bus speed in bps
> + maxItems: 1
> +
> + enable-beep: true

Needs a vendor prefix, description, and type.

> +
> + hwmon:
> + $ref: ../hwmon/iei,wt61p803-puzzle-hwmon.yaml
> +
> + leds:
> + $ref: ../leds/iei,wt61p803-puzzle-leds.yaml
> +
> +required:
> + - compatible
> + - current-speed
> +
> +additionalProperties: false
> +
> +examples:
> + - |
> + #include <dt-bindings/leds/common.h>
> + serial {
> + status = "okay";

Don't show status in examples.

> + mcu {
> + compatible = "iei,wt61p803-puzzle";
> + current-speed = <115200>;
> + enable-beep;
> +
> + leds {
> + compatible = "iei,wt61p803-puzzle-leds";
> + #address-cells = <1>;
> + #size-cells = <0>;
> +
> + led@0 {
> + reg = <0>;
> + function = LED_FUNCTION_POWER;
> + color = <LED_COLOR_ID_BLUE>;
> + };
> + };
> +
> + hwmon {
> + compatible = "iei,wt61p803-puzzle-hwmon";
> + #address-cells = <1>;
> + #size-cells = <0>;
> +
> + fan-group@0 {
> + #cooling-cells = <2>;
> + reg = <0x00>;
> + cooling-levels = <64 102 170 230 250>;
> + };
> +
> + fan-group@1 {
> + #cooling-cells = <2>;
> + reg = <0x01>;
> + cooling-levels = <64 102 170 230 250>;
> + };
> + };
> + };
> + };
> diff --git a/Documentation/devicetree/bindings/vendor-prefixes.yaml b/Documentation/devicetree/bindings/vendor-prefixes.yaml
> index 63996ab03521..5f2595f0b2ad 100644
> --- a/Documentation/devicetree/bindings/vendor-prefixes.yaml
> +++ b/Documentation/devicetree/bindings/vendor-prefixes.yaml
> @@ -467,6 +467,8 @@ patternProperties:
> description: IC Plus Corp.
> "^idt,.*":
> description: Integrated Device Technologies, Inc.
> + "^iei,.*":
> + description: IEI Integration Corp.
> "^ifi,.*":
> description: Ingenieurburo Fur Ic-Technologie (I/F/I)
> "^ilitek,.*":
> --
> 2.26.2
>