1*2fe4df9fSNam Tran# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2*2fe4df9fSNam Tran%YAML 1.2 3*2fe4df9fSNam Tran--- 4*2fe4df9fSNam Tran$id: http://devicetree.org/schemas/leds/ti,lp5812.yaml# 5*2fe4df9fSNam Tran$schema: http://devicetree.org/meta-schemas/core.yaml# 6*2fe4df9fSNam Tran 7*2fe4df9fSNam Trantitle: TI LP5812 4x3 Matrix RGB LED Driver with Autonomous Control 8*2fe4df9fSNam Tran 9*2fe4df9fSNam Tranmaintainers: 10*2fe4df9fSNam Tran - Nam Tran <trannamatk@gmail.com> 11*2fe4df9fSNam Tran 12*2fe4df9fSNam Trandescription: | 13*2fe4df9fSNam Tran The LP5812 is a 4x3 matrix RGB LED driver with I2C interface 14*2fe4df9fSNam Tran and autonomous animation engine control. 15*2fe4df9fSNam Tran For more product information please see the link below: 16*2fe4df9fSNam Tran https://www.ti.com/product/LP5812#tech-docs 17*2fe4df9fSNam Tran 18*2fe4df9fSNam Tranproperties: 19*2fe4df9fSNam Tran compatible: 20*2fe4df9fSNam Tran const: ti,lp5812 21*2fe4df9fSNam Tran 22*2fe4df9fSNam Tran reg: 23*2fe4df9fSNam Tran maxItems: 1 24*2fe4df9fSNam Tran 25*2fe4df9fSNam Tran ti,scan-mode: 26*2fe4df9fSNam Tran description: | 27*2fe4df9fSNam Tran Selects the LED scan mode of the LP5812. The device supports 28*2fe4df9fSNam Tran three modes: 29*2fe4df9fSNam Tran - Direct-drive mode (by default if 'ti,scan-mode' is omitted) 30*2fe4df9fSNam Tran drives up to 4 LEDs directly by internal current sinks (LED0-LED3). 31*2fe4df9fSNam Tran - TCM-drive mode ("tcm:<n>:<order...>") drives up to 12 LEDs 32*2fe4df9fSNam Tran (4 RGB) using 1-4 scan multiplexing. The <n> specifies the number 33*2fe4df9fSNam Tran of scans (1-4), and <order...> defines the scan order of the outputs. 34*2fe4df9fSNam Tran - Mix-drive mode ("mix:<n>:<direct>:<order...>") combines 35*2fe4df9fSNam Tran direct-drive and TCM-drive outputs. The <n> specifies the number 36*2fe4df9fSNam Tran of scans, <direct> selects the direct-drive outputs, and <order...> 37*2fe4df9fSNam Tran defines the scan order. 38*2fe4df9fSNam Tran $ref: /schemas/types.yaml#/definitions/string 39*2fe4df9fSNam Tran pattern: '^(tcm|mix):[1-4](:[0-3]){1,4}$' 40*2fe4df9fSNam Tran 41*2fe4df9fSNam Tran vcc-supply: 42*2fe4df9fSNam Tran description: Regulator providing power to the 'VCC' pin. 43*2fe4df9fSNam Tran 44*2fe4df9fSNam Tran "#address-cells": 45*2fe4df9fSNam Tran const: 1 46*2fe4df9fSNam Tran 47*2fe4df9fSNam Tran "#size-cells": 48*2fe4df9fSNam Tran const: 0 49*2fe4df9fSNam Tran 50*2fe4df9fSNam TranpatternProperties: 51*2fe4df9fSNam Tran "^led@[0-3]$": 52*2fe4df9fSNam Tran type: object 53*2fe4df9fSNam Tran $ref: common.yaml# 54*2fe4df9fSNam Tran unevaluatedProperties: false 55*2fe4df9fSNam Tran 56*2fe4df9fSNam Tran properties: 57*2fe4df9fSNam Tran reg: 58*2fe4df9fSNam Tran minimum: 0 59*2fe4df9fSNam Tran maximum: 3 60*2fe4df9fSNam Tran 61*2fe4df9fSNam Tran required: 62*2fe4df9fSNam Tran - reg 63*2fe4df9fSNam Tran 64*2fe4df9fSNam Tran "^multi-led@[4-7]$": 65*2fe4df9fSNam Tran type: object 66*2fe4df9fSNam Tran $ref: leds-class-multicolor.yaml# 67*2fe4df9fSNam Tran unevaluatedProperties: false 68*2fe4df9fSNam Tran 69*2fe4df9fSNam Tran properties: 70*2fe4df9fSNam Tran reg: 71*2fe4df9fSNam Tran minimum: 4 72*2fe4df9fSNam Tran maximum: 7 73*2fe4df9fSNam Tran 74*2fe4df9fSNam Tran "#address-cells": 75*2fe4df9fSNam Tran const: 1 76*2fe4df9fSNam Tran 77*2fe4df9fSNam Tran "#size-cells": 78*2fe4df9fSNam Tran const: 0 79*2fe4df9fSNam Tran 80*2fe4df9fSNam Tran patternProperties: 81*2fe4df9fSNam Tran "^led@[4-9a-f]$": 82*2fe4df9fSNam Tran type: object 83*2fe4df9fSNam Tran $ref: common.yaml# 84*2fe4df9fSNam Tran unevaluatedProperties: false 85*2fe4df9fSNam Tran 86*2fe4df9fSNam Tran properties: 87*2fe4df9fSNam Tran reg: 88*2fe4df9fSNam Tran minimum: 4 89*2fe4df9fSNam Tran maximum: 15 90*2fe4df9fSNam Tran 91*2fe4df9fSNam Tran required: 92*2fe4df9fSNam Tran - reg 93*2fe4df9fSNam Tran 94*2fe4df9fSNam Tranrequired: 95*2fe4df9fSNam Tran - compatible 96*2fe4df9fSNam Tran - reg 97*2fe4df9fSNam Tran 98*2fe4df9fSNam TranadditionalProperties: false 99*2fe4df9fSNam Tran 100*2fe4df9fSNam Tranexamples: 101*2fe4df9fSNam Tran - | 102*2fe4df9fSNam Tran #include <dt-bindings/leds/common.h> 103*2fe4df9fSNam Tran 104*2fe4df9fSNam Tran i2c { 105*2fe4df9fSNam Tran #address-cells = <1>; 106*2fe4df9fSNam Tran #size-cells = <0>; 107*2fe4df9fSNam Tran 108*2fe4df9fSNam Tran led-controller@1b { 109*2fe4df9fSNam Tran #address-cells = <1>; 110*2fe4df9fSNam Tran #size-cells = <0>; 111*2fe4df9fSNam Tran compatible = "ti,lp5812"; 112*2fe4df9fSNam Tran reg = <0x1b>; 113*2fe4df9fSNam Tran ti,scan-mode = "tcm:4:0:1:2:3"; 114*2fe4df9fSNam Tran vcc-supply = <&vdd_3v3_reg>; 115*2fe4df9fSNam Tran 116*2fe4df9fSNam Tran led@0 { 117*2fe4df9fSNam Tran reg = <0x0>; 118*2fe4df9fSNam Tran label = "LED0"; 119*2fe4df9fSNam Tran led-max-microamp = <25500>; 120*2fe4df9fSNam Tran }; 121*2fe4df9fSNam Tran 122*2fe4df9fSNam Tran led@1 { 123*2fe4df9fSNam Tran reg = <0x1>; 124*2fe4df9fSNam Tran label = "LED1"; 125*2fe4df9fSNam Tran led-max-microamp = <25500>; 126*2fe4df9fSNam Tran }; 127*2fe4df9fSNam Tran 128*2fe4df9fSNam Tran led@2 { 129*2fe4df9fSNam Tran reg = <0x2>; 130*2fe4df9fSNam Tran label = "LED2"; 131*2fe4df9fSNam Tran led-max-microamp = <25500>; 132*2fe4df9fSNam Tran }; 133*2fe4df9fSNam Tran 134*2fe4df9fSNam Tran led@3 { 135*2fe4df9fSNam Tran reg = <0x3>; 136*2fe4df9fSNam Tran label = "LED3"; 137*2fe4df9fSNam Tran led-max-microamp = <25500>; 138*2fe4df9fSNam Tran }; 139*2fe4df9fSNam Tran 140*2fe4df9fSNam Tran multi-led@4 { 141*2fe4df9fSNam Tran #address-cells = <1>; 142*2fe4df9fSNam Tran #size-cells = <0>; 143*2fe4df9fSNam Tran reg = <0x4>; 144*2fe4df9fSNam Tran color = <LED_COLOR_ID_RGB>; 145*2fe4df9fSNam Tran label = "LED_A"; 146*2fe4df9fSNam Tran 147*2fe4df9fSNam Tran led@4 { 148*2fe4df9fSNam Tran reg = <0x4>; 149*2fe4df9fSNam Tran color = <LED_COLOR_ID_GREEN>; 150*2fe4df9fSNam Tran led-max-microamp = <25500>; 151*2fe4df9fSNam Tran }; 152*2fe4df9fSNam Tran 153*2fe4df9fSNam Tran led@5 { 154*2fe4df9fSNam Tran reg = <0x5>; 155*2fe4df9fSNam Tran color = <LED_COLOR_ID_RED>; 156*2fe4df9fSNam Tran led-max-microamp = <25500>; 157*2fe4df9fSNam Tran }; 158*2fe4df9fSNam Tran 159*2fe4df9fSNam Tran led@6 { 160*2fe4df9fSNam Tran reg = <0x6>; 161*2fe4df9fSNam Tran color = <LED_COLOR_ID_BLUE>; 162*2fe4df9fSNam Tran led-max-microamp = <25500>; 163*2fe4df9fSNam Tran }; 164*2fe4df9fSNam Tran }; 165*2fe4df9fSNam Tran 166*2fe4df9fSNam Tran multi-led@5 { 167*2fe4df9fSNam Tran #address-cells = <1>; 168*2fe4df9fSNam Tran #size-cells = <0>; 169*2fe4df9fSNam Tran reg = <0x5>; 170*2fe4df9fSNam Tran color = <LED_COLOR_ID_RGB>; 171*2fe4df9fSNam Tran label = "LED_B"; 172*2fe4df9fSNam Tran 173*2fe4df9fSNam Tran led@7 { 174*2fe4df9fSNam Tran reg = <0x7>; 175*2fe4df9fSNam Tran color = <LED_COLOR_ID_GREEN>; 176*2fe4df9fSNam Tran led-max-microamp = <25500>; 177*2fe4df9fSNam Tran }; 178*2fe4df9fSNam Tran 179*2fe4df9fSNam Tran led@8 { 180*2fe4df9fSNam Tran reg = <0x8>; 181*2fe4df9fSNam Tran color = <LED_COLOR_ID_RED>; 182*2fe4df9fSNam Tran led-max-microamp = <25500>; 183*2fe4df9fSNam Tran }; 184*2fe4df9fSNam Tran 185*2fe4df9fSNam Tran led@9 { 186*2fe4df9fSNam Tran reg = <0x9>; 187*2fe4df9fSNam Tran color = <LED_COLOR_ID_BLUE>; 188*2fe4df9fSNam Tran led-max-microamp = <25500>; 189*2fe4df9fSNam Tran }; 190*2fe4df9fSNam Tran }; 191*2fe4df9fSNam Tran 192*2fe4df9fSNam Tran multi-led@6 { 193*2fe4df9fSNam Tran #address-cells = <1>; 194*2fe4df9fSNam Tran #size-cells = <0>; 195*2fe4df9fSNam Tran reg = <0x6>; 196*2fe4df9fSNam Tran color = <LED_COLOR_ID_RGB>; 197*2fe4df9fSNam Tran label = "LED_C"; 198*2fe4df9fSNam Tran 199*2fe4df9fSNam Tran led@a { 200*2fe4df9fSNam Tran reg = <0xa>; 201*2fe4df9fSNam Tran color = <LED_COLOR_ID_GREEN>; 202*2fe4df9fSNam Tran led-max-microamp = <25500>; 203*2fe4df9fSNam Tran }; 204*2fe4df9fSNam Tran 205*2fe4df9fSNam Tran led@b { 206*2fe4df9fSNam Tran reg = <0xb>; 207*2fe4df9fSNam Tran color = <LED_COLOR_ID_RED>; 208*2fe4df9fSNam Tran led-max-microamp = <25500>; 209*2fe4df9fSNam Tran }; 210*2fe4df9fSNam Tran 211*2fe4df9fSNam Tran led@c { 212*2fe4df9fSNam Tran reg = <0xc>; 213*2fe4df9fSNam Tran color = <LED_COLOR_ID_BLUE>; 214*2fe4df9fSNam Tran led-max-microamp = <25500>; 215*2fe4df9fSNam Tran }; 216*2fe4df9fSNam Tran }; 217*2fe4df9fSNam Tran 218*2fe4df9fSNam Tran multi-led@7 { 219*2fe4df9fSNam Tran #address-cells = <1>; 220*2fe4df9fSNam Tran #size-cells = <0>; 221*2fe4df9fSNam Tran reg = <0x7>; 222*2fe4df9fSNam Tran color = <LED_COLOR_ID_RGB>; 223*2fe4df9fSNam Tran label = "LED_D"; 224*2fe4df9fSNam Tran 225*2fe4df9fSNam Tran led@d { 226*2fe4df9fSNam Tran reg = <0xd>; 227*2fe4df9fSNam Tran color = <LED_COLOR_ID_GREEN>; 228*2fe4df9fSNam Tran led-max-microamp = <25500>; 229*2fe4df9fSNam Tran }; 230*2fe4df9fSNam Tran 231*2fe4df9fSNam Tran led@e { 232*2fe4df9fSNam Tran reg = <0xe>; 233*2fe4df9fSNam Tran color = <LED_COLOR_ID_RED>; 234*2fe4df9fSNam Tran led-max-microamp = <25500>; 235*2fe4df9fSNam Tran }; 236*2fe4df9fSNam Tran 237*2fe4df9fSNam Tran led@f { 238*2fe4df9fSNam Tran reg = <0xf>; 239*2fe4df9fSNam Tran color = <LED_COLOR_ID_BLUE>; 240*2fe4df9fSNam Tran led-max-microamp = <25500>; 241*2fe4df9fSNam Tran }; 242*2fe4df9fSNam Tran }; 243*2fe4df9fSNam Tran }; 244*2fe4df9fSNam Tran }; 245*2fe4df9fSNam Tran 246*2fe4df9fSNam Tran... 247