Bug 15554 - Asus EEE 1201N bios reset when changing brightness
Summary: Asus EEE 1201N bios reset when changing brightness
Status: CLOSED INSUFFICIENT_DATA
Alias: None
Product: ACPI
Classification: Unclassified
Component: BIOS (show other bugs)
Hardware: All Linux
: P1 high
Assignee: Aaron Lu
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2010-03-17 14:57 UTC by markus.doits
Modified: 2017-07-15 10:18 UTC (History)
10 users (show)

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


Attachments
script to get acpi tables (406 bytes, application/octet-stream)
2010-03-18 07:00 UTC, Zhang Rui
Details
dmesg output on 786mb (bios crashed) (51.34 KB, text/plain)
2010-03-18 08:58 UTC, markus.doits
Details
dmesg output on 3gigs (52.85 KB, text/plain)
2010-03-18 08:59 UTC, markus.doits
Details
/sys/class/backlight/*/* (26 bytes, text/plain)
2010-03-18 09:00 UTC, markus.doits
Details
/sys/class/backlight/*/*/path (26 bytes, text/plain)
2010-03-18 09:00 UTC, markus.doits
Details
acpi-tables (22.92 KB, application/x-bzip)
2010-03-18 09:01 UTC, markus.doits
Details
dmesg with boot-option acpi_osi='!Windows 2009' (46.01 KB, text/plain)
2010-03-22 11:16 UTC, markus.doits
Details
dmesg with working boot-option acpi_osi='!Windows 2009' (47.01 KB, text/plain)
2010-03-23 10:30 UTC, markus.doits
Details
custom dsdt (389.19 KB, application/octet-stream)
2010-09-27 01:03 UTC, Zhang Rui
Details
dmesg, custom dsdt (46.42 KB, text/plain)
2010-09-27 06:42 UTC, Kamil Kaminski
Details

Description markus.doits 2010-03-17 14:57:18 UTC
Using Ubuntu Lucid Netbook Edition, kernel 2.6.33 mainline (from http://kernel.ubuntu.com/~kernel-ppa/, but also ubuntu-kernel 2.6.32-20-generic has the same problems)

Asus EEE 1201N (Atom 330, Nvidia ION)

Bios-Version: 0324

Symptoms:

Rebooting from Linux when on battery causes bios settings to be reset. Additionally, only 768mb of RAM are detected to be usable (though 2Gigs are installed). Applying settings in Bios and restarting gives back full 2Gig of RAM, and everything works as expected until restarting from Linux again. When working with AC-power the bug doesn't show up.

Other users detected this to be a problem with brigthness-setting, see http://permalink.gmane.org/gmane.linux.debian.devel.eeepc/2923 or http://vip.asus.com/forum/view.aspx?board_id=20&model=Eee+PC+1201N&id=20100211135511828&page=1&SLanguage=en-us

This looks like to be a bug in the bios of the 1201N, but working with windows (and changing brightness there) does not reset the bios. So there must at least be a workaround.

Steps to reproduce:

Boot with a 1201N
Change brightness
Disconnect AC-power-source if connected
Reboot

Regards,
Markus

for reference the bug i created on ubuntu-launchpad: https://bugs.launchpad.net/ubuntu/+bug/539047
Comment 1 Zhang Rui 2010-03-18 06:58:51 UTC
what BIOS options do you need to get the 2g memory?
Comment 2 Zhang Rui 2010-03-18 07:00:44 UTC
Created attachment 25577 [details]
script to get acpi tables

please run this script as root user to get all the acpi tables of your laptop.
Comment 3 Zhang Rui 2010-03-18 07:05:14 UTC
please attach the output of "grep . /sys/class/backlight/*/*" and "cat /sys/class/backlight/*/*/path".

and please attachthe dmesg output in both cases, i.e. the 768M memory case and the 2G memory case.
Comment 4 markus.doits 2010-03-18 08:56:41 UTC
(In reply to comment #1)
> what BIOS options do you need to get the 2g memory?

i just can enter the bios, change nothing, and saying "save and exit" and i have back full 2gig of ram - so i do not need to change options. booting without entering bios and "save and exit" and i have 768mb.

please note: i just switched a ram module, so now i have 3gigs of ram (if you spot the size in my logs and wonder). So now i get the mentioned 786mb in case of bios reset but 3gigs when everything is working.
Comment 5 markus.doits 2010-03-18 08:58:38 UTC
Created attachment 25581 [details]
dmesg output on 786mb (bios crashed)
Comment 6 markus.doits 2010-03-18 08:59:15 UTC
Created attachment 25582 [details]
dmesg output on 3gigs
Comment 7 markus.doits 2010-03-18 09:00:15 UTC
Created attachment 25583 [details]
/sys/class/backlight/*/*
Comment 8 markus.doits 2010-03-18 09:00:45 UTC
Created attachment 25584 [details]
/sys/class/backlight/*/*/path
Comment 9 markus.doits 2010-03-18 09:01:23 UTC
Created attachment 25585 [details]
acpi-tables
Comment 10 Zhang Rui 2010-03-18 09:08:37 UTC
the backlight is controlled via ACPI.

does the problem still exists if you boot with boot option "nomodeset"?
Comment 11 markus.doits 2010-03-18 09:28:37 UTC
(In reply to comment #10)
> does the problem still exists if you boot with boot option "nomodeset"?

yes, it does.

one more thing: if the laptop boots up and says it has only 768mb memory, it also displays the "Press F1 to run setup or F2 to load default values and continue" message and halts, until i select one option. Pressing F2 gives me back my full memory AFTER a manual reboot (it itself goes on without rebooting), pressing F1 and then exiting the bios without saving makes it stay at 786mb and displaying the "F1, F2"-message again at next boot. Exiting bios saving settings, it reboots automatically and i have back my full memory. 

so maybe a bios checksum is altered changing brightness via ACPI, and the bios thinks settings have been manipulated/crashed? this would explain, that setting brightness back to the value it had when booting the machine is a workaround (see #7 at http://vip.asus.com/forum/view.aspx?board_id=20&model=Eee+PC+1201N&id=20100211135511828&page=1&SLanguage=en-us). just a guess... but still not clear why it doesn't show up on ac-power.
Comment 12 Zhang Rui 2010-03-19 02:30:45 UTC
what if you boot with boot option acpi_osi="!Windows 2009"?
Comment 13 markus.doits 2010-03-19 14:21:59 UTC
no change, still resets bios.

Kernel command line: BOOT_IMAGE=/vmlinuz-2.6.33-020633-generic root=UUID=271e86bc-2b8f-467a-8458-ef65dc0d8711 ro quiet splash acpi_osi=!Windows 2009

though it doesn't mention anything on dmesg about the acpi_osi boot-option ("dmesg | grep acpi_osi" only shows the kernel command line), is this correct?
Comment 14 Zhang Rui 2010-03-22 01:54:48 UTC
please attach the full dmesg output with this boot option.
Comment 15 markus.doits 2010-03-22 11:16:27 UTC
Created attachment 25639 [details]
dmesg with boot-option acpi_osi='!Windows 2009'
Comment 16 Zhang Rui 2010-03-23 07:38:24 UTC
(In reply to comment #13)
> no change, still resets bios.
> 
> Kernel command line: BOOT_IMAGE=/vmlinuz-2.6.33-020633-generic
> root=UUID=271e86bc-2b8f-467a-8458-ef65dc0d8711 ro quiet splash
> acpi_osi=!Windows 2009
> 
> though it doesn't mention anything on dmesg about the acpi_osi boot-option
> ("dmesg | grep acpi_osi" only shows the kernel command line), is this
> correct?

no, you should see something like
ACPI: Deleted _OSI(Windows 2009)

here is a part of the dmesg output from another laptop that use the same parameter,

Kernel command line: BOOT_IMAGE=2.6.32-1 root=UUID=f1e2d86b-8d63-4f01-9dc0-20e6fcbc7857 acpi_osi="!Windows 2009" vga=791
ACPI: Deleted _OSI(Windows 2009)

please make sure you're using acpi_osi="!Windows 2009" instead of acpi_osi=!Windows 2009

you can enter the grub menu and add the boot option manually to see if  it helps.
Comment 17 markus.doits 2010-03-23 10:30:21 UTC
Created attachment 25654 [details]
 dmesg with working boot-option acpi_osi='!Windows 2009'

alright, looks like i hit a grub2-bug here having to strip quotes in kernel parameters... now it applied the parameter, but bios unfortunately still resets, so it does not help. didn't notice an other change (but did not search for, either)
Comment 18 markus.doits 2010-04-10 14:59:40 UTC
some more info: selecting "shut down" does not cause this issue, but selecting "restart" does (ubuntu x86 lucid).
Comment 19 cfobel 2010-05-03 20:47:34 UTC
I can confirm that I am having the same issue running Ubuntu x86 10.04:

$ uname -a
Linux annyong 2.6.32-22-generic #33-Ubuntu SMP Wed Apr 28 13:27:30 UTC 2010 i686 GNU/Linux
Comment 20 Kamil Kaminski 2010-06-23 07:53:39 UTC
I also confirm this bug on Asus 1201N BIOS 0326, kernel 2.6.34. I hear other models are having same problems (e.g. 1201NL). Devs please look into this.
Comment 21 Zhang Rui 2010-06-23 07:58:21 UTC
does the problem still exist if you boot with "acpi_backlight=vendor"?
Comment 22 Eric Jorgensen 2010-08-06 20:09:58 UTC
Adding "acpi_backlight=vendor" does fix this issue on my 1201N. 

However, "acpi_osi=Linux" is also required for full functionality.

acpi_backlight=vendor alone will completely disable the ability to change the backlight brightness if acpi_osi=Linux is not also set. With both arguments, backlight hotkeys are functional and the bios is not corrupted on reboot after changing brightness levels. 

My 1201N is running ubuntu netbook edition 10.04. uname -rv says "2.6.32-24-generic #39-Ubuntu SMP Wed Jul 28 06:07:29 UTC 2010"
Comment 23 Zhang Rui 2010-09-27 01:03:40 UTC
Created attachment 31542 [details]
custom dsdt

please apply this custom dsdt.
and reboot the kernel without the acpi_osi and acpi_backlight options.

does the problem still exist?
Comment 24 Kamil Kaminski 2010-09-27 06:39:03 UTC
^ I have tried the custom dsdt by rebuilding kernel and following http://wiki.archlinux.org/index.php/DSDT. This process was not user friendly. With the above file I cannot no longer change the brightness, and bios is still corrupted after a restart.
Comment 25 Kamil Kaminski 2010-09-27 06:42:46 UTC
Created attachment 31552 [details]
dmesg, custom dsdt
Comment 26 Zhang Rui 2010-12-27 01:13:47 UTC
is there any BIOS update for this netbook?
does the problem still exist when using the latest upstream kernel and the latest BIOS?
Comment 27 b1czuu 2011-04-16 18:41:23 UTC
No, there is no any BIOS update since May 2010. When using latest kernel (I've tested debian sid with 2.6.38-2-686) the problem still exists. It can be solved by adding "acpi_osi=Linux acpi_backlight=vendor" to kernel boot parametr, but it's only small workaround because after this trick brightness can only be changed by FN keys (Moving bar in KDE Power Managment, etc. doesnt give any result, so any automatic brightness changes can't be set). I've tricked it by writing small script that set the brightness to max, and executing it on boot and shutdown/restart. Try to fix this bug please, it's really annoying. Tell me if I can help you some way.
Comment 28 Marco Chiappetta 2011-09-06 14:51:35 UTC
The bug has been marked as "NEEDINFO" but @Zhang Rui I can't see any request of information. If you need to get more informations about this bug I'm on hand. Hope you'll solve it soon because is very, very annoying!
Comment 29 Zhang Rui 2012-01-18 02:01:14 UTC
Hi, Marco,

sorry for the late response.
It's great that kernel bugzilla is back.

can you please verify if the problem still exists in the latest upstream
kernel?
Comment 30 Marco Chiappetta 2012-01-18 02:25:40 UTC
Hi! Yes, the bug is still here. I'm currently on Ubuntu 12.04 (daily) with kernel 3.2.0-9-generic. By the way it's happening less frequently. I haven't had time to perform further tests but if you need any information please ask and I will try to. Thanks in advance.
Comment 31 Len Brown 2013-01-29 02:44:03 UTC
> selecting "shut down" does not cause this issue, but selecting
> "restart" does (ubuntu x86 lucid).

If you boot a LiveCD (or USB stick) of a non-Ubuntu distro,
such as Fedora, does it run into the same problem?

I don't know if the version of Ubuntu you are using does
a kexec reboot, but if they do you'd see no BIOS banner
during the reboot process, then that could be the cause.
Comment 32 Aaron Lu 2013-04-12 02:02:29 UTC
Hi,

Anyone still has this problem please test a mainline kernel(e.g. v3.8) and then report back, thanks.
Comment 33 Aaron Lu 2013-04-12 02:06:14 UTC
And it's interesting to see video driver would corrupt cmos setting. I just checked the BIOS table, there is no fancy thing in the video backlight control methods: _BCM use a EC function to update the brightness, which only store the new value to a variable in EC space, and _BQC touches some io ports.

Anyway, please test a recent kernel see what happened.
Comment 34 Lv Zheng 2013-04-18 03:17:52 UTC
Hi,

Could you please give this patch a try:
https://bugzilla.kernel.org/attachment.cgi?id=99141

And boot the kernel with:
acpi_osi=honor acpi_osi=Linux

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