Quirks
FadtEnableReset
- Type:
plist boolean
- Failsafe:
false
- Description: Provide reset register and flag in FADT table to enable reboot and shutdown.
Mainly required on legacy hardware and a few newer laptops. Can also fix power-button shortcuts. Not recommended unless required.
- Type:
NormalizeHeaders
- Type:
plist boolean
- Failsafe:
false
- Description: Cleanup ACPI header fields to workaround macOS ACPI implementation flaws that result in boot crashes. Reference: Debugging AppleACPIPlatform on 10.13 by Alex James (also known as theracermaster). The issue was fixed in macOS Mojave (10.14).
- Type:
RebaseRegions
- Type:
plist boolean
- Failsafe:
false
- Description: Attempt to heuristically relocate ACPI memory regions. Not recommended.
ACPI tables are often generated dynamically by the underlying firmware implementation. Among the position- independent code, ACPI tables may contain the physical addresses of MMIO areas used for device configuration, typically grouped by region (e.g.
OperationRegion
). Changing firmware settings or hardware configuration, upgrading or patching the firmware inevitably leads to changes in dynamically generated ACPI code, which sometimes results in the shift of the addresses in the aforementionedOperationRegion
constructions.For this reason, the application of modifications to ACPI tables is extremely risky. The best approach is to make as few changes as possible to ACPI tables and to avoid replacing any tables, particularly DSDT tables. When this cannot be avoided, ensure that any custom DSDT tables are based on the most recent DSDT tables or attempt to remove reads and writes for the affected areas. When nothing else helps, this option could be tried to avoid stalls at
PCI Configuration Begin
phase of macOS booting by attempting to fix the ACPI addresses. It is not a magic bullet however, and only works with the most typical cases. Do not use unless absolutely required as it can have the opposite effect on certain platforms and result in boot failures.- Type:
ResetHwSig
- Type:
plist boolean
- Failsafe:
false
- Description: Reset
FACS
tableHardwareSignature
value to0
.
This works around firmware that fail to maintain hardware signature across the reboots and cause issues with waking from hibernation.
- Type:
ResetLogoStatus
- Type:
plist boolean
- Failsafe:
false
- Description: Reset
BGRT
tableDisplayed
status field tofalse
.
This works around firmware that provide a
BGRT
table but fail to handle screen updates afterwards.- Type:
SyncTableIds
- Type:
plist boolean
- Failsafe:
false
- Description: Sync table identifiers with the
SLIC
table.
This works around patched tables becoming incompatible with the
SLIC
table causing licensing issues in older Windows operating systems.- Type: