mirror of
https://github.com/dortania/OpenCore-Legacy-Patcher.git
synced 2026-06-14 03:16:28 +10:00
misc.py: Add SPI top case patches
This commit is contained in:
@@ -3,6 +3,8 @@
|
||||
## 1.4.0
|
||||
- Refactor subprocess invocations
|
||||
- Resolve RecoveryOS support (Regression resolved in OpenCorePkg)
|
||||
- Restore SPI Keyboard and Trackpad support for macOS 14.4 and newer
|
||||
- Applicable for MacBook8,1, MacBookPro13,x and MacBookPro14,x
|
||||
- Increment binaries:
|
||||
- OpenCorePkg 0.9.7 - release
|
||||
|
||||
|
||||
@@ -1799,6 +1799,42 @@
|
||||
<key>PlistPath</key>
|
||||
<string>Contents/Info.plist</string>
|
||||
</dict>
|
||||
<dict>
|
||||
<key>Arch</key>
|
||||
<string>x86_64</string>
|
||||
<key>Comment</key>
|
||||
<string>AppleHSSPISupport - SPI Top Case Support</string>
|
||||
<key>Enabled</key>
|
||||
<false/>
|
||||
<key>MaxKernel</key>
|
||||
<string></string>
|
||||
<key>MinKernel</key>
|
||||
<string>23.4.0</string>
|
||||
<key>BundlePath</key>
|
||||
<string>AppleHSSPISupport.kext</string>
|
||||
<key>ExecutablePath</key>
|
||||
<string>Contents/MacOS/AppleHSSPISupport</string>
|
||||
<key>PlistPath</key>
|
||||
<string>Contents/Info.plist</string>
|
||||
</dict>
|
||||
<dict>
|
||||
<key>Arch</key>
|
||||
<string>x86_64</string>
|
||||
<key>Comment</key>
|
||||
<string>AppleHSSPIHIDDriver - SPI Top Case Support</string>
|
||||
<key>Enabled</key>
|
||||
<false/>
|
||||
<key>MaxKernel</key>
|
||||
<string></string>
|
||||
<key>MinKernel</key>
|
||||
<string>23.4.0</string>
|
||||
<key>BundlePath</key>
|
||||
<string>AppleHSSPIHIDDriver.kext</string>
|
||||
<key>ExecutablePath</key>
|
||||
<string>Contents/MacOS/AppleHSSPIHIDDriver</string>
|
||||
<key>PlistPath</key>
|
||||
<string>Contents/Info.plist</string>
|
||||
</dict>
|
||||
</array>
|
||||
<key>Block</key>
|
||||
<array>
|
||||
|
||||
Binary file not shown.
Binary file not shown.
@@ -180,9 +180,17 @@ class BuildMiscellaneous:
|
||||
|
||||
def _topcase_handling(self) -> None:
|
||||
"""
|
||||
USB Top Case Handler
|
||||
USB/SPI Top Case Handler
|
||||
"""
|
||||
|
||||
# macOS 14.4 Beta 1 strips SPI-based top case support for USB-C Macs pre-T2
|
||||
if self.model.startswith("MacBook") and self.model in smbios_data.smbios_dictionary:
|
||||
if self.model == "MacBook8,1" or (cpu_data.CPUGen.skylake <= smbios_data.smbios_dictionary[self.model]["CPU Generation"] <= cpu_data.CPUGen.kaby_lake):
|
||||
logging.info("- Enabling SPI-based top case support")
|
||||
support.BuildSupport(self.model, self.constants, self.config).enable_kext("AppleHSSPISupport.kext", self.constants.apple_spi_version, self.constants.apple_spi_path)
|
||||
support.BuildSupport(self.model, self.constants, self.config).enable_kext("AppleHSSPIHIDDriver.kext", self.constants.apple_spi_hid_version, self.constants.apple_spi_hid_path)
|
||||
|
||||
|
||||
#On-device probing
|
||||
if not self.constants.custom_model and self.computer.internal_keyboard_type and self.computer.trackpad_type:
|
||||
|
||||
|
||||
@@ -70,6 +70,8 @@ class Constants:
|
||||
self.t1_sse_version: str = "1.1.0" # AppleSSE (13.6 - T1 support)
|
||||
self.t1_key_store_version: str = "1.1.0" # AppleKeyStore (13.6 - T1 support)
|
||||
self.t1_corecrypto_version: str = "1.0.1" # corecrypto (13.6 - T1 support)
|
||||
self.apple_spi_version: str = "1.0.0" # AppleHSSPISupport (14.4 Beta 1)
|
||||
self.apple_spi_hid_version: str = "1.0.0" # AppleHSSPIHIDDriver (14.4 Beta 1)
|
||||
|
||||
## Apple - Dortania Modified
|
||||
self.bcm570_version: str = "1.0.2" # CatalinaBCM5701Ethernet
|
||||
@@ -459,6 +461,14 @@ class Constants:
|
||||
def t1_corecrypto_path(self):
|
||||
return self.payload_kexts_path / Path(f"Misc/corecrypto_T1-v{self.t1_corecrypto_version}.zip")
|
||||
|
||||
@property
|
||||
def apple_spi_path(self):
|
||||
return self.payload_kexts_path / Path(f"Misc/AppleHSSPISupport-v{self.apple_spi_version}.zip")
|
||||
|
||||
@property
|
||||
def apple_spi_hid_path(self):
|
||||
return self.payload_kexts_path / Path(f"Misc/AppleHSSPIHIDDriver-v{self.apple_spi_hid_version}.zip")
|
||||
|
||||
@property
|
||||
def mousse_path(self):
|
||||
return self.payload_kexts_path / Path(f"SSE/AAAMouSSE-v{self.mousse_version}.zip")
|
||||
|
||||
Reference in New Issue
Block a user