Re: [PATCH] drm/i915: expose a fixed brightness range to userspace

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



> -----Original Message-----
> From: Stéphane Marchesin [mailto:stephane.marchesin@xxxxxxxxx]
> Sent: Tuesday, November 18, 2014 3:53 PM
> To: Eoff, Ullysses A
> Cc: Jani Nikula; Jesse Barnes; intel-gfx@xxxxxxxxxxxxxxxxxxxxx
> Subject: Re:  [PATCH] drm/i915: expose a fixed brightness range to userspace
> 
> On Tue, Nov 18, 2014 at 3:18 PM, Eoff, Ullysses A
> <ullysses.a.eoff@xxxxxxxxx> wrote:
> > Thanks Jesse for the ack.
> >
> > Unfortunately I just learned from Stéphane that there
> > are certain devices which only support 256 levels, so this
> > patch would do us no good at solving the real issue for
> > such devices.
> >
> > Why can't we just use a dynamic 1:1 mapping as was
> > suggested before?  I would vote for that instead.
> >
> 
> Right, from my (consumer's) perspective, a 1:1 mapping is simpler. But
> the confusing part for me is that (as far as I can see) the current
> mapping should be 1:1 (because the user and hw ranges are the same),
> even though it goes through the scale logic. Is the scale() function
> maybe not the identity? If it isn't, maybe we just need to make it
> so...
> 

Yes, if the user and hw ranges are the same, then there will be a
1:1 mapping, currently, and no issue.  It's the other case where
the hw range is smaller than the user range we end up with
brightness != actual_brightness in sysfs.  The scale logic rounds
into discrete values of the ranges where multiple user values can
scale to the same hw value in this case.  Right now, user range is
[0..max hw] and hw range is [min_hw..max_hw].  If min_hw > 0,
then we encounter the problem.  The proposal is to set the user
range to [0..(hw_max - hw_min)].

--U. Artie

> Stéphane
> 
> 
> > ----
> > U. Artie
> >
> >> -----Original Message-----
> >> From: Jesse Barnes [mailto:jbarnes@xxxxxxxxxxxxxxxx]
> >> Sent: Tuesday, November 18, 2014 9:23 AM
> >> To: Eoff, Ullysses A
> >> Cc: intel-gfx@xxxxxxxxxxxxxxxxxxxxx; Jani Nikula
> >> Subject: Re:  [PATCH] drm/i915: expose a fixed brightness range to userspace
> >>
> >> On Tue, 11 Nov 2014 12:30:38 -0800
> >> "U. Artie Eoff" <ullysses.a.eoff@xxxxxxxxx> wrote:
> >>
> >> > A userspace brightness range that is larger than the hardware
> >> > brightness range does not have a 1:1 mapping and can result
> >> > in brightness != actual_brightness for some values.
> >> >
> >> > Expose a fixed brightness range of [0..1000] to userspace so
> >> > that all values can map 1:1 into the hardware brightness
> >> > range.  This would assume that the hardware range is always
> >> > greater than 1000, otherwise we're right back to the original
> >> > issue.
> >> >
> >> > This patch is based on Jani Nikula's proposed change in the
> >> > referenced ML thread, except use the range [0..1000] instead;
> >> > which was recommended by Jesse Barnes for smoother backlight
> >> > transitions.
> >> >
> >> > Reference: http://lists.freedesktop.org/archives/intel-gfx/2014-November/055221.html
> >> > Signed-off-by: U. Artie Eoff <ullysses.a.eoff@xxxxxxxxx>
> >> > ---
> >> >  drivers/gpu/drm/i915/intel_panel.c | 2 +-
> >> >  1 file changed, 1 insertion(+), 1 deletion(-)
> >> >
> >> > diff --git a/drivers/gpu/drm/i915/intel_panel.c b/drivers/gpu/drm/i915/intel_panel.c
> >> > index 4d63839..f74f5f2 100644
> >> > --- a/drivers/gpu/drm/i915/intel_panel.c
> >> > +++ b/drivers/gpu/drm/i915/intel_panel.c
> >> > @@ -1057,7 +1057,7 @@ static int intel_backlight_device_register(struct intel_connector *connector)
> >> >      * Note: Everything should work even if the backlight device max
> >> >      * presented to the userspace is arbitrarily chosen.
> >> >      */
> >> > -   props.max_brightness = panel->backlight.max;
> >> > +   props.max_brightness = 1000;
> >> >     props.brightness = scale_hw_to_user(connector,
> >> >                                         panel->backlight.level,
> >> >                                         props.max_brightness);
> >>
> >> Yeah looks ok to me.  I guess Jani has to ack it too.
> >>
> >> Reviewed-by: Jesse Barnes <jbarnes@xxxxxxxxxxxxxxxx>
> >>
> >> --
> >> Jesse Barnes, Intel Open Source Technology Center
_______________________________________________
Intel-gfx mailing list
Intel-gfx@xxxxxxxxxxxxxxxxxxxxx
http://lists.freedesktop.org/mailman/listinfo/intel-gfx





[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]
  Powered by Linux