From 3aa6e76c15f50e4da07bbc2220b382cd0898c25e Mon Sep 17 00:00:00 2001 From: Mykola Grymalyuk Date: Tue, 5 Oct 2021 20:44:29 -0600 Subject: [PATCH] Add HW_BID patch --- payloads/Config/config.plist | 24 ++++++++++++++++++++++++ resources/build.py | 13 +++++++++++-- 2 files changed, 35 insertions(+), 2 deletions(-) diff --git a/payloads/Config/config.plist b/payloads/Config/config.plist index a421f0cf9..8662c9ad0 100644 --- a/payloads/Config/config.plist +++ b/payloads/Config/config.plist @@ -203,6 +203,30 @@ Skip 0 + + Arch + x86_64 + Comment + Reroute HW_BID to OC_BID + Count + 0 + Enabled + + Find + SABXAF8AQgBJAEQA + Identifier + Apple + Limit + 0 + Mask + + Replace + TwBDAF8AQgBJAEQA + ReplaceMask + + Skip + 0 + Quirks diff --git a/resources/build.py b/resources/build.py index 4eac41780..11021feb7 100644 --- a/resources/build.py +++ b/resources/build.py @@ -130,11 +130,20 @@ class BuildOpenCore: if self.constants.allow_oc_everywhere is False: if self.constants.serial_settings == "None": # Credit to Parrotgeek1 for boot.efi and hv_vmm_present patch sets - print("- Enabling Board ID exemption patch") - self.get_item_by_kv(self.config["Booter"]["Patch"], "Comment", "Skip Board ID check")["Enabled"] = True + # print("- Enabling Board ID exemption patch") + # self.get_item_by_kv(self.config["Booter"]["Patch"], "Comment", "Skip Board ID check")["Enabled"] = True + print("- Enabling VMM exemption patch") self.get_item_by_kv(self.config["Kernel"]["Patch"], "Comment", "Reroute kern.hv_vmm_present patch (1)")["Enabled"] = True self.get_item_by_kv(self.config["Kernel"]["Patch"], "Comment", "Reroute kern.hv_vmm_present patch (2)")["Enabled"] = True + + # Patch HW_BID to OC_BID + # Set OC_BID to MacPro6,1 Board ID (Mac-F60DEB81FF30ACF6) + # Goal is to only allow OS booting through OCLP, otherwise failing + print("- Enabling HW_BID reroute") + self.get_item_by_kv(self.config["Booter"]["Patch"], "Comment", "Reroute HW_BID to OC_BID")["Enabled"] = True + self.config["NVRAM"]["Add"]["4D1EDE05-38C7-4A6A-9CC6-4BCCA8B38C14"]["OC_BID"] = "Mac-F60DEB81FF30ACF6" + self.config["NVRAM"]["Delete"]["4D1EDE05-38C7-4A6A-9CC6-4BCCA8B38C14"] += ["OC_BID"] else: print("- Enabling SMC exemption patch") self.get_item_by_kv(self.config["Kernel"]["Patch"], "Identifier", "com.apple.driver.AppleSMC")["Enabled"] = True