PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Wie neuen ACPI Table in Kernel einfügen?



ollonois
12.05.06, 16:01
Hallo
Ich habe Probleme mit ACPi auf meinem Notebook.
Jetzt habe ich mal auf http://acpi.sourceforge.net geschaut und die bieten für viele Notebooks angepasste ACPI Table an. Unter anderem auch für meines. Habe die Datei ASUS-S1300N-0205-original.asl geladen und bin nach folgendem HowTo (http://acpi.sourceforge.net/wiki/index.php/HowToOverrideTables?PHPSESSID=235998649ad19bc1591c 4aadf9ea88a6) vorgegangen.

Habe dann auch wie da beschrieben mit Schritt 4 begonnen und den Compiler geladen.

Allerdings habe ich eine asl und keine dsl Datei. Kompiliert hat es dennoch und eine DSDT.aml kam dabei herraus und eine ASUS-S1300N-0205-original.hex
Aus dem HowTo erschließt sich jetzt nur nicht wie es damit weitergeht. dort ist von einer diff Datei die Rede. Diese habe ich allerdings nicht.
Im Forum habe ich diverse Beträge gefunden aber keinen der bei meinem Problem weiterhilft.
Kann mir jemand sagen wie es nun mit der aml Datei weitergehen soll?

quinte17
15.05.06, 07:52
also der diff ist ja auf der seite des howtos gepostet:


--- linux/drivers/acpi/osl.c.orig

+++ linux/drivers/acpi/osl.c

@@ -215,13 +215,18 @@

return AE_OK;

}



+/**/static const

+#include "/tmp/dsdt.hex"

+

acpi_status

acpi_os_table_override (acpi_table_header *existing_table,

acpi_table_header **new_table)

{

if (!existing_table || !new_table)

return AE_BAD_PARAMETER;



+/**/if (strncmp(existing_table->signature,"DSDT",4))

*new_table = NULL;

+/**/else *new_table = (struct acpi_table_header *)AmlCode;

return AE_OK;

}


mit diesem sollst du die kerneluellen patchen und dann deinen kernel neu compilen...
beim compilen musst du aber dann beachten, dass in diesem patch ein #include auf das tmp directory stattfindet.
>> +#include "/tmp/dsdt.hex"

in dem howto steht auch drin, dass du diese zeile editieren sollst, um auf deine *.hex zu zeigen...

greetz

edit: das oben geschriebene gilt nur für 2.4.x und <2.6.9!!
wenn du einen aktuellen kernel hast, dann ists einfacher..

auszug aus dem howto:


If you use a late 2.6 kernel (mine is 2.6.9-gentoo-r6) just do the following:

1) go into your kernel-config


make menuconfig
2) configure:


Device Drivers

Generic Driver Options

[ ] Select only drivers that don't need compile-time external firmware

[ ] Prevent firmware from being built

Power managment options (ACPI, APM)

ACPI (Advanced Configuration and Power Interface) Support

Include Custom DSDT

(dsdt.hex) Custom DSDT Table file to include
3) exit & recompile your kernel (dont forget to copy your fixed dsdt to the path you specified)


make clean bzImage modules

ollonois
23.06.06, 17:11
So nach Wochen des Bastelns bin ich ratlos. Auch mit dem neuen DSDT-Table bootet der Kernel auf meinem Notebook nicht. Habe sämtliche Variation ausprobiert ohne Erfolg.
Hat vielleicht noch jemand eine Idee oder Erfahrung im einbinden einer anderen DSDT-Datei?