UEFI Full Rom Does Not Allow OpenCore Bootloader EFI drivers to Load - Invalid Parameter!

I have an Asus Chromebox 3-N7068U, which has an 8th Gen. Intel i7-8850U CPU, Kabylake-R, UHD 620 IGPU, 16 GB DDR4, a 1 TB NVMe, and Broadcom WiFi/BT. I originally installed the UEFI Full Rom version 2405.1 in or about November 2024. I was successfully running macOS Sequoia latest version with a couple of minor problems which led me to updating the Chrome firmware with the UEFI Full Rom version 2512.5. I was very glad to see that major upgrades had been made to the firmware’s configurability. However, after it successfully updated (I was able to get to the rabbit logo and enter the firmware settings to confirm the new version) I was met with an immediate error from the OpenCore bootloader which is used by Hackintosh users and genuine Mac users that have unsupported/obsolete hardware.

The error I received stated that the boot loader could not load the xx.efi driver(s) - Invalid Parameter! The OpenCore bootloader is a collection of files including drivers, kexts (kernel extensions), all governed by a configuration file known as config.plist. After updating the firmware, I did not make any changes to the config.plist that worked with the earlier version of the UEFI Full Rom firmware. There is nothing in the OpenCore literature that addresses the error “invalid parameter” in the context of loading the initial .efi drivers. One .efi driver is essential to running opencore, OpenRuntime.efi. When I disabled all of the .efi drivers in Opencore, it started to load without the invalid parameter error but hung up when it couldn’t find the OpenRuntime driver.

There is something in the UEFI Full Rom firmware that is preventing the .efi drivers from loading. Perhaps the firmware has already loaded .efi drivers and will not allow any others to be loaded. I haven’t inspected the payload portion of the firmware to see what .efi drivers it loads but it clearly loads some drivers because there is a graphical interface and ability to navigate through the settings. Write protect is disabled on my Chromebox but I don’t know if there is some type of write protection built in to the firmware’s EFI folder. It could be that this has nothing to do with write protection. But there seems to be no changes that I can make to the OpenCore bootloader that will allow its drivers to be loaded in order to get to its own boot page, known as a picker.

I will continue to explore this issue because I love using my Chromebox as a MacMini. However, if there is any way possible for me to obtain the .rom or .bin file for the UEFI Full Rom version 2405.1, I think it would allow me to restore functionality to my Chromebox. Thanks for any insight you can provide regarding this issue.

zip up everything I need to reproduce this error on a TEEMO here and provide a link to download it

the error is completely useless to try to debug on its own.

1 Like

First, thank you for responding to my post so quickly. It is very much appreciated. Second, an OpenCore developer solved the problem for me and it is a VERY simple fix. He knew about your firmware and the changes it has undergone in the past year. If you have any macOS users that have questions about using your firmware with macOS, feel free to have them contact me on the Insanelymac forum. I have the same username on that forum as this one.

I will tell you the fix but I doubt it will mean anything to you but, for the person that had the same problem as me, it will fix it. In the Opencore config.plist, go to UEFI→Quirks and, for the setting “Disable security policy” change it from No to Yes. That’s all it takes. Apparently, disabling secure boot and secure boot model aren’t enough and this also needs to be used, although the default setting for it is No. The developer’s exact words to me were “disablesecuritypolicy=true under uefi/quirks if it is for any of the recent mrchromebox firmwares.” Feel free to pass it on if the occasion arises.

1 Like

Thank you so much for bringing the solution here to this thread. I just followed that simple step, and now I can boot into the boot picker.