[PATCH 1/2] dt-bindings: leds: backlight: Add Awinic AW99703 backlight
flat view
HOTtoday
From: Luka Panio <hidden>
Date: 2026-10-16 16:29:22
Also in:
linux-devicetree, linux-leds, lkml
Subsystem:
led subsystem, open firmware and flattened device tree bindings, the rest · Maintainers:
Lee Jones, Pavel Machek, Rob Herring, Krzysztof Kozlowski, Conor Dooley, Linus Torvalds
The Awinic AW99703 is a 3-string WLED driver converter with an integrated boost converter and 11-bit brightness control over I2C, optionally combined with a PWM input. Signed-off-by: Luka Panio <redacted> --- .../leds/backlight/awinic,aw99703.yaml | 131 ++++++++++++++++++ 1 file changed, 131 insertions(+) create mode 100644 Documentation/devicetree/bindings/leds/backlight/awinic,aw99703.yaml
diff --git a/Documentation/devicetree/bindings/leds/backlight/awinic,aw99703.yaml b/Documentation/devicetree/bindings/leds/backlight/awinic,aw99703.yaml
new file mode 100644
index 000000000000..62e8cc3118f2
--- /dev/null
+++ b/Documentation/devicetree/bindings/leds/backlight/awinic,aw99703.yaml@@ -0,0 +1,131 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/leds/backlight/awinic,aw99703.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Awinic AW99703 WLED Backlight Driver + +maintainers: + - Luka Panio <lukapanio@gmail.com> + +description: + The AW99703 is a 3-string WLED driver with an integrated boost converter + and 11-bit I2C (optionally PWM) brightness control. + +allOf: + - $ref: common.yaml# + +properties: + compatible: + const: awinic,aw99703 + + reg: + maxItems: 1 + + enable-gpios: + description: GPIO connected to the HWEN pin. + maxItems: 1 + + awinic,led-strings: + description: Number of enabled LED strings, starting with CH1. + $ref: /schemas/types.yaml#/definitions/uint32 + minimum: 1 + maximum: 3 + default: 3 + + awinic,iled-max-microamp: + description: + Full-scale current of each LED string, reached at the maximum + brightness code (and 100% PWM duty cycle if PWM dimming is used). + minimum: 4800 + maximum: 29600 + multipleOf: 800 + default: 20000 + + awinic,ramp-on-time-us: + description: Current sink ramp-up time when leaving standby. + enum: [512, 1000, 2000, 4000, 8000, 16000, 32000, 64000, 128000, + 256000, 512000, 1024000, 2048000, 4096000, 8192000, 16384000] + default: 8000 + + awinic,ramp-off-time-us: + description: Current sink ramp-down time when entering standby. + enum: [512, 1000, 2000, 4000, 8000, 16000, 32000, 64000, 128000, + 256000, 512000, 1024000, 2048000, 4096000, 8192000, 16384000] + default: 8000 + + awinic,pwm-trans-time-ms: + description: + Transition time between brightness levels set by the PWM input, + for a change over the full duty cycle range. + enum: [2, 4, 8, 16, 32, 64, 128, 256] + default: 2 + + awinic,i2c-trans-time-ms: + description: + Fixed transition time between brightness levels set over I2C, + independent of the size of the change. When absent the brightness + ramps with a fixed slope of 1 us per brightness code instead. + enum: [128, 192, 256, 320, 384, 448, 512, 576, 640, 768, 1024, 1280, + 1536, 2560, 4096] + + awinic,ovp-microvolt: + description: Boost over-voltage protection threshold. + enum: [17500000, 24000000, 31000000, 38000000, 41500000] + default: 38000000 + + awinic,ocp-microamp: + description: Boost over-current protection threshold. + enum: [900000, 1800000, 2700000, 3400000] + default: 2700000 + + awinic,sw-freq-hz: + description: Boost switching frequency. + enum: [500000, 1000000] + default: 1000000 + + awinic,inductor-nanohenry: + description: Boost inductor value. + $ref: /schemas/types.yaml#/definitions/uint32 + enum: [4700, 10000] + default: 4700 + + awinic,pwm-input: + description: Combine the PWM input pin with the I2C brightness. + type: boolean + + awinic,exponential-map: + description: Use the exponential brightness curve instead of linear. + type: boolean + + default-brightness: + maximum: 2047 + + max-brightness: + maximum: 2047 + +required: + - compatible + - reg + +unevaluatedProperties: false + +examples: + - | + #include <dt-bindings/gpio/gpio.h> + + i2c { + #address-cells = <1>; + #size-cells = <0>; + + backlight@36 { + compatible = "awinic,aw99703"; + reg = <0x36>; + enable-gpios = <&gpio 7 GPIO_ACTIVE_HIGH>; + awinic,led-strings = <2>; + awinic,iled-max-microamp = <20000>; + awinic,ocp-microamp = <3400000>; + awinic,inductor-nanohenry = <10000>; + }; + };
--
2.55.0