Backlight SORCERY!

Cedric Sodhi manday at gmx.net
Sat Jun 18 13:00:56 PDT 2011


This goes to intel-gfx and dri-devel.

I'm outraged! My computer has fell victim to witchcraft against which I
find no defense! Hear my case:

I use an HP Laptop, model name Touchsmart tm-2 2010eg [1]. Some
background information:

The laptop has a convertible capacitive touchscreen which also features
a wacom tablet layer. Like most laptops, the FX function keys have
alternative functions assigned to them, which can be accessed by holding
the Fn-key (or not, so the Fn-key has to be held to access their regular
FX-use, if a special BIOS option is set). F2 and F3 have the special
meaninf of decreasing and increasing brightness respectively, henceforth
called BINC and BDEC.

There are two graphic cards, a discrete Radeon HD 5450 [1002:68e0] and
an Intel onboard [8086:0046] which runs with i915. The whole system is
set up for vgaswitcheroo, the default on boot is the i915 which
immediately goes into KMS (has to)

Until recently, more specifically: until I had the computer in for
repairs to replace the screen for the wacom was faulty - the screen blanked on
boot [2]. Though bloody annoying, the cause could at least be somewhat
found: ACPI wasn't working properly [3]. Backlight could then be brought
back on by pressing BINC - at least when the intel card was
switcheroo'ed on. The DIS radeon wouldn't acknowledge backlight at all,
once activated.

Since the computer got back from repairs and I installed a brand new
system with 39.1 stable (gentoo, by the way), things got ugly:

The screen blanks upon boot as before. Booting 39.1, the BINC is
rendered useless. You can press it, but contrary to before, it will not
ignite the backlight. The desired backlight brightness increases, but
the screen wont ignite unless closed and re-opened, when it goes to the
desired brightness.

Now the witchcraft starts: When you boot into 38.8 (mind that before the
pc was in for repairs, some 39-next was running) and THEN boot into 39.1
- from a complete power off or just a reboot, it doesn't matter - the
  BINC works!

BUT it works only for the first time to ignite the backlight. BDEC'ing
it to be OFF again, and trying to re-ignite it a second time may work or
may not. A pure matter of luck. You may be able to BDEC/OFF the
backlight a dozen times in a row and suddenly, the next time, it stops
working and wont start working unless you boot into 38.8 again (or,
under rare circumstances, until you boot again).

Not crazy enough? Here comes the burner: As already pointed out in [2],
xrandr plays a significant role in this drama:

Assuming a situtation in which (39.1) BINC from OFF has ceased to work,
there is, besides the method of closing and re-opening the lid, another
method which, so far, worked reliably:

Rotating the screen by xrandr

BY EXACTLY +-90 DEGREES

Rotating by anything but 90 degrees will not do, but rotating by exactly
90, from either inverted, left, right, or none to a 90 rotated will work
with certainty. If the desired brightness, as indicated through the
presses of BINC or BDEC, indicated in
/sys/class/backlight/.../brightness device is still 0, the backlight
goes to full power when doing so. If the desired brightness is another
value, the backlight will go to the desired value.

In case of enlightenment refer to [4], which does not yet all the
information provided in this email.

kind regards and thank you,
Manday


[1] http://h10025.www1.hp.com/ewfrf/wc/document?docname=c02262928&tmp_task=prodinfoCategory&lc=en&dlc=en&cc=us&product=4213107
[2] https://bugzilla.kernel.org/show_bug.cgi?id=34582
[3] https://bugs.freedesktop.org/show_bug.cgi?id=36823
[4] https://bugzilla.kernel.org/show_bug.cgi?id=37282


More information about the dri-devel mailing list