![]() |
ubuntu.com - launchpad.net - ubuntu help
|
|
|||||||
|
Tutorials & Tips The place to find Ubuntu related Tips & Tricks. |
|
|
Thread Tools | Display Modes |
|
|
#1 |
|
Fresh Brewed Ubuntu
![]() Join Date: Jan 2007
Location: Kentucky, USA
Beans: 1,526
|
HOWTO Fix A Buggy DSDT File
This guide will help you fix your DSDT file to fix common ACPI problems on any Debian based OS. With Mint 6/Ubuntu 8.10, I started having a lot of problems with my laptop thermal temps, and not wanting to boot without holding down a keyboard key. This was in my case because of a buggy DSDT file. To read more about ACPI/DSDT go here: http://forums.opensuse.org/how-faq-r...uggy-dsdt.html It is the catalyst behind this how to. The process is a little different for Debian based operating systems. This how to will show you how to do it with Mint/Ubuntu.
WARNING: This might mess up your operating system. Even if you have zero errors after fixing the DSDT, it may still cause you to not be able to boot your OS. It will not harm your PC or hardware. Before trying this tutorial, try updating your BIOS to fix bugs first. This is a last resort to try and manually fix DSDT related bugs. The first thing we need to do is install the Intel DSDT compiler. Open a terminal and run Code:
sudo apt-get install iasl Code:
sudo cat /proc/acpi/dsdt > dsdt.dat Code:
iasl -d dsdt.dat Code:
iasl -tc /home/<yourusername>/dsdt.dsl Code:
dsdt.dsl 349: Method (\_WAK, 1, NotSerialized) Warning 1079 - ^ Reserved method must return a value (_WAK) Code:
iasl -tc /home/<yourusername>/dsdt.dsl http://forums.opensuse.org/how-faq-r...uggy-dsdt.html https://wiki.edubuntu.org/LaptopTestingTeam/HPdv5z http://forums.opensuse.org/archives/...uggy-dsdt.html http://forums.gentoo.org/viewtopic.php?t=122145 You might get lucky and find one already fixed for your make/model here: http://acpi.sourceforge.net/dsdt/view.php If so then you can skip to the last two commands. Once you have successfully edited the dsdt.dsl file, we should have a dsdt.aml in your home folder. This was the goal of the how to. WARNING: The commands up till this point have not made any changes to your system. You can simply delete the files that have been created. After the last two commands, you will be using a custom DSDT at boot. This is the point of no return. These commands will rename the dsdt.aml file and copy it to your /etc/initramfs-tools folder. Then we will update the initrd image to include the DSDT override at boot. The very last command will update the initrd image. You need to replace "kernel version" with your kernel version. You can see it by running Code:
uname -r Code:
sudo cp dsdt.aml /etc/initramfs-tools/DSDT.aml Code:
sudo update-initramfs -u -k kernel-version Code:
dmesg > /home/yourusername/Desktop/dmesg Code:
[ 0.020495] ACPI: Checking initramfs for custom DSDT [ 0.353464] ACPI: Found DSDT in DSDT.aml. [ 0.353470] ACPI: Override [DSDT- MCP67], this is unsafe: tainting kernel [ 0.353478] ACPI: Table DSDT replaced by host OS [ 0.353482] ACPI: DSDT 00000000, 7CB3 (r1 NVIDIA MCP67 6040000 INTL 20061109) [ 0.353487] ACPI: DSDT override uses original SSDTs unless "acpi_no_auto_ssdt" Code:
acpi_osi="Linux" EDIT: To remove a custom DSDT, delete the DSDT.aml file with Code:
sudo rm /etc/initramfs-tools/DSDT.aml Code:
sudo update-initramfs -u -k kernel-version EDIT: This will not work with kernels that are still in development. The patches that allow the custom DSDT are not included until the kernel is released as "stable". UPDATE: The kernel dev's will no longer use the patch to enable custom DSDT files for Karmic 9.10 and beyond. Jaunty 9.04 is the last version this will work on. You are urged to file a bug report for DSDT errors.
__________________
"The only thing necessary for the triumph of evil is for good men to do nothing." Edmund Burke Last edited by 67GTA; August 18th, 2009 at 06:56 PM.. |
|
|
|
| Bookmarks |
| Thread Tools | |
| Display Modes | |
|
|