1*a89d385dSDan Murphy# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2*a89d385dSDan Murphy%YAML 1.2 3*a89d385dSDan Murphy--- 4*a89d385dSDan Murphy$id: http://devicetree.org/schemas/leds/leds-lp55xx.yaml# 5*a89d385dSDan Murphy$schema: http://devicetree.org/meta-schemas/core.yaml# 6*a89d385dSDan Murphy 7*a89d385dSDan Murphytitle: TI/National Semiconductor LP55xx and LP8501 LED Drivers 8*a89d385dSDan Murphy 9*a89d385dSDan Murphymaintainers: 10*a89d385dSDan Murphy - Jacek Anaszewski <jacek.anaszewski@gmail.com> 11*a89d385dSDan Murphy - Pavel Machek <pavel@ucw.cz> 12*a89d385dSDan Murphy 13*a89d385dSDan Murphydescription: | 14*a89d385dSDan Murphy Bindings for the TI/National Semiconductor LP55xx and LP8501 multi channel 15*a89d385dSDan Murphy LED Drivers. 16*a89d385dSDan Murphy 17*a89d385dSDan Murphy For more product information please see the link below: 18*a89d385dSDan Murphy https://www.ti.com/lit/gpn/lp5521 19*a89d385dSDan Murphy https://www.ti.com/lit/gpn/lp5523 20*a89d385dSDan Murphy https://www.ti.com/lit/gpn/lp55231 21*a89d385dSDan Murphy https://www.ti.com/lit/gpn/lp5562 22*a89d385dSDan Murphy https://www.ti.com/lit/gpn/lp8501 23*a89d385dSDan Murphy 24*a89d385dSDan Murphyproperties: 25*a89d385dSDan Murphy compatible: 26*a89d385dSDan Murphy enum: 27*a89d385dSDan Murphy - national,lp5521 28*a89d385dSDan Murphy - national,lp5523 29*a89d385dSDan Murphy - ti,lp55231 30*a89d385dSDan Murphy - ti,lp5562 31*a89d385dSDan Murphy - ti,lp8501 32*a89d385dSDan Murphy 33*a89d385dSDan Murphy reg: 34*a89d385dSDan Murphy maxItems: 1 35*a89d385dSDan Murphy description: I2C slave address 36*a89d385dSDan Murphy 37*a89d385dSDan Murphy clock-mode: 38*a89d385dSDan Murphy $ref: /schemas/types.yaml#definitions/uint8 39*a89d385dSDan Murphy description: | 40*a89d385dSDan Murphy Input clock mode 41*a89d385dSDan Murphy enum: 42*a89d385dSDan Murphy - 0 # automode 43*a89d385dSDan Murphy - 1 # internal 44*a89d385dSDan Murphy - 2 # external 45*a89d385dSDan Murphy 46*a89d385dSDan Murphy enable-gpio: 47*a89d385dSDan Murphy maxItems: 1 48*a89d385dSDan Murphy description: | 49*a89d385dSDan Murphy GPIO attached to the chip's enable pin 50*a89d385dSDan Murphy 51*a89d385dSDan Murphy pwr-sel: 52*a89d385dSDan Murphy $ref: /schemas/types.yaml#definitions/uint8 53*a89d385dSDan Murphy description: | 54*a89d385dSDan Murphy LP8501 specific property. Power selection for output channels. 55*a89d385dSDan Murphy enum: 56*a89d385dSDan Murphy - 0 # D1~9 are connected to VDD 57*a89d385dSDan Murphy - 1 # D1~6 with VDD, D7~9 with VOUT 58*a89d385dSDan Murphy - 2 # D1~6 with VOUT, D7~9 with VDD 59*a89d385dSDan Murphy - 3 # D1~9 are connected to VOUT 60*a89d385dSDan Murphy 61*a89d385dSDan MurphypatternProperties: 62*a89d385dSDan Murphy "(^led@[0-9a-f]$|led)": 63*a89d385dSDan Murphy type: object 64*a89d385dSDan Murphy $ref: common.yaml# 65*a89d385dSDan Murphy properties: 66*a89d385dSDan Murphy led-cur: 67*a89d385dSDan Murphy $ref: /schemas/types.yaml#definitions/uint8 68*a89d385dSDan Murphy description: | 69*a89d385dSDan Murphy Current setting at each LED channel (mA x10, 0 if LED is not connected) 70*a89d385dSDan Murphy minimum: 0 71*a89d385dSDan Murphy maximum: 255 72*a89d385dSDan Murphy 73*a89d385dSDan Murphy max-cur: 74*a89d385dSDan Murphy $ref: /schemas/types.yaml#definitions/uint8 75*a89d385dSDan Murphy description: Maximun current at each LED channel. 76*a89d385dSDan Murphy 77*a89d385dSDan Murphy reg: 78*a89d385dSDan Murphy description: | 79*a89d385dSDan Murphy Output channel for the LED. This is zero based channel identifier and 80*a89d385dSDan Murphy the data sheet is a one based channel identifier. 81*a89d385dSDan Murphy reg value to output to LED output number 82*a89d385dSDan Murphy enum: 83*a89d385dSDan Murphy - 0 # LED output D1 84*a89d385dSDan Murphy - 1 # LED output D2 85*a89d385dSDan Murphy - 2 # LED output D3 86*a89d385dSDan Murphy - 3 # LED output D4 87*a89d385dSDan Murphy - 4 # LED output D5 88*a89d385dSDan Murphy - 5 # LED output D6 89*a89d385dSDan Murphy - 6 # LED output D7 90*a89d385dSDan Murphy - 7 # LED output D8 91*a89d385dSDan Murphy - 8 # LED output D9 92*a89d385dSDan Murphy 93*a89d385dSDan Murphy chan-name: 94*a89d385dSDan Murphy $ref: /schemas/types.yaml#definitions/string 95*a89d385dSDan Murphy description: name of channel 96*a89d385dSDan Murphy 97*a89d385dSDan Murphyrequired: 98*a89d385dSDan Murphy - compatible 99*a89d385dSDan Murphy - reg 100*a89d385dSDan Murphy 101*a89d385dSDan Murphyexamples: 102*a89d385dSDan Murphy - | 103*a89d385dSDan Murphy #include <dt-bindings/leds/common.h> 104*a89d385dSDan Murphy 105*a89d385dSDan Murphy i2c { 106*a89d385dSDan Murphy #address-cells = <1>; 107*a89d385dSDan Murphy #size-cells = <0>; 108*a89d385dSDan Murphy 109*a89d385dSDan Murphy led-controller@32 { 110*a89d385dSDan Murphy #address-cells = <1>; 111*a89d385dSDan Murphy #size-cells = <0>; 112*a89d385dSDan Murphy compatible = "ti,lp8501"; 113*a89d385dSDan Murphy reg = <0x32>; 114*a89d385dSDan Murphy clock-mode = /bits/ 8 <2>; 115*a89d385dSDan Murphy pwr-sel = /bits/ 8 <3>; /* D1~9 connected to VOUT */ 116*a89d385dSDan Murphy 117*a89d385dSDan Murphy led@0 { 118*a89d385dSDan Murphy reg = <0>; 119*a89d385dSDan Murphy chan-name = "d1"; 120*a89d385dSDan Murphy led-cur = /bits/ 8 <0x14>; 121*a89d385dSDan Murphy max-cur = /bits/ 8 <0x20>; 122*a89d385dSDan Murphy }; 123*a89d385dSDan Murphy 124*a89d385dSDan Murphy led@1 { 125*a89d385dSDan Murphy reg = <1>; 126*a89d385dSDan Murphy chan-name = "d2"; 127*a89d385dSDan Murphy led-cur = /bits/ 8 <0x14>; 128*a89d385dSDan Murphy max-cur = /bits/ 8 <0x20>; 129*a89d385dSDan Murphy }; 130*a89d385dSDan Murphy 131*a89d385dSDan Murphy led@2 { 132*a89d385dSDan Murphy reg = <2>; 133*a89d385dSDan Murphy chan-name = "d3"; 134*a89d385dSDan Murphy led-cur = /bits/ 8 <0x14>; 135*a89d385dSDan Murphy max-cur = /bits/ 8 <0x20>; 136*a89d385dSDan Murphy }; 137*a89d385dSDan Murphy 138*a89d385dSDan Murphy led@3 { 139*a89d385dSDan Murphy reg = <3>; 140*a89d385dSDan Murphy chan-name = "d4"; 141*a89d385dSDan Murphy led-cur = /bits/ 8 <0x14>; 142*a89d385dSDan Murphy max-cur = /bits/ 8 <0x20>; 143*a89d385dSDan Murphy }; 144*a89d385dSDan Murphy 145*a89d385dSDan Murphy led@4 { 146*a89d385dSDan Murphy reg = <4>; 147*a89d385dSDan Murphy chan-name = "d5"; 148*a89d385dSDan Murphy led-cur = /bits/ 8 <0x14>; 149*a89d385dSDan Murphy max-cur = /bits/ 8 <0x20>; 150*a89d385dSDan Murphy }; 151*a89d385dSDan Murphy 152*a89d385dSDan Murphy led@5 { 153*a89d385dSDan Murphy reg = <5>; 154*a89d385dSDan Murphy chan-name = "d6"; 155*a89d385dSDan Murphy led-cur = /bits/ 8 <0x14>; 156*a89d385dSDan Murphy max-cur = /bits/ 8 <0x20>; 157*a89d385dSDan Murphy }; 158*a89d385dSDan Murphy 159*a89d385dSDan Murphy led@6 { 160*a89d385dSDan Murphy reg = <6>; 161*a89d385dSDan Murphy chan-name = "d7"; 162*a89d385dSDan Murphy led-cur = /bits/ 8 <0x14>; 163*a89d385dSDan Murphy max-cur = /bits/ 8 <0x20>; 164*a89d385dSDan Murphy }; 165*a89d385dSDan Murphy 166*a89d385dSDan Murphy led@7 { 167*a89d385dSDan Murphy reg = <7>; 168*a89d385dSDan Murphy chan-name = "d8"; 169*a89d385dSDan Murphy led-cur = /bits/ 8 <0x14>; 170*a89d385dSDan Murphy max-cur = /bits/ 8 <0x20>; 171*a89d385dSDan Murphy }; 172*a89d385dSDan Murphy 173*a89d385dSDan Murphy led@8 { 174*a89d385dSDan Murphy reg = <8>; 175*a89d385dSDan Murphy chan-name = "d9"; 176*a89d385dSDan Murphy led-cur = /bits/ 8 <0x14>; 177*a89d385dSDan Murphy max-cur = /bits/ 8 <0x20>; 178*a89d385dSDan Murphy }; 179*a89d385dSDan Murphy }; 180*a89d385dSDan Murphy 181*a89d385dSDan Murphy led-controller@33 { 182*a89d385dSDan Murphy #address-cells = <1>; 183*a89d385dSDan Murphy #size-cells = <0>; 184*a89d385dSDan Murphy compatible = "national,lp5523"; 185*a89d385dSDan Murphy reg = <0x33>; 186*a89d385dSDan Murphy clock-mode = /bits/ 8 <0>; 187*a89d385dSDan Murphy 188*a89d385dSDan Murphy multi-led@2 { 189*a89d385dSDan Murphy #address-cells = <1>; 190*a89d385dSDan Murphy #size-cells = <0>; 191*a89d385dSDan Murphy reg = <0x2>; 192*a89d385dSDan Murphy color = <LED_COLOR_ID_MULTI>; 193*a89d385dSDan Murphy function = LED_FUNCTION_STANDBY; 194*a89d385dSDan Murphy linux,default-trigger = "heartbeat"; 195*a89d385dSDan Murphy 196*a89d385dSDan Murphy led@0 { 197*a89d385dSDan Murphy led-cur = /bits/ 8 <50>; 198*a89d385dSDan Murphy max-cur = /bits/ 8 <100>; 199*a89d385dSDan Murphy reg = <0x0>; 200*a89d385dSDan Murphy color = <LED_COLOR_ID_GREEN>; 201*a89d385dSDan Murphy }; 202*a89d385dSDan Murphy 203*a89d385dSDan Murphy led@1 { 204*a89d385dSDan Murphy led-cur = /bits/ 8 <50>; 205*a89d385dSDan Murphy max-cur = /bits/ 8 <100>; 206*a89d385dSDan Murphy reg = <0x1>; 207*a89d385dSDan Murphy color = <LED_COLOR_ID_BLUE>; 208*a89d385dSDan Murphy }; 209*a89d385dSDan Murphy 210*a89d385dSDan Murphy led@6 { 211*a89d385dSDan Murphy led-cur = /bits/ 8 <50>; 212*a89d385dSDan Murphy max-cur = /bits/ 8 <100>; 213*a89d385dSDan Murphy reg = <0x6>; 214*a89d385dSDan Murphy color = <LED_COLOR_ID_RED>; 215*a89d385dSDan Murphy }; 216*a89d385dSDan Murphy }; 217*a89d385dSDan Murphy }; 218*a89d385dSDan Murphy }; 219*a89d385dSDan Murphy 220*a89d385dSDan Murphy... 221