18c2ecf20Sopenharmony_ci# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause 28c2ecf20Sopenharmony_ci%YAML 1.2 38c2ecf20Sopenharmony_ci--- 48c2ecf20Sopenharmony_ci$id: http://devicetree.org/schemas/leds/cznic,turris-omnia-leds.yaml# 58c2ecf20Sopenharmony_ci$schema: http://devicetree.org/meta-schemas/core.yaml# 68c2ecf20Sopenharmony_ci 78c2ecf20Sopenharmony_cititle: CZ.NIC's Turris Omnia LEDs driver 88c2ecf20Sopenharmony_ci 98c2ecf20Sopenharmony_cimaintainers: 108c2ecf20Sopenharmony_ci - Marek Behún <marek.behun@nic.cz> 118c2ecf20Sopenharmony_ci 128c2ecf20Sopenharmony_cidescription: 138c2ecf20Sopenharmony_ci This module adds support for the RGB LEDs found on the front panel of the 148c2ecf20Sopenharmony_ci Turris Omnia router. There are 12 RGB LEDs that are controlled by a 158c2ecf20Sopenharmony_ci microcontroller that communicates via the I2C bus. Each LED is described 168c2ecf20Sopenharmony_ci as a subnode of this I2C device. 178c2ecf20Sopenharmony_ci 188c2ecf20Sopenharmony_ciproperties: 198c2ecf20Sopenharmony_ci compatible: 208c2ecf20Sopenharmony_ci const: cznic,turris-omnia-leds 218c2ecf20Sopenharmony_ci 228c2ecf20Sopenharmony_ci reg: 238c2ecf20Sopenharmony_ci description: I2C slave address of the microcontroller. 248c2ecf20Sopenharmony_ci maxItems: 1 258c2ecf20Sopenharmony_ci 268c2ecf20Sopenharmony_ci "#address-cells": 278c2ecf20Sopenharmony_ci const: 1 288c2ecf20Sopenharmony_ci 298c2ecf20Sopenharmony_ci "#size-cells": 308c2ecf20Sopenharmony_ci const: 0 318c2ecf20Sopenharmony_ci 328c2ecf20Sopenharmony_cipatternProperties: 338c2ecf20Sopenharmony_ci "^multi-led@[0-9a-b]$": 348c2ecf20Sopenharmony_ci type: object 358c2ecf20Sopenharmony_ci allOf: 368c2ecf20Sopenharmony_ci - $ref: leds-class-multicolor.yaml# 378c2ecf20Sopenharmony_ci description: 388c2ecf20Sopenharmony_ci This node represents one of the RGB LED devices on Turris Omnia. 398c2ecf20Sopenharmony_ci No subnodes need to be added for subchannels since this controller only 408c2ecf20Sopenharmony_ci supports RGB LEDs. 418c2ecf20Sopenharmony_ci 428c2ecf20Sopenharmony_ci properties: 438c2ecf20Sopenharmony_ci reg: 448c2ecf20Sopenharmony_ci minimum: 0 458c2ecf20Sopenharmony_ci maximum: 11 468c2ecf20Sopenharmony_ci description: 478c2ecf20Sopenharmony_ci This property identifies one of the LEDs on the front panel of the 488c2ecf20Sopenharmony_ci Turris Omnia router. 498c2ecf20Sopenharmony_ci 508c2ecf20Sopenharmony_ci required: 518c2ecf20Sopenharmony_ci - reg 528c2ecf20Sopenharmony_ci 538c2ecf20Sopenharmony_ciadditionalProperties: false 548c2ecf20Sopenharmony_ci 558c2ecf20Sopenharmony_ciexamples: 568c2ecf20Sopenharmony_ci - | 578c2ecf20Sopenharmony_ci 588c2ecf20Sopenharmony_ci #include <dt-bindings/leds/common.h> 598c2ecf20Sopenharmony_ci 608c2ecf20Sopenharmony_ci i2c0 { 618c2ecf20Sopenharmony_ci #address-cells = <1>; 628c2ecf20Sopenharmony_ci #size-cells = <0>; 638c2ecf20Sopenharmony_ci 648c2ecf20Sopenharmony_ci led-controller@2b { 658c2ecf20Sopenharmony_ci compatible = "cznic,turris-omnia-leds"; 668c2ecf20Sopenharmony_ci reg = <0x2b>; 678c2ecf20Sopenharmony_ci #address-cells = <1>; 688c2ecf20Sopenharmony_ci #size-cells = <0>; 698c2ecf20Sopenharmony_ci 708c2ecf20Sopenharmony_ci multi-led@0 { 718c2ecf20Sopenharmony_ci /* 728c2ecf20Sopenharmony_ci * No subnodes are needed, this controller only supports RGB 738c2ecf20Sopenharmony_ci * LEDs. 748c2ecf20Sopenharmony_ci */ 758c2ecf20Sopenharmony_ci reg = <0>; 768c2ecf20Sopenharmony_ci color = <LED_COLOR_ID_MULTI>; 778c2ecf20Sopenharmony_ci function = LED_FUNCTION_POWER; 788c2ecf20Sopenharmony_ci linux,default-trigger = "heartbeat"; 798c2ecf20Sopenharmony_ci }; 808c2ecf20Sopenharmony_ci 818c2ecf20Sopenharmony_ci multi-led@a { 828c2ecf20Sopenharmony_ci reg = <0xa>; 838c2ecf20Sopenharmony_ci color = <LED_COLOR_ID_MULTI>; 848c2ecf20Sopenharmony_ci function = LED_FUNCTION_INDICATOR; 858c2ecf20Sopenharmony_ci function-enumerator = <1>; 868c2ecf20Sopenharmony_ci }; 878c2ecf20Sopenharmony_ci }; 888c2ecf20Sopenharmony_ci }; 898c2ecf20Sopenharmony_ci 908c2ecf20Sopenharmony_ci... 91