# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause %YAML 1.2 --- $id: http://devicetree.org/schemas/leds/nxp,pca955x.yaml# $schema: http://devicetree.org/meta-schemas/core.yaml# title: NXP PCA955X LED controllers maintainers: - Nate Case description: | The PCA955x family of chips are I2C LED blinkers whose pins not used to control LEDs can be used as general purpose I/Os. The GPIO pins can be input or output, and output pins can also be pulse-width controlled. For more product information please see the link below: - https://www.nxp.com/docs/en/data-sheet/PCA9552.pdf properties: compatible: enum: - nxp,pca9550 - nxp,pca9551 - nxp,pca9552 - ibm,pca9552 - nxp,pca9553 reg: maxItems: 1 "#address-cells": const: 1 "#size-cells": const: 0 gpio-controller: true gpio-line-names: minItems: 1 maxItems: 16 "#gpio-cells": const: 2 patternProperties: "^led@[0-9a-f]$": type: object $ref: common.yaml# unevaluatedProperties: false properties: reg: maxItems: 1 type: description: | Output configuration, see include/dt-bindings/leds/leds-pca955x.h $ref: /schemas/types.yaml#/definitions/uint32 default: 0 minimum: 0 maximum: 2 required: - reg allOf: - if: properties: compatible: contains: enum: - nxp,pca9550 then: patternProperties: "^led@[0-9a-f]$": properties: reg: maximum: 1 - if: properties: compatible: contains: enum: - nxp,pca9551 then: patternProperties: "^led@[0-9a-f]$": properties: reg: maximum: 7 - if: properties: compatible: contains: enum: - nxp,pca9552 - ibm,pca9552 then: patternProperties: "^led@[0-9a-f]$": properties: reg: maximum: 15 - if: properties: compatible: contains: enum: - nxp,pca9553 then: patternProperties: "^led@[0-9a-f]$": properties: reg: maximum: 3 additionalProperties: false examples: - | #include i2c { #address-cells = <1>; #size-cells = <0>; led-controller@60 { compatible = "nxp,pca9552"; reg = <0x60>; #address-cells = <1>; #size-cells = <0>; led@0 { reg = <0>; label = "red:power"; linux,default-trigger = "default-on"; type = ; }; led@1 { reg = <1>; label = "green:power"; type = ; }; led@2 { reg = <2>; label = "pca9552:yellow"; type = ; }; led@3 { reg = <3>; label = "pca9552:white"; type = ; }; }; }; ...