195 lines
4.5 KiB
YAML
195 lines
4.5 KiB
YAML
|
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
|
||
|
%YAML 1.2
|
||
|
---
|
||
|
$id: http://devicetree.org/schemas/leds/issi,is31fl319x.yaml#
|
||
|
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||
|
|
||
|
title: ISSI LED Controllers for IS31FL319{0,1,3,6,9}
|
||
|
|
||
|
maintainers:
|
||
|
- Vincent Knecht <vincent.knecht@mailoo.org>
|
||
|
|
||
|
description: |
|
||
|
The IS31FL319X are LED controllers with I2C interface.
|
||
|
Previously known as Si-En SN319{0,1,3,6,9}.
|
||
|
|
||
|
For more product information please see the links below:
|
||
|
https://lumissil.com/assets/pdf/core/IS31FL3190_DS.pdf
|
||
|
https://lumissil.com/assets/pdf/core/IS31FL3191_DS.pdf
|
||
|
https://lumissil.com/assets/pdf/core/IS31FL3193_DS.pdf
|
||
|
https://lumissil.com/assets/pdf/core/IS31FL3196_DS.pdf
|
||
|
https://lumissil.com/assets/pdf/core/IS31FL3199_DS.pdf
|
||
|
|
||
|
properties:
|
||
|
compatible:
|
||
|
enum:
|
||
|
- issi,is31fl3190
|
||
|
- issi,is31fl3191
|
||
|
- issi,is31fl3193
|
||
|
- issi,is31fl3196
|
||
|
- issi,is31fl3199
|
||
|
- si-en,sn3190
|
||
|
- si-en,sn3191
|
||
|
- si-en,sn3193
|
||
|
- si-en,sn3196
|
||
|
- si-en,sn3199
|
||
|
|
||
|
reg:
|
||
|
maxItems: 1
|
||
|
|
||
|
shutdown-gpios:
|
||
|
maxItems: 1
|
||
|
description: GPIO attached to the SDB pin.
|
||
|
|
||
|
audio-gain-db:
|
||
|
$ref: /schemas/types.yaml#/definitions/uint32
|
||
|
default: 0
|
||
|
description: Audio gain selection for external analog modulation input.
|
||
|
enum: [0, 3, 6, 9, 12, 15, 18, 21]
|
||
|
|
||
|
"#address-cells":
|
||
|
const: 1
|
||
|
|
||
|
"#size-cells":
|
||
|
const: 0
|
||
|
|
||
|
patternProperties:
|
||
|
"^led@[1-9]$":
|
||
|
type: object
|
||
|
$ref: common.yaml#
|
||
|
unevaluatedProperties: false
|
||
|
|
||
|
properties:
|
||
|
reg:
|
||
|
description: Index of the LED.
|
||
|
minimum: 1
|
||
|
maximum: 9
|
||
|
|
||
|
led-max-microamp:
|
||
|
description:
|
||
|
Note that a driver will take the lowest of all LED limits
|
||
|
since the chip has a single global setting. The lowest value
|
||
|
will be chosen due to the PWM specificity, where lower
|
||
|
brightness is achieved by reducing the duty-cycle of pulses
|
||
|
and not the current, which will always have its peak value
|
||
|
equal to led-max-microamp.
|
||
|
|
||
|
allOf:
|
||
|
- if:
|
||
|
properties:
|
||
|
compatible:
|
||
|
contains:
|
||
|
enum:
|
||
|
- issi,is31fl3190
|
||
|
- issi,is31fl3191
|
||
|
- issi,is31fl3193
|
||
|
- si-en,sn3190
|
||
|
- si-en,sn3191
|
||
|
- si-en,sn3193
|
||
|
then:
|
||
|
properties:
|
||
|
reg:
|
||
|
enum: [0x68, 0x69, 0x6a, 0x6b]
|
||
|
|
||
|
audio-gain-db: false
|
||
|
|
||
|
patternProperties:
|
||
|
"^led@[1-9]$":
|
||
|
properties:
|
||
|
led-max-microamp:
|
||
|
default: 42000
|
||
|
enum: [5000, 10000, 17500, 30000, 42000]
|
||
|
else:
|
||
|
properties:
|
||
|
reg:
|
||
|
enum: [0x64, 0x65, 0x66, 0x67]
|
||
|
|
||
|
patternProperties:
|
||
|
"^led@[1-9]$":
|
||
|
properties:
|
||
|
led-max-microamp:
|
||
|
default: 20000
|
||
|
enum: [5000, 10000, 15000, 20000, 25000, 30000, 35000, 40000]
|
||
|
- if:
|
||
|
properties:
|
||
|
compatible:
|
||
|
contains:
|
||
|
enum:
|
||
|
- issi,is31fl3190
|
||
|
- issi,is31fl3191
|
||
|
- si-en,sn3190
|
||
|
- si-en,sn3191
|
||
|
then:
|
||
|
patternProperties:
|
||
|
"^led@[1-9]$":
|
||
|
properties:
|
||
|
reg:
|
||
|
maximum: 1
|
||
|
- if:
|
||
|
properties:
|
||
|
compatible:
|
||
|
contains:
|
||
|
enum:
|
||
|
- issi,is31fl3193
|
||
|
- si-en,sn3193
|
||
|
then:
|
||
|
patternProperties:
|
||
|
"^led@[1-9]$":
|
||
|
properties:
|
||
|
reg:
|
||
|
maximum: 3
|
||
|
- if:
|
||
|
properties:
|
||
|
compatible:
|
||
|
contains:
|
||
|
enum:
|
||
|
- issi,is31fl3196
|
||
|
- si-en,sn3196
|
||
|
then:
|
||
|
patternProperties:
|
||
|
"^led@[1-9]$":
|
||
|
properties:
|
||
|
reg:
|
||
|
maximum: 6
|
||
|
|
||
|
required:
|
||
|
- compatible
|
||
|
- reg
|
||
|
- "#address-cells"
|
||
|
- "#size-cells"
|
||
|
|
||
|
additionalProperties: false
|
||
|
|
||
|
examples:
|
||
|
- |
|
||
|
#include <dt-bindings/gpio/gpio.h>
|
||
|
#include <dt-bindings/leds/common.h>
|
||
|
|
||
|
i2c0 {
|
||
|
#address-cells = <1>;
|
||
|
#size-cells = <0>;
|
||
|
|
||
|
led-controller@65 {
|
||
|
compatible = "issi,is31fl3196";
|
||
|
reg = <0x65>;
|
||
|
#address-cells = <1>;
|
||
|
#size-cells = <0>;
|
||
|
|
||
|
shutdown-gpios = <&gpio0 11 GPIO_ACTIVE_HIGH>;
|
||
|
|
||
|
led@1 {
|
||
|
reg = <1>;
|
||
|
label = "red:aux";
|
||
|
led-max-microamp = <10000>;
|
||
|
};
|
||
|
|
||
|
led@5 {
|
||
|
reg = <5>;
|
||
|
label = "green:power";
|
||
|
linux,default-trigger = "default-on";
|
||
|
};
|
||
|
};
|
||
|
};
|
||
|
...
|
||
|
|