Warum unterscheidet sich meine DSDT-Tabelle von dem, was ich online gefunden habe?

2

Ich habe in der DSDT-Tabelle ein Feld gefunden, in dem ich Änderungen vornehmen möchte http://www.ztex.de/misc/c2ctl.e.html Im Allgemeinen möchte ich das _PSS-Feld für den Prozessor ändern, damit auf der CPUfreq-Treiberoberfläche mehr Frequenzpegel verfügbar sind. Ich versuche diesen Befehl zu verwenden, um die DSDT-Tabelle von meinem Desktop zu trennen (Linux2.6.29, Intel CORE 2):

 cat /proc/acpi/dsdt > dsdt.aml 
 iasl -d dsdt.aml

Dann habe ich eine Datei dsdt.dsl wie folgt (sehr lang, also zeige ich nur den Anfang der Datei):

    /*
     * Intel ACPI Component Architecture
     * AML Disassembler version 20090123
     *
     * Disassembly of dsdt.aml, Mon May  6 20:41:40 2013
     *
     *
     * Original Table Header:
     *     Signature        "DSDT"
     *     Length           0x00003794 (14228)
     *     Revision         0x01 **** ACPI 1.0, no 64-bit math support
     *     Checksum         0x46
     *     OEM ID           "DELL"
     *     OEM Table ID     "dt_ex"
     *     OEM Revision     0x00001000 (4096)
     *     Compiler ID      "INTL"
     *     Compiler Version 0x20050624 (537200164)
     */
    DefinitionBlock ("dsdt.aml", "DSDT", 1, "DELL", "dt_ex", 0x00001000)
    {
        Method (DBIN, 0, NotSerialized)
        {
            Noop
        }

        Scope (\)
        {
            Device (_SB.VBTN)
...................

Ich kann das _PSS-Feld nicht finden, wie auf der oben angegebenen Website angegeben. Keine Ahnung warum? Ich bin sicher, dass der aktuelle cpufreq-Treiber 4 verfügbare Frequenzstufen anzeigt. Zumindest sollte also etwas in der Tabelle sein, das dies zeigt ... richtig? Hat hier schon jemand mit dem DSDT-Tisch gespielt? Vielen Dank,

Hao Shen
quelle
Und selbst in der ACPI-Spezifikation acpi.info/DOWNLOADS/ACPIspec30a.pdf Ich habe das Feld _PSS gesehen (suche nur nach PSS). Warum hat meine Datei das nicht ...
Hao Shen

Antworten:

1

Es gibt andere Tabellen, die ACPI-Methoden enthalten, und solche, neben dem primären DSDT gibt es auch sekundäre SSDTs.

Es gibt mehrere Möglichkeiten, diese Tabellen abzurufen. Auf meinem 3.9-Kernel existiert ein /sys/firmware/acpi/tables Verzeichnis:

$ ls /sys/firmware/acpi/tables/{DSDT,SSDT*}
/sys/firmware/acpi/tables/DSDT
/sys/firmware/acpi/tables/SSDT1
/sys/firmware/acpi/tables/SSDT2
# for i in /sys/firmware/acpi/tables/{DSDT,SSDT*}; do cp $i ${i##*/}.aml; done
$ iasl -d *.dat

Wenn Ihr Kernel das nicht hat, können Sie auch acpidump (nicht von iasl, sondern vom Kernel-Quellbaum) ausprobieren. Beispielpaket für Arch Linux ):

# acpidump > acpidump.txt
$ acpixtract acpidump.txt
$ iasl -d *.dat
Lekensteyn
quelle