# SPDX-License-Identifier: GPL-2.0-only %YAML 1.2 --- $id: http://devicetree.org/schemas/leds/backlight/pwm-backlight.yaml# $schema: http://devicetree.org/meta-schemas/core.yaml# title: pwm-backlight maintainers: - Lee Jones <lee@kernel.org> - Daniel Thompson <daniel.thompson@linaro.org> - Jingoo Han <jingoohan1@gmail.com> properties: compatible: const: pwm-backlight pwms: maxItems: 1 pwm-names: true power-supply: description: regulator for supply voltage enable-gpios: description: Contains a single GPIO specifier for the GPIO which enables and disables the backlight. maxItems: 1 post-pwm-on-delay-ms: description: Delay in ms between setting an initial (non-zero) PWM and enabling the backlight using GPIO. pwm-off-delay-ms: description: Delay in ms between disabling the backlight using GPIO and setting PWM value to 0. brightness-levels: description: Array of distinct brightness levels. Typically these are in the range from 0 to 255, but any range starting at 0 will do. The actual brightness level (PWM duty cycle) will be interpolated from these values. 0 means a 0% duty cycle (darkest/off), while the last value in the array represents a 100% duty cycle (brightest). $ref: /schemas/types.yaml#/definitions/uint32-array default-brightness-level: description: The default brightness level (index into the array defined by the "brightness-levels" property). $ref: /schemas/types.yaml#/definitions/uint32 num-interpolated-steps: description: Number of interpolated steps between each value of brightness-levels table. This way a high resolution pwm duty cycle can be used without having to list out every possible value in the brightness-level array. $ref: /schemas/types.yaml#/definitions/uint32 dependencies: default-brightness-level: [brightness-levels] num-interpolated-steps: [brightness-levels] required: - compatible - pwms additionalProperties: false examples: - | backlight { compatible = "pwm-backlight"; pwms = <&pwm 0 5000000>; brightness-levels = <0 4 8 16 32 64 128 255>; default-brightness-level = <6>; power-supply = <&vdd_bl_reg>; enable-gpios = <&gpio 58 0>; post-pwm-on-delay-ms = <10>; pwm-off-delay-ms = <10>; }; - | // Example using num-interpolation-steps: backlight { compatible = "pwm-backlight"; pwms = <&pwm 0 5000000>; brightness-levels = <0 2048 4096 8192 16384 65535>; num-interpolated-steps = <2048>; default-brightness-level = <4096>; power-supply = <&vdd_bl_reg>; enable-gpios = <&gpio 58 0>; }; ...