On Fri, Jan 19, 2018 at 02:52:49PM -0600, Rob Herring wrote:
> On Wed, Jan 10, 2018 at 11:30:44PM +0100, Enric Balletbo i Serra wrote:
> > The num-interpolated-steps property specifies the number of
> > interpolated steps between each value of brightness-level table. This is
> > useful for high resolution PWMs to not have to list out every possible
> > value in the brightness-level array.
> > 
> > Signed-off-by: Enric Balletbo i Serra <enric.balle...@collabora.com>
> > ---
> >  .../bindings/leds/backlight/pwm-backlight.txt       | 21 
> > +++++++++++++++++++++
> >  1 file changed, 21 insertions(+)
> > 
> > diff --git 
> > a/Documentation/devicetree/bindings/leds/backlight/pwm-backlight.txt 
> > b/Documentation/devicetree/bindings/leds/backlight/pwm-backlight.txt
> > index 310810906613..605432c910c5 100644
> > --- a/Documentation/devicetree/bindings/leds/backlight/pwm-backlight.txt
> > +++ b/Documentation/devicetree/bindings/leds/backlight/pwm-backlight.txt
> > @@ -21,6 +21,11 @@ Optional properties:
> >                            and enabling the backlight using GPIO.
> >    - pwm-off-delay-ms: Delay in ms between disabling the backlight using 
> > GPIO
> >                        and setting PWM value to 0.
> > +  - num-interpolated-steps: 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.
> >  
> >  [0]: Documentation/devicetree/bindings/pwm/pwm.txt
> >  [1]: Documentation/devicetree/bindings/gpio/gpio.txt
> > @@ -39,3 +44,19 @@ Example:
> >             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 65535>;
> > +           num-interpolated-steps = <4096>;
> 
> How does this make sense with only 2 defined levels other than having 
> fewer steps? I thought the purpose of this was to have a piecewise 
> linear curve. 

It's not wrong as such, this is how a device with a linear (or nearly
linear) response could be compactly described.

Nevertheless I agree!  An example with a small but realistic curve 
would be better... we know that copy 'n paste exists so I'd rather 
see a simple curve than no curve.


Daniel.


> > +           default-brightness-level = <6>;
> 
> Aren't valid values 0, 16, 32, 48, etc.?
> 
> Rob

Reply via email to