Jump to content

Solved: Wrapping my head around this new USB stack


shrieken213
 Share

4 posts in this topic

Recommended Posts

Hi guys,

 

I've already finished installing El Capitan and it runs fine except for the USB and PS/2 ports. But since the USB problem is more relevant to this forum, I'll be posting the issue here.

 

I own a Maximus VII Gene running a 4790K and a GTX 770. The board uses a mix of Intel and ASMedia USB controllers, and so far (and surprisingly) only the ASMedia controller provides reliable USB 3.0 connections. I am not using the EHC controllers.

 

I've looked into the new USB issue as the sticky says, and I'm completely stuck. My DSDT already uses the device name XHC instead of XHC1, but the Intel XHC device makes 6 out of 8 ports available, and all on USB 2.0 speeds. If the thread is right, it should have automatically detected all the ports and assigned USB 3.0 to the appropriate ports.

 

This time I tried a dummy kext on SMBIOS iMac14,2. After figuring out which of the port devices are actually active, I used UsbTreeViewer on Windows, identified each port's device and edited Info.plist to match the DSDT. Right now XHC only has HS05, HS06, HS12 and HS14 available, none of which are working, and the remaining Intel ports are being picked up by EHC1.

 

I've attached the dummy kext, ioreg and DSDT. Can you guys figure this out?

Archive.zip

Link to comment
Share on other sites

Removing the dummy kext results in the system detecting the HSxx ports (USB 2.0) 1 through 14 but not the SSPx ports. In other words, the XHC device works fine but USB 3.0 does not work. I'm aware of the port restriction, so I'll dive into the DSDT, remove the extraneous HSxx ports and hopefully this will get USB 3.0 working. However, I'm not sure about the repercussions this will have on my system. Also, it only recognized 14 out of the 15 port limit. Does anyone have experience with this?

 

EDIT: I removed the unused ports, which I presume stem from the USB 2.0 headers on the motherboard which I don't use. However, USB 3.0 is not working. The system is simply not recognizing the SSPx devices.

 

I've attached the IOReg with the dummy kext removed and one with the ports removed.

Balthasar.iojones.zip

Removed.iojones.zip

Link to comment
Share on other sites

Fixed it up!

 

My DSDT's XHC device was apparently misconfigured by Asus. For SSP1, UPCP had the wrong values; all SSPx devices were missing a bunch of code in method PLD. After editing those in, everything is working fine.

 

I also noticed that even with the device named XHC, the kext itself has a hard limit of 15 ports on the XHC device. This meant that I still had to cull the unused HSxx devices. However, the SSPx devices were automatically matched to their corresponding HSxx counterparts, so I didn't have to get rid of the unused SSPx devices (SSP3 and SSP4).

 

I used VCH888's DSDT as the source, with a bunch of other DSDTs floating around to make sure this would not fubar my DSDT. 

 

I'll try the USB high current mod next, using my 2011 MBP's DSDT as base!

Archive.zip

Link to comment
Share on other sites

  • 2 weeks later...

Fixed it up!

 

My DSDT's XHC device was apparently misconfigured by Asus. For SSP1, UPCP had the wrong values; all SSPx devices were missing a bunch of code in method PLD. After editing those in, everything is working fine.

 

I also noticed that even with the device named XHC, the kext itself has a hard limit of 15 ports on the XHC device. This meant that I still had to cull the unused HSxx devices. However, the SSPx devices were automatically matched to their corresponding HSxx counterparts, so I didn't have to get rid of the unused SSPx devices (SSP3 and SSP4).

 

I used VCH888's DSDT as the source, with a bunch of other DSDTs floating around to make sure this would not fubar my DSDT. 

 

I'll try the USB high current mod next, using my 2011 MBP's DSDT as base!

Interesting!

 

I have an Asus X99 Deluxe, working fine on Yosemite, but only 2 USB ports (out of 15) are working on El Capitan. It appears that those 2 ports are ASMedia.

All other ports are just dead, not even powered.

I wonder if this board is also misconfigured by Asus. Could you develop more what you did to fix it? I don't know much about DSDT code.

 

Thank you

Link to comment
Share on other sites

 Share

×
×
  • Create New...