Contribute
Register

iMac Pro X299 - Live the Future now with macOS 10.14 Mojave [Successful Build/Extended Guide]

Status
Not open for further replies.

RuleBreaker01

Banned
Joined
May 31, 2018
Messages
1,198
Just select your boot partition in the Clover Boot Menu and press F11 instead of Enter to clear the nvram. Your system will reboot subsequently.
Awesome, thanks... turned out to not be the problem.. But to do with my network cards for some reasons.

For the USB port limit patch,
The port limit for 10.14.1 patch was provided here:
https://www.tonymacx86.com/threads/macos-10-14-1-update.263758/

Code:
<key>Comment</key>
               <string>USB 10.14 by PMHeart,FredWst</string>
               <key>Disabled</key>
               <false/>
               <key>Find</key>
               <data>
               g/sPD4MDBQAA
               </data>
               <key>InfoPlistPatch</key>
               <false/>
               <key>MatchOS</key>
               <string>10.14</string>
               <key>Name</key>
               <string>com.apple.driver.usb.AppleUSBXHCI</string>
               <key>Replace</key>
               <data>
               g/sPkJCQkJCQ
               </data>
Basically in your config.plist it's replacing:
83FB0F0F 838F0400 00
by
83FB0F0F 83030500 00
 

kgp

Retired
Joined
May 30, 2014
Messages
6,780
Motherboard
ASUS WS X299 Sage 10G
CPU
i9-7980XE
Graphics
Vega 64
Mac
  1. iMac
  2. MacBook Pro
  3. Mac mini
Mobile Phone
  1. iOS
Awesome, thanks... turned out to not be the problem.. But to do with my network cards for some reasons.

For the USB port limit patch,
The port limit for 10.14.1 patch was provided here:
https://www.tonymacx86.com/threads/macos-10-14-1-update.263758/

Code:
<key>Comment</key>
               <string>USB 10.14 by PMHeart,FredWst</string>
               <key>Disabled</key>
               <false/>
               <key>Find</key>
               <data>
               g/sPD4MDBQAA
               </data>
               <key>InfoPlistPatch</key>
               <false/>
               <key>MatchOS</key>
               <string>10.14</string>
               <key>Name</key>
               <string>com.apple.driver.usb.AppleUSBXHCI</string>
               <key>Replace</key>
               <data>
               g/sPkJCQkJCQ
               </data>
Basically in your config.plist it's replacing:
83FB0F0F 838F0400 00
by
83FB0F0F 83030500 00

That's the port limit patch, which I use for 10.14.1 and which does not work anyway:

Code:
10.14.1
com.apple.driver.usb.AppleUSBXHCI
Find: 83FB0F0F 838F0400 00
Replace: 83FB0F90 90909090 90

The one with 500 was for 10.14.0, if I correctly remember..

If you want to use the XHC USB kext approach you will have to create at first place a fully implemented board-specific XHC USB Kext for your motherboard by following my respective guidelines. For it's use under 10.14.1, you likely have to subsequently truncate the kext by dropping some of the HS/SS ports implemented in the fully implemented kext not to exceed Apple's 15-port limit (thus the truncated 15-port kext should only contain in total 15 HS/SS ports).

In case that you choose the XHC USB kext approach, it would be gorgeous if you could provide a fully implemented XHC USB kext for the ASRock X299 Professional Gaming to be added to my XHC USB kext library on Github.

My truncated 15-port XHC USB kext for the ASUS Prime X299 Deluxe btw improved significantly the system sleep performance and removed all former random wake issues likely caused by related buffer overruns. System sleep performance is now absolutely flawless and it really seems recommended not to use any USB port limit patch and to always stay within Apple's 15-port limit, also under 10.13.6, etc.!
 
Last edited:

kgp

Retired
Joined
May 30, 2014
Messages
6,780
Motherboard
ASUS WS X299 Sage 10G
CPU
i9-7980XE
Graphics
Vega 64
Mac
  1. iMac
  2. MacBook Pro
  3. Mac mini
Mobile Phone
  1. iOS
Sure, here it goes (the first try had the wrong hash).

That one worked, dude :thumbup:.. Tomorrow I will add the 10.14.1 createInstaller script to the guide. Thanks for your help and contribution.
 

RuleBreaker01

Banned
Joined
May 31, 2018
Messages
1,198
That's the port limit patch, which I use for 10.14.1 and which does not work anyway:

Code:
10.14.1
com.apple.driver.usb.AppleUSBXHCI
Find: 83FB0F0F 838F0400 00
Replace: 83FB0F90 90909090 90

The one with 500 was for 10.14.0, if I correctly remember..

OK, good to know..

I use the XHC USB kext method anyway.

If you want to use the XHC USB kext approach you will have to create at first place a fully implemented board-specific XHC USB Kext for your motherboard by following my respective guidelines. For it's use under 10.14.1, you likely have to subsequently truncate the kext by dropping some of the HS/SS ports implemented in the fully implemented kext not to exceed Apple's 15-port limit (thus the truncated 15-port kext should only contain in total 15 HS/SS ports).

In case that you choose the XHC USB kext approach, it would be gorgeous if you could provide a fully implemented XHC USB kext for the ASRock X299 Professional Gaming to be added to my XHC USB kext library on Github.

I did provide it several times in the other imac pro thread, even made ASCII art to describe which port was what (I did so for all the MB I played with: GB designare, GB Gaming 7, ASROCK and Asus Prime) I'm not near my desktop right now, I'll provide it tomorrow again here.

Right now, I'm using 14 USB ports so the kext approach worked fine. There's one usb 2.0 header in the motherboard that is unused. Unfortunately, to get the Titan Ridge card to work, I need that USB port, in which case the kext approach is no good as I would need to choose which USB port will be turned off.
 
Joined
Oct 3, 2015
Messages
87
Motherboard
Gigabyte Z690 Aero G DDR4
CPU
i9-12900K
Graphics
RX 6900 XT
Mac
  1. MacBook
  2. MacBook Pro
Mobile Phone
  1. iOS
Why don't you simply use my 15-port truncated kext attached at the end of my guide?

Note that the USBConnector Number of all HS ports associated to USB3.0 connectors must be "3", while the USBConnector Number of all HS ports associated to USB2.0 connectors must be "0" or "255", where "3" means USB3.0 and "0" and "255" respectively stay for USB2.0 external and internal. I guess there was a basic misunderstand at your side. After considering this respective rule, both of your USB3.0 front panel connectors connected to the internal USB3.0 connector (associated with the HS01,HS02,SS01,SS02 ports) should fully work as long you else removed in total 5 HS/SS ports to stay within the 15-port USB limit.

Anyway, I currently still face issues with one out of two front USB3.0 front panel connectors, connect to the internal USB3.0 (HS01,HS02,SS01,SS02) connector, although everything is properly set in my kext. I still have to investigate why this issue happens on my particular system.

Please let me know whether or not after considering the mandatory USBConnector Number nomenclature above, also both of your front panel USB3.0 connectors work as expected.

The reason I didn't use your 15 limit kext is because I had connected USB front header connected to u31G1_34. So I decided to change my header to U31G1_32 so I could use your kext. Interesting enough, your kext doesn't work with that configuration so I swapped out with the kext that I edited myself and it worked. Your screen shot show this mapping:

U31G1_34 --> HS01,HS02,SS01,SS02
U31G1_32 --> HS03,HS04,SS03,SS04

I feel like my configuration somehow is the opposite

U31G1_34 --> HS03,HS04,SS03,SS04
U31G1_32 --> HS01,HS02,SS01,SS02

I still can't get the 2 USB 2.0 front port working even though I assigned decimal 0. At least the 2 USB 3.0 ports front ports working so that's a big improvement. Thanks.
 

kgp

Retired
Joined
May 30, 2014
Messages
6,780
Motherboard
ASUS WS X299 Sage 10G
CPU
i9-7980XE
Graphics
Vega 64
Mac
  1. iMac
  2. MacBook Pro
  3. Mac mini
Mobile Phone
  1. iOS
The reason I didn't use your 15 limit kext is because I had connected USB front header connected to u31G1_34. So I decided to change my header to U31G1_32 so I could use your kext. Interesting enough, your kext doesn't work with that configuration so I swapped out with the kext that I edited myself and it worked. Your screen shot show this mapping:

U31G1_34 --> HS01,HS02,SS01,SS02
U31G1_32 --> HS03,HS04,SS03,SS04

I feel like my configuration somehow is the opposite

U31G1_34 --> HS03,HS04,SS03,SS04
U31G1_32 --> HS01,HS02,SS01,SS02

I still can't get the 2 USB 2.0 front port working even though I assigned decimal 0. At least the 2 USB 3.0 ports front ports working so that's a big improvement. Thanks.

Yes, sir! My bad! :thumbup:

Section E.4) - USB configuration once more revised and modified!

btw.. the two USB 2.0 front panel connectors should be connect to the one and only internal USB2.0 header, which is also fully functional following my actual results.
 

kgp

Retired
Joined
May 30, 2014
Messages
6,780
Motherboard
ASUS WS X299 Sage 10G
CPU
i9-7980XE
Graphics
Vega 64
Mac
  1. iMac
  2. MacBook Pro
  3. Mac mini
Mobile Phone
  1. iOS
Revision and modification of Section E.4) - USB Configuration

Enjoy and have fun,

kgp.png
 

RuleBreaker01

Banned
Joined
May 31, 2018
Messages
1,198
@kgp Here is the X299USB.kext for the ASRock Professional Gaming XE board.

This implements all USB slots (on the Intel ICH) but one of the USB2.0 header (to keep below the 14 ports limit)

The ASRock Professional Gaming XE are organised like this (original from post https://www.tonymacx86.com/threads/...d-extended-guide.229353/page-621#post-1712000)

USB headers on the motherboard
Code:
USB3.1g2-USB.C   USB3.1-H    USB3.1-H
RP07.SLT7               \    /
                         HS09
                         SSP01


                                         USB2.0
                                         HS01-HS02
                               
                                         USB2.0
                                         HS03-HS04

USB ports on the Rear Panel:
Code:
USB2.0    ETH       10GETH    ETH
HS08

USB2.0    USB3.0    USB3.0    USB3.1
HS07      HS06      HS13      RP01.SLT1
          SSP06     SSP04
 
          USB3.0    USB3.0    USB3.1
          HS05      HS12      RP01.SLT1
          SSP05     SSP03

The Wifi/BT card is using HS14
 

Attachments

  • X299USB.kext.zip
    1.1 KB · Views: 49
Last edited by a moderator:

kgp

Retired
Joined
May 30, 2014
Messages
6,780
Motherboard
ASUS WS X299 Sage 10G
CPU
i9-7980XE
Graphics
Vega 64
Mac
  1. iMac
  2. MacBook Pro
  3. Mac mini
Mobile Phone
  1. iOS
@kgp Here is the X299USB.kext for the ASRock Professional Gaming XE board.

This implements all USB slots (on the Intel ICH) but one of the USB2.0 header (to keep below the 14 ports limit)

The ASRock Professional Gaming XE are organised like this (original from post https://www.tonymacx86.com/threads/...d-extended-guide.229353/page-621#post-1712000)

USB headers on the motherboard
Code:
USB3.1g2-USB.C   USB3.1-H    USB3.1-H
RP07.SLT7        ???         HS09
                 ???         SSP01


                                         USB2.0
                                         HS01-HS02
                                 
                                         USB2.0
                                         HS03-HS04

USB ports on the Rear Panel:
Code:
USB2.0    ETH       10GETH    ETH
HS08

USB2.0    USB3.0    USB3.0    USB3.1
HS07      HS06      HS13      RP01.SLT1
          SSP06     SSP04

          USB3.0    USB3.0    USB3.1
          HS05      HS12      RP01.SLT1
          SSP05     SSP03

The Wifi/BT card is using HS14

Gorgeous, man! Many thanks!

But as far I understand it is the truncated 15-port kext, right?

Would it be possible to also provide the fully implemented kext (with all onboard connectors implemented) to be uploaded to the XHC USB kext Library?
 

RuleBreaker01

Banned
Joined
May 31, 2018
Messages
1,198
Gorgeous, man! Many thanks!

But as far I understand it is the truncated 15-port kext, right?

Would it be possible to also provide the fully implemented kext (with all onboard connectors implemented) to be uploaded to the XHC USB kext Library?

Well you can't, in the X299USB.kext you have 15 ports enabled already. I thought you could never do more than 15 ports with that method? (without removing the limit with a patch).
The only ones missing are HS01 and HS02 (I have HS03 and HS04 connected to the case's front USB connectors).

My previous post had an attachment, it implements: HS03, HS04, HS05, HS06, HS07, HS08, HS-9, HS12, HS13, HS14, SSP01, SSP03, SSP04, SSP05 and SSP06 (15 ports)

Unless I'm not understanding what you're asking for.
 
Status
Not open for further replies.
Top