# 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@sartura.hr>

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: true

  enable-beep:
    type: boolean

  hwmon:
    $ref: /schemas/hwmon/iei,wt61p803-puzzle-hwmon.yaml

  leds:
    $ref: /schemas/leds/iei,wt61p803-puzzle-leds.yaml

required:
  - compatible
  - current-speed

additionalProperties: false

examples:
  - |
    #include <dt-bindings/leds/common.h>
    serial {
        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>;
                };
            };
        };
    };
