mirror of
https://github.com/dortania/OpenCore-Legacy-Patcher.git
synced 2026-04-11 16:27:19 +10:00
sys_patch: Add T1 support
This commit is contained in:
@@ -9,6 +9,8 @@
|
||||
- Resolve unfocused password windows
|
||||
- Resolve USB 1.1 kernel panics on macOS 14.1
|
||||
- Resolve PCIe FaceTime camera support on macOS 14.1
|
||||
- Resolve T1 Security Chip support on macOS 14
|
||||
- Applicable for MacBookPro13,2, MacBookPro13,3, MacBookPro14,2, MacBookPro14,3
|
||||
- Increment Binaries:
|
||||
- PatcherSupportPkg 1.3.7 - release
|
||||
- AirportBrcmFixup 2.1.8 - release
|
||||
|
||||
@@ -1320,5 +1320,35 @@ class SystemPatchDictionary():
|
||||
],
|
||||
}
|
||||
},
|
||||
"T1 Security Chip": {
|
||||
"Display Name": "Miscellaneous: T1 Security Chip",
|
||||
"OS Support": {
|
||||
"Minimum OS Support": {
|
||||
"OS Major": os_data.os_data.sonoma,
|
||||
"OS Minor": 0
|
||||
},
|
||||
"Maximum OS Support": {
|
||||
"OS Major": os_data.os_data.max_os,
|
||||
"OS Minor": 99
|
||||
},
|
||||
},
|
||||
"Install": {
|
||||
"/System/Library/Frameworks": {
|
||||
"LocalAuthentication.framework": "13.6" # Required for Password Authentication (SharedUtils.framework)
|
||||
},
|
||||
"/System/Library/PrivateFrameworks": {
|
||||
"EmbeddedOSInstall.framework": "13.6" # Required for biometrickitd
|
||||
},
|
||||
# Required for Apple Pay
|
||||
"/usr/lib": {
|
||||
"libNFC_Comet.dylib": "13.6",
|
||||
"libNFC_HAL.dylib": "13.6",
|
||||
"libPN548_API.dylib": "13.6"
|
||||
},
|
||||
"/usr/libexec": {
|
||||
"biometrickitd": "13.6" # Required for Touch ID
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
}
|
||||
|
||||
@@ -1707,6 +1707,24 @@
|
||||
<key>PlistPath</key>
|
||||
<string>Contents/Info.plist</string>
|
||||
</dict>
|
||||
<dict>
|
||||
<key>Arch</key>
|
||||
<string>x86_64</string>
|
||||
<key>Comment</key>
|
||||
<string>corecrypto - T1</string>
|
||||
<key>Enabled</key>
|
||||
<false/>
|
||||
<key>MaxKernel</key>
|
||||
<string></string>
|
||||
<key>MinKernel</key>
|
||||
<string>23.0.0</string>
|
||||
<key>BundlePath</key>
|
||||
<string>corecrypto_T1.kext</string>
|
||||
<key>ExecutablePath</key>
|
||||
<string>Contents/MacOS/corecrypto_T1</string>
|
||||
<key>PlistPath</key>
|
||||
<string>Contents/Info.plist</string>
|
||||
</dict>
|
||||
<dict>
|
||||
<key>Arch</key>
|
||||
<string>x86_64</string>
|
||||
|
||||
Binary file not shown.
BIN
payloads/Kexts/Misc/AppleKeyStore-v1.1.0.zip
Normal file
BIN
payloads/Kexts/Misc/AppleKeyStore-v1.1.0.zip
Normal file
Binary file not shown.
Binary file not shown.
BIN
payloads/Kexts/Misc/AppleSSE-v1.1.0.zip
Normal file
BIN
payloads/Kexts/Misc/AppleSSE-v1.1.0.zip
Normal file
Binary file not shown.
BIN
payloads/Kexts/Misc/corecrypto_T1-v1.0.0.zip
Normal file
BIN
payloads/Kexts/Misc/corecrypto_T1-v1.0.0.zip
Normal file
Binary file not shown.
@@ -43,6 +43,7 @@ class BuildMiscellaneous:
|
||||
self._debug_handling()
|
||||
self._cpu_friend_handling()
|
||||
self._general_oc_handling()
|
||||
self._t1_handling()
|
||||
|
||||
|
||||
def _feature_unlock_handling(self) -> None:
|
||||
@@ -357,9 +358,8 @@ class BuildMiscellaneous:
|
||||
logging.info("- Enabling T1 Security Chip support")
|
||||
|
||||
support.BuildSupport(self.model, self.constants, self.config).get_item_by_kv(self.config["Kernel"]["Block"], "Identifier", "com.apple.driver.AppleSSE")["Enabled"] = True
|
||||
support.BuildSupport(self.model, self.constants, self.config).get_item_by_kv(self.config["Kernel"]["Block"], "Identifier", "com.apple.driver.AppleCredentialManager")["Enabled"] = True
|
||||
support.BuildSupport(self.model, self.constants, self.config).get_item_by_kv(self.config["Kernel"]["Block"], "Identifier", "com.apple.driver.AppleKeyStore")["Enabled"] = True
|
||||
|
||||
support.BuildSupport(self.model, self.constants, self.config).enable_kext("corecrypto_T1.kext", self.constants.t1_corecrypto_version, self.constants.t1_corecrypto_path)
|
||||
support.BuildSupport(self.model, self.constants, self.config).enable_kext("AppleSSE.kext", self.constants.t1_sse_version, self.constants.t1_sse_path)
|
||||
support.BuildSupport(self.model, self.constants, self.config).enable_kext("AppleCredentialManager.kext", self.constants.t1_credential_version, self.constants.t1_credential_path)
|
||||
support.BuildSupport(self.model, self.constants, self.config).enable_kext("AppleKeyStore.kext", self.constants.t1_key_store_version, self.constants.t1_key_store_path)
|
||||
@@ -67,9 +67,9 @@ class Constants:
|
||||
self.aicpupm_version: str = "1.0.0" # AppleIntelCPUPowerManagement/Client
|
||||
self.s3x_nvme_version: str = "1.0.0" # IONVMeFamily (14.0 Beta 1, S1X and S3X classes)
|
||||
self.apple_camera_version: str = "1.0.0" # AppleCameraInterface (14.0 Beta 1)
|
||||
self.t1_credential_version: str = "1.0.0" # AppleCredentialManager (13.5 - T1 support)
|
||||
self.t1_sse_version: str = "1.0.0" # AppleSSE (13.5 - T1 support)
|
||||
self.t1_key_store_version: str = "1.0.0" # AppleKeyStore (13.5 - T1 support)
|
||||
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.0" # corecrypto (13.6 - T1 support)
|
||||
|
||||
## Apple - Dortania Modified
|
||||
self.bcm570_version: str = "1.0.2" # CatalinaBCM5701Ethernet
|
||||
@@ -439,14 +439,14 @@ class Constants:
|
||||
def t1_key_store_path(self):
|
||||
return self.payload_kexts_path / Path(f"Misc/AppleKeyStore-v{self.t1_key_store_version}.zip")
|
||||
|
||||
@property
|
||||
def t1_credential_path(self):
|
||||
return self.payload_kexts_path / Path(f"Misc/AppleCredentialManager-v{self.t1_credential_version}.zip")
|
||||
|
||||
@property
|
||||
def t1_sse_path(self):
|
||||
return self.payload_kexts_path / Path(f"Misc/AppleSSE-v{self.t1_sse_version}.zip")
|
||||
|
||||
@property
|
||||
def t1_corecrypto_path(self):
|
||||
return self.payload_kexts_path / Path(f"Misc/corecrypto_T1-v{self.t1_corecrypto_version}.zip")
|
||||
|
||||
@property
|
||||
def mousse_path(self):
|
||||
return self.payload_kexts_path / Path(f"SSE/AAAMouSSE-v{self.mousse_version}.zip")
|
||||
|
||||
@@ -634,6 +634,7 @@ class Computer:
|
||||
ambient_light_sensor: Optional[bool] = False
|
||||
third_party_sata_ssd: Optional[bool] = False
|
||||
pcie_webcam: Optional[bool] = False
|
||||
t1_chip: Optional[bool] = False
|
||||
secure_boot_model: Optional[str] = None
|
||||
secure_boot_policy: Optional[int] = None
|
||||
oclp_sys_version: Optional[str] = None
|
||||
@@ -659,6 +660,7 @@ class Computer:
|
||||
computer.cpu_probe()
|
||||
computer.bluetooth_probe()
|
||||
computer.topcase_probe()
|
||||
computer.t1_probe()
|
||||
computer.ambient_light_sensor_probe()
|
||||
computer.pcie_webcam_probe()
|
||||
computer.sata_disk_probe()
|
||||
@@ -936,6 +938,18 @@ class Computer:
|
||||
elif usb_device.device_id in usb_data.AppleIDs.AppleUSBMultiTouch:
|
||||
self.trackpad_type = "Modern"
|
||||
|
||||
def t1_probe(self):
|
||||
if not self.usb_devices:
|
||||
return
|
||||
|
||||
for usb_device in self.usb_devices:
|
||||
if usb_device.vendor_id != 0x5ac:
|
||||
continue
|
||||
if usb_device.device_id != 0x8600:
|
||||
continue
|
||||
self.t1_chip = True
|
||||
break
|
||||
|
||||
def sata_disk_probe(self):
|
||||
# Get all SATA Controllers/Disks from 'system_profiler SPSerialATADataType'
|
||||
# Determine whether SATA SSD is present and Apple-made
|
||||
|
||||
@@ -53,6 +53,7 @@ class DetectRootPatch:
|
||||
self.legacy_keyboard_backlight = False
|
||||
self.legacy_uhci_ohci = False
|
||||
self.legacy_pcie_webcam = False
|
||||
self.legacy_t1_chip = False
|
||||
|
||||
# Patch Requirements
|
||||
self.amfi_must_disable = False
|
||||
@@ -540,6 +541,10 @@ class DetectRootPatch:
|
||||
|
||||
if self.constants.detected_os >= os_data.os_data.sonoma:
|
||||
self.legacy_pcie_webcam = self.constants.computer.pcie_webcam
|
||||
self.legacy_t1_chip = self.constants.computer.t1_chip
|
||||
|
||||
if self.legacy_t1_chip is True:
|
||||
self.amfi_must_disable = True
|
||||
|
||||
if self._check_uhci_ohci() is True:
|
||||
self.legacy_uhci_ohci = True
|
||||
@@ -622,6 +627,7 @@ class DetectRootPatch:
|
||||
"Miscellaneous: Legacy Keyboard Backlight": self.legacy_keyboard_backlight,
|
||||
"Miscellaneous: Legacy USB 1.1": self.legacy_uhci_ohci,
|
||||
"Miscellaneous: PCIe FaceTime Camera": self.legacy_pcie_webcam,
|
||||
"Miscellaneous: T1 Security Chip": self.legacy_t1_chip,
|
||||
"Settings: Requires AMFI exemption": self.amfi_must_disable,
|
||||
"Settings: Supports Auxiliary Cache": not self.requires_root_kc,
|
||||
"Settings: Kernel Debug Kit missing": self.missing_kdk if self.constants.detected_os >= os_data.os_data.ventura.value else False,
|
||||
|
||||
@@ -181,6 +181,9 @@ class GenerateRootPatchSets:
|
||||
if self.hardware_details["Miscellaneous: PCIe FaceTime Camera"] is True:
|
||||
required_patches.update({"PCIe FaceTime Camera": all_hardware_patchset["Miscellaneous"]["PCIe FaceTime Camera"]})
|
||||
|
||||
if self.hardware_details["Miscellaneous: T1 Security Chip"] is True:
|
||||
required_patches.update({"T1 Security Chip": all_hardware_patchset["Miscellaneous"]["T1 Security Chip"]})
|
||||
|
||||
if required_patches:
|
||||
host_os_float = float(f"{self.constants.detected_os}.{self.constants.detected_os_minor}")
|
||||
|
||||
|
||||
Reference in New Issue
Block a user