SAT0patch fixes potential SATA compatibility issues (untested).
HDEFis checked by
AppleHDAControllerto identify a controller as "not GFX." The
RWAKpatches are to fix TB3 hotplugging. The two patches to rename
TBDU.XHC2are required for TB3 companion ports because they require a unique device name and
XHCis already taken by the PCH XHCI controller. The
XHC.GPEHpatch redirects the USB hotplug events from the original
SB.PCI0.XHCdevice (which we disable in a custom SSDT) to the PCH XHCI
SB.PCI0.XHCdevice. We disable the
PNP0C09device which is recognized as the embedded-controller by OSX. It has to be disabled because the NUC has a "virtual" EC that ignores reads/writes to it and this confuses OSX (for example, if it sees there's an EC, it will try to write sleep/wake info to it). However, to enable USB power management, we still rename
ECeven though we do not use the EC. The power management kext does not actually do anything hardware-wise, but it does set static limits for the USB controller to use. The
HS09._UPCchange allows us to redefine the
_UPCmethod in the SDST in order for OSX to recogize the Wifi/BT card as internal (otherwise the port does not show up). Finally, the
IGPUpatch allows the graphics power management drivers to load for the Intel iGPU.
disablegfxfirmwareis required for Intel iGPU to boot since Apple's iGPU firmware is not supported. Hiberation is not implemented so we make sure we do not accidently trip it. XMP detection is only useful for people who overclock their RAM.
device-idpatch chages the Vega M to be recognized as a Baffin GPU so the graphics accelerator can be enabled. The first
namepatch changes the device name for the SD card reader so it can be recognized by
AppleSDHC. The second
namepatch makes AppleLPC get recognized on the LPC device (the driver does some non-critical power management).