AW: Re: Der AOpen i915GMm-HFS Thread
Habe nach langem mal wieder in den Thread geschaut, offenbar genau rechtzeitig
Hallo Franzose,
franzose schrieb:
Linux und dem von mir angesprochenen Dienst ist das relativ egal. Die werten nur den CPU-String aus und schalten danach Speedstep ein.
Den rcpowersaved kenne ich nicht (man lernt nie aus), aber wenn Du den "normalen" Speedstep-Support des Standard-Kernels möchtest (d.h. die Eintrage im /sys/devices/system/cpu/cpu0/cpufreq/, so dass Userspace-Tools wie z.B. powernowd funktionieren), dann spielt das BIOS schon eine Rolle. Die Kernel-Entwickler haben nur die Frequenz-/Spannungstabellen für die Banias in den Kernel aufgenommen. Bei den Dothans gibts verschiedene Voltage-Ids, so dass hier das Hardcoden nicht möglich war. Ohne entsprechende ACPI-Einträge im BIOS macht der Kernel dann auch kein Speedstep . Mit BIOS 1.06 oder früher mussten wir das leidvoll erfahren, seit BIOS 1.07 sind die _PCT, _PSS und _PPC-Sections drin, so dass Speedstep mit dem Standard-Kernel klappt. Man nur noch tricksen, wenn man die CPU undervolten möchte
Hallo Tom,
TomSoniq schrieb:
Die _PCT, _PSS und _PPC-Sections fehlen also immer noch, trotzdem macht der powersaved von SuSE 10.0 brav sein SpeedStep. Irgendwoher muß er die passenden Spannungen und Frequenzen also wissen, bloß worher?
Die Sections sind in einer zusätzlichen Tabelle, der SSDT. Die kannst Du mit den pmtools extrahieren:
Code:
acpidmp SSDT > SSDT.bin
iasl -d SSDT.bin
less SSDT.dsl
Zum Undervolten habe auch mit BIOS 1.07 die DSDT modifiziert (genauso wie zuvor, _PCT, _PSS und _PPC ergänzen), ich weiss nicht, ob's eine Möglichkeit gibt, auch die SSDT zu ersetzen. Die Tabellen sind dann zwar doppelt im System, und der Kernel bringt beim Booten auch eine Warnung, aber die stört mich nicht, da der Kernel meine modifizierten Werte aus der DSDT nimmt.
TomSoniq schrieb:
Weißt Du, woher ich für meinen 740'er die Tabelle der Frequenzen und Spannungen herbekomme? In den Datenblättern der Prozessoren mit 533'er FSB habe ich bisher nichts gefunden.
Die stehen im resultierenden SSDT.dsl in der NPSS Section (eine AOpen-spezifische Sub-Section).
Die jeweils letzten beiden Hex-Zahlen sind Multiplikator und Voltage-Index, also z.B. 0x00000C26 ist Multiplikator 12 (0xC) und Voltage-Index 38(0x26), also Spannung 1,308V (0.7+0.016*38).
Unter
http://i915gmm.gratiswiki.dk/cgi-bin/gratiswiki.pl?I915gmm.Gratiswiki.Dk gibts eine Infosammlung zum i915GMm unter Linux
Ciao,
Wolfgang