diff --git a/Resources/SysPatch.py b/Resources/SysPatch.py index aca356211..4e902f60f 100644 --- a/Resources/SysPatch.py +++ b/Resources/SysPatch.py @@ -138,32 +138,35 @@ class PatchSysVolume: self.dgpu_devices = "" def gpu_accel_patches_11(self): - if self.dgpu_devices and self.dgpu_vendor == "10DE": - print("- Merging legacy Nvidia Kexts and Bundles") - self.delete_old_binaries(ModelArray.DeleteNvidiaAccel11) - self.add_new_binaries(ModelArray.AddNvidiaAccel11, self.constants.legacy_nvidia_path) - elif self.dgpu_devices and self.dgpu_vendor == "1002": - print("- Merging legacy AMD Kexts and Bundles") - self.delete_old_binaries(ModelArray.DeleteAMDAccel11) - self.add_new_binaries(ModelArray.AddAMDAccel11, self.constants.legacy_amd_path) - - if self.igpu_devices and self.igpu_vendor == "8086" and self.igpu_device in ModelArray.IronLakepciid: - print("- Merging legacy Intel 1st Gen Kexts and Bundles") - self.delete_old_binaries(ModelArray.DeleteNvidiaAccel11) - self.add_new_binaries(ModelArray.AddIntelGen1Accel, self.constants.legacy_intel_gen1_path) - elif self.igpu_devices and self.igpu_vendor == "8086" and self.igpu_device in ModelArray.SandyBridgepiciid: - print("- Merging legacy Intel 2nd Gen Kexts and Bundles") - self.delete_old_binaries(ModelArray.DeleteNvidiaAccel11) - self.add_new_binaries(ModelArray.AddIntelGen2Accel, self.constants.legacy_intel_gen2_path) - if self.model in ModelArray.LegacyGPUAMDIntelGen2: - # Swap custom AppleIntelSNBGraphicsFB-AMD.kext, required to fix linking - subprocess.run(f"sudo rm -R {self.mount_extensions}/AppleIntelSNBGraphicsFB.kext".split(), stdout=subprocess.PIPE).stdout.decode().strip().encode() - subprocess.run(f"sudo cp -R {self.constants.legacy_amd_path}/AMD-Link/AppleIntelSNBGraphicsFB.kext {self.mount_extensions}".split(), stdout=subprocess.PIPE).stdout.decode().strip().encode() - elif self.igpu_device and self.igpu_vendor == "10DE" and not self.dgpu_devices: - # Avoid patching twice, as Nvidia iGPUs will only have Nvidia dGPUs - print("- Merging legacy Nvidia Kexts and Bundles") - self.delete_old_binaries(ModelArray.DeleteNvidiaAccel11) - self.add_new_binaries(ModelArray.AddNvidiaAccel11, self.constants.legacy_nvidia_path) + if self.dgpu_devices: + if self.dgpu_vendor == "10DE": + print("- Merging legacy Nvidia Kexts and Bundles") + self.delete_old_binaries(ModelArray.DeleteNvidiaAccel11) + self.add_new_binaries(ModelArray.AddNvidiaAccel11, self.constants.legacy_nvidia_path) + elif self.dgpu_vendor == "1002": + print("- Merging legacy AMD Kexts and Bundles") + self.delete_old_binaries(ModelArray.DeleteAMDAccel11) + self.add_new_binaries(ModelArray.AddAMDAccel11, self.constants.legacy_amd_path) + if self.igpu_devices: + if self.igpu_vendor == "8086": + if self.igpu_device in ModelArray.IronLakepciid: + print("- Merging legacy Intel 1st Gen Kexts and Bundles") + self.delete_old_binaries(ModelArray.DeleteNvidiaAccel11) + self.add_new_binaries(ModelArray.AddIntelGen1Accel, self.constants.legacy_intel_gen1_path) + elif self.igpu_device in ModelArray.SandyBridgepiciid: + print("- Merging legacy Intel 2nd Gen Kexts and Bundles") + self.delete_old_binaries(ModelArray.DeleteNvidiaAccel11) + self.add_new_binaries(ModelArray.AddIntelGen2Accel, self.constants.legacy_intel_gen2_path) + if self.model in ModelArray.LegacyGPUAMDIntelGen2: + # Swap custom AppleIntelSNBGraphicsFB-AMD.kext, required to fix linking + subprocess.run(f"sudo rm -R {self.mount_extensions}/AppleIntelSNBGraphicsFB.kext".split(), stdout=subprocess.PIPE).stdout.decode().strip().encode() + subprocess.run(f"sudo cp -R {self.constants.legacy_amd_path}/AMD-Link/AppleIntelSNBGraphicsFB.kext {self.mount_extensions}".split(), stdout=subprocess.PIPE).stdout.decode().strip().encode() + elif self.igpu_vendor == "10DE": + if not self.dgpu_devices: + # Avoid patching twice, as Nvidia iGPUs will only have Nvidia dGPUs + print("- Merging legacy Nvidia Kexts and Bundles") + self.delete_old_binaries(ModelArray.DeleteNvidiaAccel11) + self.add_new_binaries(ModelArray.AddNvidiaAccel11, self.constants.legacy_nvidia_path) # Frameworks print("- Merging legacy Frameworks")