1 |
Hi, |
2 |
|
3 |
I have a laptop which apparently has a buggy DSDT. It is possible to |
4 |
decompile and recompile it, including it in an in-kernel initramfs to |
5 |
override the one in BIOS, as described by the somewhat outdated |
6 |
example at: |
7 |
http://www.lesswatts.org/projects/acpi/overridingDSDT.php |
8 |
|
9 |
My main problem is that the AML code that it generates is completely |
10 |
foreign to me and I'm unable to tell what exactly the problem is. Most |
11 |
examples on the web explain fixing compilation errors, which are |
12 |
fairly obvious. Mine has no errors - only warnings. I think there is a |
13 |
logical error leading to an infinite loop condition. My previous |
14 |
attempts to fix it have only resulting in even worse results (no |
15 |
battery readings at all, ever, lack of power management in general, |
16 |
that kind of fun stuff). |
17 |
|
18 |
Normally, my laptop battery readings will work perfectly well until |
19 |
suddenly, randomly it shows this in dmesg: |
20 |
|
21 |
[ 6286.707038] ACPI Error: Method parse/execution failed |
22 |
[\_SB_.PCI0.PIB_.EC0_.SMWR] (Node ffff88007d028348), |
23 |
AE_AML_INFINITE_LOOP (20120111/psparse-536) |
24 |
[ 6286.707074] ACPI Error: Method parse/execution failed |
25 |
[\_SB_.PCI0.PIB_.EC0_.SMSL] (Node ffff88007d028398), |
26 |
AE_AML_INFINITE_LOOP (20120111/psparse-536) |
27 |
[ 6286.707096] ACPI Error: Method parse/execution failed |
28 |
[\_SB_.PCI0.PIB_.EC0_._Q09] (Node ffff88007d028438), |
29 |
AE_AML_INFINITE_LOOP (20120111/psparse-536) |
30 |
|
31 |
After that, the battery state can no longer be read and eventually |
32 |
spontaneously powering off without proper shutdown when the battery |
33 |
dies. |
34 |
|
35 |
The problem does not occur in Microsoft Windows (or windows handles it |
36 |
better), but I don't normally use Microsoft Windows, so that doesn't |
37 |
help me any. :) |
38 |
|
39 |
Has anyone on this list dealt with this before, or have any ideas to |
40 |
help guide me along? I'd be happy to send the code to anyone |
41 |
interested in trying their hand at fixing it. |
42 |
|
43 |
Thanks, |
44 |
Paul |