Jump to content
InsanelyMac Forum
wegface

(GUIDE) 10.11 full speed USB (series 8/9) keeping vanilla SLE

Recommended Posts

Removing enough ports from just the XHC in my DSDT to keep it to 15 or under was enough for my z87 and z97 mobos so not sure why u need more then that for yours, in fact i totally remove all EHC1/EHC2 from mine as its not used in series 8/9

It might depend on the system definition too.

 

Mieze

Share this post


Link to post
Share on other sites
Advertisement

Yes, nothing better until now. Also, removing Devices EHC1 and EHC2 from DSDT make sleep working properly. wake  from sleep either, except wake from BT wireless keyboard or magic mouse, that's, of course, because in ACPI Bluetooh device is now dissociated from EHCx device, and appears like PCI0@0/AppleACPIPCI/pci8086,8c2d@1A... I wonder if some kind of DSDT patch can re-direct Bluetooth under XHC\HSxx. Maybe that would give us proper behavior just like in Yosemite under EHCx 

I think your mobo needs DSDT tweak to make Bluetooth under XHC controller,

Or maybe check your bios settings for manual usb port mapping.

For my mobo, wake from Magic Keyboard or Magic Trackpad works because Blutetooth under XHC controller.

 

Does your shutdown fix break wake from usb wired keyboard/mouse?

Share this post


Link to post
Share on other sites

I think your mobo needs DSDT tweak to make Bluetooth under XHC controller,

Or maybe check your bios settings for manual usb port mapping.

For my mobo, wake from Magic Keyboard or Magic Trackpad works because Blutetooth under XHC controller.

Precisely. I have no clue about such a patch in DSDT. Any idea?

And no options in Bios. And, since your BT is a usb dongle, yes, it must work under XHC (like any other physical usb plugged in)

 

 

Does your shutdown fix break wake from usb wired keyboard/mouse?

Nope. Wake from usb keyboard and/or mouse is fine

Share this post


Link to post
Share on other sites

giacomoleopardo, on 23 Oct 2015 - 8:58 PM, said:

 

Precisely. I have no clue about such a patch in DSDT. Any idea?

And no options in Bios. And, since your BT is a usb dongle, yes, it must work under XHC (like any other physical usb plugged in)

 

I use the same BCM94360CD combo card through an adapter card connecting to mini-pcie slot.

My mobo is GA-B85N-WIFI.

You can refer to my mobo dsdt as attachment.

 

System DSDT.zip

Share this post


Link to post
Share on other sites

Please note that 10.11.1 has direct support for 9-series XHC, 8086:8cb1.

 

And it uses a different class than the injector in post #1. The injector IOKitPersonality for 8086:8cb1 provided in post #1 should not be used for 10.11.1.

Share this post


Link to post
Share on other sites

Please note that 10.11.1 has direct support for 9-series XHC, 8086:8cb1.

 

And it uses a different class than the injector in post #1. The injector IOKitPersonality for 8086:8cb1 provided in post #1 should not be used for 10.11.1.

Thank you for the info

One less patch required for dsdt :)

Share this post


Link to post
Share on other sites

Thank you for the info

One less patch required for dsdt :)

Well, post #1 uses an injector kext instead of _DSM-based device-id injection.

 

But, yes, of course some people may be using _DSM injection from ACPI. Or even FakeID via Clover...

Share this post


Link to post
Share on other sites

I use the same BCM94360CD combo card through an adapter card connecting to mini-pcie slot.

My mobo is GA-B85N-WIFI.

You can refer to my mobo dsdt as attachment.

 

Can you post IOReg or IOJones, please? The dsdt attached seems to be unpatched, isn't it? Are you using this one or something else?

Share this post


Link to post
Share on other sites

Please note that 10.11.1 has direct support for 9-series XHC, 8086:8cb1.

 

And it uses a different class than the injector in post #1. The injector IOKitPersonality for 8086:8cb1 provided in post #1 should not be used for 10.11.1.

So it means that we dont need custom injector kext any more? Im on 10.11.1 and still have the injector kext in Clover, should I remove it?

Share this post


Link to post
Share on other sites

So it means that we dont need custom injector kext any more? Im on 10.11.1 and still have the injector kext in Clover, should I remove it?

You'll probably still need a port injector, but you don't need/don't want the injector IOKitPersonality to load the XHC driver for 8086:8cb1.

 

The injector in post #1 combines the two into one kext...

Share this post


Link to post
Share on other sites

Can you post IOReg or IOJones, please? The dsdt attached seems to be unpatched, isn't it? Are you using this one or something else?

Yes, i don't use a modified dsdt.

I prefer to ssdt to do HDA/GFX/HDMI/LPC/SBUS/PM patch instead.

 

I confirmed FixShutdown_0004 fixed my shutdown issue, sleep works as expected, wake from lan/wireless keyboard/wired mouse works fine.

 

I've uploaded ioreg and ssdt i used as attachments.

ioreg.zip

ssdt.zip

Share this post


Link to post
Share on other sites

You'll probably still need a port injector, but you don't need/don't want the injector IOKitPersonality to load the XHC driver for 8086:8cb1.

 

The injector in post #1 combines the two into one kext...

 

So I have to remove these lines in Injector.kext file?

		<key>AppleUSBXHCILPTH</key>
		<dict>
			<key>CFBundleIdentifier</key>
			<string>com.apple.driver.usb.AppleUSBXHCIPCI</string>
			<key>IOClass</key>
			<string>AppleUSBXHCILPTH</string>
			<key>IOPCIPrimaryMatch</key>
			<string>0x8cb18086</string>
			<key>IOPCITunnelCompatible</key>
			<true/>
			<key>IOProbeScore</key>
			<integer>1000</integer>
			<key>IOProviderClass</key>
			<string>IOPCIDevice</string>
		</dict>

Share this post


Link to post
Share on other sites

Just follow the series 8 one, its exact same thing just no device id injection.

 

Thank you. It worked on my Z97 mobo !

 

I found that only the <key>iMac14,2-XHC</key> part is enough. I have erased <key>iMac14,2-EH01</key> and <key>iMac14,2-EH02</key> parts and it still works fine without renaming EHC1 and EHC2. I think the original names of EHC1 and EHC2 are referred in the Apple's kexts correctly in 10.11.1, and thus, no rename in DSDT is required any more.

 

Edit: I once have struck through above, but now confirmed this.

Share this post


Link to post
Share on other sites

OK Hi All, I am really hoping someone can help me, i have read through all the posts and have managed to get myself completely confused.

I am new to Hackintosh,working on my first one as we speak (type). I am looking to end up with a working El Capitan Hack, no dual boot etc.

So far all good except USB and WiFi / Bluetooth.  I am looking to get my USB issue fixed, with someones help.

 

My motherboard (ASUS Z87-PRO) has 6 USB 3 ports on the back (I believe 2 INTEL, and 4 ASM1207x - according to System Information) and i have 3 ports on the front (1 USB3 and 2 USB2) connected to the Front USB3 MB connector. I use CLOVER to boot. 

 

In Yosemite, all ports work as they should and in El Capitan only the one USB3 on the front works as USB3, the rest all work as USB2 (480).

 

I have tried mapping the ports using Yosemite, but i end up getting more confused.

The ports on the back (reading left-right,top -bottom) give the following. (PORT POSITION / Location ID USB 3 connected / Loc USB 2 connected / Port USB 3 / Port USB 2)

(ASM107x)

TOP LEFT  / 0x15340000 / 0x14340000 / 0x4

TOP RIGHT / 0x15330000 / 0x14330000 /0x3

MID LEFT / 0x15320000 / 0x14320000 / 0x2

MID RIGHT / 0x15310000 / 0x14310000 / 0x2 / 0x1

(INTEL)

BTM LEFT / 0x15600000 / 0x14a00000 / 0x6 / 0xa

BTM RIGHT / 015500000 /0x14900000 / 0x5 / 0x9

FRONT

LEFT (USB2 PORT)  - COULDN'T CHECK, YOSEMITE BOOTED FROM USB

MID (USB2 PORT) / 0x14d00000 / 0xd

RIGHT (USB3 PORT) / 0x15100000 / 0x14100000 / 0x1

 

I am now at a loss of how to "convert" this information to be used in the Injector Kext or to edit the DSDT, 

I currently do not have a patched or edited DSDT (on either Yosemite or El Capitan), and the SMBIOS i have 

is a iMAC14,2.

 

I am sorry if this is too much info or if i am missing anything. Any help GREATLY appreciated!! 

Cheers.

 

I am currently on El Capitan 10.11.0

Share this post


Link to post
Share on other sites

I have a Z97 ASUS board and 10.11.1 killed my USB which is why I patched and started using the 9 series injector. 10.11 worked just fine prior. 

Share this post


Link to post
Share on other sites

I really don't get it. For me when i use the series 9 injector which i have fixed for MacPro 3.1 almost all of my USB ports are working fine. But now I should not use it anymore? When i remove the kext most of my USB 3 ports doesn't work anymore. I have a Asus Maximus VII Ranger z97 board b.t.w.with a compiled DSDT including the Asus Maximus VII patches from PJALM. I have renamed the EHC1 and EHC2 to EH01 and EH02 in this DSDT and use latest Clover.

Share this post


Link to post
Share on other sites

It might depend on the system definition too.

 

Mieze

 

Would you be so kind and write which system definitions are affected by this? I mean which EHC1/EHC2 can be removed without any problems from dsdt? I'm using iMac 14,3 and want to create a dsdt for EC.

 

Thanks in advance

 

Huberer

Share this post


Link to post
Share on other sites

If i only have to rename the XHCI to XHC etc in my DSDT.... then i can just copy the port names from the DSDT right?

Share this post


Link to post
Share on other sites

Would you be so kind and write which system definitions are affected by this? I mean which EHC1/EHC2 can be removed without any problems from dsdt? I'm using iMac 14,3 and want to create a dsdt for EC.

I don't know which systems are affected, it's just a guess because there used to be system definition dependencies in the past.

 

Mieze

Share this post


Link to post
Share on other sites

I hate to ask this question again, since it's been asked several times on this thread, but after plowing through all 21 pages of this thing I haven't seen a definitive answer (it's entirely possible, even likely, that it's there and I missed it. My eyes started glazing over around page 14).

 

My ASUS Z87-i running Yosemite doesn't show USB ports with identifiers like "HS" and "SSP" in IOJones. Instead I get stuff like you see in this image. Without knowing what these identifiers are, I can't proceed.

 

I assume some existing DSDT or kext is inhibiting the display of the "HS" and "SSP" nomenclature, but I don't know what it would be. 

post-665716-0-12828100-1446134852_thumb.png

Share this post


Link to post
Share on other sites

I hate to ask this question again, since it's been asked several times on this thread, but after plowing through all 21 pages of this thing I haven't seen a definitive answer (it's entirely possible, even likely, that it's there and I missed it. My eyes started glazing over around page 14).

 

My ASUS Z87-i running Yosemite doesn't show USB ports with identifies like "HS" and "SSP" in IOJones. Instead I get stuff like you see in this image.

 

I assume some existing DSDT or kext is inhibiting the display of the "HS" and "SSP" nomenclature, but I don't know what it would be. 

Thats exactly what they look like for me as well @dramsey (not a surprise as we both have Asus Z87 MBs).

 

I have now tried mapping the ports using Windows 10 and UsbView, but to be honest still confused as to co-ordinate the numbers given by windows or Yosemite to the HS / SS numbers.

In windows i got LOC12, LOC13 with LOC131/2/3/4 underneath for example.  I think now (after reading the thread form start to finish again) i understand that LOC1-LOC14 are HS01- HS14, and LOC15 - LOC21

are SSP1- SSP6, but how do I relate LOC133 for example, which is one of the four ports under LOC13 (there is LOC131, LOC132, LOC133 & LOC134)

 

I intend to just apply an already made kext and see if i get any results, however, and i have a feeling this is a very NOOB question, I am unsure how to Rename EHC1 to EHC01 etc i see the "patch" but how do i apply it, i see in MaciASL that you can add sources and then choose patches, but how do I copy / paste and apply the patch. Or should  just manually edit my DSDT (using FIND /REPLACE in MaciASL) and then save it, or does it need to be put into Clover folder.

 

I have just spent the last couple of hours reading ALL of the posts on this thread, and to be honest i am super confused about the whole thing.  

 

Someone Please help, it would be very appreciated. 

 

Cheers, Matt. 

Share this post


Link to post
Share on other sites

Glad to know I'm not the only one lost here. 

 

I have a series 8 and my smbios is iMac14,2 so it goes ok with USB_Series8_Injector
I put it on clover/kexts but wont load.
 
I took a vanilla dsdt and applied the renames:
 
into device label EHC1 set_label begin EH01 end;
into device label EHC2 set_label begin EH02 end;
into_all all code_regex EHC1 replaceall_matched begin EH01 end;
into_all all code_regex EHC2 replaceall_matched begin EH02 end;

XHC1 was already as XHC so no need to do anything there.
 
Finally I put the compiled dsdt in clover\acpi\patched and ticked drop oem_dsm on clover configurator.
 
To end up on kekts to patch:
name: #AppleUSBXHCIPCI 
find: 83BD8CFEFFFF10
replace: 83BD8CFEFFFF15
comment: change 15 port limit to 20 in XHCI kext
 
 

DSDT.zip

ioreg.zip

Share this post


Link to post
Share on other sites

 

Glad to know I'm not the only one lost here. 

 

I have a series 8 and my smbios is iMac14,2 so it goes ok with USB_Series8_Injector
I put it on clover/kexts but wont load.
 
I took a vanilla dsdt and applied the renames:
 
into device label EHC1 set_label begin EH01 end;
into device label EHC2 set_label begin EH02 end;
into_all all code_regex EHC1 replaceall_matched begin EH01 end;
into_all all code_regex EHC2 replaceall_matched begin EH02 end;

XHC1 was already as XHC so no need to do anything there.
 
Finally I put the compiled dsdt in clover\acpi\patched and ticked drop oem_dsm on clover configurator.
 
To end up on kekts to patch:
name: #AppleUSBXHCIPCI 
find: 83BD8CFEFFFF10
replace: 83BD8CFEFFFF15
comment: change 15 port limit to 20 in XHCI kext

 

@anibalin, couple of questions..

1) I didn't follow, you said the injector won't load, and then you list the steps you followed, did you mean the injector won't load AFTER doing those steps, or it didn't, you did the steps and now everything works (as it should)?

2)  -- NOOB ALERT -- "and applied the renames:" - HOW do you apply them :-(

 

cheers, Matt

Share this post


Link to post
Share on other sites

@anibalin, couple of questions..

1) I didn't follow, you said the injector won't load, and then you list the steps you followed, did you mean the injector won't load AFTER doing those steps, or it didn't, you did the steps and now everything works (as it should)?

2)  -- NOOB ALERT -- "and applied the renames:" - HOW do you apply them :-(

 

cheers, Matt

Hi Matt, after all the edits I restarted and kextstat | grep USB_Series8_Injector.kext gives me cero results. 

The renames, open textedit, shift + command+ t  to make it text. Paste the text I posted and save as .txt. Now open MaciASL, patches, open, choose the aforementioned .txt. Apply. Done.

Share this post


Link to post
Share on other sites

Hi Matt, after all the edits I restarted and kextstat | grep USB_Series8_Injector.kext gives me cero results. 

The renames, open textedit, shift + command+ t  to make it text. Paste the text I posted and save as .txt. Now open MaciASL, patches, open, choose the aforementioned .txt. Apply. Done.

kextstat doesn't show codeless kexts (aka. injectors).

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.

  • Posts

    • MaLd0n i created my hackintosh but at pci device not show up all device, can help me to makae DSDT   My hackintosh specification: ASUS Z270 MAXIMUS IX CODE BIOS 1301 Core i5 7600K overclock 4.8Ghz Memory 16GB AMD RADEON RX 560 Use pci card broadcom wifi & bluetooth   DSDT and clover compile RunMe.app    
    • Cool! Do you have a link? Googled and didn't see anything yet.   Never mind... you're quick! I just noticed you updated it on the 1st page THANKS!!!!!!
    • I resolved the problem. Just set this coding in your config.plist:   "
      <key>KextsToPatch</key>
              <array>
                  <dict>
                      <key>Comment</key>
                      <string>USB 10.13.4+ by PMHeart</string>
                      <key>Disabled</key>
                      <false/>
                      <key>Find</key>
                      <data>
                      g32UDw+DlwQAAA==
                      </data>
                      <key>InfoPlistPatch</key>
                      <false/>
                      <key>MatchOS</key>
                      <string>10.13.x</string>
                      <key>Name</key>
                      <string>com.apple.driver.usb.AppleUSBXHCI</string>
                      <key>Replace</key>
                      <data>
                      g32UD5CQkJCQkA==
                      </data>
                  </dict>
              </array>     "
    • New Web Driver - 387.10.10.10.30.107 for 10.13.4 build 17E202
    • I guess having pre{max-height: 500px;overflow: auto;} in CSS was too much for IPS Devs' tast.  Until an admin has hands on this, you still can use stylish plugin to accomplish it.     In fact, it is pretty easy than it appears - Just apply a simple click on the codebox (it will highlight it), then 'delete' key.


×