mirror of
https://github.com/dortania/OpenCore-Legacy-Patcher.git
synced 2026-06-21 22:50:51 +10:00
defaults.py: Iterate over computer.gpus
Closes https://github.com/dortania/OpenCore-Legacy-Patcher/issues/753
This commit is contained in:
+19
-15
@@ -14,11 +14,13 @@ class generate_defaults:
|
|||||||
if host_is_target:
|
if host_is_target:
|
||||||
if utilities.check_metal_support(device_probe, settings.computer) is False:
|
if utilities.check_metal_support(device_probe, settings.computer) is False:
|
||||||
settings.disable_cs_lv = True
|
settings.disable_cs_lv = True
|
||||||
if settings.computer.dgpu and settings.computer.dgpu.arch == device_probe.NVIDIA.Archs.Kepler:
|
if settings.computer.gpus:
|
||||||
# 12.0 (B7+): Kepler are now unsupported
|
for gpu in settings.computer.gpus:
|
||||||
settings.sip_status = False
|
if gpu.arch == device_probe.NVIDIA.Archs.Kepler:
|
||||||
settings.amfi_status = True
|
# 12.0 (B7+): Kepler are now unsupported
|
||||||
settings.allow_fv_root = True # Allow FileVault on broken seal
|
settings.sip_status = False
|
||||||
|
settings.amfi_status = True
|
||||||
|
settings.allow_fv_root = True # Allow FileVault on broken seal
|
||||||
if (
|
if (
|
||||||
isinstance(settings.computer.wifi, device_probe.Broadcom)
|
isinstance(settings.computer.wifi, device_probe.Broadcom)
|
||||||
and settings.computer.wifi.chipset in [device_probe.Broadcom.Chipsets.AirPortBrcm4331, device_probe.Broadcom.Chipsets.AirPortBrcm43224]
|
and settings.computer.wifi.chipset in [device_probe.Broadcom.Chipsets.AirPortBrcm4331, device_probe.Broadcom.Chipsets.AirPortBrcm43224]
|
||||||
@@ -27,16 +29,18 @@ class generate_defaults:
|
|||||||
settings.sip_status = False
|
settings.sip_status = False
|
||||||
settings.allow_fv_root = True # Allow FileVault on broken seal
|
settings.allow_fv_root = True # Allow FileVault on broken seal
|
||||||
|
|
||||||
if settings.computer.dgpu and settings.computer.dgpu.arch in [
|
if settings.computer.gpus:
|
||||||
device_probe.AMD.Archs.Legacy_GCN_7000,
|
for gpu in settings.computer.gpus:
|
||||||
device_probe.AMD.Archs.Legacy_GCN_8000,
|
if gpu.arch in [
|
||||||
device_probe.AMD.Archs.Legacy_GCN_9000,
|
device_probe.AMD.Archs.Legacy_GCN_7000,
|
||||||
device_probe.AMD.Archs.Polaris,
|
device_probe.AMD.Archs.Legacy_GCN_8000,
|
||||||
device_probe.AMD.Archs.Vega,
|
device_probe.AMD.Archs.Legacy_GCN_9000,
|
||||||
device_probe.AMD.Archs.Navi,
|
device_probe.AMD.Archs.Polaris,
|
||||||
]:
|
device_probe.AMD.Archs.Vega,
|
||||||
# Allow H.265 on AMD
|
device_probe.AMD.Archs.Navi,
|
||||||
settings.serial_settings = "Minimal"
|
]:
|
||||||
|
# Allow H.265 on AMD
|
||||||
|
settings.serial_settings = "Minimal"
|
||||||
elif model in ["MacPro4,1", "MacPro5,1"]:
|
elif model in ["MacPro4,1", "MacPro5,1"]:
|
||||||
# Allow H.265 on AMD
|
# Allow H.265 on AMD
|
||||||
# Assume 2009+ machines have Polaris on pre-builts (internal testing)
|
# Assume 2009+ machines have Polaris on pre-builts (internal testing)
|
||||||
|
|||||||
+15
-10
@@ -166,16 +166,21 @@ def check_monterey_wifi():
|
|||||||
|
|
||||||
|
|
||||||
def check_metal_support(device_probe, computer):
|
def check_metal_support(device_probe, computer):
|
||||||
dgpu = computer.dgpu
|
if computer.gpus:
|
||||||
igpu = computer.igpu
|
for gpu in computer.gpus:
|
||||||
if (
|
if (
|
||||||
(dgpu and dgpu.arch in [device_probe.NVIDIA.Archs.Tesla, device_probe.NVIDIA.Archs.Fermi, device_probe.AMD.Archs.TeraScale_1, device_probe.AMD.Archs.TeraScale_2])
|
(gpu.arch in [
|
||||||
or (igpu and igpu.arch in [device_probe.Intel.Archs.Iron_Lake, device_probe.Intel.Archs.Sandy_Bridge])
|
device_probe.NVIDIA.Archs.Tesla,
|
||||||
or isinstance(igpu, device_probe.NVIDIA)
|
device_probe.NVIDIA.Archs.Fermi,
|
||||||
):
|
device_probe.AMD.Archs.TeraScale_1,
|
||||||
return False
|
device_probe.AMD.Archs.TeraScale_2,
|
||||||
else:
|
device_probe.Intel.Archs.Iron_Lake,
|
||||||
return True
|
device_probe.Intel.Archs.Sandy_Bridge
|
||||||
|
]
|
||||||
|
)
|
||||||
|
):
|
||||||
|
return False
|
||||||
|
return True
|
||||||
|
|
||||||
|
|
||||||
def check_filevault_skip():
|
def check_filevault_skip():
|
||||||
|
|||||||
Reference in New Issue
Block a user