# UEFI
Note
How we deal with these options that aren't nested under a section needs work. Right now they're treated as a separate heading, so you can see it in the sidebar and the table of contents, but it may be a better idea to do something else.
Note
This is just an sample to exemplify organization, please do not rely on the content!
# ConnectDrivers
: YES
- Forces .efi drivers, change to NO will automatically connect added UEFI drivers. This can make booting slightly faster, but not all drivers connect themselves. E.g. certain file system drivers may not load.
# APFS
By default, OpenCore only loads APFS drivers from macOS Big Sur and newer. If you are booting macOS Catalina or earlier, you may need to set a new minimum version/date. Not setting this can result in OpenCore not finding your macOS partition!
macOS Sierra and earlier use HFS instead of APFS. You can skip this section if booting older versions of macOS.
APFS Versions
Both MinVersion and MinDate need to be set if changing the minimum version.
macOS Version | Min Version | Min Date |
---|---|---|
High Sierra (10.13.6 ) | 748077008000000 | 20180621 |
Mojave (10.14.6 ) | 945275007000000 | 20190820 |
Catalina (10.15.4 ) | 1412101001000000 | 20200306 |
No restriction | -1 | -1 |
# Audio
Related to AudioDxe settings, for us we'll be ignoring(leave as default). This is unrelated to audio support in macOS.
- For further use of AudioDxe and the Audio section, please see the Post Install page: Add GUI and Boot-chime (opens new window)
# Drivers
Add your .efi drivers here.
Note
This is one way things could be organized for different platforms. Another way could be:
Only drivers present here should be:
- HfsPlus.efi (or HfsPlusLegacy.efi on Nehalem, Arrandale, and Sandy Bridge)
- OpenRuntime.efi
- OpenUsbKbDxe.efi (if your firmware does not support UEFI)
# Nehalem, Arrandale, Sandy Bridge
Only drivers present here should be:
- HfsPlusLegacy.efi
- OpenRuntime.efi
- OpenUsbKbDxe.efi (if your firmware does not support UEFI)
# Haswell, Broadwell, Skylake, Kaby Lake
Only drivers present here should be:
- HfsPlus.efi
- OpenRuntime.efi
More in-depth Info
Key | Type | Description |
---|---|---|
Path | String | Path of the file from OC/Drivers directory |
LoadEarly | Boolean | Load the driver early before NVRAM setup, should only be enabled for OpenRuntime.efi and OpenVariableRuntimeDxe.efi if using legacy NVRAM |
Arguments | String | Some drivers accept additional arguments which are specified here. |
# Input
Related to boot.efi keyboard passthrough used for FileVault and Hotkey support, leave everything here as default as we have no use for these quirks. See here for more details: Security and FileVault (opens new window)
# Output
Relating to OpenCore's visual output, leave everything here as default as we have no use for these quirks.
More in-depth Info
Output | Value | Comment |
---|---|---|
UIScale | 0 | 0 will automatically set based on resolution-1 will leave it unchanged1 for 1x scaling, for normal displays2 for 2x scaling, for HiDPI displays |
# ProtocolOverrides
Mainly relevant for Virtual machines, legacy macs and FileVault users. See here for more details: Security and FileVault (opens new window)
# Quirks
Note
This is one way things could be organized for different platforms. Another way could be:
# Laptops
Quirk | Enabled | Comment |
---|---|---|
ReleaseUsbOwnership | YES | |
UnblockFsConnect | NO | Needed mainly by HP motherboards |
# All Other Platforms
Quirk | Enabled | Comment |
---|---|---|
UnblockFsConnect | NO | Needed mainly by HP motherboards |
Relating to quirks with the UEFI environment, for us we'll be changing the following:
Quirk | Platforms | Enabled | Comment |
---|---|---|---|
ReleaseUsbOwnership | All Laptop Platforms | YES | |
UnblockFsConnect | All | NO | Needed mainly by HP motherboards |
More in-depth Info
DisableSecurityPolicy: NO
- Disables platform security policy in firmware, recommended for buggy firmwares where disabling Secure Boot does not allow 3rd party firmware drivers to load.
- If running a Microsoft Surface device, recommended to enable this option
ReleaseUsbOwnership: YES
- Releases USB controller from firmware driver, needed for when your firmware doesn't support EHCI/XHCI Handoff. Most laptops have garbage firmwares so we'll need this as well
RequestBootVarRouting: YES
- Redirects AptioMemoryFix from
EFI_GLOBAL_VARIABLE_GUID
toOC_VENDOR_VARIABLE_GUID
. Needed for when firmware tries to delete boot entries and is recommended to be enabled on all systems for correct update installation, Startup Disk control panel functioning, etc.
- Redirects AptioMemoryFix from
UnblockFsConnect: NO
- Some firmware block partition handles by opening them in By Driver mode, which results in File System protocols being unable to install. Mainly relevant for HP systems when no drives are listed
# ReservedMemory
Used for exempting certain memory regions from OSes to use, mainly relevant for Sandy Bridge iGPUs or systems with faulty memory. Use of this quirk is not covered in this guide