Bug 11093 - I Can't change lcd brightness
Summary: I Can't change lcd brightness
Alias: None
Product: ACPI
Classification: Unclassified
Component: Power-Video (show other bugs)
Hardware: All Linux
: P1 normal
Assignee: Jonathan Woithe
Depends on: 10221
  Show dependency tree
Reported: 2008-07-15 16:24 UTC by Carlos Eduardo
Modified: 2009-11-08 03:44 UTC (History)
3 users (show)

See Also:
Kernel Version:
Regression: No
Bisected commit-id:

acpidump output (24.65 KB, application/x-gzip)
2008-10-14 03:20 UTC, Carlos Eduardo

Description Carlos Eduardo 2008-07-15 16:24:43 UTC
Latest working kernel version: never worked
Earliest failing kernel version:
Distribution: arch linux 64
Hardware Environment: semp toshiba as1560g/fujitsu-siemens amilo Pa 1538
Software Environment: gnome 2.22.3
Problem Description: Brightness hotkeys does not work. They are not recognized by xev and there are no brightness stuff under /proc or /sys

Steps to reproduce: try to change brightness using hotkeys, gnome-applet, etc
Comment 1 Carlos Eduardo 2008-07-15 16:44:23 UTC
# modprobe fujitsu-laptop; cd /sys/class/backlight/fujitsu-laptop; ls -l
-r--r--r-- 1 root root    0 2008-07-15 20:36 actual_brightness
-rw-r--r-- 1 root root 4096 2008-07-15 20:35 bl_power
-rw-r--r-- 1 root root    0 2008-07-15 20:36 brightness
-r--r--r-- 1 root root 4096 2008-07-15 20:29 max_brightness
drwxr-xr-x 2 root root    0 2008-07-15 20:35 power/
lrwxrwxrwx 1 root root    0 2008-07-15 20:29 subsystem -> ../../backlight/
-rw-r--r-- 1 root root 4096 2008-07-15 20:35 uevent
# cat brightness
# cat actual_brightness
# echo 4 >brightness; cat brightness
# cat actual_brightness

No change in brightness and hotkeys still doesn't work. I tried also to change bl_power, but no effect in lcd
Comment 2 Jonathan Woithe 2008-07-15 18:46:13 UTC
Experience has shown that different Fujitsu laptops use incompatible ways of controlling the brightness via software.  The fujitsu-laptop module in 2.6.25 knew of the method required by the S7020 and *some* other S-series laptops.  However, this did not work for the S6410 (for example), among others.

Thanks to the work and debugging efforts of an S6410 user, 2.6.27 will have support for the brightness control method used on the S6410.  It is however impossible to know which other Fujitsu models this new method will work with.  We'll just have to try it and see.  It will most likely work with some other S-series laptops.  This bug report does not relate to an S-series laptop, so the best I can say is that the new code may work - I certainly can't guarantee it at this stage.

Therefore in the first instance I would ask that you try kernel 2.6.27-rc1 when it is released and report what - if anything - has changed.  If 2.6.27-rc1 still doesn't work it indicates that your Fujitsu laptop uses yet another method for controlling the LCD brightness via software.  We can evaluate the next step once we know what 2.6.27-rc1 does.
Comment 3 Andi Kleen 2008-08-15 23:13:55 UTC
Carlos, any news on this? Did you test 2.6.27-rc1?
Comment 4 Carlos Eduardo 2008-08-18 17:47:52 UTC
Thanks for your help and sorry for the delay. I'll compile 2.6.27-rc1 on the next weekend.
Comment 5 Carlos Eduardo 2008-08-23 16:25:56 UTC
I tried 2.6.27-rc4 but I had troubles with acpi. Then I disabled acpi and the boot went further, but I received a kernel panic due the impossibility to mount the root partition.

I've just asked for a 2.6.27-rc4 .config file (I did mine through make oldconfig) in the distro's forum.
Comment 6 Zhang Rui 2008-08-27 23:51:50 UTC
Carlos, any update?
Comment 7 Jonathan Woithe 2008-08-28 00:21:17 UTC
I can provide some additional notes at this point.  Over recent days I have been working with an owner of a P8010 on a number of things, one of which was brightness control.  The practical upshot of our tests is that with 2.6.27-rc4 things "mostly work" if "use_alt_lcd_levels=1" is used when loading fujitsu-laptop.  Brightness buttons do the right thing and software control of the brightness via fujitsu-laptop works.  What doesn't work is xbacklight.  This is because on the P8010 the new apci-video brightness controls won't work until the IGD changes are merged, and xbacklight picks the acpi-video provided brightness controls ahead of the vendor-specific one.

Testing of -next (which includes the IGD changes) indicates that everything should work much better in 2.6.28 (when the IGD will hit mainline).  Given this my current plan is to hold off on this issue until then since it appears at this stage that IGD should fix most of the remaining issues on Fujitsu laptops which support IGD.  There seems little point shoehorning model-specific hacks into 2.6.27 which will become irrelevant in 2.6.28.
Comment 8 Carlos Eduardo 2008-10-01 14:41:12 UTC
No updates. Unfortunately I can't boot 2.6.27 yet.
Comment 9 Carlos Eduardo 2008-10-13 20:18:21 UTC
I'm running 2.6.27 and the keys still don't work. Gnome brightness applet now scrolls, but brightness doesn't change. xev still misses brightness keys.
Comment 10 Jonathan Woithe 2008-10-13 20:30:41 UTC
Thanks for testing 2.6.27.

Have you tested both with and without the inclusion of "use_alt_lcd_levels=1" when loading the fujitsu-laptop module?  If not, could you please test the case you haven't covered yet?

If 2.6.27 still doesn't work it may be worth waiting for 2.6.28-rc1 since that's when the afore-mentioned IGD patches will be in (AFAIK).  Collectively this should do a much better job of controlling backlights on class-compliant machines.  Note that the brightness control methods implemented by fujitsu-laptop cover those machines which use non-standard methods to control the backlight.  I don't know whether your laptop does brightness in the standard way, but if it does there's a good chance 2.6.28 may work better for you.
Comment 11 Zhang Rui 2008-10-13 22:39:42 UTC
to verify if it follows the ACPI video extension, please attach the acpidump output.
Comment 12 Carlos Eduardo 2008-10-14 03:20:22 UTC
Created attachment 18302 [details]
acpidump output
Comment 13 Zhang Rui 2008-11-16 22:45:16 UTC
there are _BCL and _BCM methods in this laptop, while _BQC is not available.
please try the latest kernel, in which the ACPI video backlight I/F should be available.
Comment 14 Zhang Rui 2008-11-17 00:37:15 UTC
patch has already been shipped in 2.6.27-rcX,
commit c2c789057f075022658b38b498755c29c1ba8055.
Comment 15 Carlos Eduardo 2009-01-16 09:19:20 UTC
No success running 2.6.28-3 (Archlinux). Only one thing changed from last report:

# echo 1 >brightness
-bash: echo: write error: Invalid argument
# cat brightness

When I plug/unplug AC adapter, gnome changes brightness level (OSD), but it has no effect.
Comment 16 ykzhao 2009-02-23 00:21:48 UTC
Hi, Carlos
    Sorry for the late response.
    What Rui said in comment #14 is correct. There exist the ACPI objects of _BCL/_BCM. But  unfortunately the _BCM is the bogus object. It will do nothing. In such case if the generic acpi video driver is used to change the brightness, it will have no effect.
    >Method (_BCM, 1, NotSerialized)
     At the same time there is no ACPI object(FUJ02B1/FUJ02BF), which causes that the fujitsu-laptop driver can't be loaded correctly. Of course the brightness can't be changed by the fujitsu-laptop backlight interface.(sys I/F or proc I/F).

Comment 17 Zhang Rui 2009-02-23 00:35:33 UTC
Hi, Jonathan,

it's confirmed that the ACPI video extension doesn't work on this laptop because of the null _BCM method.
could you please confirm that if this laptop is supported by the fujitsu-laptop driver?
Comment 18 ykzhao 2009-02-23 00:43:23 UTC
Hi, Jonathan & Rui
    From the acpidump it seems that there is no following ACPI object:
    > FUJ02BF/FUJ02B1/FUJ02E3
    In such case the fujitsu-laptop driver can't work well. So IMO the fujitsu-laptop backlight I/F still can't work even when it is registered by the fujitsu-laptop driver.
Comment 19 Jonathan Woithe 2009-02-23 15:30:32 UTC
The fujitsu-laptop driver implements its specific brightness control via the FUJ02B1 device.  If this device is not present in a given laptop fujitsu-laptop won't be of any use.  That's not to say that there isn't some other vendor-specific way of controlling the brightness on such machines, it's just that until someone discovers it fujitsu-laptop obviously can't utilise it.

So if, as per comment #18, the machine in question doesn't have a FUJ02B1 object then fujitsu-laptop as it stands at the moment cannot work with that machine.  Such machines will only be supported if someone can work out how brightness is controlled on them.
Comment 20 Carlos Eduardo 2009-11-07 17:37:19 UTC
I tried nouveau module and it worked!
Comment 21 Jonathan Woithe 2009-11-08 03:44:35 UTC
Carlos, thanks for the updated information and I'm glad to see that brightness control is now working for you.

This news pretty much confirms the suspicions we had earlier this year - that the brightness change mechanism in this laptop was handled rather differently to that in previous laptop models.  Since the "standard" methods (as are now implemented in the nouveau module) have been shown to apply to your laptop model there is no point in adding extra code to the fujitsu-laptop module to duplicate this functionality.

Note You need to log in before you can comment on or make changes to this bug.