Contribute
Register

<< Solved >> SSDT-EC-USBX build question, Z790 ProArt.

Joined
Jan 14, 2023
Messages
129
Motherboard
Asus ProArt z790 Creator WIFI
CPU
i9-13900K
Graphics
RX 6900XT
Hello, I'm currently using the file based off Casey's z690 ProArt platform and seems to work well, although i wanted to try get my head around manually creating the SSDT's for my system. Just need some help understanding this particular file please..

Manually building the SSDT and according to my DSDT, i have two entries of PNP0C09 (H_EC) and (EC0). The H_EC entry has a _STA method. Cool, I understand this.

According to the OpenCore Guide under PNP0C09 already has a _STA method it states:
This is the equivalent of not having an EC as we can't control it with our SSDT-EC, instead we'll need to create a "dummy" EC for macOS. You'll still want to find the PCI and LPC pathing for this device. So follow the guide as if you were creating a laptop SSDT-EC/USBX.
Cool, i understand this too.

Now what i don't understand is... (As of writing this post i think it clicked to me, but i'll ask for confirmation anyway).

Within the SSDT-EC-USBX.aml file off Github, it has code that's #commented out. For desktops they say uncomment the code, but for laptops keep the code commented. So i assume leave it commented if i'm creating a "Laptop SSDT" correct?

They also state; AppleACPIEC kext must NOT load on desktops. When i search it in IOReg, it's there? Does that mean it's loaded? And if so, should it be even though they state it shouldn't?

Out of curiosity, i used SSDTime to generate a desktop version, laptop version, and USBX version to compare the code to what i've manually edited, the only difference i see is the EC-Desktop version has an extra EXTERNAL parameter which isn't in the z690 file.. But if i'm creating a laptop version then this isn't necessary is it?

Note: the z690 and z790 ProArt both share the same Device Name and Pathing for this controller hence why it's working, this is more for my own knowledge and experience.

Am i right to run with my MANUAL version?
I've attached the files for reference.

Thanks in advance.

EDIT:
Went with my manual version which is essentially the Laptop version. Thanks.
 
Last edited:
Hello, I'm currently using the file based off Casey's z690 ProArt platform and seems to work well, although i wanted to try get my head around manually creating the SSDT's for my system. Just need some help understanding this particular file please..

Manually building the SSDT and according to my DSDT, i have two entries of PNP0C09 (H_EC) and (EC0). The H_EC entry has a _STA method. Cool, I understand this.

According to the OpenCore Guide under PNP0C09 already has a _STA method it states:
This is the equivalent of not having an EC as we can't control it with our SSDT-EC, instead we'll need to create a "dummy" EC for macOS. You'll still want to find the PCI and LPC pathing for this device. So follow the guide as if you were creating a laptop SSDT-EC/USBX.
Cool, i understand this too.

Now what i don't understand is... (As of writing this post i think it clicked to me, but i'll ask for confirmation anyway).

Within the SSDT-EC-USBX.aml file off Github, it has code that's #commented out. For desktops they say uncomment the code, but for laptops keep the code commented. So i assume leave it commented if i'm creating a "Laptop SSDT" correct?

They also state; AppleACPIEC kext must NOT load on desktops. When i search it in IOReg, it's there? Does that mean it's loaded? And if so, should it be even though they state it shouldn't?

Out of curiosity, i used SSDTime to generate a desktop version, laptop version, and USBX version to compare the code to what i've manually edited, the only difference i see is the EC-Desktop version has an extra EXTERNAL parameter which isn't in the z690 file.. But if i'm creating a laptop version then this isn't necessary is it?

Note: the z690 and z790 ProArt both share the same Device Name and Pathing for this controller hence why it's working, this is more for my own knowledge and experience.

Am i right to run with my MANUAL version?
I've attached the files for reference.

Thanks in advance.

EDIT:
Went with my manual version which is essentially the Laptop version. Thanks.
@Sabzz
Ah, synchronicity…I’m literally trying to figure out this exact same thing!

I created one like you did (but desktop only) but couldn’t get past the H_EC part (mine just spoofs EC0), and although my IOR no longer has an entry for EC nor EC0, I wasn’t sure if it was right b/c configuring an ssdt to tackle the H_EC is just the part I don’t understand… can you attach YOUR .aml?

Since my custom ssdt seems correct (but doesn’t address H_EC) and the guide mentions a different way of configuring desktop vs laptop, I’m wondering if we’re supposed to create TWO.
Thanks!

EDIT:
After further investigation, it appears my DSDT lists my H_EC as zero = not active, and therefore, no additional spoofing is needed.

J
 
Last edited:
@Sabzz do you mind sharing your EFI? I'm really struggling to get my z790 to reach the installer screen :banghead:
 
@Sabzz do you mind sharing your EFI? I'm really struggling to get my z790 to reach the installer screen :banghead:
How'd you go with this? Did you get it past the installer?
 
I finally managed to get to the installer, but I had to make some minor modifications.
Here’s my post with some more details. I had to make some modifications. I’m still troubleshooting, though. I think CFG Lock is my main issue right now
 
Back
Top