At least to my understanding and verification using IORegistryExplorer you need USBInjectAll.kext in order to remove the USB port limit. Without USBInjectAll.kext the limit of 15 USB ports is still valid (in my case HS01-HS14 plus only SS01).
In the "Spoiler: System Status BEFORE Post-Installation", you can see that all ports are available without USBInjectAll.kext. Only the port limit patch is needed. Because I did the installation with 10.14.0, the port limit patch in the screenshots worked correctly.
That could also be the reason why you've succeeded using a USB 2.0 port (I guess HS09 or HS10), because all SS-ports except SS01 won't be mapped due to to the port limit.
I repeatedly installed Mojave from a USB 3.1 port without using USBInjectAll, but with only the port limit patch. In one particular case, however, I attempted the installation (also from a USB 3.1 port)
without enabling the Port Limit Patch, and only then encountered the garbled screen. I did this intentionally to observe various outcomes and determine how to recover.
In your user build description you have a screenshot (cc-kernel-args.png) showing the patch to remove the USB port limit. The shown value "83FB0F0F 83030500 00" is only valid for 10.14.0. For 10.14.1 and 10.14.2 it is "83FB0F0F 83030400 00". The same is valid for a screenshot in the section "Final Steps in Post-Installation".
Good catch, thanks! I'll fix this by adding two port limit patches in the screenshot.
For the final configuration I have some questions:
- Is there a reason that you've installed certain kexts in /Library/Extensions? In my build (not the USB installer) I place all kexts within the Clover partition.
I have seen multiple posts from moderators of this forum recommending that all kexts be installed eventually into /Library/Extensions. I plan to fine-tune the system a bit more by applying more of the information presented by user KGP in his exhaustive work, spanning the following two threads:
Because of this, I don't consider my build final, so I haven't moved everything to /Library/Extensions. An advantage of keeping kexts in CLOVER is simply the ability to boot with all injected kexts turned off to aid in troubleshooting. But some kexts might not work reliably unless they're moved to /Library/Extensions. So it's a balancing act...
- What needs to be changed in "SSDT-Z390-DESIGNARE-RX580" if the RX 580 is installed in the central PCIe slot (#2)? Due to the fan size I cannot use slot #1.
If you search for "Slot-1" (using MaciASL), you can replace it with "Slot-2". If there's a SUN or _SUN field in the .AML file and it's set to 0x01, you should also change that to 0x02 or whatever slot you're using. SUN stands for Slot User Number. Fortunately, this SSDT is purely cosmetic so there's some room for trial and error. Because I'm on holiday vacation away from home, I don't have access to the hackintosh...