Bugzilla – Bug 226069
AC adapter and battery states are not updated on HP NC6400 and HP NX7400
Last modified: 2007-01-10 11:38:48 UTC
when i pull off the power cable, kpowersave don't detect it. icon and status is still on cable. /proc/acpi/ac_adapter/C1AE/state don't update any data too. battery does apparently not discharge.
This also applies to NX7400! Many recent HP laptops are affected by this problem (often called "bad state"). It would be enough to compile psmouse as a module and remove it before shutdown: # echo "/sbin/modprobe -r psmouse" > /etc/init.d/host.local Unfortunately openSuSE's kernel comes with psmouse built-in so it doesn't work. I also can't recompile my kernel because the support for my Wireless card is not in the kernel sources (ipw3945). PLEASE FIX THE KERNEL CONFIGURATION! Other distros (i.e. Ubuntu) already come with psmouse compiled as a module!!! Take a look at this website: http://emisca.altervista.org/nx7400/.
Sorry, a mistake: # echo "/sbin/modprobe -r psmouse" > /etc/init.d/halt.local
(In reply to comment #1) > This also applies to NX7400! Many recent HP laptops are affected by this > problem (often called "bad state"). > > It would be enough to compile psmouse as a module and remove it before > shutdown: > > # echo "/sbin/modprobe -r psmouse" > /etc/init.d/host.local Are you sure? Loading psmouse as a module will fix the battery state? > Take a look at this website: http://emisca.altervista.org/nx7400/. This says nothing about battery problems. Also, the nx7400 i have here does not have a battery problem.
(In reply to comment #3) > Are you sure? Loading psmouse as a module will fix the battery state? Yes, it does. Follow this instruction to have a working laptop: 1) install the kernel-sources, gcc, gcc-c++ and ncurses-devel from SUSE 2) in /usr/src/linux do "make cloneconfig" 3) in the files /usr/src/linux/.config replace the line "CONFIG_MOUSE_PS2=y" by "CONFIG_MOUSE_PS2=m" 4) compile and install the kernel (make; make modules_install; make install) 5) in the file /etc/sysconfig/kernel" add the value "psmouse" to the variable MODULES_LOADED_ON_BOOT 6) to the file /etc/init.d/halt.local add the line "rmmod psmouse" 7) Shut down the laptop 8) Unplug the battery 9) Wait 5 seconds and plug the battery again 10) Power on the laptop and forget that > > Take a look at this website: http://emisca.altervista.org/nx7400/. > This says nothing about battery problems. Have you read it?!? Take a look at "ACPI problems and fixes, bad state problem" paragraph... > Also, the nx7400 i have here does not have a battery problem. There are many models called NX7400... maybe you're so luck to have one working out-of-box. However this is the only way to make "bad state" go away: I've tested it and it works!
Please do not play with severity/priority switches. I know about these bugs. It's right that the psmouse module workarounds an ACPI bug, but AFAIK it's not this one, but it's cpufreq not going up to the highest freq. This one is already fixed properly. It's ok to let this one set to critical. The problem is that the patches for that one are quite risky and I want to have them tested on a wide range on machines first. I can provide you with a test kernel the next days.
(In reply to comment #5) > Please do not play with severity/priority switches. > I know about these bugs. Sorry but this bug makes the distro (which is a very good distro) almost useless on my laptop so I changed priority... > It's right that the psmouse module workarounds an ACPI bug, but AFAIK it's not > this one, but it's cpufreq not going up to the highest freq. This one is > already fixed properly. Which one is fixed? The ACPI problem or the CPUfreq one? I had both of them with openSuSE 10.2... > It's ok to let this one set to critical. The problem is that the patches for > that one are quite risky and I want to have them tested on a wide range on > machines first. I can provide you with a test kernel the next days. Ok, thanks...
The cpufreq one (here a little extract of the discussion of the patch): > > I don't know about the HP NX 6125, but on my nc 6320, you have to rmmod > > psmouse before you shutdown or reboot the computer, otherwise something > > upsets the BIOS and it won't run at full speed on next boot up. > The proposed patch fix exactly this one on the HP NX 6125. Do you really still see the cpufreq not going up to the highest freq with 10.2 final?
(In reply to comment #7) > Do you really still see the cpufreq not going up to the highest freq with 10.2 > final? I checked the CPU frequency when I recompiled the kernel and it went up to 1.33GHz and down to 1GHz. I have a Centrino Core Duo 1.66GHz. I tried many linux distros and NONE gave me the maximum speed...
Alessandro, I am quite sure you are wrong. I just checked with a SLE10 kernel without the mentioned patch and I checked with a 10.2 kernel (2.6.18.2-34, not a vanilla this one might not have that patch yet!) on a HP nc6400. The SLE10 kernel (patch is in SP1, this one should also work then) shows the symptom, I only have 1.66 GHz The 10.2 kernel has this fixed and goes up to 2GHz. So please do not recompile yourself and recheck on a 10.2 final, binary kernel and your machine should go up to 1.66GHz. These problems have nothing to do with the mouse, it's just pure luck that these bugs can be workarounded by a totally unrelated module.
(In reply to comment #9) > So please do not recompile yourself and recheck on a 10.2 final, binary kernel > and your machine should go up to 1.66GHz. OK I'll try that but I don't really care too much about speed, what I *really* need is that ACPI works the way it should (when I connect/disconnect my laptop from AC power, AC adapter and battery status MUST update!). > These problems have nothing to do with the mouse, it's just pure luck that > these bugs can be workarounded by a totally unrelated module. I don't know if it's a BIOS bug or a kernel bug... removing the psmouse module before shutdown/reboot works. Moreover it's harmless to compile PS/2 mouse support as a module so I don't see why it's built in the kernel. The only thing I'm asking for is to change a "y" in a "m" in the kernel configuration, that's all.
Be careful: I also run into this with 10.2. AFAIK this is because I booted into SLED10 once and got the limited states. The bad system state survives a reboot and even shutdown somehow. I removed battery and AC for a minute or so, that should help, but didn't, maybe I should have removed the power for longer time, no idea. At lease it should work with a "only 10.2 booted system"...
(In reply to comment #11) > The bad system state survives a reboot and even shutdown somehow. I know... it's the stragest thing at all... When I remove my battery the system goes back to normal state in few seconds. However, I'm also using Ubuntu 6.10 and its kernel has psmouse compiled as a module... Maybe unloading that module before shutdown/reboot is not the right solution and it's just a workaround but, at the moment, is the only *secure* way to solve the problem. I hope that either HP will finally fix the BIOS or someone will find a good patch for the kernel as soon as possible.
Created attachment 110004 [details] ignore - wrong bug
Created attachment 110005 [details] ignore - wrong bug
Created attachment 110006 [details] ignore - wrong bug
Created attachment 111478 [details] This one should fix it (see http://bugzilla.kernel.org/show_bug.cgi?id=5534, comment #180) A similar patch already was mainline for some weeks, but broke Linus' machine and got reverted again. It got reworked and this is what Alexey with help from some other good kernel guys suggests for 2.6.20 now. I already adjusted and committed this one to SLED10-SP1. Andreas, Andi can I commit this to 10.2? I would wait one SLED10-SP1 preview (patch didn't get into Preview1), if I don't get any bug reports after about a week or two, I would like to add this one to 10.2, is that ok?
*** Bug 224286 has been marked as a duplicate of this bug. ***
Looking at the history of the bug, we really need more testers. Could you submit it to kernel CVS head while it's still at 2.6.18 now so that we get more testing? If that and SP1 are fine, I'm ok with adding this to 10.2 after two weeks.
That patch doesn't resolve the problem (it's about something else). I opened a new bug at kernel bugzilla (http://bugzilla.kernel.org/show_bug.cgi?id=7689), it had already been assigned... I'm waiting for news.
comment #18: Yes, of course after the CVS got branched I can just push it... done patch is committed to CVS Head. AFAIK kernel of the day sync to ftp does not work fine ATM. I will place a kernel rpm to test into my home soon as compilation is through and point you to a test kernel. This patch should help a lot people with a recent HP and thermal, battery or fan update problems.
Hi Thomas, I could confirm the "bad state" problem is still present in the HP nx9420 with bios F.17 and OpenSuse 10.2. The workaround is removing psmouse before shutdown. Also, not related with above, max cpu freq is not reached by default when starting OpenSuse 10.2. I have to do cpufreq-set -c 0 -u 1833000 ; cpufreq-set -c 1 -u 1833000 and then all is working as it should. I would be happy to test your patched kernel. Thanks. Philippe.
*** Bug 200169 has been marked as a duplicate of this bug. ***
Collecting all ACPI HP bugs that seem to have similar issues in 179702 now, 10.1 and 10.2. *** This bug has been marked as a duplicate of bug 179702 ***