Jump to content

Convert patched DSDT to SSDT's for OpenCore?


8 posts in this topic

Recommended Posts

Hi all! 

 

The beginning of August I moved from Clover to OpenCore, I followed the Dortania guide like 5 times but couldn't get sleep to work whatever I tried. (Everything else worked)

Mald0n from Olarila did an amazing job patching my DSDT and now everything works, but I get a BSOD when booting Bootcamp (or Windows through OpenCore)

 

Is there a way to reverse engineer which patches I need and convert the patched DSDT to SSDT's?

Or somehow have an OS check so the DSDT doesn't get loaded when booting Windows through bootcamp?

 

I know SSDT's have this, but the DSDT doesn't.

If (_OSI ("Darwin"))
{ 
} 

Thanks in advance!

Orig-DSDT.aml

Patched-DSDT.aml

Last time I looked through an DSDT edited by Mald0n - there were tons of aesthetic properties, devices renamed, and over 300 lines of sound code removed. There isn't a way to make that work with windows, and is definitely not maintainable for a hack in any shape or form in case you update your BIOS (because the DSDT in firmware can change between bios revisions). I would not try to make patches based off of Mald0n's DSDT.

Writing SSDTs and DSDTs are basically the same - SSDTs just tend to be smaller as they are very specific. For example, an ssdt to add a device or for Nvidia Optimus. You can use If(_OSI("Darwin")) in either one.

My recommendation is to start over and not use that DSDT as a base.

On 10/20/2020 at 2:59 AM, SavageAUS said:

That’s part of the reason I moved back to Clover. Clover version 5125 is very good but you will have a little relearning curve with the new quirks etc but it’s working great on my intel laptop and AMD desktop.

 

I think this might be the easiest way to go since I still have a working r5121 version, I'd just have to update kexts and make a few changes. Is there any good comprehensive guide on upgrading to 5125?

 

 

11 hours ago, 1Revenger1 said:

Last time I looked through an DSDT edited by Mald0n - there were tons of aesthetic properties, devices renamed, and over 300 lines of sound code removed. There isn't a way to make that work with windows, and is definitely not maintainable for a hack in any shape or form in case you update your BIOS (because the DSDT in firmware can change between bios revisions). I would not try to make patches based off of Mald0n's DSDT.

Writing SSDTs and DSDTs are basically the same - SSDTs just tend to be smaller as they are very specific. For example, an ssdt to add a device or for Nvidia Optimus. You can use If(_OSI("Darwin")) in either one.

My recommendation is to start over and not use that DSDT as a base.

 

Well I did follow the Dortania Guide completely, everything works except sleep so basically the only thing I should know how he fixed sleep. I really tried everything I could find... When I asked him how he fixed it he said:

 

Quote

just kill _prws and some no used devices. apple have a very custom tables, our tables chipset 300 for examp´le have a 60k lines, same chipset from apple have a 8k lines. we have many trashes in ur tables, trashes for windows ;) 

 

 I tried to set all GPRW values '(GWRP (0X0D, Zero))' under GLAN,  XHC, XDCI, HDAS in DSDT. Because some were showing up as wake reasons with the command, but that didn't solve the problem and I don't know what he means by kill _prws?

log show --style syslog | fgrep "Wake reason". 
 
 2020-08-30 17:25:18.577275+0200  localhost kernel[0]: (AppleACPIPlatform) AppleACPIPlatformPower Wake reason: PWRB GLAN XDCI (User)
1 hour ago, Denisuu said:

I think this might be the easiest way to go since I still have a working r5121 version, I'd just have to update kexts and make a few changes. Is there any good comprehensive guide on upgrading to 5125?

There is no guide yet but if you grab the sample-config.plist to use to update yours (make a backup first) you should be fine. Just use the sample as a reference on what needs to be added and or changed. 
There is also a sort of validator available in the last couple of pages of the clover general discussion thread. 

On 10/21/2020 at 10:44 AM, hardcorehenry said:

In THIS repository there are many precious SSDT-hotpatches, use google translator if you have to.

 

This is what Mald0n told me too. To be honest, my knowledge is quite limited on ACPI tables. I don't even know what I'm looking for...

I re-followed the whole Dortania guide again, I can't even boot bootcamp even though all SSDT's have an OS check in place. I always get a '0xc000000d' BSOD.

Everything else except sleep and FN keys. I've seen SDDT's for other ASUS laptops to work with AsusSMC without having to patch DSDT, I'd have to look into that.

 

I've attached my OC EFI.

 

23 hours ago, SavageAUS said:

There is no guide yet but if you grab the sample-config.plist to use to update yours (make a backup first) you should be fine. Just use the sample as a reference on what needs to be added and or changed. 
There is also a sort of validator available in the last couple of pages of the clover general discussion thread. 

 

For now I just moved back to Clover r5122, everything including BootCamp is working now. I didn't get r5125 booting so I guess I'll wait a bit for proper documentation or ask for assistance in 'Clover General Discussion'. I've been using this EFI for a while now, so I guess it's cluttered with obsolete stuff. I used Rehabman's config.plist as a base when I initially set this up, I'm not sure what the parameters etc in there even mean anymore.

 

Also everything works without installing the kexts to /L/E, is it ok to keep using the system like this? It makes it easier to test OC from a USB.

 

N580VD-Clover_r5122_22OCT2020.7z

N580VD_OC0.6.2_SSDT_21OCT2020.7z

Edited by Denisuu
  • 2 months later...

I found an incredibly useful github called OC-little with a large compendium of ACPI Hotpatches for OpenCore including description on what to search for to decide which SSDTs and rename patches are needed. Only downside: it's in chinese. But thanks to google translate it's possible to get most of it: https://ooh3dpsdytm34sfhws63yjfbwy--github-com.translate.goog/daliansky/OC-little

 

Especially Chapters 6, 8 and 10 to 12 are goldmines.

On 10/21/2020 at 11:33 AM, SavageAUS said:

There is no guide yet but if you grab the sample-config.plist to use to update yours (make a backup first) you should be fine. Just use the sample as a reference on what needs to be added and or changed. 
There is also a sort of validator available in the last couple of pages of the clover general discussion thread. 

 

Au contraire my friend – there's an update Guide for Clover with opencore integration. I wrote it 4 days prior to your comment.

 

×
×
  • Create New...