On Mon, Jul 05, 2021 at 03:49:33PM +0200, Pavo Banicevic wrote: > From: Luka Kovacic <luka.kovacic@xxxxxxxxxx> > > 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> > Signed-off-by: Pavo Banicevic <pavo.banicevic@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 | 44 ++++++++++ > .../bindings/mfd/iei,wt61p803-puzzle.yaml | 82 +++++++++++++++++++ > .../devicetree/bindings/vendor-prefixes.yaml | 2 + > 4 files changed, 181 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..dc3e39aafd3e > --- /dev/null > +++ b/Documentation/devicetree/bindings/leds/iei,wt61p803-puzzle-leds.yaml > @@ -0,0 +1,44 @@ > +# 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": Don't need quotes. > + 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. > + const: 0 If there can only be 1 LED, just make an 'led' node and drop reg. > + > +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..2452631505cc > --- /dev/null > +++ b/Documentation/devicetree/bindings/mfd/iei,wt61p803-puzzle.yaml > @@ -0,0 +1,82 @@ > +# 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 > + > + hwmon: > + $ref: ../hwmon/iei,wt61p803-puzzle-hwmon.yaml /schemas/hwmon/... > + > + leds: > + $ref: ../leds/iei,wt61p803-puzzle-leds.yaml /schemas/leds/... > + > +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>; > + }; > + }; > + }; > + }; > diff --git a/Documentation/devicetree/bindings/vendor-prefixes.yaml b/Documentation/devicetree/bindings/vendor-prefixes.yaml > index b868cefc7c55..e02b6d6eb568 100644 > --- a/Documentation/devicetree/bindings/vendor-prefixes.yaml > +++ b/Documentation/devicetree/bindings/vendor-prefixes.yaml > @@ -509,6 +509,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.31.1 > >