forked from Qortal/Brooklyn
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
228 lines
5.7 KiB
228 lines
5.7 KiB
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) |
|
%YAML 1.2 |
|
--- |
|
$id: http://devicetree.org/schemas/leds/leds-lp55xx.yaml# |
|
$schema: http://devicetree.org/meta-schemas/core.yaml# |
|
|
|
title: TI/National Semiconductor LP55xx and LP8501 LED Drivers |
|
|
|
maintainers: |
|
- Jacek Anaszewski <[email protected]> |
|
- Pavel Machek <[email protected]> |
|
|
|
description: | |
|
Bindings for the TI/National Semiconductor LP55xx and LP8501 multi channel |
|
LED Drivers. |
|
|
|
For more product information please see the link below: |
|
https://www.ti.com/lit/gpn/lp5521 |
|
https://www.ti.com/lit/gpn/lp5523 |
|
https://www.ti.com/lit/gpn/lp55231 |
|
https://www.ti.com/lit/gpn/lp5562 |
|
https://www.ti.com/lit/gpn/lp8501 |
|
|
|
properties: |
|
compatible: |
|
enum: |
|
- national,lp5521 |
|
- national,lp5523 |
|
- ti,lp55231 |
|
- ti,lp5562 |
|
- ti,lp8501 |
|
|
|
reg: |
|
maxItems: 1 |
|
description: I2C slave address |
|
|
|
clock-mode: |
|
$ref: /schemas/types.yaml#/definitions/uint8 |
|
description: | |
|
Input clock mode |
|
enum: |
|
- 0 # automode |
|
- 1 # internal |
|
- 2 # external |
|
|
|
enable-gpio: |
|
maxItems: 1 |
|
description: | |
|
GPIO attached to the chip's enable pin |
|
|
|
pwr-sel: |
|
$ref: /schemas/types.yaml#/definitions/uint8 |
|
description: | |
|
LP8501 specific property. Power selection for output channels. |
|
enum: |
|
- 0 # D1~9 are connected to VDD |
|
- 1 # D1~6 with VDD, D7~9 with VOUT |
|
- 2 # D1~6 with VOUT, D7~9 with VDD |
|
- 3 # D1~9 are connected to VOUT |
|
|
|
'#address-cells': |
|
const: 1 |
|
|
|
'#size-cells': |
|
const: 0 |
|
|
|
patternProperties: |
|
"(^led@[0-9a-f]$|led)": |
|
type: object |
|
$ref: common.yaml# |
|
properties: |
|
led-cur: |
|
$ref: /schemas/types.yaml#/definitions/uint8 |
|
description: | |
|
Current setting at each LED channel (mA x10, 0 if LED is not connected) |
|
minimum: 0 |
|
maximum: 255 |
|
|
|
max-cur: |
|
$ref: /schemas/types.yaml#/definitions/uint8 |
|
description: Maximun current at each LED channel. |
|
|
|
reg: |
|
description: | |
|
Output channel for the LED. This is zero based channel identifier and |
|
the data sheet is a one based channel identifier. |
|
reg value to output to LED output number |
|
enum: |
|
- 0 # LED output D1 |
|
- 1 # LED output D2 |
|
- 2 # LED output D3 |
|
- 3 # LED output D4 |
|
- 4 # LED output D5 |
|
- 5 # LED output D6 |
|
- 6 # LED output D7 |
|
- 7 # LED output D8 |
|
- 8 # LED output D9 |
|
|
|
chan-name: |
|
$ref: /schemas/types.yaml#/definitions/string |
|
description: name of channel |
|
|
|
required: |
|
- compatible |
|
- reg |
|
|
|
additionalProperties: false |
|
|
|
examples: |
|
- | |
|
#include <dt-bindings/leds/common.h> |
|
|
|
i2c { |
|
#address-cells = <1>; |
|
#size-cells = <0>; |
|
|
|
led-controller@32 { |
|
#address-cells = <1>; |
|
#size-cells = <0>; |
|
compatible = "ti,lp8501"; |
|
reg = <0x32>; |
|
clock-mode = /bits/ 8 <2>; |
|
pwr-sel = /bits/ 8 <3>; /* D1~9 connected to VOUT */ |
|
|
|
led@0 { |
|
reg = <0>; |
|
chan-name = "d1"; |
|
led-cur = /bits/ 8 <0x14>; |
|
max-cur = /bits/ 8 <0x20>; |
|
}; |
|
|
|
led@1 { |
|
reg = <1>; |
|
chan-name = "d2"; |
|
led-cur = /bits/ 8 <0x14>; |
|
max-cur = /bits/ 8 <0x20>; |
|
}; |
|
|
|
led@2 { |
|
reg = <2>; |
|
chan-name = "d3"; |
|
led-cur = /bits/ 8 <0x14>; |
|
max-cur = /bits/ 8 <0x20>; |
|
}; |
|
|
|
led@3 { |
|
reg = <3>; |
|
chan-name = "d4"; |
|
led-cur = /bits/ 8 <0x14>; |
|
max-cur = /bits/ 8 <0x20>; |
|
}; |
|
|
|
led@4 { |
|
reg = <4>; |
|
chan-name = "d5"; |
|
led-cur = /bits/ 8 <0x14>; |
|
max-cur = /bits/ 8 <0x20>; |
|
}; |
|
|
|
led@5 { |
|
reg = <5>; |
|
chan-name = "d6"; |
|
led-cur = /bits/ 8 <0x14>; |
|
max-cur = /bits/ 8 <0x20>; |
|
}; |
|
|
|
led@6 { |
|
reg = <6>; |
|
chan-name = "d7"; |
|
led-cur = /bits/ 8 <0x14>; |
|
max-cur = /bits/ 8 <0x20>; |
|
}; |
|
|
|
led@7 { |
|
reg = <7>; |
|
chan-name = "d8"; |
|
led-cur = /bits/ 8 <0x14>; |
|
max-cur = /bits/ 8 <0x20>; |
|
}; |
|
|
|
led@8 { |
|
reg = <8>; |
|
chan-name = "d9"; |
|
led-cur = /bits/ 8 <0x14>; |
|
max-cur = /bits/ 8 <0x20>; |
|
}; |
|
}; |
|
|
|
led-controller@33 { |
|
#address-cells = <1>; |
|
#size-cells = <0>; |
|
compatible = "national,lp5523"; |
|
reg = <0x33>; |
|
clock-mode = /bits/ 8 <0>; |
|
|
|
multi-led@2 { |
|
#address-cells = <1>; |
|
#size-cells = <0>; |
|
reg = <0x2>; |
|
color = <LED_COLOR_ID_RGB>; |
|
function = LED_FUNCTION_STANDBY; |
|
linux,default-trigger = "heartbeat"; |
|
|
|
led@0 { |
|
led-cur = /bits/ 8 <50>; |
|
max-cur = /bits/ 8 <100>; |
|
reg = <0x0>; |
|
color = <LED_COLOR_ID_GREEN>; |
|
}; |
|
|
|
led@1 { |
|
led-cur = /bits/ 8 <50>; |
|
max-cur = /bits/ 8 <100>; |
|
reg = <0x1>; |
|
color = <LED_COLOR_ID_BLUE>; |
|
}; |
|
|
|
led@6 { |
|
led-cur = /bits/ 8 <50>; |
|
max-cur = /bits/ 8 <100>; |
|
reg = <0x6>; |
|
color = <LED_COLOR_ID_RED>; |
|
}; |
|
}; |
|
}; |
|
}; |
|
|
|
...
|
|
|