Re: [PATCH] i915: Quirk out disconnected backlight

Chris Wilson
2012-09-14T13:33:44Z

On Fri, 14 Sep 2012 14:12:19 +0100, David Woodhouse <dwmw2@infradead.org> wrote:
> On Fri, 2012-09-14 at 14:09 +0100, Grant Likely wrote:
> > On Fri, Sep 14, 2012 at 2:01 PM, Chris Wilson <chris@chris-wilson.co.uk> wrote:
> > > On Fri, 14 Sep 2012 13:57:06 +0100, Grant Likely <grant.likely@secretlab.ca> wrote:
> > >> Some platforms (for instance MacbookPros) have custom backlight drivers
> > >> and don't use the integrated i915 backlight control. This patch adds a
> > >> quirk to disable registering the intel backlight when unused on a
> > >> platform.
> > >>
> > >> Tested on MacbookPro8,3. Without this patch both the intel_backlight and
> > >> gmux_backlight devices get registered and userspace doesn't know which
> > >> it should use.
> > >
> > > Userspace is informed throught the backlight/type property.
> >
> > Perhaps, but userspace (Ubuntu) isn't doing anything with it, and it
> > still remains that it makes no sense whatsoever to register a
> > backlight device that doesn't exist.
>
> Indeed. Userspace (well, gnome-settings-daemon) will use the backlight
> provided by X, in preference to anything it finds
> in /sys/class/backlight. So if the Intel one is present (and thus
> exposed via X) then userspace will never bother with comparing types and
> choosing the sanest backlight to use.
>
> See https://bugzilla.redhat.com/show_bug.cgi?id=752595

And if you look at that bug, it starts off by complaining that a
workaround is required in order to use the intel_backlight. By the time
you hit the issue with apple_gmux, the upstream ddx already carried the
fix for a couple of months and even had it in a release. And more
recently we took a patch to allow the user to override which backlight is
preferred to handle the case of a broken platform/firmware interface
being selected instead of intel_backlight.

Userspace is indeed trying to do the right thing with the information
provided by the kernel. apple_gmux is not the only device with a phantom
PWM BLC, which is why the default preference is to use the
platform/firmware provided backlight interface, if any.
-Chris

--
Chris Wilson, Intel Open Source Technology Centre