• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

RealTime Kernel & ACPI

SchodMC

Newbie
Hi,

ich hab den RealTime Kernel installiert wie im JackLab-OpenSuSE Project besrieben. Hat soweit ganz gut funktioniert, nur läuft nun ACPI nicht mehr was bei meinem Laptop zu einem dauernd laufenden Lüfter führt - und das nervt. Wie kann ich ACPI mit dem Kernel verwenden?

Oder wie kann ich mit dem normalen Kernel Jack zum Laufen bewegen?
 
A

Anonymous

Gast
Schau mal mit make menuconfig unter:

Power management options (ACPI, APM) --->
[*] Power Management support
ACPI (Advanced Configuration and Power Interface) Support --->
[*] ACPI Support[/code]

Das müsste eigentlich nach dem clonen der SuSE Default Config so ausehen und ACPI laufen. Wenn nicht, mehr Infos, welcher Chip auf deinem Laptop etc, was für Kernelmeldungen....

Jack ohne rt-lsm kriegt man nur zum laufen wenn man sich grafisch als Root einloggt. Ohne rt-patches wird die Audio Echtzeitleistung grausig sein.
 
OP
S

SchodMC

Newbie
Ich hab ein Acer Aspire 1500 Noteboot. Mit dem standard-Kernel von OpenSuSE 10.0 ist das ganze kein Problem. Mit dem RealTime Kernel läuft ACPI irgendwie nicht richtig. Es wird beim starten auch "failed" ausgegeben.

Folgendes kommt, wenn ich "rcacpi restart" eingeb:

Shutting down acpid done
acpid: loading ACPI modules ( ) failed
Starting acpid done


Wenn ich dann dmesg eingeben, ist folgendes zu sehen:

ACPI: AC Adapter [AC] (on-line)
ACPI: Battery Slot [BAT0] (battery absent)
ACPI: Power Button (FF) [PWRF]
ACPI: Lid Switch [LID]
ACPI: Sleep Button (CM) [SLPB]
processor: Unknown symbol tsc_c3_compensate
processor: Unknown symbol tsc_c3_compensate
thermal: Unknown symbol acpi_processor_set_thermal_limit
eth0: no IPv6 routers present
processor: Unknown symbol tsc_c3_compensate
speedstep_centrino: Unknown symbol acpi_processor_notify_smm
speedstep_centrino: Unknown symbol acpi_processor_unregister_performance
speedstep_centrino: Unknown symbol acpi_processor_register_performance
processor: Unknown symbol tsc_c3_compensate
powernow_k8: Unknown symbol acpi_processor_notify_smm
powernow_k8: Unknown symbol acpi_processor_unregister_performance
powernow_k8: Unknown symbol acpi_processor_register_performance
processor: Unknown symbol tsc_c3_compensate
powernow_k7: Unknown symbol acpi_processor_notify_smm
powernow_k7: Unknown symbol acpi_processor_unregister_performance
powernow_k7: Unknown symbol acpi_processor_register_performance
processor: Unknown symbol tsc_c3_compensate
acpi_cpufreq: Unknown symbol acpi_processor_notify_smm
acpi_cpufreq: Unknown symbol acpi_processor_unregister_performance
acpi_cpufreq: Unknown symbol acpi_processor_register_performance
SFW2-INext-DROP-DEFLT IN=eth0 OUT= MAC= SRC=10.0.11.34 DST=224.0.0.251 LEN=106 TOS=0x00 PREC=0x00 TTL=255 ID=6 DF PROTO=UDP SPT=5353 DPT=5353 LEN=86
SFW2-INext-DROP-DEFLT IN=eth0 OUT= MAC= SRC=10.0.11.34 DST=224.0.0.251 LEN=106 TOS=0x00 PREC=0x00 TTL=255 ID=7 DF PROTO=UDP SPT=5353 DPT=5353 LEN=86
SFW2-INext-DROP-DEFLT IN=eth0 OUT= MAC= SRC=10.0.11.34 DST=224.0.0.251 LEN=106 TOS=0x00 PREC=0x00 TTL=255 ID=8 DF PROTO=UDP SPT=5353 DPT=5353 LEN=86
processor: Unknown symbol tsc_c3_compensate
processor: Unknown symbol tsc_c3_compensate
thermal: Unknown symbol acpi_processor_set_thermal_limit
SFW2-INext-DROP-DEFLT IN=eth0 OUT= MAC= SRC=10.0.11.34 DST=224.0.0.251 LEN=106 TOS=0x00 PREC=0x00 TTL=255 ID=9 DF PROTO=UDP SPT=5353 DPT=5353 LEN=86
processor: Unknown symbol tsc_c3_compensate
processor: Unknown symbol tsc_c3_compensate
thermal: Unknown symbol acpi_processor_set_thermal_limit

irgendwie seltsam...
 
A

Anonymous

Gast
Ich verschieb den Thread mal nach Kernel Hacking, ich glaub da isser besser aufgehoben....
 

Gimpel

Guru
irgendwie scheint etwas mit den acpi modulen nicht zu stimmen.

mach mal beim laufenden rt-kernel ein
Code:
depmod -a
und dann ein rcacpi restart
 
OP
S

SchodMC

Newbie
Hat nichts geholfen. Aber ich hab bei meinen Recherchen im Netz heraus gefunden, dass es wohl mit dem rt13 path ein problem gab, dass eben die Funktion "tsc_c3_compensate" rausgeschmissen wurde. Mit dem rt14 Patch ist die funktion zwar wieder da, aber wohl nicht sauber exportiert oder so, keine Ahnung. Auf jeden Fall funktioniert die "thermal-control" sonst nicht - genau das problem das ich hab.

Werd heute Abend mal probieren, den Teil vom ACPI direkt in den Kernel einzulinken. Mal schaun was dann passiert.
 
OP
S

SchodMC

Newbie
Hab's hinbekommen (zumindest teilweise). Ich hab den betroffenen Teil direkt in den Kernel kompiliert. Jetzt bringt zwar ACPI immer noch "failed" beim starten - der Lüfter läuft aber nicht non-stop auf voller power!
 
A

Anonymous

Gast
SchodMC schrieb:
Hab's hinbekommen (zumindest teilweise). Ich hab den betroffenen Teil direkt in den Kernel kompiliert. Jetzt bringt zwar ACPI immer noch "failed" beim starten - der Lüfter läuft aber nicht non-stop auf voller power!
Klasse :)
Bitte schreib mal genau hin was du gemacht hast, damit ich das ins openSUSE Tutorial mit übernehmen kann.

Danke schon mal...
 
OP
S

SchodMC

Newbie
Ganz einfach. Hab in "make menuconfig" in der Option:

Power management options (ACPI, APM) --->
ACPI (Advanced Configuration and Power Interface) Support --->

Die Bereiche:

(*) Fan
(*) Processor
(*) Thermal Zone

alle drei mit dem * versehen - sie also direkt in den Kernel hinein kompiliert. Seit dem tut's. (Waren vorher auf "m"). Wichtig: rt14 vom RealTime Patch - aber das ist ja sowieso der welcher zum Download angeboten wird.

Ob "Fan" auch hinein kompiliert werden muss, weiss ich nicht. Ich hab's halt mal gemacht. Und wie gesagt: der Lüfter verhält sich nun so wie unter'm Standard-Kernel, aber acpid bringt beim Start immer noch ein "failed". Hab aber noch nichts negatives bemerkt. System fährt herunter wenn ich den ausschalter betätige, Monitor off funktioniert auch... keine Ahnung was ihm nicht passt. dmesg zeigt auch nichts hilfreiches an! :?

Ich hoffe, das bringt Dich weiter. Wenn ich sonst irgenwie helfen oder das Projekt unterstützen kann, sag einfach bescheid. ;)

[EDIT] Korrigiere: ausschalten funktioniert nicht. Werd mich evtl. morgen damit nochmal beschäftigen.
 
OP
S

SchodMC

Newbie
Also,

hab die ganzen ACPI-Module nun in den Kernel eingelinkt (also AC Adapter, Battery, Button, Video, Generic Hotkey, Fan, Processor und Thermal Zone). Zwar bringt er beim Starten von acpid immer noch failed, aber das System verhällt sich normal, soweit ich das beurteilen kann. Herunterfahren und ausschalten per Power-Knopf funktioniert, der Lüfter läuft nur wenn notwendig und der Monitor schaltet sich nach einer gewissen Zeit ab.

Ich hab auch die Boot-Nachrichten angeschaut, aber keine Fehlermeldung gefunden die irgendwie logisch erscheint bzgl. des startens von acpid.

Ich hoffe, das hillft DIr weiter.
 
Folgende Änderung behebt den Fehler wirkungsvoll:
In der Datei /usr/src/linux-2.6.13.4-realtime/arch/i386/kernel/tsc.c folgende Stelle suchen:
Code:
void tsc_c3_compensate(unsigned long usecs)
{
        u64 cycles = (usecs * tsc_khz)/1000;
        tsc_c3_offset += cycles;
}
Danach fügt man folgenden Code ein:
Code:
EXPORT_SYMBOL_GPL(tsc_c3_compensate)

Greetz, HB
 
Oben