Skip to contentSkip to conversation

Dell DSDT patch request

DISCUSSION Kevin Kress 3 participants 5 messages Mar 6, 2003 – Mar 10, 2003 4 messages not in the archive ACPI

lore
Share & tools
lore
#0 lore raw

I saw a message in the archives from mid Jan 03 about a fixed DSDT for a Dell notebook. It mentioned that the patch worked for both a 82k and another C class notebook. I am assuming that said DSDT is the one linked from the Wiki for fixed DSDTs. Unfortunately that link is dead.

The original message said it contained a patch to fix the DSDT, but the archive does not appear to hold onto the attachments. Could someone either resend the attachments to me or if anyone knows who to contact, have the the link to the fixed DSDT repaired.

Thanks in advance,

--Kevin Kress

A message that is not in the archive (sent off-list or not yet received): [email protected]

#2 lore raw
Quoted 4 lines · Kevin Kress

I saw a message in the archives from mid Jan 03 about a fixed DSDT for a Dell notebook. It mentioned that the patch worked for both a 82k and another C class notebook. I am assuming that said DSDT is the one linked from the Wiki for fixed DSDTs. Unfortunately that link is dead.

I just added links to my patched version for the i8200. See http://acpi.sourceforge.net/wiki/index.php/FixedDsdts

(hint: if someone else wants to add links containing a "~" to that page, encode it as "%7E" :-) )

Markus Wiesner

Signature · 10 lines
For every complex problem, there is a solution that is simple, neat,
and wrong.
                -- H. L. Mencken


-------------------------------------------------------
This SF.net email is sponsored by: Etnus, makers of TotalView, The debugger 
for complex code. Debugging C/C++ programs can leave you feeling lost and 
disoriented. TotalView can help you find your way. Available on major UNIX 
and Linux platforms. Try it free. www.etnus.com

A message that is not in the archive (sent off-list or not yet received): 20030306213936.GB5185-aCYJ90g6FbN3mO1V46hDx7oZL2q1Rlic@public.gmane.org

#4 lore raw
Quoted 6 lines · Markus Wiesner
Quoted 4 lines · Kevin Kress

I saw a message in the archives from mid Jan 03 about a fixed DSDT for a Dell notebook. It mentioned that the patch worked for both a 82k and another C class notebook. I am assuming that said DSDT is the one linked from the Wiki for fixed DSDTs. Unfortunately that link is dead.

Quoted 7 lines

I just added links to my patched version for the i8200. See http://acpi.sourceforge.net/wiki/index.php/FixedDsdts

(hint: if someone else wants to add links containing a "~" to that page, encode it as "%7E" :-) )

Markus Wiesner

Thanks a lot! I was able to patch my i81k A14 DSDT with it, looks like they used the same buggy code all over the place. I will post my i81k a14 DSDT as soon as I can verify it works.

I am having trouble getting it to work in the latest patch (2.4.21-pre4 acpi-20030228). It looks like the Wiki page on installing a custom DSDT is out of date. osl.c has some new override functionality now, but I can't seem to find out where to hook my DSDT in.

Could someone please update that Wiki page to reflect the new code structure.

Thanks,

--Kevin Kress

A message that is not in the archive (sent off-list or not yet received): [email protected]

#6 lore raw

Kevin,

I have applied the dsdt and followed the http://www.cpqlinux.com/acpi-howto.html instructions. It looks like the recent updates have moved the structure name has been moved from a structure tag (if my C terminology is correct), so you must replace 'acpi_table_header' with 'struct acpi_table_header' and it will compile cleanly.

Markus,

It works great, Thermal Zone and Battery works fine. There seems to be a *MAJOR* performance issues reading battery status.

Regards,

Matthew

Quoted 33 lines · Kevin Kress
Quoted 7 lines · Markus Wiesner
Quoted 4 lines · Kevin Kress

I saw a message in the archives from mid Jan 03 about a fixed DSDT for a Dell notebook. It mentioned that the patch worked for both a 82k and another C class notebook. I am assuming that said DSDT is the one linked from the Wiki for fixed DSDTs. Unfortunately that link is dead.

Quoted 7 lines

I just added links to my patched version for the i8200. See http://acpi.sourceforge.net/wiki/index.php/FixedDsdts

(hint: if someone else wants to add links containing a "~" to that page, encode it as "%7E" :-) )

Markus Wiesner

Thanks a lot! I was able to patch my i81k A14 DSDT with it, looks like they used the same buggy code all over the place. I will post my i81k a14 DSDT as soon as I can verify it works.

I am having trouble getting it to work in the latest patch (2.4.21-pre4 acpi-20030228). It looks like the Wiki page on installing a custom DSDT is out of date. osl.c has some new override functionality now, but I can't seem to find out where to hook my DSDT in.

Could someone please update that Wiki page to reflect the new code structure.

Thanks,

--Kevin Kress

Signature · 8 lines
Matthew Tippett - [email protected] - (416) 435-4118
http://www.technology-forum.org/ - http://www.commercialos.org/
Know your self, and know others; Sun Tzu - Art of War



-------------------------------------------------------
This SF.net email is sponsored by: Etnus, makers of TotalView, The debugger for complex code. Debugging C/C++ programs can leave you feeling lost and disoriented. TotalView can help you find your way. Available on major UNIX and Linux platforms. Try it free. www.etnus.com

A message that is not in the archive (sent off-list or not yet received): [email protected]

#8 lore raw

Thanks for the help.

After some hacking on the code I found the following applied to tbgetall.c did the trick:

first I generated acpi_driver.h with iasl -tc dsdt-i8100-a14-fixed.hex and dumped this in drivers/acpi.tables/acpi_dsdt.h

then in tbgetall.c just above the function "acpi_tb_get_required_tables" I added a #include of "acpi_dsdt.h"

Then on line 295 or so I did the following:

address.pointer_type = ACPI_LOGICAL_POINTER | ACPI_LOGICAL_ADDRESSING;

//address.pointer.value = acpi_gbl_FADT->Xdsdt;
address.pointer.value = AmlCode;

where AmlCode is the variable name that was generated in acpi_dsdt.h

a quick recompile and reboot proved that the battery monitor and temp monitor work just fine when actually reading from the correct AML buffers.

So now I have mostly tested the DSDT and am confident that it will not melt my system.... I should upload it to the Wiki. Is there a procedure for that or should I just go ahead and add it?

--Kevin

Quoted 52 lines · Matthew Tippett

Kevin,

I have applied the dsdt and followed the
http://www.cpqlinux.com/acpi-howto.html instructions. It looks like the recent updates have moved the structure name has been moved from a structure tag (if my C terminology is correct), so you must replace 'acpi_table_header' with 'struct acpi_table_header' and it will compile cleanly.

Markus,

It works great, Thermal Zone and Battery works fine. There seems to be a *MAJOR* performance issues reading battery status.

Regards,

Matthew

Quoted 33 lines · Kevin Kress
Quoted 7 lines · Markus Wiesner
Quoted 4 lines · Kevin Kress

I saw a message in the archives from mid Jan 03 about a fixed DSDT for a Dell notebook. It mentioned that the patch worked for both a 82k and another C class notebook. I am assuming that said DSDT is the one linked from the Wiki for fixed DSDTs. Unfortunately that link is dead.

Quoted 7 lines

I just added links to my patched version for the i8200. See http://acpi.sourceforge.net/wiki/index.php/FixedDsdts

(hint: if someone else wants to add links containing a "~" to that page, encode it as "%7E" :-) )

Markus Wiesner

Thanks a lot! I was able to patch my i81k A14 DSDT with it, looks like they used the same buggy code all over the place. I will post my i81k a14 DSDT as soon as I can verify it works.

I am having trouble getting it to work in the latest patch (2.4.21-pre4 acpi-20030228). It looks like the Wiki page on installing a custom DSDT is out of date. osl.c has some new override functionality now, but I can't seem to find out where to hook my DSDT in.

Could someone please update that Wiki page to reflect the new code structure.

Thanks,

--Kevin Kress

Signature · 12 lines
Kevin Kress
[email protected]

GnuPG Key ID: 92949032
Fingerprint : B7F9 2B08 6FC8 35CA 5B64  BD34 6A8B 325C 9294 9032

Direct access: http://www.myslo.com/~kkress/[email protected]

Via Keyserver: http://www.keyserver.net/en/findkey.html
(search for "Kevin Kress" or "0x92949032")

Get GnuPG at http://www.gnupg.org or PGP at http://www.pgpi.org