1*4882a593Smuzhiyun# SPDX-License-Identifier: GPL-2.0-only 2*4882a593Smuzhiyun%YAML 1.2 3*4882a593Smuzhiyun--- 4*4882a593Smuzhiyun$id: http://devicetree.org/schemas/leds/backlight/pwm-backlight.yaml# 5*4882a593Smuzhiyun$schema: http://devicetree.org/meta-schemas/core.yaml# 6*4882a593Smuzhiyun 7*4882a593Smuzhiyuntitle: pwm-backlight bindings 8*4882a593Smuzhiyun 9*4882a593Smuzhiyunmaintainers: 10*4882a593Smuzhiyun - Lee Jones <lee.jones@linaro.org> 11*4882a593Smuzhiyun - Daniel Thompson <daniel.thompson@linaro.org> 12*4882a593Smuzhiyun - Jingoo Han <jingoohan1@gmail.com> 13*4882a593Smuzhiyun 14*4882a593Smuzhiyunproperties: 15*4882a593Smuzhiyun compatible: 16*4882a593Smuzhiyun const: pwm-backlight 17*4882a593Smuzhiyun 18*4882a593Smuzhiyun pwms: 19*4882a593Smuzhiyun maxItems: 1 20*4882a593Smuzhiyun 21*4882a593Smuzhiyun pwm-names: true 22*4882a593Smuzhiyun 23*4882a593Smuzhiyun power-supply: 24*4882a593Smuzhiyun description: regulator for supply voltage 25*4882a593Smuzhiyun 26*4882a593Smuzhiyun enable-gpios: 27*4882a593Smuzhiyun description: 28*4882a593Smuzhiyun Contains a single GPIO specifier for the GPIO which enables and disables 29*4882a593Smuzhiyun the backlight. 30*4882a593Smuzhiyun maxItems: 1 31*4882a593Smuzhiyun 32*4882a593Smuzhiyun post-pwm-on-delay-ms: 33*4882a593Smuzhiyun description: 34*4882a593Smuzhiyun Delay in ms between setting an initial (non-zero) PWM and enabling the 35*4882a593Smuzhiyun backlight using GPIO. 36*4882a593Smuzhiyun 37*4882a593Smuzhiyun pwm-off-delay-ms: 38*4882a593Smuzhiyun description: 39*4882a593Smuzhiyun Delay in ms between disabling the backlight using GPIO and setting PWM 40*4882a593Smuzhiyun value to 0. 41*4882a593Smuzhiyun 42*4882a593Smuzhiyun brightness-levels: 43*4882a593Smuzhiyun description: 44*4882a593Smuzhiyun Array of distinct brightness levels. Typically these are in the range 45*4882a593Smuzhiyun from 0 to 255, but any range starting at 0 will do. The actual brightness 46*4882a593Smuzhiyun level (PWM duty cycle) will be interpolated from these values. 0 means a 47*4882a593Smuzhiyun 0% duty cycle (darkest/off), while the last value in the array represents 48*4882a593Smuzhiyun a 100% duty cycle (brightest). 49*4882a593Smuzhiyun $ref: /schemas/types.yaml#/definitions/uint32-array 50*4882a593Smuzhiyun 51*4882a593Smuzhiyun default-brightness-level: 52*4882a593Smuzhiyun description: 53*4882a593Smuzhiyun The default brightness level (index into the array defined by the 54*4882a593Smuzhiyun "brightness-levels" property). 55*4882a593Smuzhiyun $ref: /schemas/types.yaml#/definitions/uint32 56*4882a593Smuzhiyun 57*4882a593Smuzhiyun num-interpolated-steps: 58*4882a593Smuzhiyun description: 59*4882a593Smuzhiyun Number of interpolated steps between each value of brightness-levels 60*4882a593Smuzhiyun table. This way a high resolution pwm duty cycle can be used without 61*4882a593Smuzhiyun having to list out every possible value in the brightness-level array. 62*4882a593Smuzhiyun $ref: /schemas/types.yaml#/definitions/uint32 63*4882a593Smuzhiyun 64*4882a593Smuzhiyundependencies: 65*4882a593Smuzhiyun default-brightness-level: [brightness-levels] 66*4882a593Smuzhiyun num-interpolated-steps: [brightness-levels] 67*4882a593Smuzhiyun 68*4882a593Smuzhiyunrequired: 69*4882a593Smuzhiyun - compatible 70*4882a593Smuzhiyun - pwms 71*4882a593Smuzhiyun - power-supply 72*4882a593Smuzhiyun 73*4882a593SmuzhiyunadditionalProperties: false 74*4882a593Smuzhiyun 75*4882a593Smuzhiyunexamples: 76*4882a593Smuzhiyun - | 77*4882a593Smuzhiyun backlight { 78*4882a593Smuzhiyun compatible = "pwm-backlight"; 79*4882a593Smuzhiyun pwms = <&pwm 0 5000000>; 80*4882a593Smuzhiyun 81*4882a593Smuzhiyun brightness-levels = <0 4 8 16 32 64 128 255>; 82*4882a593Smuzhiyun default-brightness-level = <6>; 83*4882a593Smuzhiyun 84*4882a593Smuzhiyun power-supply = <&vdd_bl_reg>; 85*4882a593Smuzhiyun enable-gpios = <&gpio 58 0>; 86*4882a593Smuzhiyun post-pwm-on-delay-ms = <10>; 87*4882a593Smuzhiyun pwm-off-delay-ms = <10>; 88*4882a593Smuzhiyun }; 89*4882a593Smuzhiyun 90*4882a593Smuzhiyun - | 91*4882a593Smuzhiyun // Example using num-interpolation-steps: 92*4882a593Smuzhiyun backlight { 93*4882a593Smuzhiyun compatible = "pwm-backlight"; 94*4882a593Smuzhiyun pwms = <&pwm 0 5000000>; 95*4882a593Smuzhiyun 96*4882a593Smuzhiyun brightness-levels = <0 2048 4096 8192 16384 65535>; 97*4882a593Smuzhiyun num-interpolated-steps = <2048>; 98*4882a593Smuzhiyun default-brightness-level = <4096>; 99*4882a593Smuzhiyun 100*4882a593Smuzhiyun power-supply = <&vdd_bl_reg>; 101*4882a593Smuzhiyun enable-gpios = <&gpio 58 0>; 102*4882a593Smuzhiyun }; 103*4882a593Smuzhiyun 104*4882a593Smuzhiyun... 105