![]() |
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. |
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!
|
Very Nice!!
Any chance to update v4 with said code?? |
I've updated it for loading FADT replacement...
The original code didn't update the xsdt... this one does... |
Quote:
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. ;) |
1 Attachment(s)
Quote:
//Edit: Attached my fadt.dls - if it's required. :) |
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... :) |
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... :( |
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 !!! |
Quote:
Quote:
One additional kext less again. ^_^ Quote:
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 |
I've done more upgrades to version 2.
Now more tables are loadable (APIC & MCFG added) It also auto patches old style RSD PTR (to V3), auto generates XSDT and updates old short style FADT table to FADT V4 table after adding boot argument UpdateACPIVersion=Yes. Very handy for guys with old motherboards which only have ACPI version 1. I would say test this everybody I think you will like it. For developers: Changes have been done to dsdt_patcher.c and acpi.h Enjoy this release I've worked very hard on... it works very great for me. :) Milanca: please test this without FADT.aml replacement file in place, it should auto convert your table and add the missing stuff. Please test this hypothesis of mine. You should be able to use reboot function without replacement tables thus (yeah... auto patching baby... lol) |
Could some people please do some tests on the new booter?
Please report how well it works for you. If you have got ACPI V1 use ioregistryexplorer for copying your RSDT original and patched tables as well as the FACP original and patched tables (boot with original ACPI, copy the 2 tables and paste into a hex editor, save, boot with UpdateACPIVersion=Yes and repeat, upload both files). Also check that before patching under IORegistryExplorer in the IODeviceTree node under /efi/configuration-table/xxx there is a table with the alias "ACPI". Check again after patching and there should be a table with the alias "ACPI_20". If this works, patching went fine for you. Thanks to everybody in advance. |
Those who don't have IORegistryExplorer can allways give me the before and after Terminal ioreg output.
Like this you can do it: ioreg -lxw9999 > Something.txt And send me those files or post them. I really need testers on this because this is a work in progress... Thanks in advance. |
The new boot loader is wonderful! Great work once again Andy...
No more random shutdown and the system is over 35% Faster! :D |
Hi Andy,
Bootloader is working great for me now! Thanks. After adding new fakesmc it is working great and amazingly fast. Thanks for adding the option to load fixed fadt.aml so my restart works automatically allowing me to use only one kext which is fakesmc, what else i could wish ;-) In Chameleon RC4 reset fix was included to automatically fix the fadt and it seems to work on GB board with P45 chipsets but it's broken on P35, at least doesn't work on mine ep35-ds3. I have ACPI_1 board (1.0b) i will try the option to make it ACPI_2. Keep up the great work !!! |
Quote:
Auto-patching baby really does the trick! Thanks a bunch! http://i103.photobucket.com/albums/m...bootloader.jpg |