From 0a04c5c1564fb241c2351fc10046e41050fc7639 Mon Sep 17 00:00:00 2001 From: Mykola Grymalyuk <48863253+khronokernel@users.noreply.github.com> Date: Sun, 16 May 2021 11:31:52 -0600 Subject: [PATCH] Enable Brightness MBP8,x --- Resources/SysPatch.py | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/Resources/SysPatch.py b/Resources/SysPatch.py index abba5790c..ed68d0e56 100644 --- a/Resources/SysPatch.py +++ b/Resources/SysPatch.py @@ -127,11 +127,26 @@ class PatchSysVolume: # print("- Merging legacy Nvidia Kepler Kexts and Bundles") # self.add_new_binaries(ModelArray.AddNvidiaKeplerAccel11, self.constants.legacy_nvidia_kepler_path) elif dgpu_vendor == self.constants.pci_amd_ati: - if dgpu_device in PCIIDArray.amd_ids().terascale_1_ids or dgpu_device in PCIIDArray.amd_ids().terascale_2_ids: + if dgpu_device in PCIIDArray.amd_ids().terascale_1_ids: print("- Merging legacy AMD Kexts and Bundles") self.delete_old_binaries(ModelArray.DeleteAMDAccel11) self.add_new_binaries(ModelArray.AddGeneralAccel, self.constants.legacy_general_path) self.add_new_binaries(ModelArray.AddAMDAccel11, self.constants.legacy_amd_path) + if self.model in ["MacBookPro8,2", "MacBookPro8,3"]: + # This is used for MacBookPro8,2/3 where dGPU is disabled via NVRAM and still requires AMD framebuffer + # For reference: + #- deMUX: Don't need the AMD patches + #- dGPUs enabled: Don't install the AMD patches (Infinite login loop otherwise) + #- dGPUs disabled: Do need the AMD patches (Restores Brightness control) + dgpu_status: str = subprocess.run("nvram FA4CE28D-B62F-4C99-9CC3-6815686E30F9:gpu-power-prefs".split(), stdout=subprocess.PIPE, stderr=subprocess.STDOUT).stdout.decode() + if dgpu_status.startswith("FA4CE28D-B62F-4C99-9CC3-6815686E30F9:gpu-power-prefs %01"): + print("- Detected dGPU is disabled via NVRAM") + print("- Merging legacy AMD Kexts and Bundles") + self.delete_old_binaries(ModelArray.DeleteAMDAccel11) + self.add_new_binaries(ModelArray.AddGeneralAccel, self.constants.legacy_general_path) + self.add_new_binaries(ModelArray.AddAMDAccel11, self.constants.legacy_amd_path) + else: + print("- Cannot install Brightness Control, pleas ensure the dGPU is disabled via NVRAM") if igpu_vendor: print(f"- Found IGPU: {igpu_vendor}:{igpu_device}") if igpu_vendor == self.constants.pci_intel: