Open MacNB opened 4 years ago
Recompiled a debug version of AudioPkg With other drivers listed AFTER BootChimeDxe.efi in OpenCore's config.plist, the system hangs and shows the following screen dump:
This is the Function that is causing the ASSERT is IsDevicePathEnd
Here's code snippet that causing an ASSERT:
/** Determines if a device path node is an end node of an entire device path.
Determines if a device path node specified by Node is an end node of an entire device path. If Node represents the end of an entire device path, then TRUE is returned. Otherwise, FALSE is returned.
If Node is NULL, then ASSERT().
@param Node A pointer to a device path node data structure.
@retval TRUE The device path node specified by Node is the end of an entire device path. @retval FALSE The device path node specified by Node is not the end of an entire device path.
*/ BOOLEAN EFIAPI IsDevicePathEnd ( IN CONST VOID Node ) { ASSERT (Node != NULL); return (BOOLEAN) (IsDevicePathEndType (Node) && DevicePathSubType(Node) == END_ENTIRE_DEVICE_PATH_SUBTYPE); }
I was testing NdkBootPicker.efi by adding it the end of Drivers list the OpenCore config.plist. It was place after BootChimeDxe.efi. But OC hangs. I reported the issue to the author of NdkBootPicker here.
It transpires that the issue was not with the Boot Picker but with the boot chime EFI. See the issue report in that link.
Basically, anything attempted to be loaded after bootchime efi, hangs the system. BootChimeDxe.efi seems to leave "bomb" after loading.
Temporary Workaround: Put BootChimeDxe.efi at the end of the Drivers list in OC config.plist