Last year I installed Debían on my mother in law’s network (an Acer Ferrari One 200). The thing ran fine, but gave some “firmware bug?” warnings. Since no new BIOS’ were available at that time, I left it at that.
When doing my yearly checkup and update round, there still wasn’t any new BIOS to be found. Annoying Acer! So I went around started digging in the ACPI DSDT tables to see if I could fix anything.
To dump them, you can either use the acpidump tool (
acpidump -b --table DSDT > /tmp/dsdt.aml) , or just do a
cat /sys/firmware/acpi/tables/DSDT > /tmp/dsdt.aml
Next, and decompile the thing with the
iasl (Intel ACPI compiler/decompiler):
iasl -d dsdt.aml. This should yield a file called
dsdt.dsl, which is human readable. Sortof :p
First thing to fish out is to see whether the syntax is correct. To find out, we can just try to recompile it with the command
iasl -tc dsdt.dsl.
In my case this didn’t exactly work:
ASL Input: DSDT.orig.dsl – 10886 lines, 405784 bytes, 4948 keywords
Compilation complete. 21 Errors, 6 Warnings, 18 Remarks, 1759 Optimizations
Amazed that this thing even booted!
(the reason for these mistakes is that many manufacturers use the Microsoft compiler which is a lot less strict when it comes to the DSL syntax. Intel’s compiler is less forgiving.)