Created attachment 75221 [details] various dumps (acpidump, iasl, fwts, dmidecode, dmesg etc) Backlight can't be controlled in Aspire One D270. booting with acpi_backlight=vendor doesn't change a thing. /sys/class/backlight is empty. This was reported in https://bugs.launchpad.net/ubuntu/+source/linux/+bug/974806 but it appears like the reporter never followed up with the recommendation to upstream the bug (I didn't find anything on "D270 backlight" on bugzilla.kernel.org), so I'm doing it here. My system: Ubuntu 12.04 LTS, kernel 3.2.0-25-generic-pae The previous reporter checked it with 3.2.0-22.35 /sys/class/backlight is empty. /proc/acpi/video does not exist 'ACPI: Video' doesn't appear in dmesg. Attaching all kinds of dumps as recommended by https://wiki.kubuntu.org/Kernel/Debugging/Backlight
Most likely you need acerhdf loaded and possibly to add your BIOS to it.
modprobe acerhdf yields "Invalid argument" error. dmesg shows: [ 1144.527443] acerhdf: Acer Aspire One Fan driver, v.0.5.24 [ 1144.527470] acerhdf: unknown (unsupported) BIOS version Acer/AOD270/V1.04, please report, aborting! seems like another "please contact upstream"... https://bugs.archlinux.org/task/30475?opened=13196&status[0]=
If you do modinfo on it you'll see you can force it to load so you can test if it does the trick. If it does then we can add it to the driver table.
Yes, parm: force_bios:Force BIOS version and omit BIOS check (string) parm: force_product:Force BIOS product and omit BIOS check (string) Could you give me some workable/likely values I could use to try it? On a different note, /sys/class/thermal appears to be entirely in order. 4 cooling devices, 1 thermal zone, believable values.
I tried it with forcing some other model... no influence on the backlight. results attached below. I'm afraid it won't be that simple. All Aspire One BIOSes in acerhdf.c I spotted are numbered v0.3108-v0.3314, while my D270 reports V1.04 [25773.445178] acerhdf: forcing BIOS version: v0.3309 [25773.445183] acerhdf: forcing BIOS product: AOA110 [25773.445192] acerhdf: Fan control off, to enable do: [25773.445196] acerhdf: echo -n "enabled" > /sys/class/thermal/thermal_zone0/mode [25786.520942] psmouse serio2: Touchpad at isa0060/serio2/input0 lost sync at byte 6 [25786.551012] psmouse serio2: Touchpad at isa0060/serio2/input0 - driver resynced. [25799.466299] acer_wmi: Unknown function number - 4 - 4 [25799.750275] acer_wmi: Unknown function number - 4 - 3 [25799.985092] acer_wmi: Unknown function number - 4 - 2 [25800.010099] acer_wmi: Unknown function number - 4 - 1 [25800.033717] acer_wmi: Unknown function number - 4 - 0 [25800.063074] acer_wmi: Unknown function number - 4 - 0 [25800.088386] acer_wmi: Unknown function number - 4 - 0 [25800.121927] acer_wmi: Unknown function number - 4 - 0 [25800.200282] acer_wmi: Unknown function number - 4 - 0 [25800.407095] acer_wmi: Unknown function number - 4 - 0 [25800.578418] acer_wmi: Unknown function number - 4 - 0 [25800.835724] acer_wmi: Unknown function number - 4 - 0 [25801.366705] acer_wmi: Unknown function number - 4 - 0 [25801.625306] acer_wmi: Unknown function number - 4 - 0 [25801.915384] acer_wmi: Unknown function number - 4 - 1 [25802.157027] acer_wmi: Unknown function number - 4 - 2 [25802.374076] acer_wmi: Unknown function number - 4 - 3 [25802.509175] acer_wmi: Unknown function number - 4 - 4 [25802.768916] acer_wmi: Unknown function number - 4 - 5 [25802.981661] acer_wmi: Unknown function number - 4 - 6 [25803.448008] acer_wmi: Unknown function number - 4 - 5 [25803.634104] acer_wmi: Unknown function number - 4 - 4 [25803.814039] acer_wmi: Unknown function number - 4 - 3 [25803.998428] acer_wmi: Unknown function number - 4 - 2 [25804.203054] acer_wmi: Unknown function number - 4 - 1 [25805.188097] acer_wmi: Unknown function number - 4 - 0 [25805.439937] acer_wmi: Unknown function number - 4 - 0 [25805.671485] acer_wmi: Unknown function number - 4 - 0 [25805.907305] acer_wmi: Unknown function number - 4 - 0 [25806.316445] acer_wmi: Unknown function number - 4 - 0 [25807.252221] acer_wmi: Unknown function number - 4 - 0 [25809.622264] acer_wmi: Unknown function number - 4 - 0 [25810.322624] acer_wmi: Unknown function number - 4 - 1 [25810.576774] acer_wmi: Unknown function number - 4 - 2 [25810.813616] acer_wmi: Unknown function number - 4 - 3 [25811.197868] acer_wmi: Unknown function number - 4 - 2 [25811.431875] acer_wmi: Unknown function number - 4 - 1 [25811.652507] acer_wmi: Unknown function number - 4 - 0 [25811.826000] acer_wmi: Unknown function number - 4 - 0 [25812.054928] acer_wmi: Unknown function number - 4 - 0
(In reply to comment #0) > Created an attachment (id=75221) [details] > various dumps (acpidump, iasl, fwts, dmidecode, dmesg etc) > > Backlight can't be controlled in Aspire One D270. > booting with acpi_backlight=vendor doesn't change a thing. > /sys/class/backlight is empty. > > This was reported in > https://bugs.launchpad.net/ubuntu/+source/linux/+bug/974806 > but it appears like the reporter never followed up with the recommendation to > upstream the bug (I didn't find anything on "D270 backlight" on > bugzilla.kernel.org), so I'm doing it here. > > My system: > Ubuntu 12.04 LTS, kernel 3.2.0-25-generic-pae > The previous reporter checked it with 3.2.0-22.35 > > /sys/class/backlight is empty. > /proc/acpi/video does not exist > 'ACPI: Video' doesn't appear in dmesg. > Did you see 'video' driver from lsmod when you removed 'acpi_backlight=vendor'? I traced your DSDT but didn't see strange thing on GFX0, it have _DOS and _DOD, should be a video device. If possible, please add the following kernel parameter then reboot machine: acpi.debug_level=0x0000000F acpi.debug_layer=0xffffffff log_buf_len=5M Please attach dmesg.log after system boot, there should have GFX0 wording in log.
> Did you see 'video' driver from lsmod when you removed > 'acpi_backlight=vendor'? Yes. bw@pony:/var/log$ cat /proc/cmdline BOOT_IMAGE=/boot/vmlinuz-3.2.0-25-generic-pae root=UUID=300655c5-a6b5-4a55-b86a-5a5efcc5d3db ro verbose acpi_backlight=vendor acpi.debug_level=0x0000000F acpi.debug_layer=0xffffffff log_buf_len=5M bw@pony:/var/log$ lsmod|grep video uvcvideo 67203 0 videodev 86588 1 uvcvideo video 19068 0 > If possible, please add the following kernel parameter then reboot machine: > acpi.debug_level=0x0000000F acpi.debug_layer=0xffffffff log_buf_len=5M > Please attach dmesg.log after system boot, there should have GFX0 wording in > log. bw@pony:/var/log$ dmesg |grep GFX0 ---no results --- Attaching the dmesg anyway.
Created attachment 77781 [details] dmesg with acpi.debug_level=0x0000000F acpi.debug_layer=0xffffffff log_buf_len=5M
Sorry, misread the request. WITHOUT acpi_backlight=vendor the result is the same: bw@pony:~$ cat /proc/cmdline BOOT_IMAGE=/boot/vmlinuz-3.2.0-25-generic-pae root=UUID=300655c5-a6b5-4a55-b86a-5a5efcc5d3db ro verbose acpi.debug_level=0x0000000F acpi.debug_layer=0xffffffff log_buf_len=5M bw@pony:~$ lsmod |grep video uvcvideo 67203 0 videodev 86588 1 uvcvideo video 19068 0 Also attaching dmesg without it.
Created attachment 77791 [details] as above but without acpi_backlight=vendor
Hi Leon, (In reply to comment #10) > Created an attachment (id=77791) [details] > as above but without acpi_backlight=vendor There didn't have any acpi debug log in dmesg, I think your kernel didn't enable this config: CONFIG_ACPI_DEBUG=y Please check your config file in /boot if your distro put it there. And, per lsmod result, the acpi/video driver loaded on your system, it's match with your GFX0 in DSDT, just didn't show on dmesg. Please check your /sys/class/backlight again, there should have acpi_video0 folder. Per DSDT, there have _BCM, _BCL on GFX0 device, it's meet the requirement for a acpi backlight control device. If you still didn't see any folder show up in /sys/class/backlight, then please enable CONFIG_ACPI_DEBUG, we need check the ACPI debug log. Thanks
Sorry for delay, recompiling the kernel on a netbook took a while. The default .config for ubuntu has "# CONFIG_ACPI_DEBUG is not set" so I had to recompile (getting all the compile prerequisites first... not really a development computer) Anyway, attaching the new dmesg. root@pony:~# ls -al /sys/class/backlight/ total 0 drwxr-xr-x 2 root root 0 Aug 20 21:35 . drwxr-xr-x 48 root root 0 Aug 20 21:35 root@pony:~# lsmod Module Size Used by michael_mic 12540 4 arc4 12473 2 bnep 17711 2 rfcomm 37291 0 bluetooth 151606 10 bnep,rfcomm parport_pc 31968 0 ppdev 12782 0 lib80211_crypt_tkip 17229 0 snd_hda_codec_realtek 173342 1 joydev 17161 0 snd_hda_codec_hdmi 31514 1 wl 2646601 0 snd_hda_intel 32340 3 snd_hda_codec 108688 3 snd_hda_codec_realtek,snd_hda_codec_hdmi,snd_hda_intel snd_hwdep 13276 1 snd_hda_codec psmouse 71180 0 snd_pcm 79956 3 snd_hda_codec_hdmi,snd_hda_intel,snd_hda_codec uvcvideo 66231 0 videodev 86252 1 uvcvideo snd_seq_midi 13132 0 snd_rawmidi 25381 1 snd_seq_midi snd_seq_midi_event 14475 1 snd_seq_midi rts_pstor 337476 0 snd_seq 51255 2 snd_seq_midi,snd_seq_midi_event acer_wmi 23289 0 lp 13299 0 mac_hid 13037 0 serio_raw 13027 0 sparse_keymap 13658 1 acer_wmi snd_timer 24503 2 snd_pcm,snd_seq snd_seq_device 14137 3 snd_seq_midi,snd_rawmidi,snd_seq snd 61608 16 snd_hda_codec_realtek,snd_hda_codec_hdmi,snd_hda_intel,snd_hda_codec,snd_hwdep,snd_pcm,snd_rawmidi,snd_seq,snd_timer,snd_seq_device lib80211 14040 2 lib80211_crypt_tkip,wl soundcore 14599 1 snd snd_page_alloc 14036 2 snd_hda_intel,snd_pcm parport 40762 3 parport_pc,ppdev,lp vesafb 13476 1 r8169 51182 0 video 18995 0 wmi 18590 1 acer_wmi
Created attachment 78051 [details] dmesg for a kernel with CONFIG_ACPI_DEBUG=y root@pony:~# cat /proc/cmdline BOOT_IMAGE=/boot/vmlinuz-3.2.24acpidbg root=UUID=300655c5-a6b5-4a55-b86a-5a5efcc5d3db ro crashkernel=384M-2G:64M,2G-:128M verbose acpi.debug_level=0x0000000F acpi.debug_layer=0xffffffff log_buf_len=5M acpi_backlight=vendor It's not exactly the same kernel but there don't seem to be differences concerning ACPI behavior. My hunch is that the problem reaches much deeper - this computer, bought new some 3 months ago, by vendor specs should last "up to 9 hours" on a single charge of battery. It lasts under 3 hours under moderate load (web browsing, wifi) and it looks like it was running without any power-saving features at all. But backlight dimming is the most tangible and visible feature missing currently, and probably a good point to start; "I have a feeling battery saving functions don't work" doesn't make a very good bug report.
Well firstly you don't have the right graphics driver vesafb 13476 1 to get this to work and to get some power sanity you'll need at minimum 3.5 gma500 driver including GMA36xx support rather than vesafb intel idle enabled and you'll probably need the vendor backlight enabled to get backlight control
(In reply to comment #13) > Created an attachment (id=78051) [details] > dmesg for a kernel with CONFIG_ACPI_DEBUG=y > Per your dmesg, even enabled acpi debug, I still didn't see any messages about Video Bus register. I think that because your video chip supported Intel OpRegion function, more detail need check your 'lspci -xxxnnvv' result. The acpi/video driver doesn't register when detected Intel OpRegion. I fully agree to Alan's suggestion in Comment #13, you should try gma500 driver in v3.5 kernel on your machine. If you just want to enable acpi/video driver for backlight control, another way is try to enable CONFIG_STUB_POULSBO in old kernel. But, I am not suggest it because this config will remove in the end of 2012. I still highly suggest follow Alan's suggestion, try the gma500 driver in v3.5 kernel.
Created attachment 78061 [details] lspci -xxxnnvv ...this may take a while again. 3.5 is not natively supported in Ubuntu 12.04 (yet?). I tried the precompiled kernel from http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.5.2-quantal/ but the results were bad - not only backlight wasn't fixed, lots of hardware failed to start, and there was only a small handful of kernel modules loaded. The newest kernel available for my release seems to be v3.4, and I'm not sure how to proceed - "roll my own" from sources from kernel.org or try dist-upgrade to Ubuntu 12.10?-alpha?
(In reply to comment #16) > Created an attachment (id=78061) [details] > lspci -xxxnnvv > Per lspci result, your BIOS filled ASLS register, means should support Intel OpRegion: 00:02.0 VGA compatible controller [0300]: Intel Corporation Atom Processor D2xxx/N2xxx Integrated Graphics Controller [8086:0be1] (rev 09) (prog-if 00 [VGA controller]) 00: 86 80 e1 0b 07 00 10 00 09 00 00 03 00 00 00 00 ... e0: 00 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 f0: 00 00 00 00 ff 00 00 00 00 00 00 00 10 60 67 bf /* ASLS register not 0 */ The root cause for acpi/video didn't register on your machine is it waiting gma500 driver initial chip and register acpi/video, but you didn't use gma500 driver. > ...this may take a while again. 3.5 is not natively supported in Ubuntu 12.04 > (yet?). > > I tried the precompiled kernel from > http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.5.2-quantal/ but the results > were bad - not only backlight wasn't fixed, lots of hardware failed to start, > and there was only a small handful of kernel modules loaded. The newest > kernel > available for my release seems to be v3.4, and I'm not sure how to proceed - > "roll my own" from sources from kernel.org or try dist-upgrade to Ubuntu > 12.10?-alpha? I simply trace the gma500 driver in v3.4 kernel, it already have GMA3600 support. Please check CONFIG_DRM_GMA3600 should enable when bulid kernel. For the GMA3600 support quality in v3.4, I think check with Alan will be better.
You need 3.5 for some of the backlight fixes.
Created attachment 78461 [details] dmesg from kernel 3.5 Thank you very much! Works correctly with kernel 3.5. Attaching dmesg. bw@pony:~$ ls /sys/class/backlight/psb-bl actual_brightness bl_power brightness max_brightness power subsystem type uevent root@pony:/sys/class/backlight/psb-bl# echo 50 >brightness Of course 3.5 came with its own range of problems (bc43xx wifi card doesn't work out of the box, the backlight tuning is not attached to the correct keys) but I guess these are downstream problems... so thank you for your time and patience and feel free to mark "resolved fixed".
> Works correctly with kernel 3.5 closed.