[ltp] X200 brightness keys behavior weirdness - down is up, up is down (sometimes)

Henrique de Moraes Holschuh linux-thinkpad@linux-thinkpad.org
Tue, 28 Oct 2008 10:18:33 -0200


On Mon, 27 Oct 2008, John Li wrote:
> [    6.917378] thinkpad_acpi: This ThinkPad has standard ACPI backlight brightness control, supported by the ACPI video driver
> [    6.917449] thinkpad_acpi: Disabling thinkpad-acpi brightness events by default...
> [    6.925138] thinkpad_acpi: Lenovo BIOS switched to ACPI backlight control mode
> [    6.925138] thinkpad_acpi: standard ACPI backlight interface available, not loading native one...

It is doing the right thing.  You now need a very new X.org, a very new
kernel (for a very new ACPI video, and various EC interrupt fixes)...

> [ 2646.277103] Switched to high resolution mode on CPU 1
> --> [ 2647.084977] thinkpad_acpi: unhandled HKEY event 0x6030 <--

Well, 0x6xxx is for thermal alarms, although the fact that it ends with a 0
might mean this is something else and I will have to ask my sources.

Still, check your thinkpad temperatures NOW.  If there is a BIOS update
available, apply it.

I would also highly appreciate if you send me by private mail the dmidecode
(remove UUID and serial numbers) output, and also the output of acpidump.

> [ 2647.606569] ACPI: EC: non-query interrupt received, switching to interrupt mode
> [ 2647.708216] ACPI: PCI Interrupt 0000:00:02.0[A] -> GSI 16 (level, low) -> IRQ 16

Those are normal.  As are complains about interrupts right after resume, as
long as it switches to interrupt mode later again.

> I don't use tpb or xbacklight or anything else - Fn+Home and Fn+End

You will have to use xbacklight.  In your thinkpad, it will be the X.org
driver who will take care of backlight brightness.  There is no EC control,
if you tell the BIOS to do it, it just messes with the GPU registers
directly and that can cause "issues" for X.org.

> just work. Based on the dmesg output above, I assume they're handled
> by the standard ACPI backlight interface, and not thinkpad_acpi.

Correct.  And ACPI should just be telling the X.org driver what to do, but
X.org had a LOT of HIDEOUS bugs on that area (and ACPI video took some time
to be cleaned up as well, and had its bad share of bugs).

-- 
  "One disk to rule them all, One disk to find them. One disk to bring
  them all and in the darkness grind them. In the Land of Redmond
  where the shadows lie." -- The Silicon Valley Tarot
  Henrique Holschuh