Independent guide. Not affiliated with Dortania or the OpenCore Legacy Patcher project.Official project on GitHub
OCLP Field Guideoclp.dev
OCLP 2.5.1/3.0.0 RC5

Install

Root patching: what OCLP adds after the install

“Post-Install Root Patch” is the step that brings back graphics acceleration, Wi-Fi, audio and other hardware on a patched Mac. This page lists every patch set in OCLP 3.0.0, which Macs get it, on which macOS versions, and what it needs.

Checked against OCLP 3.0.0-rc.5 sourceUpdated
On this page 8 sections
  1. How to run root patching
  2. Every patch set
  3. Graphics: three families
  4. What each graphics and audio patch replaces, and why
  5. Every kext OCLP loads, and why
  6. Patch sets that need a download
  7. Why root patching needs lowered SIP
  8. Common questions

Short answer

Root patches are drivers and system files that Apple removed from newer macOS. OCLP copies them back onto the system volume after macOS is installed. Your Mac gets only the patch sets that match its hardware and macOS version. macOS updates remove them, so you run root patching again after every update. Some patch sets need an internet download during patching: a Kernel Debug Kit or MetallibSupportPkg.

How to run root patching

Post-Install Root Patch: the menu lists the patches for your hardware. On our virtual test Mac it reports “No patches required”.
Real screenshot · OCLP 3.0.0-rc.5 · macOS 15.7.9 (24G830) · GitHub macos-15-intelPost-Install Root Patch: the menu lists the patches for your hardware. On our virtual test Mac it reports “No patches required”.
  1. Open OpenCore Legacy Patcher and click Post-Install Root Patch. The screen lists the patches for your Mac, or says “No patches required”.
  2. Connect to the internet, ideally by Ethernet.
  3. Click Start Root Patching, enter your password, wait, and restart when asked.
  4. To undo, click Revert Root Patches (macOS Monterey and newer).

If you created the USB installer with OCLP for the right model, root patching runs automatically after the install. The screen also shows “Root Volume last patched:” with the date and OCLP version.

Every patch set

Generated by running each patch set's own detection code against every supported Mac's stock hardware, for macOS Big Sur through Tahoe.

Patch setGraphics classApplied onNeeds a Kernel Debug KitNeeds MetallibSupportPkgFiles (Tahoe)Models
AMD Legacy GCNGraphicsMetal (31001)Ventura → TahoeVentura, Sonoma, Sequoia, Tahoe—194
AMD PolarisGraphicsMetal (31001)Ventura → TahoeVentura, Sonoma, Sequoia, Tahoe—115
AMD TeraScale 1GraphicsNon-MetalBig Sur → TahoeVentura, Sonoma, Sequoia, Tahoe—618
AMD TeraScale 2GraphicsNon-MetalBig Sur → TahoeVentura, Sonoma, Sequoia, Tahoe—629
Intel BroadwellGraphicsMetal (31001)Ventura → Tahoe——136
Intel GMA X3100GraphicsNon-MetalBig Sur → TahoeVentura, Sonoma, Sequoia, Tahoe—501
Intel HaswellGraphicsLegacy Metal (3802)Ventura → Tahoe—Sequoia2113
Intel Iron LakeGraphicsNon-MetalBig Sur → TahoeVentura, Sonoma, Sequoia, Tahoe—472
Intel Ivy BridgeGraphicsLegacy Metal (3802)Monterey → Tahoe—Sequoia1911
Intel Sandy BridgeGraphicsNon-MetalBig Sur → TahoeVentura, Sonoma, Sequoia, Tahoe—5010
Intel SkylakeGraphicsMetal (31001)Ventura → Tahoe——85
Nvidia KeplerGraphicsLegacy Metal (3802)Monterey → Tahoe—Sequoia227
Nvidia TeslaGraphicsNon-MetalBig Sur → TahoeVentura, Sonoma, Sequoia, Tahoe—4923
Legacy WirelessNetworking—Monterey → Tahoe——826
Modern WirelessNetworking—Sonoma → Tahoe——356
Legacy AudioMiscellaneous—Big Sur → Tahoe——82
Legacy Backlight ControlMiscellaneous—Big Sur → TahoeVentura, Sonoma, Sequoia, Tahoe—45
Legacy USB 1.1Miscellaneous—Ventura → Tahoe——826
Modern AudioMiscellaneous—Tahoe onlyTahoe—186
PCIe FaceTime CameraMiscellaneous—Sonoma → Tahoe——219
T1 Security ChipMiscellaneous—Sonoma → Tahoe——184

Generated by running each hardware patch set class from the OCLP 3.0.0 source (commit a1c74ce) against every supported model's stock hardware. “Files” counts the items the patch set installs, merges or removes on the system volume.

Graphics: three families

Non-Metal
GPUs without Metal support: Intel GMA X3100, Iron Lake and Sandy Bridge (HD 3000), NVIDIA Tesla, AMD TeraScale 1 and 2. Found in most 2007–2011 Macs. OCLP restores OpenGL acceleration; apps that require Metal do not work.
Metal 3802 (legacy Metal)
Intel Ivy Bridge (HD 4000), Haswell, and NVIDIA Kepler. Found in 2012–2014 Macs and the 15-inch 2012–2014 MacBook Pros. Their Metal drivers were removed in Monterey (Ivy Bridge, Kepler) and Ventura (Haswell). From Sequoia they also need MetallibSupportPkg.
Metal 31001
Intel Broadwell, Skylake, AMD GCN and Polaris (and Vega or Navi in upgraded Mac Pros without AVX2). Found in 2015–2017 Macs. The closest to a native experience.

What each graphics and audio patch replaces, and why

OCLP does not just switch drivers on. It copies old versions of specific files from earlier macOS releases into the system volume. Dortania documents the file list for each on-disk patch and the reason for the awkward ones, such as why Metal and the shader compilers are downgraded to 13.2.1 on 3802-based GPUs. This is that documentation, in full, one block per patch.

Audio Patches (11.0+) 1 items

Extensions

  • AppleHDA Re-add El Capitan's AppleHDA to achieve audio support. Applies to: iMac7,1 and iMac8,1.
Legacy Wireless Patches (12.0+) 2 items

Applicable for BCM94328, BCM94322 and Atheros Wifi cards

CoreServices

  • WiFiAgent.app

/usr/libexec

  • airportd
NVIDIA Kepler Graphics Acceleration Patches (12.0+) 13 items

Extensions

  • GeForce.kext
  • GeForceAIRPlugin.bundle
  • GeForceGLDriver.bundle
  • GeForceMTLDriver.bundle
  • GeForceVADriver.bundle
  • NVDAGF100Hal.kext
  • NVDAGK100Hal.kext
  • NVDAResman.kext
  • NVDAStartup.kext

Frameworks

  • OpenCL (libCLVMNVPTXPlugin.dylib, NVPTX.dylib) Re-add Kepler hardware acceleration support.
  • Metal 3802 based GPU's broken by 13.3, requiring a Metal downgrade to 13.2.1.

PrivateFrameworks

  • MTLCompiler 3802 based GPU's broken by 13.3, requiring a MTLCompiler downgrade to 13.2.1.
  • GPUCompiler 3802 based GPU's broken by 13.3, requiring a GPUCompiler downgrade to 13.2.1.
Intel Ivy Bridge Graphics Acceleration Patches (12.0+) 13 items

Extensions

  • AppleIntelIVBVA.bundle
  • AppleIntelFramebufferCapri.kext
  • AppleIntelGraphicsShared.bundle
  • AppleIntelHD4000Graphics.kext
  • AppleIntelHD4000GraphicsGLDriver.bundle
  • AppleIntelHD4000GraphicsMTLDriver.bundle
  • AppleIntelHD4000GraphicsVADriver.bundle

PrivateFrameworks

  • AppleGVA/AppleGVACore Enable DRM support.
  • MTLCompiler 3802 based GPU's broken by 13.3, requiring a MTLCompiler downgrade to 13.2.1.
  • GPUCompiler 3802 based GPU's broken by 13.3, requiring a GPUCompiler downgrade to 13.2.1.

Frameworks

  • OpenCL (libCLVMIGILPlugin.dylib) Re-add Ivy Bridge hardware acceleration support.
  • WebKit (com.apple.WebProcess.sb) Re-add Ivy Bridge Safari rendering support.
  • Metal 3802 based GPU's broken by 13.3, requiring a Metal downgrade to 13.2.1.
Intel Haswell Graphics Acceleration Patches (13.0+) 10 items

Extensions

  • AppleIntelFramebufferAzul.kext
  • AppleIntelHD5000Graphics.kext
  • AppleIntelHD5000GraphicsGLDriver.bundle
  • AppleIntelHD5000GraphicsMTLDriver.bundle
  • AppleIntelHD5000GraphicsVADriver.bundle
  • AppleIntelHSWVA.bundle
  • AppleIntelGraphicsShared.bundle

Frameworks

  • Metal 3802 based GPU's broken by 13.3, requiring a Metal downgrade to 13.2.1.

PrivateFrameworks

  • MTLCompiler 3802 based GPU's broken by 13.3, requiring a MTLCompiler downgrade to 13.2.1.
  • GPUCompiler 3802 based GPU's broken by 13.3, requiring a GPUCompiler downgrade to 13.2.1.
Intel Broadwell Graphics Acceleration Patches (13.0+) 7 items

Extensions

  • AppleIntelBDWGraphics.kext
  • AppleIntelBDWGraphicsFramebuffer.kext
  • AppleIntelBDWGraphicsGLDriver.bundle
  • AppleIntelBDWGraphicsMTLDriver.bundle
  • AppleIntelBDWGraphicsVADriver.bundle
  • AppleIntelBDWGraphicsVAME.bundle
  • AppleIntelGraphicsShared.bundle
Intel Skylake Graphics Acceleration Patches (13.0+) 7 items

Extensions

  • AppleIntelSKLGraphics.kext
  • AppleIntelSKLGraphicsFramebuffer.kext
  • AppleIntelSKLGraphicsGLDriver.bundle
  • AppleIntelSKLGraphicsMTLDriver.bundle
  • AppleIntelSKLGraphicsVADriver.bundle
  • AppleIntelSKLGraphicsVAME.bundle
  • AppleIntelGraphicsShared.bundle
AMD Legacy Vega Graphics Acceleration Patches (13.0+) 6 items

Extensions

  • AMDRadeonX5000.kext
  • AMDRadeonVADriver2.bundle
  • AMDRadeonX5000GLDriver.bundle
  • AMDRadeonX5000MTLDriver.bundle
  • AMDRadeonX5000Shared.bundle
  • AMDShared.bundle
AMD Legacy Polaris Graphics Acceleration Patches (13.0+) 6 items

Extensions

  • AMDRadeonX4000.kext
  • AMDRadeonX4000HWServices.kext
  • AMDRadeonVADriver2.bundle
  • AMDRadeonX4000GLDriver.bundle
  • AMDMTLBronzeDriver.bundle
  • AMDShared.bundle
AMD Legacy GCN Graphics Acceleration Patches 14 items

Extensions

  • AMD7000Controller.kext
  • AMD8000Controller.kext
  • AMD9000Controller.kext
  • AMD9500Controller.kext
  • AMD10000Controller.kext
  • AMDRadeonX4000.kext
  • AMDRadeonX4000HWServices.kext
  • AMDFramebuffer.kext
  • AMDSupport.kext
  • AMDRadeonVADriver.bundle
  • AMDRadeonVADriver2.bundle
  • AMDRadeonX4000GLDriver.bundle
  • AMDMTLBronzeDriver.bundle
  • AMDShared.bundle
non-Metal Graphics Acceleration Patches (11.0+) 11 items

General Patches

  • IOSurface.kext Fixes immediate logout on login.

Dropped Acceleration Binaries

  • NVIDIA Binaries
  • NVIDIA Web Drivers Binaries Allows for non-Metal Acceleration for NVIDIA Maxwell and Pascal GPUs.
  • AMD/ATI Binaries
  • Intel 5th Gen Binaries
  • Intel 6th Gen Binaries

Frameworks

  • CoreDisplay.framework
  • IOSurface.framework
  • OpenGL.framework

PrivateFrameworks

  • GPUSupport.framework
  • SkyLight.framework

Every kext OCLP loads, and why

OpenCore loads kernel extensions (kexts) at boot. We built OpenCore for every supported Mac and counted which kexts each build loads. Where Dortania explains a kext, the reason is quoted; the few it does not explain are marked.

Every kext in our 86 OpenCore builds
KextBuilds that load itWhy, in Dortania's words
Lilu.kext86 of 86Patching engine for other kexts Needed on: All models require.
RestrictEvents.kext86 of 86Disables memory errors on MacPro7,1 Needed on: Mac Pros and Xserves.
AMFIPass.kext84 of 86Enabled on Macs whose last native macOS is older than Sonoma, so root patches are not blocked by Apple Mobile File Integrity.
CatalinaIntelI210Ethernet.kext84 of 86Fixes Intel i210/i225 NIC support on pre-Ivy Macs
ECM-Override.kext84 of 86Loaded on Macs whose last native macOS is older than Sonoma. Sonoma-era Wi-Fi patches downgrade IOSkywalk, and Apple's DriverKit driver for USB ECM Ethernet dongles uses IOSkywalk, so OCLP force-loads the kernel driver to prevent a kernel panic.
CSLVFixup.kext83 of 86Patches __RESTRICT and __restrict out of the Music.app binary; used when library validation is disabled.
AirportBrcmFixup.kext56 of 86Patches IO80211 and co to fix networking support for unsupported cards, and fix bugs on native ones as well (ie. random degraded network performance) Needed on: BCM943224, BCM94331, BCM94360 and BCM943602.
AirPortBrcmNIC-Tahoe.kext56 of 86No explanation in the documentation
IO80211FamilyLegacy.kext56 of 86No explanation in the documentation
IOSkywalkFamily.kext56 of 86With Sonoma, OCLP's Wi-Fi patches require downgrading IOSkywalk.
AppleIntelCPUPowerManagement.kext53 of 86Restores Ivy Bridge and older CPU Power Management
AppleIntelCPUPowerManagementClient.kext53 of 86Restores Ivy Bridge and older CPU Power Management
CryptexFixup.kext53 of 86Installs non AVX2.0 Cryptex on non AVX2.0 CPUs Needed on: All CPUs Ivy Bridge and older.
BlueToolFixup.kext52 of 86Patches BlueTool to enable bluetooth functionality on Monterey Needed on: All models with pre-BCM94360 wireless cards or 3rd-party chipsets.
ASPP-Override.kext41 of 86Forces ACPI_SMC_PlatformPlugin to outmatch X86PlatformPlugin and disable firmware throttling
AppleALC.kext39 of 86No explanation in the documentation
Bluetooth-Spoof.kext36 of 86Injects extra data into certain bluetooth chipsets for recognition by the system Needed on: Models with the BCM2070 or BCM2046 chipsets.
AppleUSBMultitouch.kext35 of 86Restore USB Trackpad support on Mac OS Ventura
AppleUSBTopCase.kext35 of 86Restore USB Keyboard support on Mac OS Ventura
KDKlessWorkaround.kext34 of 86Helps with Mac os updates on KDKless patched systems
IOS3XeFamily.kext32 of 86Restores S1X/S3X NVMe support removed in macOS 14.0 beta 2 (Apple SSDs such as AP0128H and AP0256H); also covers Macs with the 12+16 pin SSD layout and newer drives.
NoAVXFSCompressionTypeZlib-AVXpel-Tahoe.kext31 of 86Prevents AVXFSCompressionTypeZlib crash on pre AVX1.0 systems in 12.4+
NoAVXFSCompressionTypeZlib-AVXpel.kext31 of 86Prevents AVXFSCompressionTypeZlib crash on pre AVX1.0 systems in 12.4+
NoAVXFSCompressionTypeZlib.kext31 of 86Prevents AVXFSCompressionTypeZlib crash on pre AVX1.0 systems in 12.4+
corecaptureElCap.kext26 of 86Re-inject WiFi drivers from El Capitan Needed on: BCM94328, BCM94322 and Atheros chipsets.
IO80211ElCap.kext26 of 86Re-inject WiFi drivers from El Capitan Needed on: BCM94328, BCM94322 and Atheros chipsets.
AAAMouSSE.kext23 of 86Translates SSE4.2 instructions to compatible code for SSE4,1 CPUs, required for AMD Metal drives Needed on: MacPro3,1.
telemetrap.kext23 of 86Ensures telemetry.plugin doesn't run, required for SSE4,1 CPUs Needed on: Penryn CPUs.
AppleCameraInterface.kext19 of 86No explanation in the documentation
CatalinaBCM5701Ethernet.kext17 of 86Inject old Broadcom Ethernet kext to resolve networking in Big Sur Needed on: 2011 and older Broadcom Ethernet require.
AppleHSSPIHIDDriver.kext14 of 86Part of the same SPI top case support: restores the keyboard and trackpad on Broadwell to Kaby Lake MacBooks and the MacBookAir6,x.
AppleHSSPISupport.kext14 of 86macOS 14.4 beta 1 strips SPI-based top case (keyboard and trackpad) support for Broadwell through Kaby Lake MacBooks and the MacBookAir6,x; OCLP adds it back.
AppleTopCaseInjector.kext14 of 86Part of the same SPI top case support: restores the keyboard and trackpad on Broadwell to Kaby Lake MacBooks and the MacBookAir6,x.
nForceEthernet.kext12 of 86Inject old NVIDIA Ethernet kext to resolve networking in Catalina and newer Needed on: 2010 and older NVIDIA Ethernet require.
AirPortAtheros40-Tahoe.kext7 of 86No explanation in the documentation
AppleIntelPIIXATA-Monterey.kext6 of 86Fix IDE support on MacPro3,1 Needed on: MacPro3,1.
AppleIntelPIIXATA.kext6 of 86Fix IDE support on MacPro3,1 Needed on: MacPro3,1.
BigSurSDXC.kext6 of 86Restores SDXC Support in Pre Ivy-Bridge Macs
WhateverGreen.kext5 of 86Patches GPU Frameworks and kext to ensure proper support Needed on: All models require when spoofing or have non-stock GPU.
AppleCredentialManager.kext4 of 86No explanation in the documentation
AppleKeyStore-Tahoe.kext4 of 86No explanation in the documentation
AppleKeyStore.kext4 of 86No explanation in the documentation
AppleSSE.kext4 of 86No explanation in the documentation
corecrypto_T1.kext4 of 86No explanation in the documentation
KernelRelayHost.kext4 of 86No explanation in the documentation
MarvelYukonEthernet.kext4 of 86Inject old Marvel Ethernet kext to resolve networking in Catalina and newer Needed on: 2008 and older Marvel Ethernet require.
AppleMCEReporterDisabler.kext3 of 86No explanation in the documentation
CPUFriend.kext3 of 86Patches IOx86PlatformPlugin to restore previous CPU profiles Needed on: All models using minimal or higher spoofing.
Intel82574L.kext3 of 86Resolves Ethernet Support on MacPros Needed on: MacPro3,1 - 5,1.
SMC-Spoof.kext3 of 86Spoofs SMC version to 9.9999 Needed on: All models require when spoofing minimal or higher.
AppleIntel8254XEthernet.kext2 of 86Resolves Ethernet Support on MacPros Needed on: MacPro3,1 - 5,1.
AppleRAIDCard.kext2 of 86No explanation in the documentation
AppleUSBTrackpad.kext2 of 86Restore USB Trackpad support on Mac OS Ventura
LegacyKeyboardInjector.kext2 of 86Fixes function keys on MacBook5,2
LegacyUSBVideoSupport.kext2 of 86Fixes Legacy USB iSight support
MonteAHCIPort.kext2 of 86Fixes SSD support for stock SSD found in MacBookAir6,x

Patch sets that need a download

Two kinds of packages are too large or too build-specific to ship inside the app. OCLP downloads them during patching, which is why you need internet then:

  • Kernel Debug Kit (KDK): Apple's kernel debug files, which OCLP needs to rebuild the kernel collection with its drivers. Fetched through Dortania's KdkSupportPkg. Needed by AMD GCN and Polaris graphics from Ventura, every non-Metal patch set from Ventura, and on Tahoe by the Modern Audio patch set (so every patched Mac on Tahoe).
  • MetallibSupportPkg: Metal libraries rebuilt for Ivy Bridge, Haswell and Kepler GPUs on Sequoia. It must match your exact macOS build.

Without a connection, OCLP installs only the Wi-Fi patch first, so you can get online, then asks you to patch again (Dortania, Post-Installation).

Why root patching needs lowered SIP

System Integrity Protection blocks changes to system files. OCLP lowers the flags it needs through OpenCore: on Ventura and newer, CSR_ALLOW_UNTRUSTED_KEXTS, CSR_ALLOW_UNRESTRICTED_FS and CSR_ALLOW_UNAUTHENTICATED_ROOT (from sip_data.py). The security trade-off is explained in Is OCLP safe?.

Common questions

Do I need to run root patching after every macOS update?

Yes. Updates replace the system volume and remove the patches. OCLP shows a prompt after an update.

What does “No patches required” mean?

Your Mac's hardware is fully supported by that macOS version, so only OpenCore is needed. That is common on Big Sur and for upgraded Mac Pros.

Can I choose which patches to install?

Not individually in the app. OCLP installs every patch set that applies to the hardware it detects.

Start Root Patching is greyed out.

A check failed: the screen lists why (for example SIP enabled because OpenCore was not used to boot, or no internet for a required download). See Cannot patch due to the following reasons.

Keep going

Something wrong or out of date on this page? Email hello@oclp.dev and we will fix it (see our corrections policy).