From 105fa4e908814ce1594b81bb88294c1e48fd6736 Mon Sep 17 00:00:00 2001 From: Mykola Grymalyuk Date: Sun, 17 Jul 2022 12:59:12 -0600 Subject: [PATCH] sys_patch_detect: Fix GVA regression --- CHANGELOG.md | 2 ++ resources/sys_patch_detect.py | 8 ++++++-- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 2faca0632a..2fc1a3a4a0 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -11,6 +11,8 @@ - Apple bug, resolved by using CoW into a different directory than `/Applications` - Avoid listing beta installers in downloader - Warn about downloading macOS Ventura installers, unsupported by current patcher +- Fix AppleGVA regression introduced in 0.4.6 + - Applicable for Ivy Bridge-only systems ## 0.4.7 - Fix crashing on defaults parsing diff --git a/resources/sys_patch_detect.py b/resources/sys_patch_detect.py index 992c147a44..1220019ca2 100644 --- a/resources/sys_patch_detect.py +++ b/resources/sys_patch_detect.py @@ -348,6 +348,7 @@ def generate_patchset(self, hardware_details): required_patches.update({"Intel Sandy Bridge": all_hardware_patchset["Graphics"]["Intel Sandy Bridge"]}) if hardware_details["Graphics: Intel Ivy Bridge"] is True: required_patches.update({"Metal Common": all_hardware_patchset["Graphics"]["Metal Common"]}) + required_patches.update({"Modern GVA": all_hardware_patchset["Graphics"]["Modern GVA"]}) required_patches.update({"Intel Ivy Bridge": all_hardware_patchset["Graphics"]["Intel Ivy Bridge"]}) if hardware_details["Graphics: Nvidia Tesla"] is True: required_patches.update({"Non-Metal Common": all_hardware_patchset["Graphics"]["Non-Metal Common"]}) @@ -360,12 +361,15 @@ def generate_patchset(self, hardware_details): required_patches.update({"Non-Metal Enforcement": all_hardware_patchset["Graphics"]["Non-Metal Enforcement"]}) if hardware_details["Graphics: Nvidia Kepler"] is True: required_patches.update({"Metal Common": all_hardware_patchset["Graphics"]["Metal Common"]}) + required_patches.update({"Modern GVA": all_hardware_patchset["Graphics"]["Modern GVA"]}) required_patches.update({"Nvidia Kepler": all_hardware_patchset["Graphics"]["Nvidia Kepler"]}) for gpu in self.constants.computer.gpus: + # Handle mixed GPU situations (ie. MacBookPro11,3: Haswell iGPU + Kepler dGPU) if gpu.arch == device_probe.Intel.Archs.Haswell: + if "Modern GVA" in required_patches: + del(required_patches["Modern GVA"]) required_patches.update({"GVA Work-Around": all_hardware_patchset["Graphics"]["GVA Work-Around"]}) - if "GVA Work-Around" not in required_patches: - required_patches.update({"Modern GVA": all_hardware_patchset["Graphics"]["Modern GVA"]}) + break if hardware_details["Graphics: AMD TeraScale 1"] is True: required_patches.update({"Non-Metal Common": all_hardware_patchset["Graphics"]["Non-Metal Common"]}) required_patches.update({"AMD TeraScale Common": all_hardware_patchset["Graphics"]["AMD TeraScale Common"]})