Contribute
Register

Big Sur 11.3 Update Broke USB 3

NorthAmTransAm

Moderator
Joined
Jul 26, 2018
Messages
1,727
Motherboard
MSI Pro Z690-A DDR4
CPU
i7-12700k
Graphics
RX 580
Mac
  1. MacBook Air
  2. MacBook Pro
Mobile Phone
  1. iOS
So if I already have mapped usb ports and don't use USBInjectall I shouldn't have any problems?

Thats what I'm thinking.

What you could do is find someone with a USBMap already made and edit it so that in includes all ports. Like, HS01-HS15 and SS01-SS10.

Then enabled the XHCIPortLimit.

If you search around there is likely a diagram of your motherboard with your ports and headers labeled.

Attached is a kext for all USB ports enabled. You'll need to turn on XHCIPortLimit though.

Note: This is for iMac 19,1. If you have a different SMBIOS you'll need to right click the kext, show package contents, and open the info.plist file with a plist editor. Then change all instances of 19,1 to your model number (ie 20,1).

If you already know what ports you use then you should open the info.plist and delete the ones you don't. If you can get it under 15 then thats great as we can disable the XHCIPortLimit then!

If you know which ports are your USB 2.0 headers then please change the connector type to 255. Currently all ports are set 3.

255 = Internal
3 = 3.0 (we use this for 2.0 and 3.0)


NOTE: The purpose of temporarily enabling the port limit is so that you can get in, map your ports, then disable. You should not depend on this. It is a "hacky" solution and despite the name Hackintosh we're more of a Patchintosh family.
 

Attachments

  • USBMapALLPORTS.kext.zip
    3.7 KB · Views: 443
Last edited:

JBX

Joined
Sep 17, 2016
Messages
129
Motherboard
Gigabyte Z490
CPU
i7-10700
Graphics
RX 580
From the link earlier
  • Note: Users who have XhciPortLimit disabled need not worry, however please ensure you’ve mapped your USB ports before updating

In my config it was set to true (enabled) and I have a mapped kext. So if I understand this correctly?, I should have had it set to false before updating to 11.3?

I can start over with my 11.2.3 clone and try it, if this is the case.
 

NorthAmTransAm

Moderator
Joined
Jul 26, 2018
Messages
1,727
Motherboard
MSI Pro Z690-A DDR4
CPU
i7-12700k
Graphics
RX 580
Mac
  1. MacBook Air
  2. MacBook Pro
Mobile Phone
  1. iOS
From the link earlier


In my config it was set to true (enabled) and I have a mapped kext. So if I understand this correctly?, I should have had it set to false before updating to 11.3?

I can start over with my 11.2.3 clone and try it, if this is the case.

If you have a USBMap you can disable the XHCIPortLimit.
 
  • Like
Reactions: JBX

JBX

Joined
Sep 17, 2016
Messages
129
Motherboard
Gigabyte Z490
CPU
i7-10700
Graphics
RX 580
Yes I had disabled it yesterday after the issue came up. thanks
 

UtterDisbelief

Moderator
Joined
Feb 13, 2012
Messages
7,462
Motherboard
ASUS Z490-G Gaming (Wi-Fi) - OC 0.6.8
CPU
i3-10320
Graphics
RX560
Mac
  1. iMac
  2. Mac mini
Classic Mac
  1. eMac
  2. iBook
Mobile Phone
  1. iOS
I do not believe this issue is caused by USBPorts.kext.

It may be caused by new security around kexts that Apple has implemented, affecting USBInjectAll.kext.

Edit: Seems to be related to the XhciPortLimit quirk.

If you haven't yet configured your USB ports then you can still do it from a system only showing USB2, but you will have to "deduce" the USB3 equivalents to your USB2 ports.

If you can't even log-on to your updated system because the password entry screen accepts no input, and your caps-lock LED is not functioning on a wired keyboard, these indicate all USB is inactive. In this case I would suggest - if you are able - editing your EFI folder to remove/deactivate any USB kexts and remove the quirk.
 
Last edited:
Joined
Dec 6, 2013
Messages
191
Motherboard
ASUS Z490-A Prime
CPU
i7-10070K
Graphics
RX 580
Mac
  1. MacBook Air
  2. MacBook Pro
Classic Mac
  1. Color Classic
  2. Power Mac
Mobile Phone
  1. iOS
I'm getting ready to make the leap from Catalina to Big Sur with the latest Clover and kexts. I had already created a USBPorts.kext with Hackintool, and I just set XHCIPortLimit to false, so my ports should work after updating, right?
 

NorthAmTransAm

Moderator
Joined
Jul 26, 2018
Messages
1,727
Motherboard
MSI Pro Z690-A DDR4
CPU
i7-12700k
Graphics
RX 580
Mac
  1. MacBook Air
  2. MacBook Pro
Mobile Phone
  1. iOS
I'm getting ready to make the leap from Catalina to Big Sur with the latest Clover and kexts. I had already created a USBPorts.kext with Hackintool, and I just set XHCIPortLimit to false, so my ports should work after updating, right?
Yep
 

NorthAmTransAm

Moderator
Joined
Jul 26, 2018
Messages
1,727
Motherboard
MSI Pro Z690-A DDR4
CPU
i7-12700k
Graphics
RX 580
Mac
  1. MacBook Air
  2. MacBook Pro
Mobile Phone
  1. iOS
Thats what I'm thinking.

What you could do is find someone with a USBMap already made and edit it so that in includes all ports. Like, HS01-HS15 and SS01-SS10.

Then enabled the XHCIPortLimit.

If you search around there is likely a diagram of your motherboard with your ports and headers labeled.

Attached is a kext for all USB ports enabled. You'll need to turn on XHCIPortLimit though.

Note: This is for iMac 19,1. If you have a different SMBIOS you'll need to right click the kext, show package contents, and open the info.plist file with a plist editor. Then change all instances of 19,1 to your model number (ie 20,1).

If you already know what ports you use then you should open the info.plist and delete the ones you don't. If you can get it under 15 then thats great as we can disable the XHCIPortLimit then!

If you know which ports are your USB 2.0 headers then please change the connector type to 255. Currently all ports are set 3.

255 = Internal
3 = 3.0 (we use this for 2.0 and 3.0)


NOTE: The purpose of temporarily enabling the port limit is so that you can get in, map your ports, then disable. You should not depend on this. It is a "hacky" solution and despite the name Hackintosh we're more of a Patchintosh family.
Updated this post for any confusion with this note.

NOTE: The purpose of temporarily enabling the port limit is so that you can get in, map your ports, then disable. You should not depend on this. It is a "hacky" solution and despite the name Hackintosh we're more of a Patchintosh family.
 
Joined
Mar 19, 2011
Messages
24
Motherboard
motherboard make & model # > See Rules!
CPU
I5-2300
Graphics
GTS 450
Mac
  1. Mac Pro
Classic Mac
  1. Apple
Mobile Phone
  1. Other
Thats the idea so far.
 
Top