Jump to content

USB 3.0 issue in El Capitan


foster
 Share

42 posts in this topic

Recommended Posts

Re-edited DSDT so that XHC1 > XHC, EHC1 > EH01, EHC2 > EH02

XHC shows as XHC1 in IOReg, why?

Because you were not successful in your XHC1->XHC rename. The ioreg never lies.

 

Edited the Info.plist for AppleUSBEHCIPCI  IOKitProperties/MacPro6,1/IOProviderMergerProperties/port-count=0

Since it was acting like the dummy kext injection was not working, direct editing has no effect either.

A port-count=0 should mean no ports to be assigned to ECHI kexts.

No need to edit the kext. An injector will work. Much more involved than port-count. And, FYI, port-count isn't a "count" at all. It is the number assigned to the highest numbered port.

 

So why is AppleUSBECHIPCI kext still grabbing ports and assigning them to USB 2.0 bus (now named EH01 and EH02 on my system),

i have double checked my SMBIOS is set to MacPro6,1

Would need more details on what you're seeing and what you're trying to accomplish.

 

USB2 ports that are on EHC controller will be handled by EHC drivers.

USB2 ports on XHC controller that are routed to EHC1 via PR2 will be handled by EHC drivers.

USB2 ports on XHC controller will still show as USB2, but on the XHC controller.

Link to comment
Share on other sites

Ok fixed the XHC edit

It didn't save or compile for whatever reason

 

I am trying to make USB Tree match USB Tree in Yosemite instead of the split USB 2.0 and USB 3.0 Trees El Capitan has now.

In other words all my available ports should show as USB 3.0 only and not both.

As it is now this is what happens: A USB 2.0 device keyboard, mouse, NI Audio 2 shows under USB 2.0(EH01 or EH02 now) a USB 3.0 drive shows up under USB 3.0 (XHC now)

 

In Yosemite all devices show under USB 3.0 when connected (no separate 2.0/1.1 and 3.0 USB Trees)

 

I suspect the motherboard UEFI or BIOS can detect that the USB 2.0 headers are unused or that nothing is connected to them therefore disabling them

 

That is why sent you PM

 

Example for Yosemite

USB 3.0 Hi-Speed Bus

  Hub

     USB Gaming Mouse

     USB Gaming Keyboard

USB 3.0 SuperSpeed Bus

   Hub

   Hub

     Composite Device - which is one of my USB 3.0 flash drives

USB 3.0 Hi-Speed Bus

   Hub

USB 3.0 Hi-Speed Bus

   Hub

 

As it is now in El Capitan

 

EH01 (USB 2.0 when named EHC1)

   Hub

      Hub

          USB Device (Mouse)

          USB Gaming Keyboard

EH02 (USB 2.0 when named EHC2)

   Hub

XHC (USB 3.0 when named XHC1)

   Hub

   Hub

 

- no USB 3.0 devices currently plugged into system but when I do they show up in the XHC (USB 3.0) tree just like 2.0 devices populate the USB 2.0 (or EH0x) tree

 

Also leaving the Traktor Audio 2 disconnected it causes system to reboot when it is unplugged for what ever reason in El Capitan

Link to comment
Share on other sites

Since EH01 and EH02, XHC1 was not making a difference pulled the Modified DSDT for now

 

IORegistryExplorer file below

 

 

attachicon.gifMac Pro.zip

 

Initially I started this thread because USB 3.0 was rarely working if at all.

The ioreg file is corrupt. Please read the request in post #28 carefully.

Link to comment
Share on other sites

Since EH01 and EH02, XHC1 was not making a difference pulled the Modified DSDT for now

 

IORegistryExplorer file below

 

attachicon.gifMac Pro.zip

 

 

Initially I started this thread because USB 3.0 was rarely working if at all.

Since you have not renamed EHC1/EHC2, you'll get the port restriction specified in AppleUSBEHCIPCI.kext (which is one port, port#1, in each). If that matches your configuration, great. If it doesn't you need to rename and use your own port injector (assuming DSDT is broken).

 

For XHC, you're getting the port specified by DSDT, since there is no match for XHC in the AppleUSBXHCIPCI.kext.

Link to comment
Share on other sites

Unmodified everything works, well still using FakePCIID and FakePCIMux, with the separate usb 2.0 and 3.0 trees in System Profiler

 

When I rename ECHo to EH0x and XHC to XHC1 in DSDT the kexts ignore the rename. I know the rename does work when I look at ioregistry. That tells me that the kexts use ID matching

 

The only reason I go back to a clean DSDT every time I start out is MaciASL puts weird stuff in when reopen the DSDT like _T_ and then complains it is a reserved variable or such.

 

I do not know exactly what to put in the Info.plist in the dummy echi and xchi kexts as I have stated a few times. Since I have SMBIOS set to MacPro6,1 rather not change it, my Traktor Pro activation is tied to it.

 

I also do not if I still need to use the FakeID kexts in beta 3 1.0

Link to comment
Share on other sites

Unmodified everything works, well still using FakePCIID and FakePCIMux, with the separate usb 2.0 and 3.0 trees in System Profiler

 

When I rename ECHo to EH0x and XHC to XHC1 in DSDT the kexts ignore the rename.

Impossible. The kexts will not "ignore the rename". But the kexts will, with the absence of a matching port injector, use your DSDT to determine the availability of ports. Some DSDTs are incorrect, which is probably why the port injector facility was created (Apple probably found problems with their own DSDTs, and instead of forcing a firmware revision for all products, fixed it in software).

 

I do not know exactly what to put in the Info.plist in the dummy echi and xchi kexts as I have stated a few times. Since I have SMBIOS set to MacPro6,1 rather not change it, my Traktor Pro activation is tied to it.

You should refer to the numerous examples (I provided you a bunch of links in your other thread).

 

If everything works without renaming and without an injector (in other words, the port restrictions in place for MacPro6,1 match your own computer), then there is no need to do a port injector at all.

 

I also do not if I still need to use the FakeID kexts in beta 3 1.0

Simple. Use it if it fixes a problem for you. Don't use it if it doesn't.

Link to comment
Share on other sites

Can you explain it in detail what I have to look for on my system, whether be from the DSDT or ioregistry, and what exactly goes in the Info.plist from the DSDT or ioreigestry

 

Is it the port name, address or what?

 

I don't know if the port restrictions match or not.

But all ports are active on my aystem

Link to comment
Share on other sites

Can you explain it in detail what I have to look for on my system, whether be from the DSDT or ioregistry, and what exactly goes in the Info.plist from the DSDT or ioreigestry

 

Is it the port name, address or what?

 

I don't know if the port restrictions match or not.

But all ports are active on my aystem

If all ports are working, then the native port restriction must match. If it didn't, you'd find some ports that don't work.

Link to comment
Share on other sites

  • 2 months later...

Hey guys, i updated to yosemite and i get 6 of 8 USB ports working .. I have 2 USB 2.0 front (working), 4 USB 2.0 rear (2 working and 2 not working), 2 USB 3.0 rear (working). 

Then i renamed XHC1 -> XHC , EHC1 -> EH01 and EHC2 -> EH02 and now i have all ports working but i get all usb devices connected in the USB 3.0 tree as in the photo. 

Am i missing something? Thanks

post-1374472-0-39347000-1443970133_thumb.png

Link to comment
Share on other sites

Hey guys, i updated to yosemite and i get 6 of 8 USB ports working .. I have 2 USB 2.0 front (working), 4 USB 2.0 rear (2 working and 2 not working), 2 USB 3.0 rear (working). 

Then i renamed XHC1 -> XHC , EHC1 -> EH01 and EHC2 -> EH02 and now i have all ports working but i get all usb devices connected in the USB 3.0 tree as in the photo. 

Am i missing something? Thanks

Without port routing from XHC to EHC (FakePCIID.kext+FakePCIID_XHCIMux.kext), that is normal. Apple shows all devices connected to XHC as being on "USB 3.0 bus". I guess normal people would be confused by "XHCI".

Link to comment
Share on other sites

Without port routing from XHC to EHC (FakePCIID.kext+FakePCIID_XHCIMux.kext), that is normal. Apple shows all devices connected to XHC as being on "USB 3.0 bus". I guess normal people would be confused by "XHCI".

so i only have to install the 2 kext?
Link to comment
Share on other sites

 

Thanks VCH888 it's working nicely with FakePCIID.kext + FakePCIID_XHCIMux.kext. Any chance you could add a multiplexing patch for FL1100 USB 3.0 chipset to the XHCIMux.kext? 

 

I really appreciate the information you make available on the forum, thanks for sharing your knowledge!

 

(Thanks also to all other great people such as Rehabman who make it possible for us to run this great OS on our machines).

 

/CS

 

Hi,

The combination of those three did not work for me. No matter what I do all USB3 devices are recognised as USB2.  :(

I'm on Clover running latest 10.11 via AppStore upgrade and without DSDT. The mobo is Asus Z97-Pro wifi-ac...

post-320818-0-62823400-1444043272_thumb.gif

Link to comment
Share on other sites

  • 2 months later...
 Share

×
×
  • Create New...