linux-zen-desktop/Documentation/devicetree/bindings/leds/issi,is31fl319x.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>
i2c {
#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";
};
};
};
...