1c66ec88fSEmmanuel Vadot# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause 2c66ec88fSEmmanuel Vadot%YAML 1.2 3c66ec88fSEmmanuel Vadot--- 4c66ec88fSEmmanuel Vadot$id: http://devicetree.org/schemas/leds/cznic,turris-omnia-leds.yaml# 5c66ec88fSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml# 6c66ec88fSEmmanuel Vadot 7c66ec88fSEmmanuel Vadottitle: CZ.NIC's Turris Omnia LEDs driver 8c66ec88fSEmmanuel Vadot 9c66ec88fSEmmanuel Vadotmaintainers: 1082ea1a07SEmmanuel Vadot - Marek Behún <kabel@kernel.org> 11c66ec88fSEmmanuel Vadot 12c66ec88fSEmmanuel Vadotdescription: 13c66ec88fSEmmanuel Vadot This module adds support for the RGB LEDs found on the front panel of the 14c66ec88fSEmmanuel Vadot Turris Omnia router. There are 12 RGB LEDs that are controlled by a 15c66ec88fSEmmanuel Vadot microcontroller that communicates via the I2C bus. Each LED is described 16c66ec88fSEmmanuel Vadot as a subnode of this I2C device. 17c66ec88fSEmmanuel Vadot 18c66ec88fSEmmanuel Vadotproperties: 19c66ec88fSEmmanuel Vadot compatible: 20c66ec88fSEmmanuel Vadot const: cznic,turris-omnia-leds 21c66ec88fSEmmanuel Vadot 22c66ec88fSEmmanuel Vadot reg: 23c66ec88fSEmmanuel Vadot description: I2C slave address of the microcontroller. 24c66ec88fSEmmanuel Vadot maxItems: 1 25c66ec88fSEmmanuel Vadot 26c66ec88fSEmmanuel Vadot "#address-cells": 27c66ec88fSEmmanuel Vadot const: 1 28c66ec88fSEmmanuel Vadot 29c66ec88fSEmmanuel Vadot "#size-cells": 30c66ec88fSEmmanuel Vadot const: 0 31c66ec88fSEmmanuel Vadot 32c66ec88fSEmmanuel VadotpatternProperties: 33c66ec88fSEmmanuel Vadot "^multi-led@[0-9a-b]$": 34c66ec88fSEmmanuel Vadot type: object 35c9ccf3a3SEmmanuel Vadot $ref: leds-class-multicolor.yaml# 36b97ee269SEmmanuel Vadot unevaluatedProperties: false 37b97ee269SEmmanuel Vadot 38c66ec88fSEmmanuel Vadot description: 39c66ec88fSEmmanuel Vadot This node represents one of the RGB LED devices on Turris Omnia. 40c66ec88fSEmmanuel Vadot No subnodes need to be added for subchannels since this controller only 41c66ec88fSEmmanuel Vadot supports RGB LEDs. 42c66ec88fSEmmanuel Vadot 43c66ec88fSEmmanuel Vadot properties: 44c66ec88fSEmmanuel Vadot reg: 45c66ec88fSEmmanuel Vadot minimum: 0 46c66ec88fSEmmanuel Vadot maximum: 11 47c66ec88fSEmmanuel Vadot description: 48c66ec88fSEmmanuel Vadot This property identifies one of the LEDs on the front panel of the 49c66ec88fSEmmanuel Vadot Turris Omnia router. 50c66ec88fSEmmanuel Vadot 51c66ec88fSEmmanuel Vadot required: 52c66ec88fSEmmanuel Vadot - reg 53c66ec88fSEmmanuel Vadot 54c66ec88fSEmmanuel VadotadditionalProperties: false 55c66ec88fSEmmanuel Vadot 56c66ec88fSEmmanuel Vadotexamples: 57c66ec88fSEmmanuel Vadot - | 58c66ec88fSEmmanuel Vadot 59c66ec88fSEmmanuel Vadot #include <dt-bindings/leds/common.h> 60c66ec88fSEmmanuel Vadot 61*fac71e4eSEmmanuel Vadot i2c { 62c66ec88fSEmmanuel Vadot #address-cells = <1>; 63c66ec88fSEmmanuel Vadot #size-cells = <0>; 64c66ec88fSEmmanuel Vadot 65c66ec88fSEmmanuel Vadot led-controller@2b { 66c66ec88fSEmmanuel Vadot compatible = "cznic,turris-omnia-leds"; 67c66ec88fSEmmanuel Vadot reg = <0x2b>; 68c66ec88fSEmmanuel Vadot #address-cells = <1>; 69c66ec88fSEmmanuel Vadot #size-cells = <0>; 70c66ec88fSEmmanuel Vadot 71c66ec88fSEmmanuel Vadot multi-led@0 { 72c66ec88fSEmmanuel Vadot /* 73c66ec88fSEmmanuel Vadot * No subnodes are needed, this controller only supports RGB 74c66ec88fSEmmanuel Vadot * LEDs. 75c66ec88fSEmmanuel Vadot */ 76c66ec88fSEmmanuel Vadot reg = <0>; 77c66ec88fSEmmanuel Vadot color = <LED_COLOR_ID_MULTI>; 78c66ec88fSEmmanuel Vadot function = LED_FUNCTION_POWER; 79c66ec88fSEmmanuel Vadot linux,default-trigger = "heartbeat"; 80c66ec88fSEmmanuel Vadot }; 81c66ec88fSEmmanuel Vadot 82c66ec88fSEmmanuel Vadot multi-led@a { 83c66ec88fSEmmanuel Vadot reg = <0xa>; 84c66ec88fSEmmanuel Vadot color = <LED_COLOR_ID_MULTI>; 85c66ec88fSEmmanuel Vadot function = LED_FUNCTION_INDICATOR; 86c66ec88fSEmmanuel Vadot function-enumerator = <1>; 87c66ec88fSEmmanuel Vadot }; 88c66ec88fSEmmanuel Vadot }; 89c66ec88fSEmmanuel Vadot }; 90c66ec88fSEmmanuel Vadot 91c66ec88fSEmmanuel Vadot... 92