http://bugzilla.kernel.org/show_bug.cgi?id=11095





------- Comment #24 from [EMAIL PROTECTED]  2008-12-01 17:57 -------
could you please try to built the customized DSDT into kernel instead of
initrd?


    * Index
    * PowerTOP
    * Tickless Idle
    * Power Policy Manager
    * Applications Power Management
    * Processor Power Management
    * Power and Performance Measurement
    * BLTK
    * Linux ACPI
          o Introduction
          o Patch Flow
          o Get Latest Source Code
          o Applying Patches
          o Submitting Patches
          o Validation
          o Debug
          o Overriding a DSDT
          o Reference
          o Mailing Lists
          o Bugzilla
          o Utilities
          o FAQ
          o Download
    * ACPICA
    * Power QoS
    * Device and Bus Power Management
    * Display and Graphics Power Saving


Linux ACPI
line
Overriding a DSDT
Why override a DSDT?

The DSDT (Differentiated System Description Table) is the primary AML table in
the BIOS. Per the description of acpidump, the DSDT can be extracted from the
machine, the ASL modified, and a new AML DSDT can be compiled. The sections
below show two ways to tell Linux to use this modified DSDT instead of the
version that came with the BIOS.

Note that overriding the DSDT is a debugging technique only. It is not a viable
way to run a production system, as no vendor would support a system when the
customer has modified the system firmware, and no Linux Distributor could
possibly support modified system firmware either.

In the early days of Linux/ACPI, DSDT modifications were common to work around
both BIOS bugs and Linux bugs. However, the stated goal of the Linux/ACPI
project today is that Linux should run on un-modified firmware. Thus, the DSDT
database at the old http://acpi.sourceforge.net web site is now largely a
historical artifact.
Where do I get iasl for dis-assembling and compiling tables?

iASL is part of the ACPICA release,
http://acpica.org.
Note that "iasl -d" can now not only dis-assemble a DSDT and SSDT, but also
most other ACPI table images.
What if I also want to override the SSDTs?

If you need to modify the code present in an SSDT, then combine all of the
SSDTs into a DSDT override, modify it as necessary, and boot with
"acpi_no_auto_ssdt" to prevent Linux from automatically loading the SSDTs
listed in the RSDT/XSDT.
Is it important if my DSDT doesn't re-compile

Not necessarily. Many static ASL bugs that are rejected by iASL have
workarounds present in the Linux kernel. This is because even if you might be
able to modify and override your DSDT, most users with a system like yours
cannot.

Of course you need to get the DSDT to re-compile if you want to run your
modifications.
How to print to the Linux console from AML

When CONFIG_ACPI_DEBUG=y and when acpi.debug_level & 0x8, ASL stores to the
special object "Debug" will come out in the dmesg. eg

Store("hello world!", Debug)

Store(Local0, Debug)

[ACPI Debug] String: [0x0C] "hello world!"

[ACPI Debug] Integer: 0x00000042
How to Build a custom DSDT into the kernel
1. download the DSDT.hx in comment #22

2. Put it where the kernel build can include it:

      $ cp DSDT.hex $SRC/include/

3. Add this to the kernel .config:

      CONFIG_STANDALONE=n
      CONFIG_ACPI_CUSTOM_DSDT=y
      CONFIG_ACPI_CUSTOM_DSDT_FILE="DSDT.hex"

4. Make the kernel and off you go!

      You should see in dmesg:
      Table [DSDT] replaced by host OS


-- 
Configure bugmail: http://bugzilla.kernel.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug, or are watching someone who is.

-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
acpi-bugzilla mailing list
acpi-bugzilla@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/acpi-bugzilla

Reply via email to