Kexts
macOS kernel drivers. OpenCore can inject or block drivers. You put them in EFI/OC/Kexts
, but they also have to be specified in the config.plist
. We will take care of the latter at a later step.
Kext stands for Kernel EXTension. Wowie!
Kexts are bundles (aka just folders) that end with the
.kext
extension. Only macOS treats them differently. If a folder does not end with .kext
, it's likely not a kext (duh).Necessities
You cannot boot at all without these.
Lilu
(10.4+)
Does arbitrary kext, library and program patching inside macOS.VirtualSMC
(10.4+)
Emulates Apple's SMC.
VirtualSMC plug-ins
SMCProcessor
(10.7+)
Monitors CPU temperatures on IntelSMCAMDProcessor
(10.13+)
Monitors CPU temperatures on AMD. RequiresAMDRyzenCPUPowerManagement
(same repository).SMCRadeonGPU
(10.15+)
Monitors AMD GPU temperatures.SMCSuperIO
(10.6, 64-bit only)
Monitors fan speeds.SMCBatteryManager
(10.4)
Monitors laptop battery status.SMCLightSensor
(10.6, 64-bit only)
Adds support for ACPI Ambient Light Sensor.SMCDellSensors
(10.7+)
Monitors fan speeds on Dell systems that support System Management Mode (SMM).
Graphics
You may only use one of the below kexts. They conflict with each other.
NootRX
(11+)
Provides patches for AMD Navi 2x cards.NootedRed
(10.15+)
Provides graphical acceleration for AMD Vega iGPUs.WhateverGreen
(10.6+, 64-bit only)
Provides patches for Intel iGPUs and for AMD and NVIDIA dGPUs to allow for graphical acceleration, frame-buffer patching, backlight control, etc. Do not combine with the other aforementioned graphics kexts.
Audio
AppleALC
(10.4+)
Patches Apple's audio stack (AppleHDA
/AppleGFXHDA
) to allow unsupported audio codecs and HDMI audio.
Ethernet
LucyRTL8125Ethernet
(10.14+)
RTL8125 (2.5GBe Realtek) driver, ported from Linux.RealtekRTL8111
(10.14+)
RTL8111 (1GBe Realtek) driver, ported from Linux.RealtekRTL8100
(10.14+)
RTL8100 (10/100MBe Realtek) driver, ported from Linux.AppleIGC
(10.15+)
I225-V/I226-V Ethernet driver, ported from Linux.AppleIGB
(10.9+)
Fork ofIntelMausi
for Intel I210 and I211 Ethernet.IntelMausi
(10.9+, 10.6-10.8 withIntelSnowMausi
)
Driver for the majority of Intel Ethernet cards.AtherosE2200Ethernet
(10.12+)
Driver for the majority of Atheros Ethernet cards.
Aquantia cards on AMD need CaseySJ's patches.
Wi-Fi/Bluetooth
Itlwm
(10.13+)
Supports most Intel Wi-Fi cards.AirportItlwm
uses macOS' Wi-Fi stack, andItlwm
usesHeliport
to connect to networks.IntelBluetoothFirmware
Supports most Intel Wi-Fi cards. On macOS 11 and lower you need to use all 3 included kexts. On macOS 12+ you need to use IntelBluetoothFirmware, IntelBTPatcher and BlueToolFixup fromBrcmPatchRAM
AirportBrcmFixup
Patches the AirPort kexts to allow non-native Broadcom cards to use the native Wi-Fi stackBrcmPatchRam
Patches the Bluetooth stack to allow non-native Broadcom (and all other ones in macOS 12+ withBlueToolFixup
) to use the native Bluetooth stack
If your Wi-Fi card is unsupported and you don't have Ethernet, you can use
HoRNDIS
to enable Android USB tethering. iPhone USB tethering doesn't work in recoveryOS
.USB
XLNCUSBFix
(10.13+)
USB fix only for AMD FX CPUs.USBToolBox
(10.11+)
USB mapping kext. Requires a companionUTBMap
kext. Do not useUTBDefault
.
Input
VoodooPS2
(10.11+)
Driver for PS/2 peripherals. Used for laptop keyboards or PS/2 mice/keyboards on desktops.VoodooI2C
(10.13+)
Driver for I2C input devices. The one linked is a pre-release version with added support for AMD I2C controllers.HID is a very common device type. If you're on an AMD laptop, it is highly likely that your touchpad is wired through it. Still, double check.VoodooSMBus
(10.14+)
For input devices wired through the SMBus controller (I2C-i801) and also some peculiar ELAN SMBus input devices.
Storage
NVMeFix
(10.14+)
Patches the NVMe stack (IONVMeFamily) to support Autonomous Power State Transition (APST), and to fix timeout kernel panics on some NVMe controllers.EmeraldSDHC
(10.13+)
Driver for eMMC storage devices.
Extras/Miscellaneous
AppleMCEReporterDisabler
(12.3+)
DisablesAppleIntelMCEReporter
which panics on AMD systems and even some Intel systemsAmdTscSync
(10.13+)
Synchronises the TimeStamp Counter (TSC) - Generally only useful for AMD APUs that would be horrendously slow without it.RestrictEvents
(10.13+)
Fixes the CPU name inAbout This Mac
, and the memory and PCI warnings onMacPro7,1
SMBIOS. Also allows forcing VMM to fix OTA updates on T2 SMBIOSes on macOS Sonoma+, amongst other features.ECEnabler
(10.7+)
Allows macOS to read EC fields over 8 bits long, removing the need to split them manually.BrightnessKeys
(10.11+)
Provides support for ACPI brightness change notifications (which usually come from your keyboard's function (FN) keys)