mirror of
https://github.com/dortania/OpenCore-Legacy-Patcher.git
synced 2026-06-21 22:50:51 +10:00
Add FirmwareFeature upgrading to all Models
This commit is contained in:
@@ -43,6 +43,8 @@
|
|||||||
- Disable Library Validation allowing for AMFI usage
|
- Disable Library Validation allowing for AMFI usage
|
||||||
- Remove reliance on amfi_get_out_of_my_way=1
|
- Remove reliance on amfi_get_out_of_my_way=1
|
||||||
- Add Kepler Accleration Patches for Monterey Beta 7 and newer
|
- Add Kepler Accleration Patches for Monterey Beta 7 and newer
|
||||||
|
- Add FirmwareFeature upgrading to all Models
|
||||||
|
- Fixes Monterey Beta 7 installation issues
|
||||||
|
|
||||||
## 0.2.4
|
## 0.2.4
|
||||||
|
|
||||||
|
|||||||
+22
-7
@@ -14,7 +14,7 @@ import ast
|
|||||||
from pathlib import Path
|
from pathlib import Path
|
||||||
from datetime import date
|
from datetime import date
|
||||||
|
|
||||||
from Resources import Constants, ModelArray, Utilities, device_probe
|
from Resources import Constants, ModelArray, Utilities, device_probe, SMBIOSData
|
||||||
|
|
||||||
|
|
||||||
def rmtree_handler(func, path, exc_info):
|
def rmtree_handler(func, path, exc_info):
|
||||||
@@ -78,6 +78,19 @@ class BuildOpenCore:
|
|||||||
fw_mask = b"\xff\x3f\x08\xc0\x00\x00\x00\x00"
|
fw_mask = b"\xff\x3f\x08\xc0\x00\x00\x00\x00"
|
||||||
return fw_feature, fw_mask
|
return fw_feature, fw_mask
|
||||||
|
|
||||||
|
def patch_firmware_feature(self):
|
||||||
|
if not self.constants.custom_model:
|
||||||
|
firmwarefeature = Utilities.get_rom("firmware-features")
|
||||||
|
if not firmwarefeature:
|
||||||
|
print("- Failed to find FirmwareFeatures, falling back on defaults")
|
||||||
|
firmwarefeature = int(SMBIOSData.FirmwareFeatures[self.model], 16)
|
||||||
|
else:
|
||||||
|
firmwarefeature = int(SMBIOSData.FirmwareFeatures[self.model], 16)
|
||||||
|
firmwarefeature = Utilities.enable_apfs(firmwarefeature)
|
||||||
|
firmwarefeature = Utilities.enable_apfs_extended(firmwarefeature)
|
||||||
|
firmwarefeature = Utilities.enable_large_basesystem(firmwarefeature)
|
||||||
|
return firmwarefeature
|
||||||
|
|
||||||
def disk_type(self):
|
def disk_type(self):
|
||||||
drive_host_info = plistlib.loads(subprocess.run(f"diskutil info -plist {self.constants.disk}".split(), stdout=subprocess.PIPE).stdout.decode().strip().encode())
|
drive_host_info = plistlib.loads(subprocess.run(f"diskutil info -plist {self.constants.disk}".split(), stdout=subprocess.PIPE).stdout.decode().strip().encode())
|
||||||
sd_type = drive_host_info["MediaName"]
|
sd_type = drive_host_info["MediaName"]
|
||||||
@@ -735,12 +748,14 @@ class BuildOpenCore:
|
|||||||
def minimal_serial_patch(self):
|
def minimal_serial_patch(self):
|
||||||
if self.constants.custom_cpu_model == 0 or self.constants.custom_cpu_model == 1:
|
if self.constants.custom_cpu_model == 0 or self.constants.custom_cpu_model == 1:
|
||||||
self.config["PlatformInfo"]["SMBIOS"]["ProcessorType"] = 1537
|
self.config["PlatformInfo"]["SMBIOS"]["ProcessorType"] = 1537
|
||||||
if self.model in ModelArray.NoAPFSsupport:
|
fw_feature = self.patch_firmware_feature()
|
||||||
fw_feature, fw_mask = self.fw_feature_detect(self.model)
|
fw_feature = hex(fw_feature).lstrip("0x").rstrip("L").strip()
|
||||||
self.config["PlatformInfo"]["PlatformNVRAM"]["FirmwareFeatures"] = fw_feature
|
print(f"- Setting Firmware Feature: {fw_feature}")
|
||||||
self.config["PlatformInfo"]["SMBIOS"]["FirmwareFeatures"] = fw_feature
|
fw_feature = Utilities.string_to_hex(fw_feature)
|
||||||
self.config["PlatformInfo"]["PlatformNVRAM"]["FirmwareFeaturesMask"] = fw_mask
|
self.config["PlatformInfo"]["PlatformNVRAM"]["FirmwareFeatures"] = fw_feature
|
||||||
self.config["PlatformInfo"]["SMBIOS"]["FirmwareFeaturesMask"] = fw_mask
|
self.config["PlatformInfo"]["SMBIOS"]["FirmwareFeatures"] = fw_feature
|
||||||
|
self.config["PlatformInfo"]["PlatformNVRAM"]["FirmwareFeaturesMask"] = fw_feature
|
||||||
|
self.config["PlatformInfo"]["SMBIOS"]["FirmwareFeaturesMask"] = fw_feature
|
||||||
self.config["NVRAM"]["Add"]["7C436110-AB2A-4BBB-A880-FE41995C9F82"]["run-efi-updater"] = "No"
|
self.config["NVRAM"]["Add"]["7C436110-AB2A-4BBB-A880-FE41995C9F82"]["run-efi-updater"] = "No"
|
||||||
self.config["PlatformInfo"]["PlatformNVRAM"]["BID"] = self.spoofed_board
|
self.config["PlatformInfo"]["PlatformNVRAM"]["BID"] = self.spoofed_board
|
||||||
self.config["PlatformInfo"]["SMBIOS"]["BoardProduct"] = self.spoofed_board
|
self.config["PlatformInfo"]["SMBIOS"]["BoardProduct"] = self.spoofed_board
|
||||||
|
|||||||
@@ -0,0 +1,110 @@
|
|||||||
|
FirmwareFeatures = {
|
||||||
|
"iMac7,1": "0xC0001407",
|
||||||
|
"iMac8,1": "0xC0001403",
|
||||||
|
"iMac9,1": "0xC0001403",
|
||||||
|
"iMac10,1": "0xE00DE137",
|
||||||
|
"iMac11,1": "0xE00DE137",
|
||||||
|
"iMac11,2": "0xC00C9423",
|
||||||
|
"iMac11,3": "0xE00DE137",
|
||||||
|
"iMac12,1": "0xE00DE137",
|
||||||
|
"iMac12,2": "0xE00DE137",
|
||||||
|
"iMac13,1": "0xE00DE137",
|
||||||
|
"iMac13,2": "0xE00DE137",
|
||||||
|
"iMac13,3": "0xE00DE137",
|
||||||
|
"iMac14,1": "0xFB0FF577",
|
||||||
|
"iMac14,2": "0xE00FE137",
|
||||||
|
"iMac14,3": "0xE00FE137",
|
||||||
|
"iMac14,4": "0xF00FE137",
|
||||||
|
"iMac15,1": "0xF80FE137",
|
||||||
|
"iMac16,1": "0xFC0FE137",
|
||||||
|
"iMac16,2": "0xFC0FE137",
|
||||||
|
"iMac17,1": "0xFC0FE137",
|
||||||
|
"iMac18,1": "0xFD0FF576",
|
||||||
|
"iMac18,2": "0xFD0FF576",
|
||||||
|
"iMac18,3": "0xFD0FF576",
|
||||||
|
"iMac19,1": "0xFD8FF576",
|
||||||
|
"iMac19,2": "0xFD8FF576",
|
||||||
|
"iMac20,1": "0xFD8FF576",
|
||||||
|
"iMac20,2": "0xFD8FF576",
|
||||||
|
"iMacPro1,1": "0xFD8FF53E",
|
||||||
|
"MacBook3,1": "0xC0001407",
|
||||||
|
"MacBook4,1": "0xC0001403",
|
||||||
|
"MacBook5,1": "0xC0001403",
|
||||||
|
"MacBook5,2": "0xC0001403",
|
||||||
|
"MacBook6,1": "0xFC0FE13F",
|
||||||
|
"MacBook7,1": "0xFC0FE13F",
|
||||||
|
"MacBook8,1": "0xFC0FE13F",
|
||||||
|
"MacBook9,1": "0xFC0FE13F",
|
||||||
|
"MacBook10,1": "0xFC0FE13F",
|
||||||
|
"MacBookAir1,1": "0xC0001403",
|
||||||
|
"MacBookAir2,1": "0xC0001403",
|
||||||
|
"MacBookAir3,1": "0xD00DE137",
|
||||||
|
"MacBookAir3,2": "0xD00DE137",
|
||||||
|
"MacBookAir4,1": "0xD00DE137",
|
||||||
|
"MacBookAir4,2": "0xD00DE137",
|
||||||
|
"MacBookAir5,1": "0xE00DE137",
|
||||||
|
"MacBookAir5,2": "0xE00DE137",
|
||||||
|
"MacBookAir6,1": "0xE00FE137",
|
||||||
|
"MacBookAir6,2": "0xE00FE137",
|
||||||
|
"MacBookAir7,1": "0xFF0FF576",
|
||||||
|
"MacBookAir7,2": "0xFF0FF576",
|
||||||
|
"MacBookAir8,1": "0xFD8FF42E",
|
||||||
|
"MacBookAir8,2": "0xFD8FF42E",
|
||||||
|
"MacBookAir9,1": "0xFFAFF06E",
|
||||||
|
"MacBookPro3,1": "0xC0001407",
|
||||||
|
"MacBookPro4,1": "0xC0001403",
|
||||||
|
"MacBookPro5,1": "0xC0001403",
|
||||||
|
"MacBookPro5,2": "0xC0001403",
|
||||||
|
"MacBookPro5,3": "0xC0001403",
|
||||||
|
"MacBookPro5,4": "0xC0001403",
|
||||||
|
"MacBookPro5,5": "0xC0001403",
|
||||||
|
"MacBookPro6,1": "0xC00DE137",
|
||||||
|
"MacBookPro6,2": "0xC00DE137",
|
||||||
|
"MacBookPro7,1": "0xC00DE137",
|
||||||
|
"MacBookPro8,1": "0xC00DE137",
|
||||||
|
"MacBookPro8,2": "0xC00DE137",
|
||||||
|
"MacBookPro8,3": "0xC00DE137",
|
||||||
|
"MacBookPro9,1": "0xC00DE137",
|
||||||
|
"MacBookPro9,2": "0xC10DF577",
|
||||||
|
"MacBookPro10,1": "0xE00DE137",
|
||||||
|
"MacBookPro10,2": "0xE00DE137",
|
||||||
|
"MacBookPro11,1": "0xEB0FF577",
|
||||||
|
"MacBookPro11,2": "0xEB0FF577",
|
||||||
|
"MacBookPro11,3": "0xEB0FF577",
|
||||||
|
"MacBookPro11,4": "0xEB0FF577",
|
||||||
|
"MacBookPro11,5": "0xEB0FF577",
|
||||||
|
"MacBookPro12,1": "0xFD0FF576",
|
||||||
|
"MacBookPro13,1": "0xFC0FE137",
|
||||||
|
"MacBookPro13,2": "0xFC0FE137",
|
||||||
|
"MacBookPro13,3": "0xFC0FE137",
|
||||||
|
"MacBookPro14,1": "0xFF0FF57E",
|
||||||
|
"MacBookPro14,2": "0xFF0FF57E",
|
||||||
|
"MacBookPro14,3": "0xFF0FF57E",
|
||||||
|
"MacBookPro15,1": "0xFD8FF426",
|
||||||
|
"MacBookPro15,2": "0xFD8FF426",
|
||||||
|
"MacBookPro15,3": "0xFD8FF426",
|
||||||
|
"MacBookPro15,4": "0xFD8FF426",
|
||||||
|
"MacBookPro16,1": "0xFDAFF066",
|
||||||
|
"MacBookPro16,2": "0xFFAFF06E",
|
||||||
|
"MacBookPro16,3": "0xFDAFF066",
|
||||||
|
"MacBookPro16,4": "0xFDAFF066",
|
||||||
|
"Macmini3,1": "0xC0001403",
|
||||||
|
"Macmini4,1": "0xC00C9423",
|
||||||
|
"Macmini5,1": "0xD00DE137",
|
||||||
|
"Macmini5,2": "0xD00DE137",
|
||||||
|
"Macmini5,3": "0xD00DE137",
|
||||||
|
"Macmini6,1": "0xE00DE137",
|
||||||
|
"Macmini6,2": "0xE00DE137",
|
||||||
|
"Macmini7,1": "0xE00DE137",
|
||||||
|
"Macmini8,1": "0xFD8FF466",
|
||||||
|
"MacPro1,1": "0x80000015",
|
||||||
|
"MacPro2,1": "0xC0000015",
|
||||||
|
"MacPro3,1": "0xC0001403",
|
||||||
|
"MacPro4,1": "0xE001F537",
|
||||||
|
"MacPro5,1": "0xE80FE137",
|
||||||
|
"MacPro6,1": "0xE90FF576",
|
||||||
|
"MacPro7,1": "0xFDAFF066",
|
||||||
|
"Xserve2,1": "0xC0001403",
|
||||||
|
"Xserve3,1": "0xE001F537",
|
||||||
|
"Dortania1,1": "0xFDAFF066",
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user