Distribution: Gentoo Hardware Environment: Acer Ferrari 3000LMI Software Environment: Kernel 2.6.9 with ACPI enabled Problem Description and steps to reproduce: Ever since I switched to 2.6.9, I've had several problems regarding ACPI. Although I fixed most, one of them remains and although not fatal is REALLY annoying. It's regarding all the "special" buttons on my keyboard which call directly the BIOS (like brightness, disabling LCD backlit etc...). What happens is that for some reason, the calls get buffered and they're out of sync. What I mean is that the first 5 or 6 button presses do nothing, and then, next presses will start working but it will execute the first buttons presses. I know this sounds complicated but for example I start off by pressing on the button "Reduce brightness" for like 6 times. Nothing happens. Then, if I press for example on "Disable backlit", it will execute a Reduce brightness. So it's like calls are being buffered and are out of sync by like 6 presses. I end up having the correct sequence but I can never have what I want right away, I have to press on some other keys first. Now I could have lived with that, but the problem is that the event received when I plug or unplug my AC cord does the same thing ! So now, if I unplug my cord, I have to press 6 times on any special button so that acpid finally catches the unplug event ! Everything was working perfectly prior to 2.6.9.
Looks like the same problem as I've here - http://bugzilla.kernel.org/show_bug.cgi?id=3851 Yes, actually events are get buffered by EC. Try patching drivers/acpi/ec.c, I'm wonder if it works. ;-)
It works, thank you ! My faith is back now in 2.6.9 :)
Well, you closed a bug too early - it's still not fixed, this was just a proposed patch, so I'm reopening a bug, so Luming Yu can review this an probably mark it as duplicate for 3852. Also, there seems to be other problems - I've spoted the real cause for that as seems...
Oh sorry ! I was just too excited :)
Hi, I need to understand how hot key works on your specific laptop. So, please attach your DSDT. BTW, Could you give latest patch set at bug 3851 a try? Thanks, Luming
Created attachment 4255 [details] Here's the original DSTD
Created attachment 4256 [details] Here's the fixed version
The keys are handled by a special hardware (Dritek). It is activated by a special command that the acerhk driver sends. More info can be found by examining the driver. Here's my DSDT. There are three warnings and several errors (same error repeated).I fixed them all (I hope it's right). I will attach both. I will also give the patches a try later on. Georges.
I'd like to know when you press special button, does ACPI interrupt trigger? Could you watch /proc/interrupt to see if acpi can increase after you press special button? If there has ACPI interrupt, then ACPI could be able to handle that special button. From your DSDT, _Q0E will be called when pressing special button, in turn, Z005 will be called to handle some VGA stuff. Could you figure out what kind of special key are handled by Z005?
For the first part, the answer is yes, an ACPI interrupt is triggered (I monitored /proc/interrupts). For the second part, I have NO idea what you want me to do exactly. My knowledge is obviously much less than yours in that field. Do you think you could give me some guidelines ? Thanx. Georges.
For the issue described here, I'd like to know the testing results of patch mentioned at comment #5
Then, I'd like to follow up a right solution for your specific button.
True, I forgot about that. I'll test it tonight, when I get back home. I'll have to reverse the EC patch first, obviously. Stay tuned....
Damn, I just saw that the patch you posted is against 2.6.10, but I run on 2.6.9 :( So I can't test it yet.
*** This bug has been marked as a duplicate of 3851 ***