diff --git a/CHANGELOG.md b/CHANGELOG.md index 9f5e4219f..6fcb62d83 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,6 +1,8 @@ # OpenCore Legacy Patcher changelog ## 0.5.3 +- Integrate FixPCIeLinkrate.efi v0.1.0 + - Fixes link rate for PCIe 3.0 devices on MacPro3,1 ## 0.5.2 - Ventura Specific Updates: diff --git a/README.md b/README.md index adeceb6b3..38629ae24 100644 --- a/README.md +++ b/README.md @@ -89,6 +89,8 @@ To run the project from source, see here: [Build and run from source](./SOURCE.m * Endless hours helping architect and troubleshoot many portions of the project * [flagers](https://github.com/flagersgit) * Aid with Nvidia Web Driver research and development +* [joevt](https://github.com/joevt) + * [FixPCIeLinkrate](https://github.com/joevt/joevtApps) * MacRumors and Unsupported Mac Communities * Endless testing, reporting issues * Apple diff --git a/payloads/Config/config.plist b/payloads/Config/config.plist index e9a82e4ff..90059b1c3 100644 --- a/payloads/Config/config.plist +++ b/payloads/Config/config.plist @@ -2517,6 +2517,18 @@ LoadEarly + + Comment + + Path + FixPCIeLinkRate.efi + Enabled + + Arguments + + LoadEarly + + Input diff --git a/payloads/Drivers/FixPCIeLinkRate.efi b/payloads/Drivers/FixPCIeLinkRate.efi new file mode 100644 index 000000000..41ff2625d Binary files /dev/null and b/payloads/Drivers/FixPCIeLinkRate.efi differ diff --git a/resources/build/firmware.py b/resources/build/firmware.py index 176ce2265..4b67b0c5c 100644 --- a/resources/build/firmware.py +++ b/resources/build/firmware.py @@ -176,6 +176,12 @@ class build_firmware: support.build_support(self.model, self.constants, self.config).get_efi_binary_by_path("XhciDxe.efi", "UEFI", "Drivers")["Enabled"] = True support.build_support(self.model, self.constants, self.config).get_efi_binary_by_path("UsbBusDxe.efi", "UEFI", "Drivers")["Enabled"] = True + # PCIe Link Rate check + if self.model == "MacPro3,1": + print("- Adding PCIe Link Rate Patch") + shutil.copy(self.constants.link_rate_driver_path, self.constants.drivers_path) + support.build_support(self.model, self.constants, self.config).get_efi_binary_by_path("FixPCIeLinkRate.efi", "UEFI", "Drivers")["Enabled"] = True + def firmware_compatibility_handling(self): self.dual_dp_handling() diff --git a/resources/constants.py b/resources/constants.py index 1e28cf64e..c50da637e 100644 --- a/resources/constants.py +++ b/resources/constants.py @@ -265,6 +265,10 @@ class Constants: def diags_launcher_path(self): return self.payload_path / Path("Drivers/diags.efi") + @property + def link_rate_driver_path(self): + return self.payload_path / Path("Drivers/FixPCIeLinkRate.efi") + @property def list_txt_path(self): return self.payload_path / Path("List.txt")