To understand the kext, you must first understand the hardware context:
Before adding this kext, check your motherboard manual to identify your USB controller chip. If it isn't Intel or ASMedia 3.1 Gen 2, give xhci-unsupported.kext a try. It might just bring those dead USB 3.0 ports back to life.
By default, macOS only includes drivers for USB controllers found in genuine Apple hardware. If your PC uses a different Intel chipset—particularly from the or HEDT (High-End Desktop) eras—macOS may fail to load the necessary AppleUSBXHCIPCI driver, resulting in non-functional USB ports. Common chipsets requiring this kext include: Intel 300-series: H370, B360, and H310. Intel HEDT: X79, X99, and X299. xhci-unsupported.kext
Copy the kext to EFI/OC/Kexts/ (for OpenCore) or EFI/CLOVER/kexts/Other/ (for legacy Clover).
While modern OpenCore and Clover configurations have largely moved away from this specific kext, understanding it remains essential for troubleshooting older hardware or dealing with stubborn USB controllers. To understand the kext, you must first understand
xhci-unsupported.kext is a niche but essential tool for vintage hardware enthusiasts and users of specific X99/X299 workstation boards. For the average modern Hackintosh builder (Intel 8th gen or later), you can safely ignore it.
: It is typically required for several generations of Intel chipsets, including: X99/X299 (e.g., Device ID 8086:8d31 ) 200-series (e.g., Device ID 8086:a2af ) 300-series Coffee Lake (e.g., H370, B360, H310) 400, 500, and 600-series By default, macOS only includes drivers for USB
Here is everything you need to know about what this kext does, when you need it, and how to use it correctly.
If the controller is deemed "unsupported" by Apple’s built-in drivers (specifically AppleUSBXHCI ), the system might: