From df28ea288a9321333200f6db89956aff629965f6 Mon Sep 17 00:00:00 2001 From: Eva Isabella Luna Date: Thu, 22 Aug 2024 18:18:57 -0400 Subject: [PATCH 1/3] Increase model range of S1X/S3X kext inclusion While stock systems with S1X/S3X drives only include Broadwell to Kaby Lake Macs, Haswell Macs and MacPro6,1 are able to use these drives as well, causing issues when building OpenCore for those models from a different machine. --- opencore_legacy_patcher/efi_builder/storage.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/opencore_legacy_patcher/efi_builder/storage.py b/opencore_legacy_patcher/efi_builder/storage.py index e7b10410f..bed24c556 100644 --- a/opencore_legacy_patcher/efi_builder/storage.py +++ b/opencore_legacy_patcher/efi_builder/storage.py @@ -152,7 +152,7 @@ class BuildStorage: # Apple's usage of the S1X and S3X is quite sporadic and inconsistent, so we'll try a catch all for units with NVMe drives if self.constants.custom_model and self.model in smbios_data.smbios_dictionary: if "CPU Generation" in smbios_data.smbios_dictionary[self.model]: - if cpu_data.CPUGen.broadwell <= smbios_data.smbios_dictionary[self.model]["CPU Generation"] <= cpu_data.CPUGen.kaby_lake: + if cpu_data.CPUGen.haswell <= smbios_data.smbios_dictionary[self.model]["CPU Generation"] <= cpu_data.CPUGen.kaby_lake or self.model in [ "MacPro6,1" ]: support.BuildSupport(self.model, self.constants, self.config).enable_kext("IOS3XeFamily.kext", self.constants.s3x_nvme_version, self.constants.s3x_nvme_path) # Apple RAID Card check @@ -193,4 +193,4 @@ class BuildStorage: if self.constants.apfs_trim_timeout is False: logging.info(f"- Disabling APFS TRIM timeout") - self.config["Kernel"]["Quirks"]["SetApfsTrimTimeout"] = 0 \ No newline at end of file + self.config["Kernel"]["Quirks"]["SetApfsTrimTimeout"] = 0 From 269687910981f84667524a0f56142fbdd8216d14 Mon Sep 17 00:00:00 2001 From: Eva Luna Date: Thu, 22 Aug 2024 18:58:31 -0400 Subject: [PATCH 2/3] Add note for S1X/S3X changes and clarify if statement --- opencore_legacy_patcher/efi_builder/storage.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/opencore_legacy_patcher/efi_builder/storage.py b/opencore_legacy_patcher/efi_builder/storage.py index bed24c556..ee8c0a6b8 100644 --- a/opencore_legacy_patcher/efi_builder/storage.py +++ b/opencore_legacy_patcher/efi_builder/storage.py @@ -150,9 +150,10 @@ class BuildStorage: # Restore S1X/S3X NVMe support removed in 14.0 Beta 2 # Apple's usage of the S1X and S3X is quite sporadic and inconsistent, so we'll try a catch all for units with NVMe drives + # Additionally expanded to cover all Mac models with the 12+16 pin SSD layout, for older machines with newer drives if self.constants.custom_model and self.model in smbios_data.smbios_dictionary: if "CPU Generation" in smbios_data.smbios_dictionary[self.model]: - if cpu_data.CPUGen.haswell <= smbios_data.smbios_dictionary[self.model]["CPU Generation"] <= cpu_data.CPUGen.kaby_lake or self.model in [ "MacPro6,1" ]: + if (cpu_data.CPUGen.haswell <= smbios_data.smbios_dictionary[self.model]["CPU Generation"] <= cpu_data.CPUGen.kaby_lake) or self.model in [ "MacPro6,1" ]: support.BuildSupport(self.model, self.constants, self.config).enable_kext("IOS3XeFamily.kext", self.constants.s3x_nvme_version, self.constants.s3x_nvme_path) # Apple RAID Card check From f32a813a0c3c2dd51499d76602d93e8a6b26a88c Mon Sep 17 00:00:00 2001 From: Eva Luna Date: Thu, 22 Aug 2024 19:02:20 -0400 Subject: [PATCH 3/3] Add note in CHANGELOG.md --- CHANGELOG.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 5b1664789..ba62c1938 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -12,6 +12,9 @@ - Implement new Copy on Write detection mechanism for all file copying operations - Implemented using `getattrlist` and `VOL_CAP_INT_CLONE` flag - Helps improve performance on APFS volumes +- Increase model range for S1X/S3X patching to include Haswell Macs and `MacPro6,1` + - Helps avoid an issue where older machines with newer, unsupported SSDs would fail to boot + - Only affects building EFI from another machine - Increment Binaries: - PatcherSupportPkg 1.6.3 - release