Distribution:Gentoo Hardware Environment:Fujitsu-Siemens Amilo Pi 2515 Problem Description:When video module is loaded, /sys/class/backlight/acpi_video0/ entries are created. Dmesg output is ACPI: Video Device [GFX0] (multi-head: yes rom: no post: no) The values, however, are strange. actual_brightness is always a big integer like e.g. 2102324320 (changes every time module is loaded, remains unchanged afterwards regardless of brightness level). Initial value of acpi_video0/brightness is 0 (although the display is at maximum brightness). max_brightness is set to 100. I am able to change the brightness if I echo 25,50 or 75. Any other value makes my display return to maximum brightness. Actually, the display is supposed to have brightness levels from 1 to 7, AFAIK. If I load with ACPI_DEBUG, initial value of brightness is also a great number such as 2099887552. Steps to reproduce:always
Created attachment 14901 [details] oputput of lspci -vv
Created attachment 14902 [details] acpidump
If I enable ACPI_DEBUG, I get upon loading the module: dsobject-0456 [00] ds_build_internal_pack: Package List length larger than NumElements count (1), truncated dsobject-0456 [00] ds_build_internal_pack: Package List length larger than NumElements count (A), truncated ACPI Error (utobject-0502): Unsupported Reference opcode=88 in object ffff81007e5819e0 [20070126] input: Video Bus as /class/input/input8 ACPI: Video Device [GFX0] (multi-head: yes rom: no post: no)
Hi, Erik The error log in comment #3 is caused by the broken BIOS. > Method (_BQC, 0, NotSerialized) > { > Return (Index (BTBL, \_SB.PCI0.LPCB.EC0.BKLG)) > } Will you please try the custom DSDT and see whether the problem can be fixed?
Created attachment 14993 [details] try the custom DSDT Will you please try the custom DSDT ? How to use the custom DSDT can be found http://www.lesswatts.org/projects/acpi/faq.php. Thanks.
With custom DSDT actual_brightness is actual brightness. Entry "brightness" shows correct value at startup, too. Valid entrites for brightness are the same - 25,50,75 and 100. Any other value sets actual_brightness to 100. dmesg upon module loading shows only input: Video Bus as /class/input/input8 ACPI: Video Device [GFX0] (multi-head: yes rom: no post: no) This isn't, however, the only issue with video module on my system. I believe, I can couple this bug with the following one: http://bugzilla.kernel.org/show_bug.cgi?id=9902
The problem described in this bug report is clear now, it's a BIOS problem. Let's investigate further to see if we can fix it in Linux. For the incoherent brightness value problem, we can discuss it in bug #9902. Yakui will propose a new DSDT that you can give a try.
Created attachment 15049 [details] proposed patch Seems that it's a bug of acpi_evaluate_object with an Index Reference Pls try this patch.
I confirm the patch working. actual_brightness shows correct value now. Valid entrites for brightness are 25,50,75 and 100. Any other value sets actual_brightness to 100. I guess it is not a bug.
So the unreal actual_brightness problem is fixed. (In reply to comment #9) > Valid entrites for brightness are 25,50,75 and 100. Any other value > sets actual_brightness to 100. I guess it is not a bug. Please try the latest kernel release, say 2.6.25-rcX.
Confirm brigtness sys I/F working as intended with kernel 2.6.25-rc4. Brightness levels are now from 0 to 7 as it ought to be. I'll take the liberty and mark this bug as resolved. You may close it if you have no further questions. Thank you!
thanks for testing. the patch in comment #8 is not present upstream, so this must have been fixed by another patch.