Contribute
Register

A Beginner's Guide to Creating a Custom USB SSDT

Hi, I have z87 mother board.
Do I need the following?

XHCI to XHC
EHC1 to EH01
EHC2 to EH02


thank you

Hi there.

I don't know. You would need to check IORegistryExplorer and see what controller label is showing :thumbup:
 
Hi there.

I don't know. You would need to check IORegistryExplorer and see what controller label is showing :thumbup:


Could you check it for me?
I used hackintool to patch it.
 

Attachments

  • 1.png
    1.png
    79.3 KB · Views: 180
Hello,
Just wanted to thank you for the easy to follow guide. This is my first time building a hackintosh and this guide really helped me out.

The only thing I will say is that the version of MaciASL I downloaded didn't let me set the compiler options to 5.1. Only 4.0 and 6.2a were available. I used 6.2a and the patch still worked.

Thanks again!
 
Hello,
Just wanted to thank you for the easy to follow guide. This is my first time building a hackintosh and this guide really helped me out.

The only thing I will say is that the version of MaciASL I downloaded didn't let me set the compiler options to 5.1. Only 4.0 and 6.2a were available. I used 6.2a and the patch still worked.

Thanks again!

Hello there.

Well done! I'm glad you got everything working :)

Yes, there is a newer version of MaciASL and I've updated the instructions to account for this.

Thank you for the feedback :thumbup:
 
Could you check it for me?
I used hackintool to patch it.

Hello.

1) Unfortunately this isn't a Hackintool guide. Hackintool is a great piece of software that does some really useful things, but I don't cover it in this tutorial because it works in a slightly different way.

2) I don't have a Z87 motherboard to check but I am guessing by the look of your screen-grab that you already have an XHC controller set up.
 
Hello there.

Well done! I'm glad you got everything working :)

Yes, there is a newer version of MaciASL and I've updated the instructions to account for this.

Thank you for the feedback :thumbup:

Cheers, I've still got a couple bugs to iron out. Mainly when I shut down the computer turns back on and when resuming from sleep there is a 10-20 second freeze shortly after the computer is woken. I'm going to try the Native CPU/IGPU Power Management guide first and make sure that's all correct. Then some googling plus a post here if I come up short!

Thanks again.
 
re: Useful fact #5

This is not what I'm seeing on my laptop. I have a USB3 port at HS01/SS01. HS01 is at 0x01, but the corresponding SS01 is 0x0d when I checked IORegistryExplorer with a USB3 drive plugged in. Your 'Useful Fact' would predict 0x11. With the 0x11 address, the drive is incorrectly assigned to HS01, rather than SS01.

Am I misinterpreting your information?

Thanks!
 
re: Useful fact #5

This is not what I'm seeing on my laptop. I have a USB3 port at HS01/SS01. HS01 is at 0x01, but the corresponding SS01 is 0x0d when I checked IORegistryExplorer with a USB3 drive plugged in. Your 'Useful Fact' would predict 0x11. With the 0x11 address, the drive is incorrectly assigned to HS01, rather than SS01.

Am I misinterpreting your information?

Thanks!

Hello there.

Sounds interesting!

I think this is related to the XHC controller. You would need to check which Intel chipset your laptop is running, then we could check with Intel.

For example the Z370 chipset, which is a representative desktop chipset and used in the tutorial, features a possible 10x USB3.0 ports and 14x USB2.0 so usually you see HS01-HS14, SS01-SS10 plus two USR ports in IORegistryExplorer, for a grand total of 26 ports.

In contrast the B150/B250/B360 chipsets only have 12x USB2 ports so their SS ports start earlier too.

Clearly your laptop also has less than 14x USB2 and so the SS or USB3 ports, start earlier as well.

You haven't misinterpreted, if anything it's my fault for not stating more clearly this is a Desktop guide (although please check the forum and you'll see General Help is indeed a desktop one etc) and I didn't make clear the chipset differences. I will edit that in, so thank you :thumbup:.

Having said that see how you go with the guide, it is still relevant besides that. Or check @RehabMan 's main Laptop Guide Here.

:)
 
Last edited:
I followed the guide to generate my SSDT, but when I boot with my SSDT_USB file (attached) none of my USB 3.0 ports appear in IORegistryExplorer. (The USB 3.0 ports work great, though, with the port limit removal patch in place and no SSDT loaded). My MB is a Gigabyte GA-Z97X-Gaming 5, using a Haswell 4790k.

I'm likely missing something obvious as I've probably been staring at this for too long. Any advice appreciated. Thanks.
 

Attachments

  • SSDT-USB_FIRST.dsl
    4.6 KB · Views: 91
I followed the guide to generate my SSDT, but when I boot with my SSDT_USB file (attached) none of my USB 3.0 ports appear in IORegistryExplorer. (The USB 3.0 ports work great, though, with the port limit removal patch in place and no SSDT loaded). My MB is a Gigabyte GA-Z97X-Gaming 5, using a Haswell 4790k.

I'm likely missing something obvious as I've probably been staring at this for too long. Any advice appreciated. Thanks.

Hi there.

I had a quick look though your SSDT.

What I saw is an odd set of port addresses.

For example how is:

HS02 address 0x11 AND SS02 address 0x11 ?

Also

HS10 is 0x14 BUT SS03 is 0x12.

Remember an SS address can't be lower than an HS address.

My suggestion:

Revisit that template again, put all ports in ascending numerical order, HS followed by SS. Use IOReg to double-check those port addresses. SS ports should be approximately 15 ports higher that HS, so if your last HS port is 0x0e the first SS port will be above this etc.

:)
 
Back
Top