mirror of
https://github.com/dortania/OpenCore-Legacy-Patcher.git
synced 2026-06-19 05:40:01 +10:00
Refactor SMBIOS table
This commit is contained in:
+41
-42
@@ -14,7 +14,8 @@ import ast
|
||||
from pathlib import Path
|
||||
from datetime import date
|
||||
|
||||
from Resources import Constants, ModelArray, Utilities, device_probe, SMBIOSData
|
||||
from Resources import Constants, ModelArray, Utilities, device_probe
|
||||
from Data import smbios_data, bluetooth_data, cpu_data
|
||||
|
||||
|
||||
def rmtree_handler(func, path, exc_info):
|
||||
@@ -71,9 +72,9 @@ class BuildOpenCore:
|
||||
firmwarefeature = Utilities.get_rom("firmware-features")
|
||||
if not firmwarefeature:
|
||||
print("- Failed to find FirmwareFeatures, falling back on defaults")
|
||||
firmwarefeature = int(SMBIOSData.FirmwareFeatures[self.model], 16)
|
||||
firmwarefeature = int(smbios_data.smbios_dictionary[self.model]["FirmwareFeatures"], 16)
|
||||
else:
|
||||
firmwarefeature = int(SMBIOSData.FirmwareFeatures[self.model], 16)
|
||||
firmwarefeature = int(smbios_data.smbios_dictionary[self.model]["FirmwareFeatures"], 16)
|
||||
firmwarefeature = Utilities.enable_apfs(firmwarefeature)
|
||||
firmwarefeature = Utilities.enable_apfs_extended(firmwarefeature)
|
||||
firmwarefeature = Utilities.enable_large_basesystem(firmwarefeature)
|
||||
@@ -152,8 +153,8 @@ class BuildOpenCore:
|
||||
("SMC-Spoof.kext", self.constants.smcspoof_version, self.constants.smcspoof_path, lambda: self.constants.allow_oc_everywhere is False),
|
||||
# CPU patches
|
||||
("AppleMCEReporterDisabler.kext", self.constants.mce_version, self.constants.mce_path, lambda: self.model in ModelArray.DualSocket),
|
||||
("AAAMouSSE.kext", self.constants.mousse_version, self.constants.mousse_path, lambda: self.model in ModelArray.SSEEmulator),
|
||||
("telemetrap.kext", self.constants.telemetrap_version, self.constants.telemetrap_path, lambda: self.model in ModelArray.MissingSSE42),
|
||||
("AAAMouSSE.kext", self.constants.mousse_version, self.constants.mousse_path, lambda: smbios_data.smbios_dictionary[self.model]["CPU Generation"] <= cpu_data.cpu_data.penryn),
|
||||
("telemetrap.kext", self.constants.telemetrap_version, self.constants.telemetrap_path, lambda: smbios_data.smbios_dictionary[self.model]["CPU Generation"] <= cpu_data.cpu_data.penryn),
|
||||
(
|
||||
"CPUFriend.kext",
|
||||
self.constants.cpufriend_version,
|
||||
@@ -169,9 +170,8 @@ class BuildOpenCore:
|
||||
# IDE patch
|
||||
("AppleIntelPIIXATA.kext", self.constants.piixata_version, self.constants.piixata_path, lambda: self.model in ModelArray.IDEPatch),
|
||||
# Misc
|
||||
("FeatureUnlock.kext", self.constants.featureunlock_version, self.constants.featureunlock_path, lambda: self.model in ModelArray.FeatureUnlockSupport),
|
||||
("FeatureUnlock.kext", self.constants.featureunlock_version, self.constants.featureunlock_path, lambda: smbios_data.smbios_dictionary[self.model]["CPU Generation"] <= cpu_data.cpu_data.kaby_lake),
|
||||
("DebugEnhancer.kext", self.constants.debugenhancer_version, self.constants.debugenhancer_path, lambda: self.constants.kext_debug is True),
|
||||
# ("latebloom.kext", self.constants.latebloom_version, self.constants.latebloom_path, lambda: self.model in ModelArray.PCIRaceCondition),
|
||||
("AppleUSBTrackpad.kext", self.constants.apple_trackpad, self.constants.apple_trackpad_path, lambda: self.model in ["MacBook4,1", "MacBook5,2"]),
|
||||
]:
|
||||
self.enable_kext(name, version, path, check)
|
||||
@@ -179,14 +179,16 @@ class BuildOpenCore:
|
||||
if self.constants.allow_oc_everywhere is False:
|
||||
self.get_item_by_kv(self.config["Kernel"]["Patch"], "Identifier", "com.apple.driver.AppleSMC")["Enabled"] = True
|
||||
|
||||
if self.smbios_set(self.model) in ModelArray.T2_Models or self.constants.override_smbios in ModelArray.T2_Models:
|
||||
|
||||
if (smbios_data.smbios_dictionary[self.smbios_set(self.model) or self.constants.override_smbios]["SecureBootModel"]) != None:
|
||||
# Monterey T2 SMBIOS don't get OS updates without a T2 SBM
|
||||
# Forces VMM patch instead
|
||||
if self.get_kext_by_bundle_path("RestrictEvents.kext")["Enabled"] is False:
|
||||
self.enable_kext("RestrictEvents.kext", self.constants.restrictevents_version, self.constants.restrictevents_path)
|
||||
|
||||
if self.model in ModelArray.PCIRaceCondition:
|
||||
if smbios_data.smbios_dictionary[self.model]["CPU Generation"] <= cpu_data.cpu_data.sandy_bridge:
|
||||
# Ref: https://github.com/reenigneorcim/SurPlus
|
||||
# Enable for all systems missing RDRAND support
|
||||
print("- Adding SurPlus Patch for Race Condition")
|
||||
self.get_item_by_kv(self.config["Kernel"]["Patch"], "Comment", "SurPlus v1 - PART 1 of 2 - Patch read_erandom (inlined in _early_random)")["Enabled"] = True
|
||||
self.get_item_by_kv(self.config["Kernel"]["Patch"], "Comment", "SurPlus v1 - PART 2 of 2 - Patch register_and_init_prng")["Enabled"] = True
|
||||
@@ -303,21 +305,25 @@ class BuildOpenCore:
|
||||
self.enable_kext("IO80211ElCap.kext", self.constants.io80211elcap_version, self.constants.io80211elcap_path)
|
||||
self.get_kext_by_bundle_path("IO80211ElCap.kext/Contents/PlugIns/AirPortAtheros40.kext")["Enabled"] = True
|
||||
else:
|
||||
if self.model in ModelArray.WifiBCM94331:
|
||||
if smbios_data.smbios_dictionary[self.model]["Wireless Model"] == device_probe.Broadcom.Chipsets.AirPortBrcm4360:
|
||||
print("- Enabling BCM943224 and BCM94331 Networking Support")
|
||||
wifi_fake_id(self)
|
||||
elif self.model in ModelArray.WifiBCM94322:
|
||||
elif smbios_data.smbios_dictionary[self.model]["Wireless Model"] == device_probe.Broadcom.Chipsets.AirPortBrcm4331:
|
||||
print("- Enabling BCM94328 Networking Support")
|
||||
self.enable_kext("corecaptureElCap.kext", self.constants.corecaptureelcap_version, self.constants.corecaptureelcap_path)
|
||||
self.enable_kext("IO80211ElCap.kext", self.constants.io80211elcap_version, self.constants.io80211elcap_path)
|
||||
self.get_kext_by_bundle_path("IO80211ElCap.kext/Contents/PlugIns/AirPortBrcm4331.kext")["Enabled"] = True
|
||||
elif self.model in ModelArray.WifiBCM94328:
|
||||
elif smbios_data.smbios_dictionary[self.model]["Wireless Model"] == device_probe.Broadcom.Chipsets.AirPortBrcm43224:
|
||||
print("- Enabling BCM94328 Networking Support")
|
||||
self.enable_kext("corecaptureElCap.kext", self.constants.corecaptureelcap_version, self.constants.corecaptureelcap_path)
|
||||
self.enable_kext("IO80211ElCap.kext", self.constants.io80211elcap_version, self.constants.io80211elcap_path)
|
||||
self.get_kext_by_bundle_path("IO80211ElCap.kext/Contents/PlugIns/AppleAirPortBrcm43224.kext")["Enabled"] = True
|
||||
elif self.model in ModelArray.WifiAtheros:
|
||||
elif smbios_data.smbios_dictionary[self.model]["Wireless Model"] == device_probe.Atheros.Chipsets.AirPortAtheros40:
|
||||
print("- Enabling Atheros Networking Support")
|
||||
self.enable_kext("corecaptureElCap.kext", self.constants.corecaptureelcap_version, self.constants.corecaptureelcap_path)
|
||||
self.enable_kext("IO80211ElCap.kext", self.constants.io80211elcap_version, self.constants.io80211elcap_path)
|
||||
self.get_kext_by_bundle_path("IO80211ElCap.kext/Contents/PlugIns/AirPortAtheros40.kext")["Enabled"] = True
|
||||
else:
|
||||
elif smbios_data.smbios_dictionary[self.model]["Wireless Model"] == device_probe.Broadcom.Chipsets.AirportBrcmNIC:
|
||||
self.enable_kext("AirportBrcmFixup.kext", self.constants.airportbcrmfixup_version, self.constants.airportbcrmfixup_path)
|
||||
# print(f"- Setting Wireless Card's Country Code: {self.computer.wifi.country_code}")
|
||||
# self.config["NVRAM"]["Add"]["7C436110-AB2A-4BBB-A880-FE41995C9F82"]["boot-args"] += f" brcmfx-country={self.computer.wifi.country_code}"
|
||||
@@ -334,18 +340,19 @@ class BuildOpenCore:
|
||||
self.get_kext_by_bundle_path("CPUFriendDataProvider.kext")["Enabled"] = True
|
||||
|
||||
# HID patches
|
||||
if self.model in ModelArray.LegacyHID:
|
||||
if smbios_data.smbios_dictionary[self.model]["CPU Generation"] <= cpu_data.cpu_data.penryn:
|
||||
print("- Adding IOHIDFamily patch")
|
||||
self.get_item_by_kv(self.config["Kernel"]["Patch"], "Identifier", "com.apple.iokit.IOHIDFamily")["Enabled"] = True
|
||||
|
||||
# SSDT patches
|
||||
if self.model in ModelArray.pciSSDT:
|
||||
if smbios_data.smbios_dictionary[self.model]["CPU Generation"] == cpu_data.cpu_data.nahalem and not (self.model.startswith("MacPro") or self.model.startswith("Xserve")):
|
||||
print("- Adding SSDT-CPBG.aml")
|
||||
self.get_item_by_kv(self.config["ACPI"]["Add"], "Path", "SSDT-CPBG.aml")["Enabled"] = True
|
||||
shutil.copy(self.constants.pci_ssdt_path, self.constants.acpi_path)
|
||||
|
||||
if self.model in ModelArray.windows_audio:
|
||||
if cpu_data.cpu_data.sandy_bridge <= smbios_data.smbios_dictionary[self.model]["CPU Generation"] <= cpu_data.cpu_data.ivy_bridge:
|
||||
# Based on: https://egpu.io/forums/pc-setup/fix-dsdt-override-to-correct-error-12/
|
||||
# Apply to Sandy and Ivy Bridge Macs
|
||||
print("- Enabling Windows 10 UEFI Audio support")
|
||||
self.get_item_by_kv(self.config["ACPI"]["Add"], "Path", "SSDT-PCI.aml")["Enabled"] = True
|
||||
self.get_item_by_kv(self.config["ACPI"]["Patch"], "Comment", "BUF0 to BUF1")["Enabled"] = True
|
||||
@@ -605,32 +612,16 @@ class BuildOpenCore:
|
||||
print("- Fixing Legacy Bluetooth for macOS Monterey")
|
||||
self.enable_kext("BlueToolFixup.kext", self.constants.bluetool_version, self.constants.bluetool_path)
|
||||
self.enable_kext("Bluetooth-Spoof.kext", self.constants.btspoof_version, self.constants.btspoof_path)
|
||||
elif self.computer.bluetooth_chipset == "BRCM20702 Hub" and self.model in ModelArray.Bluetooth_BRCM20702_v1:
|
||||
elif self.computer.bluetooth_chipset == "BRCM20702 Hub" and smbios_data.smbios_dictionary[self.model]["Bluetooth Model"] == bluetooth_data.bluetooth_data.BRCM20702_v1:
|
||||
print("- Fixing Legacy Bluetooth for macOS Monterey")
|
||||
self.enable_kext("BlueToolFixup.kext", self.constants.bluetool_version, self.constants.bluetool_path)
|
||||
elif self.model in ModelArray.Bluetooth_BRCM2070 or self.model in ModelArray.Bluetooth_BRCM2046 or self.model in ModelArray.Bluetooth_BRCM20702_v1:
|
||||
# smbios_data.smbios_dictionary[self.model]["Bluetooth Model"]
|
||||
elif smbios_data.smbios_dictionary[self.model]["Bluetooth Model"] <= bluetooth_data.bluetooth_data.BRCM20702_v1:
|
||||
print("- Fixing Legacy Bluetooth for macOS Monterey")
|
||||
self.enable_kext("BlueToolFixup.kext", self.constants.bluetool_version, self.constants.bluetool_path)
|
||||
if self.model in ModelArray.Bluetooth_BRCM2070 or self.model in ModelArray.Bluetooth_BRCM2046:
|
||||
if smbios_data.smbios_dictionary[self.model]["Bluetooth Model"] <= bluetooth_data.bluetooth_data.BRCM2070:
|
||||
self.enable_kext("Bluetooth-Spoof.kext", self.constants.btspoof_version, self.constants.btspoof_path)
|
||||
|
||||
# Add XhciDxe if firmware doesn't have XHCI controller support and XCHI controller detected
|
||||
# TODO: Fix XhciDxe to work on pre UEFI 2.0 Macs
|
||||
# Ref: https://github.com/acidanthera/bugtracker/issues/1663
|
||||
# if self.model not in ModelArray.XhciSupport and not self.constants.custom_model:
|
||||
# devices = plistlib.loads(subprocess.run("ioreg -c IOPCIDevice -r -d2 -a".split(), stdout=subprocess.PIPE).stdout.decode().strip().encode())
|
||||
# try:
|
||||
# devices = [i for i in devices if i["class-code"] == binascii.unhexlify(self.constants.classcode_xhci)]
|
||||
# vendor_id = Utilities.hexswap(binascii.hexlify(devices[0]["vendor-id"]).decode()[:4])
|
||||
# device_id = Utilities.hexswap(binascii.hexlify(devices[0]["device-id"]).decode()[:4])
|
||||
# print("- Found XHCI Controller, adding Boot Support")
|
||||
# shutil.copy(self.constants.xhci_driver_path, self.constants.drivers_path)
|
||||
# self.get_efi_binary_by_path("XhciDxe.efi", "UEFI", "Drivers")["Enabled"] = True
|
||||
# except ValueError:
|
||||
# print("- No XHCI Controller Found (V)")
|
||||
# except IndexError:
|
||||
# print("- No XHCI Controller Found (I)")
|
||||
|
||||
if self.constants.nvme_boot is True:
|
||||
print("- Enabling NVMe boot support")
|
||||
shutil.copy(self.constants.nvme_driver_path, self.constants.drivers_path)
|
||||
@@ -644,15 +635,19 @@ class BuildOpenCore:
|
||||
self.get_efi_binary_by_path("OpenRuntime.efi", "UEFI", "Drivers")["Enabled"] = True
|
||||
self.get_efi_binary_by_path("OpenLinuxBoot.efi", "UEFI", "Drivers")["Enabled"] = True
|
||||
# Exfat check
|
||||
if self.model in ModelArray.NoExFat:
|
||||
if smbios_data.smbios_dictionary[self.model]["CPU Generation"] < cpu_data.cpu_data.sandy_bridge:
|
||||
# Sandy Bridge and newer Macs natively support ExFat
|
||||
print("- Adding ExFatDxeLegacy.efi")
|
||||
shutil.copy(self.constants.exfat_legacy_driver_path, self.constants.drivers_path)
|
||||
self.get_efi_binary_by_path("ExFatDxeLegacy.efi", "UEFI", "Drivers")["Enabled"] = True
|
||||
|
||||
# Add UGA to GOP layer
|
||||
if self.model in ModelArray.UGAtoGOP:
|
||||
try:
|
||||
smbios_data.smbios_dictionary[self.model]["UGA Graphics"]
|
||||
print("- Adding UGA to GOP Patch")
|
||||
self.config["UEFI"]["Output"]["GopPassThrough"] = "Apple"
|
||||
except KeyError:
|
||||
pass
|
||||
|
||||
# ThirdPartDrives Check
|
||||
if self.model in ModelArray.SATAPatch and self.constants.allow_oc_everywhere is False:
|
||||
@@ -721,9 +716,13 @@ class BuildOpenCore:
|
||||
if self.constants.validate is False:
|
||||
print("- Adding bootmgfw.efi BlessOverride")
|
||||
self.config["Misc"]["BlessOverride"] += ["\\EFI\\Microsoft\\Boot\\bootmgfw.efi"]
|
||||
if self.model in ModelArray.dGPU_switch and self.constants.dGPU_switch is True:
|
||||
print("- Allowing GMUX switching in Windows")
|
||||
try:
|
||||
if self.constants.dGPU_switch is True:
|
||||
smbios_data.smbios_dictionary[self.model]["Switchable GPUs"]
|
||||
print("- Allowing GMUX switching in Windows")
|
||||
self.config["Booter"]["Quirks"]["SignalAppleOS"] = True
|
||||
except KeyError:
|
||||
pass
|
||||
if self.constants.allow_fv_root is True:
|
||||
# apfs.kext has an undocumented boot-arg that allows FileVault usage on broken APFS seals (-arv_allow_fv)
|
||||
# This is however hidden behind kern.development, thus we patch _apfs_filevault_allowed to always return true
|
||||
@@ -742,7 +741,7 @@ class BuildOpenCore:
|
||||
spoofed_model = self.constants.override_smbios
|
||||
print(f"- Using Model ID: {spoofed_model}")
|
||||
try:
|
||||
spoofed_board = self.constants.board_id[spoofed_model]
|
||||
spoofed_board = smbios_data.smbios_dictionary[spoofed_model]["Board ID"]
|
||||
print(f"- Using Board ID: {spoofed_board}")
|
||||
except KeyError:
|
||||
spoofed_board = ""
|
||||
|
||||
@@ -631,41 +631,6 @@ class Constants:
|
||||
def legacy_wifi_libexec(self):
|
||||
return self.payload_apple_libexec_path / Path("Legacy-Wifi")
|
||||
|
||||
csr_values = {
|
||||
# Source: macOS 11.4 (XNU's csr.h)
|
||||
# https://opensource.apple.com/source/xnu/xnu-7195.121.3/bsd/sys/csr.h.auto.html
|
||||
"CSR_ALLOW_UNTRUSTED_KEXTS": False, # 0x1 - Allows Unsigned Kexts - Introduced in El Capitan # noqa: E241
|
||||
"CSR_ALLOW_UNRESTRICTED_FS": False, # 0x2 - File System Access - Introduced in El Capitan # noqa: E241
|
||||
"CSR_ALLOW_TASK_FOR_PID": False, # 0x4 - Unrestricted task_for_pid() - Introduced in El Capitan # noqa: E241
|
||||
"CSR_ALLOW_KERNEL_DEBUGGER": False, # 0x8 - Allow Kernel Debugger - Introduced in El Capitan # noqa: E241
|
||||
"CSR_ALLOW_APPLE_INTERNAL": False, # 0x10 - Set AppleInternal Features - Introduced in El Capitan # noqa: E241
|
||||
# "CSR_ALLOW_DESTRUCTIVE_DTRACE": False, # 0x20 - Allow destructive DTrace - Deprecated # noqa: E241
|
||||
"CSR_ALLOW_UNRESTRICTED_DTRACE": False, # 0x20 - Unrestricted DTrace usage - Introduced in El Capitan # noqa: E241
|
||||
"CSR_ALLOW_UNRESTRICTED_NVRAM": False, # 0x40 - Unrestricted NVRAM write - Introduced in El Capitan # noqa: E241
|
||||
"CSR_ALLOW_DEVICE_CONFIGURATION": False, # 0x80 - Allow custom DeviceTree (iOS) - Introduced in El Capitan # noqa: E241
|
||||
"CSR_ALLOW_ANY_RECOVERY_OS": False, # 0x100 - Skip BaseSystem Verification - Introduced in Sierra # noqa: E241
|
||||
"CSR_ALLOW_UNAPPROVED_KEXTS": False, # 0x200 - Allow Unnotarized Kexts - Introduced in High Sierra # noqa: E241
|
||||
"CSR_ALLOW_EXECUTABLE_POLICY_OVERRIDE": False, # 0x400 - Override Executable Policy - Introduced in Mojave # noqa: E241
|
||||
"CSR_ALLOW_UNAUTHENTICATED_ROOT": False, # 0x800 - Allow Root Volume Mounting - Introduced in Big Sur # noqa: E241
|
||||
}
|
||||
|
||||
root_patch_sip_mojave = [
|
||||
# Variables required to root patch in Mojave and Catalina
|
||||
"CSR_ALLOW_UNTRUSTED_KEXTS", # 0x1
|
||||
"CSR_ALLOW_UNRESTRICTED_FS", # 0x2
|
||||
"CSR_ALLOW_UNAPPROVED_KEXTS", # 0x200
|
||||
"CSR_ALLOW_EXECUTABLE_POLICY_OVERRIDE", # 0x400
|
||||
]
|
||||
|
||||
root_patch_sip_big_sur = [
|
||||
# Variables required to root patch in Big Sur and Monterey
|
||||
"CSR_ALLOW_UNTRUSTED_KEXTS", # 0x1
|
||||
"CSR_ALLOW_UNRESTRICTED_FS", # 0x2
|
||||
"CSR_ALLOW_UNAPPROVED_KEXTS", # 0x200
|
||||
"CSR_ALLOW_EXECUTABLE_POLICY_OVERRIDE", # 0x400
|
||||
"CSR_ALLOW_UNAUTHENTICATED_ROOT", # 0x800
|
||||
]
|
||||
|
||||
sbm_values = [
|
||||
"j137ap", # iMacPro1,1
|
||||
"j680ap", # MacBookPro15,1
|
||||
@@ -695,133 +660,6 @@ class Constants:
|
||||
"Mac-7BA5B2D9E42DDD94", # iMacPro1,1
|
||||
]
|
||||
|
||||
board_id = {
|
||||
"MacBook1,1": "Mac-F4208CC8",
|
||||
"MacBook2,1": "Mac-F4208CA9",
|
||||
"MacBook3,1": "Mac-F22788C8",
|
||||
"MacBook4,1": "Mac-F22788A9",
|
||||
"MacBook5,1": "Mac-F42D89C8",
|
||||
"MacBook5,2": "Mac-F22788AA",
|
||||
"MacBook6,1": "Mac-F22C8AC8",
|
||||
"MacBook7,1": "Mac-F22C89C8",
|
||||
"MacBook8,1": "Mac-BE0E8AC46FE800CC",
|
||||
"MacBook9,1": "Mac-9AE82516C7C6B903",
|
||||
"MacBook10,1": "Mac-EE2EBD4B90B839A8",
|
||||
"MacBookAir1,1": "Mac-F42C8CC8",
|
||||
"MacBookAir2,1": "Mac-F42D88C8",
|
||||
"MacBookAir3,1": "Mac-942452F5819B1C1B",
|
||||
"MacBookAir3,2": "Mac-942C5DF58193131B",
|
||||
"MacBookAir4,1": "Mac-C08A6BB70A942AC2",
|
||||
"MacBookAir4,2": "Mac-742912EFDBEE19B3",
|
||||
"MacBookAir5,1": "Mac-66F35F19FE2A0D05",
|
||||
"MacBookAir5,2": "Mac-2E6FAB96566FE58C",
|
||||
"MacBookAir6,1": "Mac-35C1E88140C3E6CF",
|
||||
"MacBookAir6,2": "Mac-7DF21CB3ED6977E5",
|
||||
"MacBookAir7,1": "Mac-9F18E312C5C2BF0B",
|
||||
"MacBookAir7,2": "Mac-937CB26E2E02BB01",
|
||||
"MacBookAir8,1": "Mac-827FAC58A8FDFA22",
|
||||
"MacBookAir8,2": "Mac-226CB3C6A851A671",
|
||||
"MacBookAir9,1": "Mac-0CFF9C7C2B63DF8D",
|
||||
"MacBookPro1,1": "Mac-F425BEC8",
|
||||
"MacBookPro1,2": "Mac-F42DBEC8",
|
||||
"MacBookPro2,1": "Mac-F42189C8",
|
||||
"MacBookPro2,2": "Mac-F42187C8",
|
||||
"MacBookPro3,1": "Mac-F4238BC8",
|
||||
"MacBookPro4,1": "Mac-F42C89C8",
|
||||
"MacBookPro5,1": "Mac-F42D86C8",
|
||||
"MacBookPro5,2": "Mac-F2268EC8",
|
||||
"MacBookPro5,3": "Mac-F22587C8",
|
||||
"MacBookPro5,4": "Mac-F22587A1",
|
||||
"MacBookPro5,5": "Mac-F2268AC8",
|
||||
"MacBookPro6,1": "Mac-F22589C8",
|
||||
"MacBookPro6,2": "Mac-F22586C8",
|
||||
"MacBookPro7,1": "Mac-F222BEC8",
|
||||
"MacBookPro8,1": "Mac-94245B3640C91C81",
|
||||
"MacBookPro8,2": "Mac-94245A3940C91C80",
|
||||
"MacBookPro8,3": "Mac-942459F5819B171B",
|
||||
"MacBookPro9,1": "Mac-4B7AC7E43945597E",
|
||||
"MacBookPro9,2": "Mac-6F01561E16C75D06",
|
||||
"MacBookPro10,1": "Mac-C3EC7CD22292981F",
|
||||
"MacBookPro10,2": "Mac-AFD8A9D944EA4843",
|
||||
"MacBookPro11,1": "Mac-189A3D4F975D5FFC",
|
||||
"MacBookPro11,2": "Mac-3CBD00234E554E41",
|
||||
"MacBookPro11,3": "Mac-2BD1B31983FE1663",
|
||||
"MacBookPro11,4": "Mac-06F11FD93F0323C5",
|
||||
"MacBookPro11,5": "Mac-06F11F11946D27C5",
|
||||
"MacBookPro12,1": "Mac-E43C1C25D4880AD6",
|
||||
"MacBookPro13,1": "Mac-473D31EABEB93F9B",
|
||||
"MacBookPro13,2": "Mac-66E35819EE2D0D05",
|
||||
"MacBookPro13,3": "Mac-A5C67F76ED83108C",
|
||||
"MacBookPro14,1": "Mac-B4831CEBD52A0C4C",
|
||||
"MacBookPro14,2": "Mac-CAD6701F7CEA0921",
|
||||
"MacBookPro14,3": "Mac-551B86E5744E2388",
|
||||
"MacBookPro15,1": "Mac-937A206F2EE63C01",
|
||||
"MacBookPro15,2": "Mac-827FB448E656EC26",
|
||||
"MacBookPro15,3": "Mac-1E7E29AD0135F9BC",
|
||||
"MacBookPro15,4": "Mac-53FDB3D8DB8CA971",
|
||||
"MacBookPro16,1": "Mac-E1008331FDC96864",
|
||||
"MacBookPro16,2": "Mac-5F9802EFE386AA28",
|
||||
"MacBookPro16,3": "Mac-E7203C0F68AA0004",
|
||||
"MacBookPro16,4": "Mac-A61BADE1FDAD7B05",
|
||||
"Macmini1,1": "Mac-F4208EC8",
|
||||
"Macmini2,1": "Mac-F4208EAA",
|
||||
"Macmini3,1": "Mac-F22C86C8",
|
||||
"Macmini4,1": "Mac-F2208EC8",
|
||||
"Macmini5,1": "Mac-8ED6AF5B48C039E1",
|
||||
"Macmini5,2": "Mac-4BC72D62AD45599E",
|
||||
"Macmini5,3": "Mac-7BA5B2794B2CDB12",
|
||||
"Macmini6,1": "Mac-031AEE4D24BFF0B1",
|
||||
"Macmini6,2": "Mac-F65AE981FFA204ED",
|
||||
"Macmini7,1": "Mac-35C5E08120C7EEAF",
|
||||
"Macmini8,1": "Mac-7BA5B2DFE22DDD8C",
|
||||
"iMac4,1": "Mac-F42786C8",
|
||||
"iMac4,2": "Mac-F4218EC8",
|
||||
"iMac5,1": "Mac-F4228EC8",
|
||||
"iMac5,2": "Mac-F4218EC8",
|
||||
"iMac6,1": "Mac-F4218FC8",
|
||||
"iMac7,1": "Mac-F42386C8",
|
||||
"iMac8,1": "Mac-F227BEC8",
|
||||
"iMac9,1": "Mac-F2218FA9",
|
||||
"iMac10,1": "Mac-F221DCC8",
|
||||
# "iMac10,1": "Mac-F2268CC8",
|
||||
"iMac11,1": "Mac-F2268DAE",
|
||||
"iMac11,2": "Mac-F2238AC8",
|
||||
"iMac11,3": "Mac-F2238BAE",
|
||||
"iMac12,1": "Mac-942B5BF58194151B",
|
||||
"iMac12,2": "Mac-942B59F58194171B",
|
||||
"iMac13,1": "Mac-00BE6ED71E35EB86",
|
||||
"iMac13,2": "Mac-FC02E91DDD3FA6A4",
|
||||
"iMac13,3": "Mac-7DF2A3B5E5D671ED",
|
||||
"iMac14,1": "Mac-031B6874CF7F642A",
|
||||
"iMac14,2": "Mac-27ADBB7B4CEE8E61",
|
||||
"iMac14,3": "Mac-77EB7D7DAF985301",
|
||||
"iMac14,4": "Mac-81E3E92DD6088272",
|
||||
"iMac15,1": "Mac-42FD25EABCABB274",
|
||||
"iMac16,1": "Mac-A369DDC4E67F1C45",
|
||||
"iMac16,2": "Mac-FFE5EF870D7BA81A",
|
||||
"iMac17,1": "Mac-DB15BD556843C820",
|
||||
# iMac17,1": "Mac-65CE76090165799A",
|
||||
# iMac17,1": "Mac-B809C3757DA9BB8D",
|
||||
"iMac18,1": "Mac-4B682C642B45593E",
|
||||
"iMac18,2": "Mac-77F17D7DA9285301",
|
||||
"iMac18,3": "Mac-BE088AF8C5EB4FA2",
|
||||
"iMac19,1": "Mac-AA95B1DDAB278B95",
|
||||
"iMac19,2": "Mac-63001698E7A34814",
|
||||
"iMac20,1": "Mac-CFF7D910A743CAAF",
|
||||
"iMac20,2": "Mac-AF89B6D9451A490B",
|
||||
"iMacPro1,1": "Mac-7BA5B2D9E42DDD94",
|
||||
"MacPro1,1": "Mac-F4208DC8",
|
||||
"MacPro2,1": "Mac-F4208DA9",
|
||||
"MacPro3,1": "Mac-F42C88C8",
|
||||
"MacPro4,1": "Mac-F221BEC8",
|
||||
"MacPro5,1": "Mac-F221BEC8",
|
||||
"MacPro6,1": "Mac-F60DEB81FF30ACF6",
|
||||
"MacPro7,1": "Mac-27AD2F918AE68F61",
|
||||
"Xserve1,1": "Mac-F4208AC8",
|
||||
"Xserve2,1": "Mac-F42289C8",
|
||||
"Xserve3,1": "Mac-F223BEC8",
|
||||
}
|
||||
|
||||
target_type = {
|
||||
"ADP3,2": "J273",
|
||||
"MacBookAir10,1": "J313",
|
||||
|
||||
@@ -71,44 +71,12 @@ SupportedSMBIOS = [
|
||||
# Xserve
|
||||
"Xserve2,1",
|
||||
"Xserve3,1",
|
||||
"Dortania1,1",
|
||||
]
|
||||
|
||||
# CPU patches
|
||||
|
||||
MissingSSE42 = [
|
||||
"MacBook4,1",
|
||||
"MacBook5,1",
|
||||
"MacBook5,2",
|
||||
"MacBook6,1",
|
||||
"MacBook7,1",
|
||||
"MacBookAir2,1",
|
||||
"MacBookAir3,1",
|
||||
"MacBookAir3,2",
|
||||
"MacBookPro4,1",
|
||||
"MacBookPro5,1",
|
||||
"MacBookPro5,2",
|
||||
"MacBookPro5,3",
|
||||
"MacBookPro5,4",
|
||||
"MacBookPro5,5",
|
||||
"MacBookPro7,1",
|
||||
"Macmini3,1",
|
||||
"Macmini4,1",
|
||||
"iMac7,1",
|
||||
"iMac8,1",
|
||||
"iMac9,1",
|
||||
"iMac10,1",
|
||||
"MacPro3,1",
|
||||
"Xserve2,1",
|
||||
"Dortania1,1",
|
||||
]
|
||||
|
||||
SSEEmulator = ["MacPro3,1", "Xserve2,1", "Dortania1,1"]
|
||||
|
||||
DualSocket = ["MacPro3,1", "MacPro4,1", "MacPro5,1", "Xserve2,1", "Xserve3,1", "Dortania1,1"]
|
||||
|
||||
pciSSDT = ["MacBookPro6,1", "MacBookPro6,2", "iMac11,1", "iMac11,2", "iMac11,3", "Dortania1,1"]
|
||||
|
||||
# Ethernet patches
|
||||
|
||||
EthernetNvidia = [
|
||||
@@ -148,57 +116,6 @@ EthernetBroadcom = [
|
||||
"Dortania1,1",
|
||||
]
|
||||
|
||||
# Wifi patches
|
||||
|
||||
WifiAtheros = ["iMac10,1", "iMac11,1", "iMac11,2", "iMac11,3", "iMac12,1", "iMac12,2", "MacPro3,1", "MacPro4,1", "Dortania1,1"]
|
||||
|
||||
WifiBCM94328 = ["MacBook4,1", "MacBookAir2,1", "MacBookPro4,1", "iMac7,1", "iMac8,1", "Dortania1,1"]
|
||||
|
||||
WifiBCM94322 = [
|
||||
"MacBook5,1",
|
||||
"MacBook5,2",
|
||||
"MacBookAir3,1",
|
||||
"MacBookAir3,2",
|
||||
"MacBookPro5,1",
|
||||
"MacBookPro5,2",
|
||||
"MacBookPro5,3",
|
||||
"MacBookPro5,4",
|
||||
"MacBookPro5,5",
|
||||
"MacBookPro7,1",
|
||||
"Macmini3,1",
|
||||
"iMac9,1",
|
||||
"MacPro5,1",
|
||||
"Dortania1,1",
|
||||
]
|
||||
|
||||
WifiBCM94331 = [
|
||||
"MacBook6,1", # PciRoot(0x0)/Pci(0x15,0x0)/Pci(0x0,0x0)
|
||||
"MacBook7,1", # PciRoot(0x0)/Pci(0x15,0x0)/Pci(0x0,0x0)
|
||||
"MacBookAir4,1", # PciRoot(0x0)/Pci(0x1C,0x1)/Pci(0x0,0x0)
|
||||
"MacBookAir4,2", # PciRoot(0x0)/Pci(0x1C,0x1)/Pci(0x0,0x0)
|
||||
"MacBookAir5,1", # PciRoot(0x0)/Pci(0x1C,0x1)/Pci(0x0,0x0)
|
||||
"MacBookAir5,2", # PciRoot(0x0)/Pci(0x1C,0x1)/Pci(0x0,0x0)
|
||||
"MacBookPro6,1", # PciRoot(0x0)/Pci(0x1C,0x1)/Pci(0x0,0x0)
|
||||
"MacBookPro6,2", # PciRoot(0x0)/Pci(0x1C,0x1)/Pci(0x0,0x0)
|
||||
"MacBookPro8,1", # PciRoot(0x0)/Pci(0x1C,0x1)/Pci(0x0,0x0)
|
||||
"MacBookPro8,2", # PciRoot(0x0)/Pci(0x1C,0x1)/Pci(0x0,0x0)
|
||||
"MacBookPro8,3", # PciRoot(0x0)/Pci(0x1C,0x1)/Pci(0x0,0x0)
|
||||
"MacBookPro9,1", # PciRoot(0x0)/Pci(0x1C,0x1)/Pci(0x0,0x0)
|
||||
"MacBookPro9,2", # PciRoot(0x0)/Pci(0x1C,0x1)/Pci(0x0,0x0)
|
||||
"MacBookPro10,1", # PciRoot(0x0)/Pci(0x1C,0x1)/Pci(0x0,0x0)
|
||||
"MacBookPro10,2", # PciRoot(0x0)/Pci(0x1C,0x1)/Pci(0x0,0x0)
|
||||
"Macmini4,1", # PciRoot(0x0)/Pci(0x15,0x0)/Pci(0x0,0x0)
|
||||
"Macmini5,1", # PciRoot(0x0)/Pci(0x1C,0x1)/Pci(0x0,0x0)
|
||||
"Macmini5,2", # PciRoot(0x0)/Pci(0x1C,0x1)/Pci(0x0,0x0)
|
||||
"Macmini5,3", # PciRoot(0x0)/Pci(0x1C,0x1)/Pci(0x0,0x0)
|
||||
"Macmini6,1", # PciRoot(0x0)/Pci(0x1C,0x1)/Pci(0x0,0x0)
|
||||
"Macmini6,2", # PciRoot(0x0)/Pci(0x1C,0x1)/Pci(0x0,0x0)
|
||||
"iMac13,1", # PciRoot(0x0)/Pci(0x1C,0x3)/Pci(0x0,0x0)
|
||||
"iMac13,2", # PciRoot(0x0)/Pci(0x1C,0x3)/Pci(0x0,0x0)
|
||||
"iMac13,3", # PciRoot(0x0)/Pci(0x1C,0x3)/Pci(0x0,0x0)
|
||||
"Dortania1,1",
|
||||
]
|
||||
|
||||
# Audio
|
||||
|
||||
LegacyAudio = [
|
||||
@@ -389,150 +306,8 @@ LegacyBrightness = [
|
||||
"iMac9,1",
|
||||
]
|
||||
|
||||
LegacyHID = [
|
||||
"MacBook4,1",
|
||||
"MacBook5,1",
|
||||
"MacBook5,2",
|
||||
"MacBook6,1",
|
||||
"MacBook7,1",
|
||||
"MacBookAir2,1",
|
||||
"MacBookAir3,1",
|
||||
"MacBookPro4,1",
|
||||
"MacBookPro5,1",
|
||||
"MacBookPro5,2",
|
||||
"MacBookPro5,3",
|
||||
"MacBookPro5,4",
|
||||
"MacBookPro5,5",
|
||||
"MacBookPro7,1",
|
||||
"Macmini3,1",
|
||||
"Macmini4,1",
|
||||
"iMac7,1",
|
||||
"iMac8,1",
|
||||
"iMac9,1",
|
||||
"iMac10,1",
|
||||
"MacPro3,1",
|
||||
"Dortania1,1",
|
||||
]
|
||||
|
||||
NVMePatch = ["MacPro3,1", "MacPro4,1", "Xserve3,1", "Dortania1,1"]
|
||||
|
||||
XhciSupport = [
|
||||
"MacBookAir5,1",
|
||||
"MacBookAir5,2",
|
||||
"MacBookAir6,1",
|
||||
"MacBookAir6,2",
|
||||
"MacBookAir7,1",
|
||||
"MacBookAir7,2",
|
||||
"MacBookPro9,1",
|
||||
"MacBookPro9,2",
|
||||
"MacBookPro10,1",
|
||||
"MacBookPro10,2",
|
||||
"MacBookPro11,1",
|
||||
"MacBookPro11,2",
|
||||
"MacBookPro11,3",
|
||||
"MacBookPro11,4",
|
||||
"MacBookPro11,5",
|
||||
"MacBookPro12,1",
|
||||
"Macmini6,1",
|
||||
"Macmini6,2",
|
||||
"Macmini7,1",
|
||||
"iMac13,1",
|
||||
"iMac13,2",
|
||||
"iMac13,3",
|
||||
"iMac14,1",
|
||||
"iMac14,2",
|
||||
"iMac14,3",
|
||||
"iMac15,1",
|
||||
"iMac16,1",
|
||||
"iMac16,2",
|
||||
"MacPro6,1",
|
||||
"Dortania1,1",
|
||||
]
|
||||
|
||||
FeatureUnlockSupport = [
|
||||
"MacBook4,1",
|
||||
"MacBook5,1",
|
||||
"MacBook5,2",
|
||||
"MacBook6,1",
|
||||
"MacBook7,1",
|
||||
"MacBook8,1",
|
||||
"MacBookAir2,1",
|
||||
"MacBookAir3,1",
|
||||
"MacBookAir3,2",
|
||||
"MacBookAir4,1",
|
||||
"MacBookAir4,2",
|
||||
"MacBookAir5,1",
|
||||
"MacBookAir5,2",
|
||||
"MacBookAir6,1",
|
||||
"MacBookAir6,2",
|
||||
"MacBookAir7,1",
|
||||
"MacBookAir7,2",
|
||||
"MacBookPro4,1",
|
||||
"MacBookPro5,1",
|
||||
"MacBookPro5,2",
|
||||
"MacBookPro5,3",
|
||||
"MacBookPro5,4",
|
||||
"MacBookPro5,5",
|
||||
"MacBookPro6,1",
|
||||
"MacBookPro6,2",
|
||||
"MacBookPro7,1",
|
||||
"MacBookPro8,1",
|
||||
"MacBookPro8,2",
|
||||
"MacBookPro8,3",
|
||||
"MacBookPro9,1",
|
||||
"MacBookPro9,2",
|
||||
"MacBookPro10,1",
|
||||
"MacBookPro10,2",
|
||||
"MacBookPro11,1",
|
||||
"MacBookPro11,2",
|
||||
"MacBookPro11,3",
|
||||
"MacBookPro11,4",
|
||||
"MacBookPro11,5",
|
||||
"MacBookPro12,1",
|
||||
"MacBookPro13,1",
|
||||
"MacBookPro13,2",
|
||||
"MacBookPro13,3",
|
||||
"MacBookPro14,1",
|
||||
"MacBookPro14,2",
|
||||
"MacBookPro14,3",
|
||||
"Macmini3,1",
|
||||
"Macmini4,1",
|
||||
"Macmini5,1",
|
||||
"Macmini5,2",
|
||||
"Macmini5,3",
|
||||
"Macmini6,1",
|
||||
"Macmini6,2",
|
||||
"Macmini7,1",
|
||||
"Macmini8,1",
|
||||
"iMac7,1",
|
||||
"iMac8,1",
|
||||
"iMac9,1",
|
||||
"iMac10,1",
|
||||
"iMac11,1",
|
||||
"iMac11,2",
|
||||
"iMac11,3",
|
||||
"iMac12,1",
|
||||
"iMac12,2",
|
||||
"iMac13,1",
|
||||
"iMac13,2",
|
||||
"iMac13,3",
|
||||
"iMac14,1",
|
||||
"iMac14,2",
|
||||
"iMac14,3",
|
||||
"iMac15,1",
|
||||
"iMac16,1",
|
||||
"iMac16,2",
|
||||
"iMac17,1",
|
||||
"iMac18,1",
|
||||
"iMac18,2",
|
||||
"iMac18,3",
|
||||
"MacPro3,1",
|
||||
"MacPro4,1",
|
||||
"MacPro5,1",
|
||||
"MacPro6,1",
|
||||
"Dortania1,1",
|
||||
]
|
||||
|
||||
DualGPUPatch = [
|
||||
"MacBookPro5,1",
|
||||
"MacBookPro5,2",
|
||||
@@ -653,15 +428,6 @@ iMac_iGPU = ["iMac13,1", "iMac13,3", "iMac14,1", "iMac14,4"]
|
||||
# Mac Pro and Xserve
|
||||
MacPro = ["MacPro3,1", "MacPro4,1", "MacPro5,1", "Xserve2,1", "Xserve3,1", "Dortania1,1"]
|
||||
|
||||
UGAtoGOP = [
|
||||
"MacBook4,1",
|
||||
"MacBookPro4,1",
|
||||
"iMac7,1",
|
||||
"iMac8,1",
|
||||
"MacPro3,1",
|
||||
"Xserve2,1",
|
||||
]
|
||||
|
||||
SATAPatch = [
|
||||
"MacBook4,1",
|
||||
"MacBook5,1",
|
||||
@@ -709,82 +475,6 @@ SATAPatch = [
|
||||
"Dortania1,1",
|
||||
]
|
||||
|
||||
NoAPFSsupport = [
|
||||
"MacBook4,1",
|
||||
"MacBook5,1",
|
||||
"MacBook5,2",
|
||||
"MacBookAir2,1",
|
||||
"MacBookPro4,1",
|
||||
"MacBookPro5,1",
|
||||
"MacBookPro5,2",
|
||||
"MacBookPro5,3",
|
||||
"MacBookPro5,4",
|
||||
"MacBookPro5,5",
|
||||
"Macmini3,1",
|
||||
"iMac7,1",
|
||||
"iMac8,1",
|
||||
"iMac9,1",
|
||||
"MacPro3,1",
|
||||
"MacPro4,1",
|
||||
"Xserve2,1",
|
||||
"Xserve3,1",
|
||||
"Dortania1,1",
|
||||
]
|
||||
|
||||
NoExFat = [
|
||||
"MacBook4,1",
|
||||
"MacBook5,1",
|
||||
"MacBook5,2",
|
||||
"MacBook6,1",
|
||||
"MacBook7,1",
|
||||
"MacBookAir2,1",
|
||||
"MacBookPro4,1",
|
||||
"MacBookPro5,1",
|
||||
"MacBookPro5,2",
|
||||
"MacBookPro5,3",
|
||||
"MacBookPro5,4",
|
||||
"MacBookPro5,5",
|
||||
"MacBookPro6,1",
|
||||
"MacBookPro6,2",
|
||||
"MacBookPro7,1",
|
||||
"Macmini3,1",
|
||||
"iMac7,1",
|
||||
"iMac8,1",
|
||||
"iMac9,1",
|
||||
"iMac10,1",
|
||||
"iMac11,1",
|
||||
"MacPro3,1",
|
||||
"MacPro4,1",
|
||||
"MacPro5,1",
|
||||
"Xserve2,1",
|
||||
"Xserve3,1",
|
||||
"Dortania1,1",
|
||||
]
|
||||
|
||||
windows_audio = [
|
||||
"MacBookAir4,1",
|
||||
"MacBookAir4,2",
|
||||
"MacBookAir5,1",
|
||||
"MacBookAir5,2",
|
||||
"MacBookPro8,1",
|
||||
"MacBookPro8,2",
|
||||
"MacBookPro8,3",
|
||||
"MacBookPro9,1",
|
||||
"MacBookPro9,2",
|
||||
"MacBookPro10,1",
|
||||
"MacBookPro10,2",
|
||||
"Macmini5,1",
|
||||
"Macmini5,2",
|
||||
"Macmini5,3",
|
||||
"Macmini6,1",
|
||||
"Macmini6,2",
|
||||
"iMac12,1",
|
||||
"iMac12,2",
|
||||
"iMac13,1",
|
||||
"iMac13,2",
|
||||
"iMac13,3",
|
||||
]
|
||||
|
||||
NoAGPMSupport = ["MacBook4,1", "MacBookPro4,1", "iMac7,1", "iMac8,1", "MacPro3,1", "Xserve2,1", "Dortania1,1"]
|
||||
|
||||
AGDPSupport = [
|
||||
@@ -819,39 +509,6 @@ NoFireWireSupport = [
|
||||
"MacBookAir3,2",
|
||||
]
|
||||
|
||||
PCIRaceCondition = [
|
||||
"MacBook4,1",
|
||||
"MacBook5,1",
|
||||
"MacBook5,2",
|
||||
"MacBook6,1",
|
||||
"MacBook7,1",
|
||||
"MacBookAir2,1",
|
||||
"MacBookAir3,1",
|
||||
"MacBookAir3,2",
|
||||
"MacBookPro4,1",
|
||||
"MacBookPro5,1",
|
||||
"MacBookPro5,2",
|
||||
"MacBookPro5,3",
|
||||
"MacBookPro5,4",
|
||||
"MacBookPro5,5",
|
||||
"MacBookPro6,1",
|
||||
"MacBookPro6,2",
|
||||
"MacBookPro7,1",
|
||||
"Macmini3,1",
|
||||
"Macmini4,1",
|
||||
"iMac7,1",
|
||||
"iMac8,1",
|
||||
"iMac9,1",
|
||||
"iMac10,1",
|
||||
"iMac11,1",
|
||||
"iMac11,2",
|
||||
"iMac11,3",
|
||||
"MacPro3,1",
|
||||
"MacPro4,1",
|
||||
"MacPro5,1",
|
||||
"Dortania1,1",
|
||||
]
|
||||
|
||||
# Thunderbolt 1 Macs
|
||||
Thunderbolt_1 = [
|
||||
"MacBookAir4,1",
|
||||
@@ -973,96 +630,4 @@ Missing_USB_Map = [
|
||||
"MacPro4,1",
|
||||
"XServe2,1",
|
||||
"XServe3,1",
|
||||
]
|
||||
|
||||
dGPU_switch = [
|
||||
# Allows iGPU and dGPU switching in Windows
|
||||
"MacBookPro8,2",
|
||||
"MacBookPro8,3",
|
||||
"MacBookPro9,1",
|
||||
"MacBookPro10,1",
|
||||
"MacBookPro11,3",
|
||||
"MacBookPro11,5",
|
||||
"MacBookPro13,3",
|
||||
"MacBookPro14,3",
|
||||
"MacBookPro15,1",
|
||||
"MacBookPro15,3",
|
||||
"MacBookPro16,1",
|
||||
"MacBookPro16,4",
|
||||
]
|
||||
|
||||
Bluetooth_BRCM2046 = [
|
||||
"MacBook4,1",
|
||||
"MacBook5,1",
|
||||
"MacBook5,2",
|
||||
"MacBookAir2,1",
|
||||
"MacBookAir3,1",
|
||||
"MacBookAir3,2",
|
||||
"MacBookPro4,1",
|
||||
"MacBookPro5,1",
|
||||
"MacBookPro5,2",
|
||||
"MacBookPro5,3",
|
||||
"MacBookPro5,4",
|
||||
"MacBookPro5,5",
|
||||
"MacBookPro7,1",
|
||||
"Macmini3,1",
|
||||
"iMac8,1",
|
||||
"iMac9,1",
|
||||
"iMac10,1",
|
||||
"iMac11,1",
|
||||
"iMac11,2",
|
||||
"iMac11,3",
|
||||
"iMac12,1",
|
||||
"iMac12,2",
|
||||
"MacPro4,1",
|
||||
"MacPro5,1",
|
||||
]
|
||||
|
||||
Bluetooth_BRCM2070 = [
|
||||
"MacBook6,1",
|
||||
"MacBook7,1",
|
||||
"MacBookAir4,1",
|
||||
"MacBookAir4,2",
|
||||
"MacBookPro6,1",
|
||||
"MacBookPro6,2",
|
||||
"MacBookPro8,1",
|
||||
"MacBookPro8,2",
|
||||
"MacBookPro8,3",
|
||||
"Macmini4,1",
|
||||
"Macmini5,1",
|
||||
"Macmini5,2",
|
||||
"Macmini5,3",
|
||||
]
|
||||
|
||||
Bluetooth_BRCM20702_v1 = [
|
||||
"MacBookAir5,1",
|
||||
"MacBookAir5,2",
|
||||
"MacBookPro9,1",
|
||||
"MacBookPro9,2",
|
||||
"MacBookPro10,1",
|
||||
"MacBookPro10,2",
|
||||
"Macmini6,1",
|
||||
"Macmini6,2",
|
||||
"iMac13,1",
|
||||
"iMac13,2",
|
||||
"iMac13,3",
|
||||
]
|
||||
|
||||
T2_Models = [
|
||||
"MacBookAir8,1",
|
||||
"MacBookAir8,2",
|
||||
"MacBookAir9,1",
|
||||
"MacBookPro15,1",
|
||||
"MacBookPro15,2",
|
||||
"MacBookPro15,3",
|
||||
"MacBookPro15,4",
|
||||
"MacBookPro16,1",
|
||||
"MacBookPro16,2",
|
||||
"MacBookPro16,3",
|
||||
"MacBookPro16,4",
|
||||
"Macmini8,1",
|
||||
"iMac20,1",
|
||||
"iMac20,2",
|
||||
"iMacPro1,1",
|
||||
"MacPro7,1",
|
||||
]
|
||||
@@ -1,972 +0,0 @@
|
||||
# Array of Device IDs for different devices
|
||||
|
||||
|
||||
class nvidia_ids:
|
||||
# Courteous of envytools as well as Macrumors:
|
||||
# https://envytools.readthedocs.io/en/latest/hw/pciid.html
|
||||
# https://forums.macrumors.com/threads/2011-imac-graphics-card-upgrade.1596614/
|
||||
tesla_ids = [
|
||||
# G80
|
||||
0x0190, # G80 [GeForce 8800 GTS / 8800 GTX]
|
||||
0x0191, # G80 [GeForce 8800 GTX]
|
||||
0x0193, # G80 [GeForce 8800 GTS]
|
||||
0x0194, # G80 [GeForce 8800 Ultra]
|
||||
0x019E, # G80GL [Quadro FX 4600]
|
||||
0x019D, # G80GL [Quadro FX 5600]
|
||||
# G84
|
||||
0x0400, # G84 [8600 GTS]
|
||||
0x0401, # G84 [8600 GT]
|
||||
0x0402, # G84 [8600 GT]
|
||||
0x0403, # G84 [8600 GS]
|
||||
0x0404, # G84 [8400 GS]
|
||||
0x0405, # G84 [9500M GS]
|
||||
0x0406, # G84 [8300 GS]
|
||||
0x0407, # G84 [8600M GT]
|
||||
0x0408, # G84 [9650M GS]
|
||||
0x0409, # G84 [8700M GT]
|
||||
0x040A, # G84 [FX 370]
|
||||
0x040B, # G84 [NVS 320M]
|
||||
0x040C, # G84 [FX 570M]
|
||||
0x040D, # G84 [FX 1600M]
|
||||
0x040E, # G84 [FX 570]
|
||||
0x040F, # G84 [FX 1700]
|
||||
# G86
|
||||
0x0420, # G86 [8400 SE]
|
||||
0x0421, # G86 [8500 GT]
|
||||
0x0422, # G86 [8400 GS]
|
||||
0x0423, # G86 [8300 GS]
|
||||
0x0424, # G86 [8400 GS]
|
||||
0x0425, # G86 [8600M GS]
|
||||
0x0426, # G86 [8400M GT]
|
||||
0x0427, # G86 [8400M GS]
|
||||
0x0428, # G86 [8400M G]
|
||||
0x0429, # G86 [NVS 140M]
|
||||
0x042A, # G86 [NVS 130M]
|
||||
0x042B, # G86 [NVS 135M]
|
||||
0x042C, # G86 [9400 GT]
|
||||
0x042D, # G86 [FX 360M]
|
||||
0x042E, # G86 [9300M G]
|
||||
0x042F, # G86 [NVS 290]
|
||||
# G92
|
||||
0x0410, # G92 [GT 330]
|
||||
0x0600, # G92 [8800 GTS 512]
|
||||
0x0601, # G92 [9800 GT]
|
||||
0x0602, # G92 [8800 GT]
|
||||
0x0603, # G92 [GT 230]
|
||||
0x0604, # G92 [9800 GX2]
|
||||
0x0605, # G92 [9800 GT]
|
||||
0x0606, # G92 [8800 GS]
|
||||
0x0607, # G92 [GTS 240]
|
||||
0x0608, # G92 [9800M GTX]
|
||||
0x0609, # G92 [8800M GTS]
|
||||
0x060A, # G92 [GTX 280M]
|
||||
0x060B, # G92 [9800M GT]
|
||||
0x060C, # G92 [8800M GTX]
|
||||
0x060F, # G92 [GTX 285M]
|
||||
0x0610, # G92 [9600 GSO]
|
||||
0x0611, # G92 [8800 GT]
|
||||
0x0612, # G92 [9800 GTX/9800 GTX+]
|
||||
0x0613, # G92 [9800 GTX+]
|
||||
0x0614, # G92 [9800 GT]
|
||||
0x0615, # G92 [GTS 250]
|
||||
0x0617, # G92 [9800M GTX]
|
||||
0x0618, # G92 [GTX 260M]
|
||||
0x0619, # G92 [FX 4700 X2]
|
||||
0x061A, # G92 [FX 3700]
|
||||
0x061B, # G92 [VX 200]
|
||||
0x061C, # G92 [FX 3600M]
|
||||
0x061D, # G92 [FX 2800M]
|
||||
0x061E, # G92 [FX 3700M]
|
||||
0x061F, # G92 [FX 3800M]
|
||||
# G94
|
||||
0x0621, # G94 [GT 230]
|
||||
0x0622, # G94 [9600 GT]
|
||||
0x0623, # G94 [9600 GS]
|
||||
0x0624, # G94 [9600 GT Green Edition]
|
||||
0x0625, # G94 [9600 GSO 512]
|
||||
0x0626, # G94 [GT 130]
|
||||
0x0627, # G94 [GT 140]
|
||||
0x0628, # G94 [9800M GTS]
|
||||
0x062A, # G94 [9700M GTS]
|
||||
0x062B, # G94 [9800M GS]
|
||||
0x062C, # G94 [9800M GTS ]
|
||||
0x062D, # G94 [9600 GT]
|
||||
0x062E, # G94 [9600 GT]
|
||||
0x062F, # G94 [9800 S]
|
||||
0x0631, # G94 [GTS 160M]
|
||||
0x0635, # G94 [9600 GSO]
|
||||
0x0637, # G94 [9600 GT]
|
||||
0x0638, # G94 [FX 1800]
|
||||
0x063A, # G94 [FX 2700M]
|
||||
# G96
|
||||
0x0640, # G96 [9500 GT]
|
||||
0x0641, # G96 [9400 GT]
|
||||
0x0643, # G96 [9500 GT]
|
||||
0x0644, # G96 [9500 GS]
|
||||
0x0645, # G96 [9500 GS]
|
||||
0x0646, # G96 [GT 120]
|
||||
0x0647, # G96 [9600M GT]
|
||||
0x0648, # G96 [9600M GS]
|
||||
0x0649, # G96 [9600M GT]
|
||||
0x064A, # G96 [9700M GT]
|
||||
0x064B, # G96 [9500M G]
|
||||
0x064C, # G96 [9650M GT]
|
||||
0x0651, # G96 [G 110M]
|
||||
0x0652, # G96 [GT 130M]
|
||||
0x0653, # G96 [GT 120M]
|
||||
0x0654, # G96 [GT 220M]
|
||||
0x0655, # G96 [GT 120]
|
||||
0x0656, # G96 [GT 120 ]
|
||||
0x0658, # G96 [FX 380]
|
||||
0x0659, # G96 [FX 580]
|
||||
0x065A, # G96 [FX 1700M]
|
||||
0x065B, # G96 [9400 GT]
|
||||
0x065C, # G96 [FX 770M]
|
||||
0x065F, # G96 [G210]
|
||||
# G98
|
||||
0x06E0, # G98 [9300 GE]
|
||||
0x06E1, # G98 [9300 GS]
|
||||
0x06E2, # G98 [8400]
|
||||
0x06E3, # G98 [8400 SE]
|
||||
0x06E4, # G98 [8400 GS]
|
||||
0x06E5, # G98M [9300M GS]
|
||||
0x06E6, # G98 [G100]
|
||||
0x06E7, # G98 [9300 SE]
|
||||
0x06E8, # G98 [9200M GS]
|
||||
0x06E9, # G98 [9300M GS]
|
||||
0x06EA, # G98 [NVS 150M]
|
||||
0x06EB, # G98 [NVS 160M]
|
||||
0x06EC, # G98 [G 105M]
|
||||
0x06ED, # G98 [9600 GT / 9800 GT]
|
||||
0x06EF, # G98 [G 103M]
|
||||
0x06F1, # G98 [G105M]
|
||||
0x06F8, # G98 [NVS 420]
|
||||
0x06F9, # G98 [FX 370 LP]
|
||||
0x06FA, # G98 [NVS 450]
|
||||
0x06FB, # G98 [FX 370M]
|
||||
0x06FD, # G98 [NVS 295]
|
||||
0x06FF, # G98 [HICx16]
|
||||
# GT200
|
||||
0x05E0, # GT200 [GTX 295]
|
||||
0x05E1, # GT200 [GTX 280]
|
||||
0x05E2, # GT200 [GTX 260]
|
||||
0x05E3, # GT200 [GTX 285]
|
||||
0x05E6, # GT200 [GTX 275]
|
||||
0x05E7, # GT200 [C1060]
|
||||
0x05E9, # GT200 [CX]
|
||||
0x05EA, # GT200 [GTX 260]
|
||||
0x05EB, # GT200 [GTX 295]
|
||||
0x05ED, # GT200 [FX 5800]
|
||||
0x05EE, # GT200 [FX 4800]
|
||||
0x05EF, # GT200 [FX 3800]
|
||||
0x05FD, # GT200GL [Quadro FX 5800]
|
||||
0x05FE, # GT200GL [Quadro FX 4800]
|
||||
0x05FF, # GT200GL [Quadro FX 3800]
|
||||
# MCP77 GPU
|
||||
0x0840, # MCP77 GPU [8200M]
|
||||
0x0844, # MCP77 GPU [9100M G]
|
||||
0x0845, # MCP77 GPU [8200M G]
|
||||
0x0846, # MCP77 GPU [9200]
|
||||
0x0847, # MCP77 GPU [9100]
|
||||
0x0848, # MCP77 GPU [8300]
|
||||
0x0849, # MCP77 GPU [8200]
|
||||
0x084A, # MCP77 GPU [730A]
|
||||
0x084B, # MCP77 GPU [9200]
|
||||
0x084C, # MCP77 GPU [980A/780A SLI]
|
||||
0x084D, # MCP77 GPU [750A SLI]
|
||||
0x084F, # MCP77 GPU [8100 / 720A]
|
||||
# MCP79 GPU
|
||||
0x0860, # MCP79 GPU [9400]
|
||||
0x0861, # MCP79 GPU [9400]
|
||||
0x0862, # MCP79 GPU [9400M G]
|
||||
0x0863, # MCP79 GPU [9400M]
|
||||
0x0864, # MCP79 GPU [9300]
|
||||
0x0865, # MCP79 GPU [ION]
|
||||
0x0866, # MCP79 GPU [9400M G]
|
||||
0x0867, # MCP79 GPU [9400]
|
||||
0x0868, # MCP79 GPU [760i SLI]
|
||||
0x0869, # MCP79 GPU [9400]
|
||||
0x086A, # MCP79 GPU [9400]
|
||||
0x086C, # MCP79 GPU [9300 / 730i]
|
||||
0x086D, # MCP79 GPU [9200]
|
||||
0x086E, # MCP79 GPU [9100M G]
|
||||
0x086F, # MCP79 GPU [8200M G]
|
||||
0x0870, # MCP79 GPU [9400M]
|
||||
0x0871, # MCP79 GPU [9200]
|
||||
0x0872, # MCP79 GPU [G102M]
|
||||
0x0873, # MCP79 GPU [G102M]
|
||||
0x0874, # MCP79 GPU [ION]
|
||||
0x0876, # MCP79 GPU [ION]
|
||||
0x087A, # MCP79 GPU [9400]
|
||||
0x087D, # MCP79 GPU [ION]
|
||||
0x087E, # MCP79 GPU [ION LE]
|
||||
0x087F, # MCP79 GPU [ION LE]
|
||||
# GT215
|
||||
0x0CA0, # GT215 [GT 330]
|
||||
0x0CA2, # GT215 [GT 320]
|
||||
0x0CA3, # GT215 [GT 240]
|
||||
0x0CA4, # GT215 [GT 340]
|
||||
0x0CA5, # GT215 [GT 220]
|
||||
0x0CA7, # GT215 [GT 330]
|
||||
0x0CA9, # GT215 [GTS 250M]
|
||||
0x0CAC, # GT215 [GT 220]
|
||||
0x0CAF, # GT215 [GT 335M]
|
||||
0x0CB0, # GT215 [GTS 350M]
|
||||
0x0CB1, # GT215 [GTS 360M]
|
||||
0x0CBC, # GT215 [FX 1800M]
|
||||
# GT216
|
||||
0x0A20, # GT216 [GT 220]
|
||||
0x0A22, # GT216 [315]
|
||||
0x0A23, # GT216 [210]
|
||||
0x0A26, # GT216 [405]
|
||||
0x0A27, # GT216 [405]
|
||||
0x0A28, # GT216 [GT 230M]
|
||||
0x0A29, # GT216 [GT 330M]
|
||||
0x0A2A, # GT216 [GT 230M]
|
||||
0x0A2B, # GT216 [GT 330M]
|
||||
0x0A2C, # GT216 [NVS 5100M]
|
||||
0x0A2D, # GT216 [GT 320M]
|
||||
0x0A32, # GT216 [GT 415]
|
||||
0x0A34, # GT216 [GT 240M]
|
||||
0x0A35, # GT216 [GT 325M]
|
||||
0x0A38, # GT216 [400]
|
||||
0x0A3C, # GT216 [FX 880M]
|
||||
# GT218
|
||||
0x0A60, # GT218 [G210]
|
||||
0x0A62, # GT218 [205]
|
||||
0x0A63, # GT218 [310]
|
||||
0x0A64, # GT218 [ION]
|
||||
0x0A65, # GT218 [210]
|
||||
0x0A66, # GT218 [310]
|
||||
0x0A67, # GT218 [315]
|
||||
0x0A68, # GT218 [G105M]
|
||||
0x0A69, # GT218 [G105M]
|
||||
0x0A6A, # GT218 [NVS 2100M]
|
||||
0x0A6C, # GT218 [NVS 3100M]
|
||||
0x0A6E, # GT218 [305M]
|
||||
0x0A6F, # GT218 [ION]
|
||||
0x0A70, # GT218 [310M]
|
||||
0x0A71, # GT218 [305M]
|
||||
0x0A72, # GT218 [310M]
|
||||
0x0A73, # GT218 [305M]
|
||||
0x0A74, # GT218 [G210M]
|
||||
0x0A75, # GT218 [310M]
|
||||
0x0A76, # GT218 [ION]
|
||||
0x0A78, # GT218 [FX 380 LP]
|
||||
0x0A7A, # GT218 [315M]
|
||||
0x0A7C, # GT218 [FX 380M]
|
||||
0x10C0, # GT218 [9300 GS]
|
||||
0x10C3, # GT218 [8400GS]
|
||||
0x10C5, # GT218 [405]
|
||||
0x10D8, # GT218 [NVS 300]
|
||||
# MCP89 GPU
|
||||
0x08A0, # MCP89 GPU [320M]
|
||||
0x08A2, # MCP89 GPU [320M]
|
||||
0x08A3, # MCP89 GPU [320M]
|
||||
0x08A4, # MCP89 GPU [320M]
|
||||
]
|
||||
|
||||
fermi_ids = [
|
||||
# GF100
|
||||
0x06C0, # GF100 [GTX 480]
|
||||
0x06C4, # GF100 [GTX 465]
|
||||
0x06CA, # GF100 [GTX 480M]
|
||||
0x06CB, # GF100 [GTX 480]
|
||||
0x06CD, # GF100 [GTX 470]
|
||||
0x06D1, # GF100 [C2050 / C2070]
|
||||
0x06D2, # GF100 [M2070]
|
||||
0x06D8, # GF100 [6000]
|
||||
0x06D9, # GF100 [5000]
|
||||
0x06DA, # GF100 [5000M]
|
||||
0x06DC, # GF100 [6000]
|
||||
0x06DD, # GF100 [4000]
|
||||
0x06DE, # GF100 [T20]
|
||||
0x06DF, # GF100 [M2070-Q]
|
||||
# GF104
|
||||
0x0E22, # GF104 [GTX 460]
|
||||
0x0E23, # GF104 [GTX 460 SE]
|
||||
0x0E24, # GF104 [GTX 460 OEM]
|
||||
0x0E30, # GF104 [GTX 470M]
|
||||
0x0E31, # GF104 [GTX 485M]
|
||||
0x0E3A, # GF104 [3000M]
|
||||
0x0E3B, # GF104 [4000M]
|
||||
# GF114
|
||||
0x1200, # GF114 [GTX 560 Ti]
|
||||
0x1201, # GF114 [GTX 560]
|
||||
0x1202, # GF114 [GTX 560 Ti OEM]
|
||||
0x1203, # GF114 [GTX 460 SE v2]
|
||||
0x1205, # GF114 [GTX 460 v2]
|
||||
0x1206, # GF114 [GTX 555]
|
||||
0x1207, # GF114 [GT 645 OEM]
|
||||
0x1208, # GF114 [GTX 560 SE]
|
||||
0x1210, # GF114 [GTX 570M]
|
||||
0x1211, # GF114 [GTX 580M]
|
||||
0x1212, # GF114 [GTX 675M]
|
||||
0x1213, # GF114 [GTX 670M]
|
||||
# GF106
|
||||
0x0DC0, # GF106 [GT 440]
|
||||
0x0DC4, # GF106 [GTS 450]
|
||||
0x0DC5, # GF106 [GTS 450]
|
||||
0x0DC6, # GF106 [GTS 450]
|
||||
0x0DCD, # GF106 [GT 555M]
|
||||
0x0DCE, # GF106 [GT 555M]
|
||||
0x0DD1, # GF106 [GTX 460M]
|
||||
0x0DD2, # GF106 [GT 445M]
|
||||
0x0DD3, # GF106 [GT 435M]
|
||||
0x0DD6, # GF106 [GT 550M]
|
||||
0x0DD8, # GF106 [2000]
|
||||
0x0DDA, # GF106 [2000M]
|
||||
# GF116
|
||||
0x1241, # GF116 [GT 545 OEM]
|
||||
0x1243, # GF116 [GT 545]
|
||||
0x1244, # GF116 [GTX 550 Ti]
|
||||
0x1245, # GF116 [GTS 450 Rev. 2]
|
||||
0x1246, # GF116 [GT 550M]
|
||||
0x1247, # GF116 [GT 635M]
|
||||
0x1248, # GF116 [GT 555M]
|
||||
0x1249, # GF116 [GTS 450 Rev. 3]
|
||||
0x124B, # GF116 [GT 640 OEM]
|
||||
0x124D, # GF116 [GT 555M]
|
||||
0x1251, # GF116 [GTX 560M]
|
||||
# GF108
|
||||
0x0DE0, # GF108 [GT 440]
|
||||
0x0DE1, # GF108 [GT 430]
|
||||
0x0DE2, # GF108 [GT 420]
|
||||
0x0DE3, # GF108 [GT 635M]
|
||||
0x0DE4, # GF108 [GT 520]
|
||||
0x0DE5, # GF108 [GT 530]
|
||||
0x0DE8, # GF108 [GT 620M]
|
||||
0x0DE9, # GF108 [GT 630M]
|
||||
0x0DEA, # GF108 [610M]
|
||||
0x0DEB, # GF108 [GT 555M]
|
||||
0x0DEC, # GF108 [GT 525M]
|
||||
0x0DED, # GF108 [GT 520M]
|
||||
0x0DEE, # GF108 [GT 415M]
|
||||
0x0DEF, # GF108 [NVS 5400M]
|
||||
0x0DF0, # GF108 [GT 425M]
|
||||
0x0DF1, # GF108 [GT 420M]
|
||||
0x0DF2, # GF108 [GT 435M]
|
||||
0x0DF3, # GF108 [GT 420M]
|
||||
0x0DF4, # GF108 [GT 540M]
|
||||
0x0DF5, # GF108 [GT 525M]
|
||||
0x0DF6, # GF108 [GT 550M]
|
||||
0x0DF7, # GF108 [GT 520M]
|
||||
0x0DF8, # GF108 [600]
|
||||
0x0DF9, # GF108 [500M]
|
||||
0x0DFA, # GF108 [1000M]
|
||||
0x0DFC, # GF108 [NVS 5200M]
|
||||
0x0F00, # GF108 [GT 630]
|
||||
0x0F01, # GF108 [GT 620]
|
||||
0x0F02, # GF108 [GT 730]
|
||||
# GF110
|
||||
0x1080, # GF110 [GTX 580]
|
||||
0x1081, # GF110 [GTX 570]
|
||||
0x1082, # GF110 [GTX 560 Ti]
|
||||
0x1084, # GF110 [GTX 560]
|
||||
0x1086, # GF110 [GTX 570]
|
||||
0x1087, # GF110 [GTX 560 Ti]
|
||||
0x1088, # GF110 [GTX 590]
|
||||
0x1089, # GF110 [GTX 580]
|
||||
0x108B, # GF110 [GTX 580]
|
||||
0x1091, # GF110 [M2090]
|
||||
0x1096, # GF110GL [Tesla C2050 / C2075]
|
||||
0x109A, # GF110 [5010M]
|
||||
0x109B, # GF110 [7000]
|
||||
# GF119
|
||||
0x1040, # GF119 [GT 520]
|
||||
0x1042, # GF119 [510]
|
||||
0x1048, # GF119 [605]
|
||||
0x1049, # GF119 [GT 620]
|
||||
0x104A, # GF119 [GT 610]
|
||||
0x104B, # GF119 [GT 625 OEM]
|
||||
0x104C, # GF119 [GT 705]
|
||||
0x1050, # GF119 [GT 520M]
|
||||
0x1051, # GF119 [GT 520MX]
|
||||
0x1052, # GF119 [GT 520M]
|
||||
0x1054, # GF119 [410M]
|
||||
0x1055, # GF119 [410M]
|
||||
0x1056, # GF119 [NVS 4200M]
|
||||
0x1057, # GF119 [NVS 4200M]
|
||||
0x1058, # GF119 [610M]
|
||||
0x1059, # GF119 [610M]
|
||||
0x105A, # GF119 [610M]
|
||||
0x105B, # GF119M [705M]
|
||||
0x107C, # GF119 [NVS 315]
|
||||
0x107D, # GF119 [NVS 310]
|
||||
# GF117
|
||||
0x1140, # GF117 [GT 620M]
|
||||
]
|
||||
|
||||
kepler_ids = [
|
||||
# GK104
|
||||
0x1180, # GK104 [GTX 680]
|
||||
0x1183, # GK104 [GTX 660 Ti]
|
||||
0x1184, # GK104 [GTX 770]
|
||||
0x1185, # GK104 [GTX 660]
|
||||
0x1186, # GK104 [GTX 660 Ti]
|
||||
0x1187, # GK104 [GTX 760]
|
||||
0x1188, # GK104 [GTX 690]
|
||||
0x1189, # GK104 [GTX 670]
|
||||
0x118E, # GK104 [GTX 760 OEM]
|
||||
0x118F, # GK104GL [Tesla K10]
|
||||
0x1198, # GTX 880M
|
||||
0x1199, # GK104 [GTX 870M]
|
||||
0x119A, # GTX 860M
|
||||
0x119D, # GK104M [GTX 775M Mac Edition]
|
||||
0x119E, # GTX 780M
|
||||
0x119F, # GK104 [GTX 780M]
|
||||
0x11A0, # GK104 [GTX 680M]
|
||||
0x11A1, # GK104 [GTX 670MX]
|
||||
0x11A2, # GK104 [GTX 675MX]
|
||||
0x11A3, # GK104 [GTX 680MX]
|
||||
0x11A7, # GK104 [GTX 675MX]
|
||||
0x11A9, # GTX 870M
|
||||
0x11B4, # GK104GL [Quadro K4200]
|
||||
0x11B6, # Quadro K3100M
|
||||
0x11B7, # Quadro K4100M
|
||||
0x11B8, # Quadro K5100M
|
||||
0x11BA, # GK104 [K5000]
|
||||
0x11BC, # GK104 [K5000M]
|
||||
0x11BD, # GK104 [K4000M]
|
||||
0x11BE, # GK104 [K3000M]
|
||||
0x11BF, # GK104 [GRID K2]
|
||||
# GK106
|
||||
0x11C0, # GK106 [GTX 660]
|
||||
0x11C2, # GK106 [GTX 650 Ti BOOST]
|
||||
0x11C6, # GK106 [GTX 650 Ti]
|
||||
0x11E0, # GK106 [GTX 770M]
|
||||
0x11E1, # GTX 765M
|
||||
0x11E2, # GTX 765M
|
||||
0x11FA, # GK106 [K4000]
|
||||
0x11FC, # Quadro K2100M
|
||||
# GK107
|
||||
0x0FC0, # GK107 [GT 640]
|
||||
0x0FC1, # GK107 [GT 640]
|
||||
0x0FC2, # GK107 [GT 630]
|
||||
0x0FC6, # GK107 [GTX 650]
|
||||
0x0FC8, # GK107 [GT 740]
|
||||
0x0FCD, # GK107M [GT 755M]
|
||||
0x0FD1, # GK107 [GT 650M]
|
||||
0x0FD2, # GK107 [GT 640M]
|
||||
0x0FD3, # GK107 [GT 640M LE]
|
||||
0x0FD4, # GK107 [GTX 660M]
|
||||
0x0FD5, # GK107 [GT 650M]
|
||||
0x0FD8, # GK107 [GT 640M]
|
||||
0x0FD9, # GK107 [GT 645M]
|
||||
0x0FDF, # GK107M [ GT 740M]
|
||||
0x0FE0, # GK107 [GTX 660M]
|
||||
0x0FE1, # GK107M [GT 730M]
|
||||
0x0FE3, # GK107M [GT 745M]
|
||||
0x0FE4, # GK107M [GT 750M]
|
||||
0x0FE9, # GK107 [GT 750M Mac Edition]
|
||||
0x0FEA, # GK107M [GT 755M Mac Edition]
|
||||
0x0FEE, # GK107M [810M]
|
||||
0x0FF2, # GK107GL [GRID K1]
|
||||
0x0FF3, # GK107GL [Quadro K420]
|
||||
0x0FF6, # Quadro K1100M
|
||||
0x0FF9, # GK107 [K2000D]
|
||||
0x0FFA, # GK107 [K600]
|
||||
0x0FFB, # GK107 [K2000M]
|
||||
0x0FFC, # GK107 [K1000M]
|
||||
0x0FFD, # GK107 [NVS 510]
|
||||
0x0FFE, # GK107 [K2000]
|
||||
0x0FFF, # GK107 [410]
|
||||
# GK110
|
||||
0x1001, # GK110B [GTX TITAN Z]
|
||||
0x1003, # GK110 [GTX Titan LE]
|
||||
0x1004, # GK110 [GTX 780]
|
||||
0x1005, # GK110 [GTX Titan]
|
||||
0x1007, # GK110 [GTX 780 Rev. 2]
|
||||
0x100A, # GK110B [GTX 780 Ti]
|
||||
0x100C, # GK110B [GTX TITAN Black]
|
||||
0x101F, # GK110 [TEslA K20]
|
||||
0x1020, # GK110 [TEslA K2]
|
||||
0x1021, # GK110 [TEslA K2m]
|
||||
0x1022, # GK110 [TEslA K20C]
|
||||
0x1023, # GK110BGL [Tesla K40m]
|
||||
0x1024, # GK180GL [Tesla K40c]
|
||||
0x1026, # GK110 [TEslA K20s]
|
||||
0x1028, # GK110 [TEslA K20m]
|
||||
0x102D, # GK210GL [Tesla K80]
|
||||
0x103C, # GK110GL [Quadro K5200]
|
||||
# GK208
|
||||
0x1280, # GK208 [GT 635]
|
||||
0x1281, # GK208 [GT 710]
|
||||
0x1282, # GK208 [GT 640 REv. 2]
|
||||
0x1284, # GK208 [GT 630 REv. 2]
|
||||
0x1286, # GK208 [GT 720]
|
||||
0x1287, # GK208B [GT 730]
|
||||
0x1288, # GK208B [GT 720]
|
||||
0x1289, # GK208 [GT 710]
|
||||
0x128B, # GK208B [GT 710]
|
||||
0x1290, # GK208 [GT 730M]
|
||||
0x1291, # GK208 [GT 735M]
|
||||
0x1292, # GK208 [GT 740M]
|
||||
0x1293, # GK208 [GT 730M]
|
||||
0x1294, # GK208 [GT 740M]
|
||||
0x1295, # GK208 [710M]
|
||||
0x1296, # GK208M [825M]
|
||||
0x1298, # GK208M [GT 720M]
|
||||
0x1299, # GK208BM [920M]
|
||||
0x129A, # GK208BM [910M]
|
||||
0x12B9, # GK208 [K610M]
|
||||
0x12BA, # GK208 [K510M]
|
||||
]
|
||||
|
||||
|
||||
class amd_ids:
|
||||
legacy_gcn_ids = [
|
||||
# AMDRadeonX4000
|
||||
# AMDBonaireGraphicsAccelerator
|
||||
0x6640,
|
||||
0x6641,
|
||||
0x6646,
|
||||
0x6647,
|
||||
0x6650,
|
||||
0x6651,
|
||||
0x665C,
|
||||
0x665D,
|
||||
# AMDFijiGraphicsAccelerator
|
||||
0x7300,
|
||||
0x730F,
|
||||
# AMDHawaiiGraphicsAccelerator
|
||||
0x67B0,
|
||||
# AMDPitcairnGraphicsAccelerator
|
||||
0x6800,
|
||||
0x6801,
|
||||
0x6806,
|
||||
0x6808,
|
||||
0x6810,
|
||||
0x6818,
|
||||
0x6819,
|
||||
# AMDTahitiGraphicsAccelerator
|
||||
0x6790,
|
||||
0x6798,
|
||||
0x679A,
|
||||
0x679E,
|
||||
0x6780,
|
||||
# AMDTongaGraphicsAccelerator
|
||||
0x6920,
|
||||
0x6921,
|
||||
0x6930,
|
||||
0x6938,
|
||||
0x6939,
|
||||
# AMDVerdeGraphicsAccelerator
|
||||
0x6820,
|
||||
0x6821,
|
||||
0x6823,
|
||||
0x6825,
|
||||
0x6827,
|
||||
0x682B,
|
||||
0x682D,
|
||||
0x682F,
|
||||
0x6835,
|
||||
0x6839,
|
||||
0x683B,
|
||||
0x683D,
|
||||
0x683F,
|
||||
]
|
||||
|
||||
polaris_ids = [
|
||||
# AMDRadeonX4000
|
||||
# AMDBaffinGraphicsAccelerator
|
||||
0x67E0,
|
||||
0x67E3,
|
||||
0x67E8,
|
||||
0x67EB,
|
||||
0x67EF,
|
||||
0x67FF,
|
||||
0x67E1,
|
||||
0x67E7,
|
||||
0x67E9,
|
||||
# AMDEllesmereGraphicsAccelerator
|
||||
0x67C0,
|
||||
0x67C1,
|
||||
0x67C2,
|
||||
0x67C4,
|
||||
0x67C7,
|
||||
0x67DF,
|
||||
0x67D0,
|
||||
0x67C8,
|
||||
0x67C9,
|
||||
0x67CA,
|
||||
0x67CC,
|
||||
0x67CF,
|
||||
]
|
||||
|
||||
vega_ids = [
|
||||
# AMDRadeonX5000
|
||||
# AMDVega10GraphicsAccelerator
|
||||
0x6860,
|
||||
0x6861,
|
||||
0x6862,
|
||||
0x6863,
|
||||
0x6864,
|
||||
0x6867,
|
||||
0x6868,
|
||||
0x6869,
|
||||
0x686A,
|
||||
0x686B,
|
||||
0x686C,
|
||||
0x686D,
|
||||
0x686E,
|
||||
0x686F,
|
||||
0x687F,
|
||||
# AMDVega12GraphicsAccelerator
|
||||
0x69A0,
|
||||
0x69A1,
|
||||
0x69A2,
|
||||
0x69A3,
|
||||
0x69AF,
|
||||
# AMDVega20GraphicsAccelerator
|
||||
0x66A0,
|
||||
0x66A1,
|
||||
0x66A2,
|
||||
0x66A3,
|
||||
0x66A7,
|
||||
0x66AF,
|
||||
]
|
||||
|
||||
navi_ids = [
|
||||
# AMDRadeonX6000
|
||||
# AMDNavi10GraphicsAccelerator
|
||||
0x7310,
|
||||
0x7312,
|
||||
0x7318,
|
||||
0x7319,
|
||||
0x731A,
|
||||
0x731B,
|
||||
0x731F,
|
||||
# AMDNavi12GraphicsAccelerator
|
||||
0x7360,
|
||||
# AMDNavi14GraphicsAccelerator
|
||||
0x7340,
|
||||
0x7341,
|
||||
0x7343,
|
||||
0x7347,
|
||||
0x734F,
|
||||
# AMDNavi21GraphicsAccelerator
|
||||
0x73A2,
|
||||
0x73AB,
|
||||
0x73BF,
|
||||
]
|
||||
terascale_1_ids = [
|
||||
0x9400,
|
||||
0x9401,
|
||||
0x9402,
|
||||
0x9403,
|
||||
0x9581,
|
||||
0x9583,
|
||||
0x9588,
|
||||
0x94C8,
|
||||
0x94C9,
|
||||
0x9500,
|
||||
0x9501,
|
||||
0x9505,
|
||||
0x9507,
|
||||
0x9504,
|
||||
0x9506,
|
||||
0x9598,
|
||||
0x9488,
|
||||
0x9599,
|
||||
0x9591,
|
||||
0x9593,
|
||||
0x9440,
|
||||
0x9442,
|
||||
0x944A,
|
||||
0x945A,
|
||||
0x9490,
|
||||
0x949E,
|
||||
0x9480,
|
||||
0x9540,
|
||||
0x9541,
|
||||
0x954E,
|
||||
0x954F,
|
||||
0x9552,
|
||||
0x9553,
|
||||
0x94A0,
|
||||
]
|
||||
|
||||
terascale_2_ids = [
|
||||
0x6738,
|
||||
0x6739,
|
||||
0x6720,
|
||||
0x6722,
|
||||
0x6768,
|
||||
0x6770,
|
||||
0x6779,
|
||||
0x6760,
|
||||
0x6761,
|
||||
0x68E0,
|
||||
0x6898,
|
||||
0x6899,
|
||||
0x68B8,
|
||||
0x68B0,
|
||||
0x68B1,
|
||||
0x68A0,
|
||||
0x68A1,
|
||||
0x6840,
|
||||
0x6841,
|
||||
0x68D8,
|
||||
0x68C0,
|
||||
0x68C1,
|
||||
0x68D9,
|
||||
0x6750,
|
||||
0x6758,
|
||||
0x6759,
|
||||
0x6740,
|
||||
0x6741,
|
||||
0x6745,
|
||||
]
|
||||
|
||||
|
||||
class intel_ids:
|
||||
iron_ids = [
|
||||
# AppleIntelHDGraphics IDs
|
||||
0x0044,
|
||||
0x0046,
|
||||
]
|
||||
|
||||
sandy_ids = [
|
||||
# AppleIntelHD3000Graphics IDs
|
||||
# AppleIntelSNBGraphicsFB IDs
|
||||
0x0106,
|
||||
0x0601,
|
||||
0x0116,
|
||||
0x0102,
|
||||
0x0126,
|
||||
]
|
||||
|
||||
ivy_ids = [
|
||||
# AppleIntelHD4000Graphics IDs
|
||||
# AppleIntelFramebufferCapri IDs
|
||||
0x0152,
|
||||
0x0156,
|
||||
0x0162,
|
||||
0x0166,
|
||||
]
|
||||
|
||||
haswell_ids = [
|
||||
# AppleIntelHD5000Graphics IDs
|
||||
# AppleIntelFramebufferAzul IDs
|
||||
0x0D26,
|
||||
0x0A26,
|
||||
0x0A2E,
|
||||
0x0D22,
|
||||
0x0412,
|
||||
]
|
||||
|
||||
broadwell_ids = [
|
||||
# AppleIntelBDWGraphicsFramebuffer IDs
|
||||
0x0BD1,
|
||||
0x0BD2,
|
||||
0x0BD3,
|
||||
0x1606,
|
||||
0x160E,
|
||||
0x1616,
|
||||
0x161E,
|
||||
0x1626,
|
||||
0x1622,
|
||||
0x1612,
|
||||
0x162B,
|
||||
]
|
||||
|
||||
skylake_ids = [
|
||||
# AppleIntelSKLGraphicsFramebuffer IDs
|
||||
0x1916,
|
||||
0x191E,
|
||||
0x1926,
|
||||
0x1927,
|
||||
0x1912,
|
||||
0x1932,
|
||||
0x1902,
|
||||
0x1917,
|
||||
0x193B,
|
||||
0x191B,
|
||||
]
|
||||
|
||||
kaby_lake_ids = [
|
||||
# AppleIntelKBLGraphicsFramebuffer IDs
|
||||
0x5912,
|
||||
0x5916,
|
||||
0x591B,
|
||||
0x591C,
|
||||
0x591E,
|
||||
0x5926,
|
||||
0x5927,
|
||||
0x5923,
|
||||
]
|
||||
|
||||
coffee_lake_ids = [
|
||||
# AppleIntelCFLGraphicsFramebuffer IDs
|
||||
0x3E9B,
|
||||
0x3EA5,
|
||||
0x3EA6,
|
||||
0x3E92,
|
||||
0x3E91,
|
||||
0x3E98,
|
||||
]
|
||||
|
||||
ice_lake_ids = [
|
||||
# AppleIntelICLLPGraphicsFramebuffer IDs
|
||||
0xFF05,
|
||||
0x8A70,
|
||||
0x8A71,
|
||||
0x8A51,
|
||||
0x8A5C,
|
||||
0x8A5D,
|
||||
0x8A52,
|
||||
0x8A53,
|
||||
0x8A5A,
|
||||
0x8A5B,
|
||||
]
|
||||
|
||||
AppleIntel8254XEthernet = [
|
||||
# AppleIntel8254XEthernet IDs
|
||||
0x1096,
|
||||
0x100F,
|
||||
0x105E,
|
||||
]
|
||||
|
||||
AppleIntelI210Ethernet = [
|
||||
# AppleIntelI210Ethernet IDs
|
||||
0x1533, # I210
|
||||
0x15F2, # I225
|
||||
0x15F3, # I225
|
||||
0x3100, # I225
|
||||
0x3101, # I225
|
||||
0x5502, # I225
|
||||
0x0D9F, # I225
|
||||
0x15F8, # I225
|
||||
0x15F7, # I225
|
||||
0x15FD, # I225
|
||||
]
|
||||
|
||||
Intel82574L = [
|
||||
# Intel82574L IDs
|
||||
0x104B,
|
||||
0x10F6,
|
||||
]
|
||||
|
||||
|
||||
class broadcom_ids:
|
||||
AirPortBrcmNIC = [
|
||||
# AirPortBrcmNIC IDs
|
||||
0x43BA, # BCM43602
|
||||
0x43A3, # BCM4350
|
||||
0x43A0, # BCM4360
|
||||
]
|
||||
|
||||
AirPortBrcm4360 = [
|
||||
# AirPortBrcm4360 IDs (removed duplicates for 4360 class cards)
|
||||
0x4331, # BCM94331
|
||||
0x4353, # BCM943224
|
||||
]
|
||||
|
||||
AirPortBrcm4331 = [
|
||||
# AirPortBrcm4331 IDs (removed duplicates for 4331 class cards)
|
||||
0x432B, # BCM94322
|
||||
]
|
||||
|
||||
AppleAirPortBrcm43224 = [
|
||||
# AppleAirPortBrcm43224 IDs
|
||||
0x4311, # BCM4311 - never used by Apple
|
||||
0x4312, # BCM4311 - never used by Apple
|
||||
0x4313, # BCM4311 - never used by Apple
|
||||
0x4318, # BCM4318 - never used by Apple
|
||||
0x4319, # BCM4318 - never used by Apple
|
||||
0x431A, # Unknown - never used by Apple
|
||||
0x4320, # BCM4306 - never used by Apple
|
||||
0x4324, # BCM4309 - never used by Apple
|
||||
0x4325, # BCM4306 - never used by Apple
|
||||
0x4328, # BCM4328
|
||||
0x432C, # BCM4322 - never used by Apple
|
||||
0x432D, # BCM4322 - never used by Apple
|
||||
]
|
||||
|
||||
AppleBCM5701Ethernet = [
|
||||
# AppleBCM5701Ethernet IDs
|
||||
0x1684,
|
||||
0x16B0,
|
||||
0x16B4,
|
||||
0x1682,
|
||||
0x1686,
|
||||
]
|
||||
|
||||
|
||||
class aquantia_ids:
|
||||
AppleEthernetAquantiaAqtion = [
|
||||
# AppleEthernetAquantiaAqtion IDs
|
||||
0x0001, # AQC107
|
||||
0xD107, # AQC107
|
||||
0x07B1, # AQC107
|
||||
0x80B1, # AQC107
|
||||
0x87B1, # AQC107
|
||||
0x88B1, # AQC107
|
||||
0x89B1, # AQC107
|
||||
0x91B1, # AQC107
|
||||
0x92B1, # AQC107
|
||||
0x00C0, # AQC113
|
||||
0x04C0, # AQC113
|
||||
]
|
||||
|
||||
|
||||
class marvell_ids:
|
||||
MarvelYukonEthernet = [
|
||||
# AppleYukon2.kext IDs
|
||||
# AppleYukon2 supports 2 vendors (Marvell and SysKonnect)
|
||||
0x9E00,
|
||||
0x2100,
|
||||
0x9E00,
|
||||
0x2200,
|
||||
0x9E00,
|
||||
0x8100,
|
||||
0x9E00,
|
||||
0x8200,
|
||||
0x9E00,
|
||||
0x9100,
|
||||
0x9E00,
|
||||
0x9200,
|
||||
0x9000,
|
||||
0x2100,
|
||||
0x9000,
|
||||
0x2200,
|
||||
0x9000,
|
||||
0x8100,
|
||||
0x9000,
|
||||
0x8200,
|
||||
0x9000,
|
||||
0x9100,
|
||||
0x9000,
|
||||
0x9200,
|
||||
0x9E00,
|
||||
0x2200,
|
||||
0x9E00,
|
||||
0x2200,
|
||||
]
|
||||
|
||||
|
||||
class syskonnect_ids:
|
||||
MarvelYukonEthernet = [
|
||||
# AppleYukon2.kext IDs
|
||||
# AppleYukon2 supports 2 vendors (Marvell and SysKonnect)
|
||||
0x4365,
|
||||
0x4360,
|
||||
0x435A,
|
||||
0x4354,
|
||||
0x4362,
|
||||
0x4363,
|
||||
0x00BA,
|
||||
0x436A,
|
||||
]
|
||||
|
||||
|
||||
class atheros_ids:
|
||||
AtherosWifi = [
|
||||
# AirPortAtheros40 IDs
|
||||
0x0030, # AR93xx
|
||||
0x002A, # AR928X
|
||||
0x001C, # AR242x / AR542x
|
||||
0x0023, # AR5416 - never used by Apple
|
||||
0x0024, # AR5418
|
||||
]
|
||||
@@ -1,110 +0,0 @@
|
||||
FirmwareFeatures = {
|
||||
"iMac7,1": "0xC0001407",
|
||||
"iMac8,1": "0xC0001403",
|
||||
"iMac9,1": "0xC0001403",
|
||||
"iMac10,1": "0xE00DE137",
|
||||
"iMac11,1": "0xE00DE137",
|
||||
"iMac11,2": "0xC00C9423",
|
||||
"iMac11,3": "0xE00DE137",
|
||||
"iMac12,1": "0xE00DE137",
|
||||
"iMac12,2": "0xE00DE137",
|
||||
"iMac13,1": "0xE00DE137",
|
||||
"iMac13,2": "0xE00DE137",
|
||||
"iMac13,3": "0xE00DE137",
|
||||
"iMac14,1": "0xFB0FF577",
|
||||
"iMac14,2": "0xE00FE137",
|
||||
"iMac14,3": "0xE00FE137",
|
||||
"iMac14,4": "0xF00FE137",
|
||||
"iMac15,1": "0xF80FE137",
|
||||
"iMac16,1": "0xFC0FE137",
|
||||
"iMac16,2": "0xFC0FE137",
|
||||
"iMac17,1": "0xFC0FE137",
|
||||
"iMac18,1": "0xFD0FF576",
|
||||
"iMac18,2": "0xFD0FF576",
|
||||
"iMac18,3": "0xFD0FF576",
|
||||
"iMac19,1": "0xFD8FF576",
|
||||
"iMac19,2": "0xFD8FF576",
|
||||
"iMac20,1": "0xFD8FF576",
|
||||
"iMac20,2": "0xFD8FF576",
|
||||
"iMacPro1,1": "0xFD8FF53E",
|
||||
"MacBook3,1": "0xC0001407",
|
||||
"MacBook4,1": "0xC0001403",
|
||||
"MacBook5,1": "0xC0001403",
|
||||
"MacBook5,2": "0xC0001403",
|
||||
"MacBook6,1": "0xFC0FE13F",
|
||||
"MacBook7,1": "0xFC0FE13F",
|
||||
"MacBook8,1": "0xFC0FE13F",
|
||||
"MacBook9,1": "0xFC0FE13F",
|
||||
"MacBook10,1": "0xFC0FE13F",
|
||||
"MacBookAir1,1": "0xC0001403",
|
||||
"MacBookAir2,1": "0xC0001403",
|
||||
"MacBookAir3,1": "0xD00DE137",
|
||||
"MacBookAir3,2": "0xD00DE137",
|
||||
"MacBookAir4,1": "0xD00DE137",
|
||||
"MacBookAir4,2": "0xD00DE137",
|
||||
"MacBookAir5,1": "0xE00DE137",
|
||||
"MacBookAir5,2": "0xE00DE137",
|
||||
"MacBookAir6,1": "0xE00FE137",
|
||||
"MacBookAir6,2": "0xE00FE137",
|
||||
"MacBookAir7,1": "0xFF0FF576",
|
||||
"MacBookAir7,2": "0xFF0FF576",
|
||||
"MacBookAir8,1": "0xFD8FF42E",
|
||||
"MacBookAir8,2": "0xFD8FF42E",
|
||||
"MacBookAir9,1": "0xFFAFF06E",
|
||||
"MacBookPro3,1": "0xC0001407",
|
||||
"MacBookPro4,1": "0xC0001403",
|
||||
"MacBookPro5,1": "0xC0001403",
|
||||
"MacBookPro5,2": "0xC0001403",
|
||||
"MacBookPro5,3": "0xC0001403",
|
||||
"MacBookPro5,4": "0xC0001403",
|
||||
"MacBookPro5,5": "0xC0001403",
|
||||
"MacBookPro6,1": "0xC00DE137",
|
||||
"MacBookPro6,2": "0xC00DE137",
|
||||
"MacBookPro7,1": "0xC00DE137",
|
||||
"MacBookPro8,1": "0xC00DE137",
|
||||
"MacBookPro8,2": "0xC00DE137",
|
||||
"MacBookPro8,3": "0xC00DE137",
|
||||
"MacBookPro9,1": "0xC00DE137",
|
||||
"MacBookPro9,2": "0xC10DF577",
|
||||
"MacBookPro10,1": "0xE00DE137",
|
||||
"MacBookPro10,2": "0xE00DE137",
|
||||
"MacBookPro11,1": "0xEB0FF577",
|
||||
"MacBookPro11,2": "0xEB0FF577",
|
||||
"MacBookPro11,3": "0xEB0FF577",
|
||||
"MacBookPro11,4": "0xEB0FF577",
|
||||
"MacBookPro11,5": "0xEB0FF577",
|
||||
"MacBookPro12,1": "0xFD0FF576",
|
||||
"MacBookPro13,1": "0xFC0FE137",
|
||||
"MacBookPro13,2": "0xFC0FE137",
|
||||
"MacBookPro13,3": "0xFC0FE137",
|
||||
"MacBookPro14,1": "0xFF0FF57E",
|
||||
"MacBookPro14,2": "0xFF0FF57E",
|
||||
"MacBookPro14,3": "0xFF0FF57E",
|
||||
"MacBookPro15,1": "0xFD8FF426",
|
||||
"MacBookPro15,2": "0xFD8FF426",
|
||||
"MacBookPro15,3": "0xFD8FF426",
|
||||
"MacBookPro15,4": "0xFD8FF426",
|
||||
"MacBookPro16,1": "0xFDAFF066",
|
||||
"MacBookPro16,2": "0xFFAFF06E",
|
||||
"MacBookPro16,3": "0xFDAFF066",
|
||||
"MacBookPro16,4": "0xFDAFF066",
|
||||
"Macmini3,1": "0xC0001403",
|
||||
"Macmini4,1": "0xC00C9423",
|
||||
"Macmini5,1": "0xD00DE137",
|
||||
"Macmini5,2": "0xD00DE137",
|
||||
"Macmini5,3": "0xD00DE137",
|
||||
"Macmini6,1": "0xE00DE137",
|
||||
"Macmini6,2": "0xE00DE137",
|
||||
"Macmini7,1": "0xE00DE137",
|
||||
"Macmini8,1": "0xFD8FF466",
|
||||
"MacPro1,1": "0x80000015",
|
||||
"MacPro2,1": "0xC0000015",
|
||||
"MacPro3,1": "0xC0001403",
|
||||
"MacPro4,1": "0xE001F537",
|
||||
"MacPro5,1": "0xE80FE137",
|
||||
"MacPro6,1": "0xE90FF576",
|
||||
"MacPro7,1": "0xFDAFF066",
|
||||
"Xserve2,1": "0xC0001403",
|
||||
"Xserve3,1": "0xE001F537",
|
||||
"Dortania1,1": "0xFDAFF066",
|
||||
}
|
||||
@@ -12,6 +12,7 @@ import zipfile
|
||||
from pathlib import Path
|
||||
|
||||
from Resources import Constants, device_probe, ModelArray, SysPatchArray, Utilities
|
||||
from Data import sip_data
|
||||
|
||||
|
||||
class PatchSysVolume:
|
||||
@@ -758,8 +759,8 @@ set million colour before rebooting"""
|
||||
)
|
||||
|
||||
def verify_patch_allowed(self):
|
||||
sip = self.constants.root_patch_sip_big_sur if self.constants.detected_os > self.constants.catalina else self.constants.root_patch_sip_mojave
|
||||
if sip == self.constants.root_patch_sip_mojave:
|
||||
sip = sip_data.system_integrity_protection.root_patch_sip_big_sur if self.constants.detected_os > self.constants.catalina else sip_data.system_integrity_protection.root_patch_sip_mojave
|
||||
if sip == sip_data.system_integrity_protection.root_patch_sip_mojave:
|
||||
sip_value = "For Hackintoshes, please set csr-active-config to '03060000' (0x603)\nFor non-OpenCore Macs, please run 'csrutil disable' in RecoveryOS"
|
||||
else:
|
||||
sip_value = (
|
||||
|
||||
@@ -21,6 +21,7 @@ except ImportError:
|
||||
raise Exception("Missing requests library!\nPlease run the following before starting OCLP:\npip3 install requests")
|
||||
|
||||
from Resources import Constants, ioreg, device_probe
|
||||
from Data import sip_data
|
||||
|
||||
|
||||
def hexswap(input_hex: str):
|
||||
@@ -120,13 +121,13 @@ def csr_decode(csr_active_config, os_sip):
|
||||
csr_active_config = b"\x00\x00\x00\x00"
|
||||
sip_int = int.from_bytes(csr_active_config, byteorder="little")
|
||||
i = 0
|
||||
for current_sip_bit in Constants.Constants.csr_values:
|
||||
for current_sip_bit in sip_data.system_integrity_protection.csr_values:
|
||||
if sip_int & (1 << i):
|
||||
Constants.Constants.csr_values[current_sip_bit] = True
|
||||
sip_data.system_integrity_protection.csr_values[current_sip_bit] = True
|
||||
i = i + 1
|
||||
|
||||
# Can be adjusted to whatever OS needs patching
|
||||
sip_needs_change = all(Constants.Constants.csr_values[i] for i in os_sip)
|
||||
sip_needs_change = all(sip_data.system_integrity_protection.csr_values[i] for i in os_sip)
|
||||
if sip_needs_change is True:
|
||||
return False
|
||||
else:
|
||||
|
||||
+28
-24
@@ -10,7 +10,8 @@ import subprocess
|
||||
from dataclasses import dataclass, field
|
||||
from typing import Any, ClassVar, Optional, Type, Union
|
||||
|
||||
from Resources import PCIIDArray, Utilities, ioreg
|
||||
from Resources import Utilities, ioreg
|
||||
from Data import pci_data
|
||||
|
||||
|
||||
@dataclass
|
||||
@@ -168,11 +169,11 @@ class NVIDIA(GPU):
|
||||
|
||||
def detect_arch(self):
|
||||
# G80/G80GL
|
||||
if self.device_id in PCIIDArray.nvidia_ids.tesla_ids:
|
||||
if self.device_id in pci_data.nvidia_ids.tesla_ids:
|
||||
self.arch = NVIDIA.Archs.Tesla
|
||||
elif self.device_id in PCIIDArray.nvidia_ids.fermi_ids:
|
||||
elif self.device_id in pci_data.nvidia_ids.fermi_ids:
|
||||
self.arch = NVIDIA.Archs.Fermi
|
||||
elif self.device_id in PCIIDArray.nvidia_ids.kepler_ids:
|
||||
elif self.device_id in pci_data.nvidia_ids.kepler_ids:
|
||||
self.arch = NVIDIA.Archs.Kepler
|
||||
else:
|
||||
self.arch = NVIDIA.Archs.Unknown
|
||||
@@ -195,17 +196,17 @@ class AMD(GPU):
|
||||
arch: Archs = field(init=False)
|
||||
|
||||
def detect_arch(self):
|
||||
if self.device_id in PCIIDArray.amd_ids.legacy_gcn_ids:
|
||||
if self.device_id in pci_data.amd_ids.legacy_gcn_ids:
|
||||
self.arch = AMD.Archs.Legacy_GCN
|
||||
elif self.device_id in PCIIDArray.amd_ids.terascale_1_ids:
|
||||
elif self.device_id in pci_data.amd_ids.terascale_1_ids:
|
||||
self.arch = AMD.Archs.TeraScale_1
|
||||
elif self.device_id in PCIIDArray.amd_ids.terascale_2_ids:
|
||||
elif self.device_id in pci_data.amd_ids.terascale_2_ids:
|
||||
self.arch = AMD.Archs.TeraScale_2
|
||||
elif self.device_id in PCIIDArray.amd_ids.polaris_ids:
|
||||
elif self.device_id in pci_data.amd_ids.polaris_ids:
|
||||
self.arch = AMD.Archs.Polaris
|
||||
elif self.device_id in PCIIDArray.amd_ids.vega_ids:
|
||||
elif self.device_id in pci_data.amd_ids.vega_ids:
|
||||
self.arch = AMD.Archs.Vega
|
||||
elif self.device_id in PCIIDArray.amd_ids.navi_ids:
|
||||
elif self.device_id in pci_data.amd_ids.navi_ids:
|
||||
self.arch = AMD.Archs.Navi
|
||||
else:
|
||||
self.arch = AMD.Archs.Unknown
|
||||
@@ -231,23 +232,23 @@ class Intel(GPU):
|
||||
arch: Archs = field(init=False)
|
||||
|
||||
def detect_arch(self):
|
||||
if self.device_id in PCIIDArray.intel_ids.iron_ids:
|
||||
if self.device_id in pci_data.intel_ids.iron_ids:
|
||||
self.arch = Intel.Archs.Iron_Lake
|
||||
elif self.device_id in PCIIDArray.intel_ids.sandy_ids:
|
||||
elif self.device_id in pci_data.intel_ids.sandy_ids:
|
||||
self.arch = Intel.Archs.Sandy_Bridge
|
||||
elif self.device_id in PCIIDArray.intel_ids.ivy_ids:
|
||||
elif self.device_id in pci_data.intel_ids.ivy_ids:
|
||||
self.arch = Intel.Archs.Ivy_Bridge
|
||||
elif self.device_id in PCIIDArray.intel_ids.haswell_ids:
|
||||
elif self.device_id in pci_data.intel_ids.haswell_ids:
|
||||
self.arch = Intel.Archs.Haswell
|
||||
elif self.device_id in PCIIDArray.intel_ids.broadwell_ids:
|
||||
elif self.device_id in pci_data.intel_ids.broadwell_ids:
|
||||
self.arch = Intel.Archs.Broadwell
|
||||
elif self.device_id in PCIIDArray.intel_ids.skylake_ids:
|
||||
elif self.device_id in pci_data.intel_ids.skylake_ids:
|
||||
self.arch = Intel.Archs.Skylake
|
||||
elif self.device_id in PCIIDArray.intel_ids.kaby_lake_ids:
|
||||
elif self.device_id in pci_data.intel_ids.kaby_lake_ids:
|
||||
self.arch = Intel.Archs.Kaby_Lake
|
||||
elif self.device_id in PCIIDArray.intel_ids.coffee_lake_ids:
|
||||
elif self.device_id in pci_data.intel_ids.coffee_lake_ids:
|
||||
self.arch = Intel.Archs.Coffee_Lake
|
||||
elif self.device_id in PCIIDArray.intel_ids.ice_lake_ids:
|
||||
elif self.device_id in pci_data.intel_ids.ice_lake_ids:
|
||||
self.arch = Intel.Archs.Ice_Lake
|
||||
else:
|
||||
self.arch = Intel.Archs.Unknown
|
||||
@@ -259,6 +260,7 @@ class Broadcom(WirelessCard):
|
||||
|
||||
class Chipsets(enum.Enum):
|
||||
# pylint: disable=invalid-name
|
||||
AppleBCMWLANBusInterfacePCIe = "AppleBCMWLANBusInterfacePCIe supported"
|
||||
AirportBrcmNIC = "AirportBrcmNIC supported"
|
||||
AirPortBrcm4360 = "AirPortBrcm4360 supported"
|
||||
AirPortBrcm4331 = "AirPortBrcm4331 supported"
|
||||
@@ -268,13 +270,15 @@ class Broadcom(WirelessCard):
|
||||
chipset: Chipsets = field(init=False)
|
||||
|
||||
def detect_chipset(self):
|
||||
if self.device_id in PCIIDArray.broadcom_ids.AirPortBrcmNIC:
|
||||
if self.device_id in pci_data.broadcom_ids.AppleBCMWLANBusInterfacePCIe:
|
||||
self.chipset = Broadcom.Chipsets.AppleBCMWLANBusInterfacePCIe
|
||||
elif self.device_id in pci_data.broadcom_ids.AirPortBrcmNIC:
|
||||
self.chipset = Broadcom.Chipsets.AirportBrcmNIC
|
||||
elif self.device_id in PCIIDArray.broadcom_ids.AirPortBrcm4360:
|
||||
elif self.device_id in pci_data.broadcom_ids.AirPortBrcm4360:
|
||||
self.chipset = Broadcom.Chipsets.AirPortBrcm4360
|
||||
elif self.device_id in PCIIDArray.broadcom_ids.AirPortBrcm4331:
|
||||
elif self.device_id in pci_data.broadcom_ids.AirPortBrcm4331:
|
||||
self.chipset = Broadcom.Chipsets.AirPortBrcm4331
|
||||
elif self.device_id in PCIIDArray.broadcom_ids.AppleAirPortBrcm43224:
|
||||
elif self.device_id in pci_data.broadcom_ids.AppleAirPortBrcm43224:
|
||||
self.chipset = Broadcom.Chipsets.AirPortBrcm43224
|
||||
else:
|
||||
self.chipset = Broadcom.Chipsets.Unknown
|
||||
@@ -293,7 +297,7 @@ class Atheros(WirelessCard):
|
||||
chipset: Chipsets = field(init=False)
|
||||
|
||||
def detect_chipset(self):
|
||||
if self.device_id in PCIIDArray.atheros_ids.AtherosWifi:
|
||||
if self.device_id in pci_data.atheros_ids.AtherosWifi:
|
||||
self.chipset = Atheros.Chipsets.AirPortAtheros40
|
||||
else:
|
||||
self.chipset = Atheros.Chipsets.Unknown
|
||||
|
||||
Reference in New Issue
Block a user