InfiniteMac OSx86

InfiniteMac OSx86 (http://infinitemac.com/forum.php)
-   10.X (http://infinitemac.com/forumdisplay.php?f=36)
-   -   PC EFI 10.5 AnV Style with major updates to the ACPI Patcher (http://infinitemac.com/showthread.php?t=5043)

andyvand 12-25-2009 12:16 PM

PC EFI 10.5 AnV Style with major updates to the ACPI Patcher
 
I have recently reworked PC EFI 10.5 so it can replace/add more tables (or drop them)
They also have been updated with Apple data (identification set the same as real macs).
The following ACPI tables can be added/replaced/dropped:
DSDT table (ofcourse, but not dropable!)
SSDT tables (SSDT-0.aml to SSDT-30.aml)
HPET table (HPET.aml)
Smart Battery Subsystem Table (SBST.aml)
Environment Controller Description Table (ECDT.aml) (this adds boot-ec to IORegistry!)
Alert Standard Format Table (ASFT.aml, identified as ASF!)
DMAR table (DMAR.aml)

FADT table (FACP table, FADT.aml)

Update, Release 2:
-- New --
Loading FADT (FACP) replacement... This version also updates the XSDT (original code didn't).

Update, Release 3:
-- New --
Automatic ACPI V1 to V4 upgrading through UpdateACPIVersion=Yes boot argument.
Automatic old short style FADT to newer V4 FADT autopatching with UpdateACPIVersion=Yes.
Auto generation of an XSDT table from the RSDT table for ACPI V1.
Loading APIC replacement.
Loading MCFG replacement.

-*- Downloads -*-
Sources:
http://rapidshare.com/files/34155062...c-AnV_Rel3.zip

Source diff:
http://rapidshare.com/files/34310454...ments.diff.zip

Release for Laptop:
http://rapidshare.com/files/34154825...P_Rel3.pkg.zip

Release for Desktop:
http://rapidshare.com/files/34154862...P_Rel3.pkg.zip

ECDT table (should work for all):
http://rapidshare.com/files/325673058/ECDT.aml.zip

Enjoy another new release ;)

BTW... Those that like it and wouldn't mind sponsoring me for my work... please do a Paypal donation.

milanca 12-26-2009 12:26 AM

Yo Andy! That's a great work, as always. When you can, as we talked about it, please add FACP/FADT tables to be loadable so gigabyte users can use it (restart fix) not to load OHR.kext. Thanks a bunch and keep up the great work!

STLVNUB 12-28-2009 06:18 AM

Very Nice!!
Any chance to update v4 with said code??

andyvand 12-29-2009 07:13 PM

I've updated it for loading FADT replacement...
The original code didn't update the xsdt... this one does...

andyvand 12-29-2009 07:17 PM

Quote:

Originally Posted by STLVNUB (Post 41903)
Very Nice!!
Any chance to update v4 with said code??

Sure... I think you can just use dsdt_patcher.c from my sources with that one and recompile...
That wouldn't add the mods to the fake_efi.c file (like Apple identification, etc...) but it would enable the other overrides after recompile. ;)

Imkantus 12-30-2009 01:53 AM

1 Attachment(s)
Quote:

Originally Posted by milanca (Post 41818)
Yo Andy! That's a great work, as always. When you can, as we talked about it, please add FACP/FADT tables to be loadable so gigabyte users can use it (restart fix) not to load OHR.kext. Thanks a bunch and keep up the great work!

Can you please tell me, what changes I need to add to that acpi table to fix the restart issue? Thanks. :)

//Edit: Attached my fadt.dls - if it's required. :)

andyvand 12-30-2009 10:25 PM

Milanca has some experience in doing that...
You should attach FADT.aml... the FACP table is incomplete on Gigabyte motherboards...
Look on the net and modify your FADT.aml accordingly...
Then just put FADT.aml in the root (/) or /Extra folder... :)

Imkantus 12-31-2009 01:56 AM

Well the file I attached is what I got when I dumped "/proc/acpi/fadt" on Linux and disassambled it using iasl -d....

Currently I am using OSXRestart.kext as solution, occording to the author it works by altering "FACP table data"...


So if the way I was doing by dumping on Linux was wrong / the file not usefull, maybe someone can explain me how I can do else?
Should I use acpidump instead?

Also a way for getting the table currently used on my OS X setup would be nice I think (as I reckon it should be fixed by that kext I am using) - but I don't know how to do that on OS X... :(

milanca 01-01-2010 02:52 PM

Happy New Year guys !!! My first post in 2010.

lmkantus, your dumped fadt from linux is ok, that's it. But it can't be compiled back to aml, so you have to use values from your original table and with hex editor insert them into the complete fadt file with all the required fields, reset register, etc. I could send you mine or edit it with the values from your .dsl but i am not at home right now.
Easier solution is to use the bootloader which can automatically, on-the-fly load and fix your FADT. All you have to do is insert key/string RestartFix/YES in your com.apple.boot.plist. No need to use fadt.aml or OpenHaltRestart/OSXRestart.

Happy New Year !!!

Imkantus 01-03-2010 12:59 AM

Quote:

Originally Posted by milanca (Post 42185)
Happy New Year guys !!! My first post in 2010.

Same to you & Thanks for your response, it took me some additionaly reading, but you realy helped me on the way to understand this better. :)

Quote:

Originally Posted by milanca (Post 42185)
Easier solution is to use the bootloader which can automatically, on-the-fly load and fix your FADT. All you have to do is insert key/string RestartFix/YES in your com.apple.boot.plist. No need to use fadt.aml or OpenHaltRestart/OSXRestart.

Pretty awesome, I am just using PC_EFI 10.5 with that patch applied and it's working great.
One additional kext less again. ^_^

Quote:

Originally Posted by milanca (Post 42185)
lmkantus, your dumped fadt from linux is ok, that's it. But it can't be compiled back to aml, so you have to use values from your original table and with hex editor insert them into the complete fadt file with all the required fields, reset register, etc. I could send you mine or edit it with the values from your .dsl but i am not at home right now.

Well OK. I admit I have expected this to be a little easier.
Though I have it working with that booter, I took some further reading through that topic and found the point where Duvel300 explained how-to hex edit the .aml and cparm explained what he changed at his table to fix it:
http://www.insanelymac.com/forum/ind...60&p=1363538&#

Now PM2 Control Block Length, C2 Latency & C3 Latency already have the correct values in my .dsl the two other sections cparm mentioned in his posting are not even present in my decompiled table.
Is that what Andy ment when he told me that my attached table is incomplete?

I hope I am not behaving completely stupid here / not digging it... :D