Re: [PATCH 1/2] dt-bindings: pwm-backlight: Add 'max-brightness' property
From: Matthias Kaehlcke
Date: Tue Jun 11 2019 - 18:16:25 EST
On Tue, Jun 11, 2019 at 10:02:23PM +0200, Jacek Anaszewski wrote:
> Hi Matthias,
> On 6/11/19 1:37 AM, Matthias Kaehlcke wrote:
> > Add an optional 'max-brightness' property, which is used to specify
> > the number of brightness levels (max-brightness + 1) when the node
> > has no 'brightness-levels' table.
> > Signed-off-by: Matthias Kaehlcke <mka@xxxxxxxxxxxx>
> > ---
> > .../devicetree/bindings/leds/backlight/pwm-backlight.txt | 3 +++
> > 1 file changed, 3 insertions(+)
> > diff --git a/Documentation/devicetree/bindings/leds/backlight/pwm-backlight.txt b/Documentation/devicetree/bindings/leds/backlight/pwm-backlight.txt
> > index 64fa2fbd98c9..98f4ba626054 100644
> > --- a/Documentation/devicetree/bindings/leds/backlight/pwm-backlight.txt
> > +++ b/Documentation/devicetree/bindings/leds/backlight/pwm-backlight.txt
> > @@ -27,6 +27,9 @@ Optional properties:
> > resolution pwm duty cycle can be used without
> > having to list out every possible value in the
> > brightness-level array.
> > + - max-brightness: Maximum brightness value. Used to specify the number of
> > + brightness levels (max-brightness + 1) when the node
> > + has no 'brightness-levels' table.
> In the LED subsystem we have led-max-microamp property which seems to
> better describe hardware capabilities. It says just: this is the current
> level the LED can withstand. max-brightness does not implicitly convey
> this kind of information.
> Why the need for the property at all? If for the reasons other than
> hardware capabilities than it should be more likely handled
> by userspace.
The driver needs to know how many brightness levels to expose to
userspace. It currently uses a heuristic for that which is broken:
In any case it seems the discussion is going into the direction of
fixing the heuristic (apparently using the period as an indicator of
the PWM resolution has more merit than I was initially aware of), if
that moves forward the property wouldn't be needed.