From f26e49445045c97384672256de6d602457c30a96 Mon Sep 17 00:00:00 2001 From: Mykola Grymalyuk Date: Tue, 12 Oct 2021 13:20:02 -0600 Subject: [PATCH 1/9] Add Legacy GCN iMac patches Co-authored-by @Ausdauersportler --- CHANGELOG.md | 2 + data/pci_data.py | 178 ++++++++++++++++++++++++++------------ resources/build.py | 14 ++- resources/device_probe.py | 12 ++- 4 files changed, 148 insertions(+), 58 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index c4879af5f..651e615a6 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -45,6 +45,8 @@ - Implement software demux patch set for 2011 15/17" MacBook Pros - Alternative to hardware demux - Adds [AMDGPUWakeHandler](https://github.com/blackgate/AMDGPUWakeHandler) +- Add Legacy GCN support for iMac11,x and iMac12,x with upgraded GPUs + - Note: iMac12,x with legacy GCN will fail to wake ## 0.2.5 diff --git a/data/pci_data.py b/data/pci_data.py index 62a2504dd..a65db7fa3 100644 --- a/data/pci_data.py +++ b/data/pci_data.py @@ -515,59 +515,128 @@ class nvidia_ids: 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, + # AMDBonaireGraphicsAccelerator - AMD8000Controller + 0x6640, # M6100 + 0x6641, # HD 8930M + 0x6646, # R9 M280X / W6170M + 0x6647, # R9 M270X/M280X + 0x6650, # Unknown + 0x6651, # Unknown + 0x665C, # HD 7790/8770 / R7 360 / R9 260/360 + 0x665D, # R7 200 + # AMDFijiGraphicsAccelerator - AMD9000Controller + 0x7300, # R9 FURY / NANO + 0x730F, # Unknown + # AMDHawaiiGraphicsAccelerator - AMD8000Controller + 0x67B0, # R9 290X/390X + # AMDPitcairnGraphicsAccelerator - AMD7000Controller + 0x6800, # HD 7970M + 0x6801, # HD 8970M + 0x6806, # Unknown + 0x6808, # W7000 + 0x6810, # R7 370 / R9 270X/370X + 0x6818, # HD 7870 + 0x6819, # HD 7850 / R7 265 / R9 270 1024SP + # AMDTahitiGraphicsAccelerator - AMD7000Controller + 0x6790, # Unknown + 0x6798, # HD 7970/8970 OEM / R9 280X / D700 + 0x679A, # HD 7950/8950 OEM / R9 280 + 0x679E, # HD 7870 XT + 0x6780, # W9000 + # AMDTongaGraphicsAccelerator - AMD9000Controller + 0x6920, # R9 M395/ M395X + 0x6921, # R9 M295X / M390X + 0x6930, # Unknown + 0x6938, # R9 380X / R9 M295X + 0x6939, # R9 285/380 + # AMDVerdeGraphicsAccelerator - AMD7000Controller + 0x6820, # HD 8890M / R9 M275X/M375X / M5100 + 0x6821, # HD 8870M / R9 M270X/M370X + 0x6823, # HD 8850M / R9 M265X + 0x6825, # HD 7870M + 0x6827, # HD 7850M/8850M + 0x682B, # HD 8830M / R7 250 / R7 M465X + 0x682D, # M4000 + 0x682F, # HD 7730M + 0x6835, # R9 255 + 0x6839, # Unknown + 0x683B, # Unknown + 0x683D, # HD 7770/8760 / R7 250X + 0x683F, # HD 7750/8740 / R7 250E + ] + + gcn_7000_ids = [ + # GCN v1 + # AMDPitcairnGraphicsAccelerator - AMD7000Controller + 0x6800, # HD 7970M + 0x6801, # HD 8970M + 0x6806, # Unknown + 0x6808, # W7000 + 0x6810, # R7 370 / R9 270X/370X + 0x6818, # HD 7870 + 0x6819, # HD 7850 / R7 265 / R9 270 1024SP + # AMDPitcairnGraphicsAccelerator - AMD7000Controller + 0x6800, # HD 7970M + 0x6801, # HD 8970M + 0x6806, # Unknown + 0x6808, # W7000 + 0x6810, # R7 370 / R9 270X/370X + 0x6818, # HD 7870 + 0x6819, # HD 7850 / R7 265 / R9 270 1024SP + # AMDTahitiGraphicsAccelerator - AMD7000Controller + 0x6790, # Unknown + 0x6798, # HD 7970/8970 OEM / R9 280X / D700 + 0x679A, # HD 7950/8950 OEM / R9 280 + 0x679E, # HD 7870 XT + 0x6780, # W9000 + # AMDVerdeGraphicsAccelerator - AMD7000Controller + 0x6820, # HD 8890M / R9 M275X/M375X / M5100 + 0x6821, # HD 8870M / R9 M270X/M370X + 0x6823, # HD 8850M / R9 M265X + 0x6825, # HD 7870M + 0x6827, # HD 7850M/8850M + 0x682B, # HD 8830M / R7 250 / R7 M465X + 0x682D, # M4000 + 0x682F, # HD 7730M + 0x6835, # R9 255 + 0x6839, # Unknown + 0x683B, # Unknown + 0x683D, # HD 7770/8760 / R7 250X + 0x683F, # HD 7750/8740 / R7 250E + ] + + gcn_8000_ids = [ + # GCN v2 + # AMDBonaireGraphicsAccelerator - AMD8000Controller + 0x6640, # M6100 + 0x6641, # HD 8930M + 0x6646, # R9 M280X / W6170M + 0x6647, # R9 M270X/M280X + 0x6650, # Unknown + 0x6651, # Unknown + 0x665C, # HD 7790/8770 / R7 360 / R9 260/360 + 0x665D, # R7 200 + # AMDHawaiiGraphicsAccelerator - AMD8000Controller + 0x67B0, # R9 290X/390X + ] + + gcn_9000_ids = [ + # GCN v3 + # AMDFijiGraphicsAccelerator - AMD9000Controller + 0x7300, # R9 FURY / NANO + 0x730F, # Unknown + # AMDTongaGraphicsAccelerator - AMD9000Controller + 0x6920, # R9 M395/ M395X + 0x6921, # R9 M295X / M390X + 0x6930, # Unknown + 0x6938, # R9 380X / R9 M295X + 0x6939, # R9 285/380 ] polaris_ids = [ + # GCN v4 # AMDRadeonX4000 - # AMDBaffinGraphicsAccelerator + # AMDBaffinGraphicsAccelerator - AMD9500Controller 0x67E0, 0x67E3, 0x67E8, @@ -577,7 +646,7 @@ class amd_ids: 0x67E1, 0x67E7, 0x67E9, - # AMDEllesmereGraphicsAccelerator + # AMDEllesmereGraphicsAccelerator - AMD9500Controller 0x67C0, 0x67C1, 0x67C2, @@ -593,8 +662,9 @@ class amd_ids: ] vega_ids = [ + # GCN v5 # AMDRadeonX5000 - # AMDVega10GraphicsAccelerator + # AMDVega10GraphicsAccelerator - AMD10000Controller 0x6860, 0x6861, 0x6862, @@ -610,13 +680,13 @@ class amd_ids: 0x686E, 0x686F, 0x687F, - # AMDVega12GraphicsAccelerator + # AMDVega12GraphicsAccelerator - AMD10000Controller 0x69A0, 0x69A1, 0x69A2, 0x69A3, 0x69AF, - # AMDVega20GraphicsAccelerator + # AMDVega20GraphicsAccelerator - AMD10000Controller 0x66A0, 0x66A1, 0x66A2, @@ -636,7 +706,7 @@ class amd_ids: 0x731B, 0x731F, # AMDNavi12GraphicsAccelerator - 0x7360, + 0x7360, # 5600M # AMDNavi14GraphicsAccelerator 0x7340, 0x7341, diff --git a/resources/build.py b/resources/build.py index 35aa55993..8b5037bd4 100644 --- a/resources/build.py +++ b/resources/build.py @@ -521,6 +521,16 @@ class BuildOpenCore: elif self.model == "iMac10,1": if self.get_kext_by_bundle_path("AAAMouSSE.kext")["Enabled"] is False: self.enable_kext("AAAMouSSE.kext", self.constants.mousse_version, self.constants.mousse_path) + if self.computer and self.computer.dgpu: + if self.computer.dgpu.arch == device_probe.AMD.Archs.Legacy_GCN_7000: + # Add Power Gate Patches + self.config["DeviceProperties"]["Add"][backlight_path] += { + "rebuild-device-tree": 1, + "CAIL,CAIL_DisableDrmdmaPowerGating": 1, + "CAIL,CAIL_DisableGfxCGPowerGating": 1, + "CAIL,CAIL_DisableUVDPowerGating": 1, + "CAIL,CAIL_DisableVCEPowerGating": 1, + } # Check GPU Vendor if self.constants.metal_build is True: @@ -535,7 +545,9 @@ class BuildOpenCore: elif not self.constants.custom_model and self.model in model_array.LegacyGPU and self.computer.dgpu: print(f"- Detected dGPU: {utilities.friendly_hex(self.computer.dgpu.vendor_id)}:{utilities.friendly_hex(self.computer.dgpu.device_id)}") if self.computer.dgpu.arch in [ - device_probe.AMD.Archs.Legacy_GCN, + device_probe.AMD.Archs.Legacy_GCN_7000, + device_probe.AMD.Archs.Legacy_GCN_8000, + device_probe.AMD.Archs.Legacy_GCN_9000, device_probe.AMD.Archs.Polaris, device_probe.AMD.Archs.Vega, device_probe.AMD.Archs.Navi, diff --git a/resources/device_probe.py b/resources/device_probe.py index a360392d0..059d999b3 100644 --- a/resources/device_probe.py +++ b/resources/device_probe.py @@ -185,9 +185,11 @@ class AMD(GPU): class Archs(enum.Enum): # pylint: disable=invalid-name - Legacy_GCN = "Legacy GCN" TeraScale_1 = "TeraScale 1" TeraScale_2 = "TeraScale 2" + Legacy_GCN_7000 = "Legacy GCN v1" + Legacy_GCN_8000 = "Legacy GCN v2" + Legacy_GCN_9000 = "Legacy GCN v3" Polaris = "Polaris" Vega = "Vega" Navi = "Navi" @@ -196,8 +198,12 @@ class AMD(GPU): arch: Archs = field(init=False) def detect_arch(self): - if self.device_id in pci_data.amd_ids.legacy_gcn_ids: - self.arch = AMD.Archs.Legacy_GCN + if self.device_id in pci_data.amd_ids.gcn_7000_ids: + self.arch = AMD.Archs.Legacy_GCN_7000 + elif self.device_id in pci_data.amd_ids.gcn_8000_ids: + self.arch = AMD.Archs.Legacy_GCN_8000 + elif self.device_id in pci_data.amd_ids.gcn_9000_ids: + self.arch = AMD.Archs.Legacy_GCN_9000 elif self.device_id in pci_data.amd_ids.terascale_1_ids: self.arch = AMD.Archs.TeraScale_1 elif self.device_id in pci_data.amd_ids.terascale_2_ids: From ce6195529b19124c6fe60eab51c8e64b15014df5 Mon Sep 17 00:00:00 2001 From: Mykola Grymalyuk Date: Tue, 12 Oct 2021 20:48:52 -0600 Subject: [PATCH 2/9] Add GMA data set --- data/pci_data.py | 11 +++++++++++ resources/device_probe.py | 8 +++++++- 2 files changed, 18 insertions(+), 1 deletion(-) diff --git a/data/pci_data.py b/data/pci_data.py index a65db7fa3..feb1c7ca6 100644 --- a/data/pci_data.py +++ b/data/pci_data.py @@ -789,6 +789,17 @@ class amd_ids: class intel_ids: + gma_950_ids = [ + 0x2582, + 0x2592, + 0x2772, + 0x27A2, + ] + + gma_x3100_ids = [ + 0x2a02, + ] + iron_ids = [ # AppleIntelHDGraphics IDs 0x0044, diff --git a/resources/device_probe.py b/resources/device_probe.py index 059d999b3..37ff95a9a 100644 --- a/resources/device_probe.py +++ b/resources/device_probe.py @@ -224,6 +224,8 @@ class Intel(GPU): class Archs(enum.Enum): # pylint: disable=invalid-name + GMA_950 = "GMA 950" + GMA_X3100 = "GMA X3100" Iron_Lake = "Iron Lake" Sandy_Bridge = "Sandy Bridge" Ivy_Bridge = "Ivy Bridge" @@ -238,7 +240,11 @@ class Intel(GPU): arch: Archs = field(init=False) def detect_arch(self): - if self.device_id in pci_data.intel_ids.iron_ids: + if self.device_id in pci_data.intel_ids.gma_950_ids: + self.arch = Intel.Archs.GMA_950 + elif self.device_id in pci_data.intel_ids.gma_x3100_ids: + self.arch = Intel.Archs.GMA_X3100 + elif self.device_id in pci_data.intel_ids.iron_ids: self.arch = Intel.Archs.Iron_Lake elif self.device_id in pci_data.intel_ids.sandy_ids: self.arch = Intel.Archs.Sandy_Bridge From dd43a0f243aa44522257e3e88b7f0aee3f12ea90 Mon Sep 17 00:00:00 2001 From: Mykola Grymalyuk Date: Tue, 12 Oct 2021 21:03:23 -0600 Subject: [PATCH 3/9] Add ATI R500 IDs --- data/pci_data.py | 59 ++++++--------------------------------- resources/device_probe.py | 5 +++- 2 files changed, 12 insertions(+), 52 deletions(-) diff --git a/data/pci_data.py b/data/pci_data.py index feb1c7ca6..736cd4b76 100644 --- a/data/pci_data.py +++ b/data/pci_data.py @@ -513,57 +513,6 @@ class nvidia_ids: class amd_ids: - legacy_gcn_ids = [ - # AMDRadeonX4000 - # AMDBonaireGraphicsAccelerator - AMD8000Controller - 0x6640, # M6100 - 0x6641, # HD 8930M - 0x6646, # R9 M280X / W6170M - 0x6647, # R9 M270X/M280X - 0x6650, # Unknown - 0x6651, # Unknown - 0x665C, # HD 7790/8770 / R7 360 / R9 260/360 - 0x665D, # R7 200 - # AMDFijiGraphicsAccelerator - AMD9000Controller - 0x7300, # R9 FURY / NANO - 0x730F, # Unknown - # AMDHawaiiGraphicsAccelerator - AMD8000Controller - 0x67B0, # R9 290X/390X - # AMDPitcairnGraphicsAccelerator - AMD7000Controller - 0x6800, # HD 7970M - 0x6801, # HD 8970M - 0x6806, # Unknown - 0x6808, # W7000 - 0x6810, # R7 370 / R9 270X/370X - 0x6818, # HD 7870 - 0x6819, # HD 7850 / R7 265 / R9 270 1024SP - # AMDTahitiGraphicsAccelerator - AMD7000Controller - 0x6790, # Unknown - 0x6798, # HD 7970/8970 OEM / R9 280X / D700 - 0x679A, # HD 7950/8950 OEM / R9 280 - 0x679E, # HD 7870 XT - 0x6780, # W9000 - # AMDTongaGraphicsAccelerator - AMD9000Controller - 0x6920, # R9 M395/ M395X - 0x6921, # R9 M295X / M390X - 0x6930, # Unknown - 0x6938, # R9 380X / R9 M295X - 0x6939, # R9 285/380 - # AMDVerdeGraphicsAccelerator - AMD7000Controller - 0x6820, # HD 8890M / R9 M275X/M375X / M5100 - 0x6821, # HD 8870M / R9 M270X/M370X - 0x6823, # HD 8850M / R9 M265X - 0x6825, # HD 7870M - 0x6827, # HD 7850M/8850M - 0x682B, # HD 8830M / R7 250 / R7 M465X - 0x682D, # M4000 - 0x682F, # HD 7730M - 0x6835, # R9 255 - 0x6839, # Unknown - 0x683B, # Unknown - 0x683D, # HD 7770/8760 / R7 250X - 0x683F, # HD 7750/8740 / R7 250E - ] gcn_7000_ids = [ # GCN v1 @@ -718,6 +667,14 @@ class amd_ids: 0x73AB, 0x73BF, ] + + r500_ids = [ + 0x7187, # X1300/X1550 + 0x7146, # X1300/X1550 + 0x71c5, # Mobile X1600 + 0x7249, # X1900 XT + ] + terascale_1_ids = [ 0x9400, 0x9401, diff --git a/resources/device_probe.py b/resources/device_probe.py index 37ff95a9a..e3d832470 100644 --- a/resources/device_probe.py +++ b/resources/device_probe.py @@ -185,6 +185,7 @@ class AMD(GPU): class Archs(enum.Enum): # pylint: disable=invalid-name + R500 = "R500" TeraScale_1 = "TeraScale 1" TeraScale_2 = "TeraScale 2" Legacy_GCN_7000 = "Legacy GCN v1" @@ -198,7 +199,9 @@ class AMD(GPU): arch: Archs = field(init=False) def detect_arch(self): - if self.device_id in pci_data.amd_ids.gcn_7000_ids: + if self.device_id in pci_data.amd_ids.r500_ids: + self.arch = AMD.Archs.R500 + elif self.device_id in pci_data.amd_ids.gcn_7000_ids: self.arch = AMD.Archs.Legacy_GCN_7000 elif self.device_id in pci_data.amd_ids.gcn_8000_ids: self.arch = AMD.Archs.Legacy_GCN_8000 From bb62eded7747e12ca083b8214acc9ebaa47559ae Mon Sep 17 00:00:00 2001 From: Mykola Grymalyuk Date: Tue, 12 Oct 2021 21:42:33 -0600 Subject: [PATCH 4/9] Add Curie and Comet Lake IDs --- data/pci_data.py | 18 ++++++++++++++++++ resources/device_probe.py | 8 +++++++- 2 files changed, 25 insertions(+), 1 deletion(-) diff --git a/data/pci_data.py b/data/pci_data.py index 736cd4b76..67cc3c972 100644 --- a/data/pci_data.py +++ b/data/pci_data.py @@ -3,6 +3,18 @@ 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/ + curie_ids = [ + 0x0040, + 0x00f0, + 0x0220, + 0x0140, + 0x0160, + 0x0090, + 0x01d0, + 0x0390, + 0x0290, + ] + tesla_ids = [ # G80 0x0190, # G80 [GeForce 8800 GTS / 8800 GTX] @@ -843,6 +855,12 @@ class intel_ids: 0x3E98, ] + comet_lake_ids = [ + 0x9BC8, + 0x9BC5, + 0x9BC4, + ] + ice_lake_ids = [ # AppleIntelICLLPGraphicsFramebuffer IDs 0xFF05, diff --git a/resources/device_probe.py b/resources/device_probe.py index e3d832470..111424c39 100644 --- a/resources/device_probe.py +++ b/resources/device_probe.py @@ -160,6 +160,7 @@ class NVIDIA(GPU): class Archs(enum.Enum): # pylint: disable=invalid-name + Curie = "Curie" Fermi = "Fermi" Tesla = "Tesla" Kepler = "Kepler" @@ -169,7 +170,9 @@ class NVIDIA(GPU): def detect_arch(self): # G80/G80GL - if self.device_id in pci_data.nvidia_ids.tesla_ids: + if self.device_id in pci_data.nvidia_ids.curie_ids: + self.arch = NVIDIA.Archs.Curie + elif self.device_id in pci_data.nvidia_ids.tesla_ids: self.arch = NVIDIA.Archs.Tesla elif self.device_id in pci_data.nvidia_ids.fermi_ids: self.arch = NVIDIA.Archs.Fermi @@ -237,6 +240,7 @@ class Intel(GPU): Skylake = "Skylake" Kaby_Lake = "Kaby Lake" Coffee_Lake = "Coffee Lake" + Comet_Lake = "Comet Lake" Ice_Lake = "Ice Lake" Unknown = "Unknown" @@ -263,6 +267,8 @@ class Intel(GPU): self.arch = Intel.Archs.Kaby_Lake elif self.device_id in pci_data.intel_ids.coffee_lake_ids: self.arch = Intel.Archs.Coffee_Lake + elif self.device_id in pci_data.intel_ids.comet_lake_ids: + self.arch = Intel.Archs.Comet_Lake elif self.device_id in pci_data.intel_ids.ice_lake_ids: self.arch = Intel.Archs.Ice_Lake else: From 30121d869f34c1ed336857b09e6efc435a0bd571 Mon Sep 17 00:00:00 2001 From: Mykola Grymalyuk Date: Tue, 12 Oct 2021 21:44:32 -0600 Subject: [PATCH 5/9] Add basic GPU data sets --- data/smbios_data.py | 493 +++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 492 insertions(+), 1 deletion(-) diff --git a/data/smbios_data.py b/data/smbios_data.py index 60be589c0..5222bab74 100644 --- a/data/smbios_data.py +++ b/data/smbios_data.py @@ -12,6 +12,7 @@ # Ethernet Chipset: Vendor of the ethernet chipset (if multiple unique chipset within Vendor, chipset name is used) # nForce Chipset: If model uses nForce chipset # Switchable GPUs: If model uses a GMUX +# Stock GPUs: GPUs variations shipped from resources import device_probe from data import cpu_data, os_data, bluetooth_data @@ -28,6 +29,9 @@ smbios_dictionary = { "Screen Size": 13, "UGA Graphics": True, "Ethernet Chipset": "Marvell", + "Stock GPUs": [ + device_probe.Intel.Archs.GMA_950 + ], }, "MacBook2,1": { "Board ID": "Mac-F4208CA9", @@ -40,6 +44,9 @@ smbios_dictionary = { "Screen Size": 13, "UGA Graphics": True, "Ethernet Chipset": "Marvell", + "Stock GPUs": [ + device_probe.Intel.Archs.GMA_950 + ], }, "MacBook3,1": { "Board ID": "Mac-F22788C8", @@ -52,6 +59,9 @@ smbios_dictionary = { "Screen Size": 13, "UGA Graphics": True, "Ethernet Chipset": "Marvell", + "Stock GPUs": [ + device_probe.Intel.Archs.GMA_X3100 + ], }, "MacBook4,1": { "Board ID": "Mac-F22788A9", @@ -64,6 +74,9 @@ smbios_dictionary = { "Screen Size": 13, "UGA Graphics": True, "Ethernet Chipset": "Marvell", + "Stock GPUs": [ + device_probe.Intel.Archs.GMA_X3100 + ], }, "MacBook5,1": { "Board ID": "Mac-F42D89C8", @@ -76,6 +89,9 @@ smbios_dictionary = { "Screen Size": 13, "Ethernet Chipset": "Nvidia", "nForce Chipset": True, + "Stock GPUs": [ + device_probe.NVIDIA.Archs.Tesla + ], }, "MacBook5,1_v2": { "Board ID": "Mac-F42D89A9", @@ -88,6 +104,9 @@ smbios_dictionary = { "Screen Size": 13, "Ethernet Chipset": "Nvidia", "nForce Chipset": True, + "Stock GPUs": [ + device_probe.NVIDIA.Archs.Tesla + ], }, "MacBook5,2": { "Board ID": "Mac-F22788AA", @@ -100,6 +119,9 @@ smbios_dictionary = { "Screen Size": 13, "Ethernet Chipset": "Nvidia", "nForce Chipset": True, + "Stock GPUs": [ + device_probe.NVIDIA.Archs.Tesla + ], }, "MacBook6,1": { "Board ID": "Mac-F22C8AC8", @@ -112,6 +134,9 @@ smbios_dictionary = { "Screen Size": 13, "Ethernet Chipset": "Nvidia", "nForce Chipset": True, + "Stock GPUs": [ + device_probe.NVIDIA.Archs.Tesla + ], }, "MacBook7,1": { "Board ID": "Mac-F22C89C8", @@ -124,6 +149,9 @@ smbios_dictionary = { "Screen Size": 13, "Ethernet Chipset": "Nvidia", "nForce Chipset": True, + "Stock GPUs": [ + device_probe.NVIDIA.Archs.Tesla + ], }, "MacBook8,1": { "Board ID": "Mac-BE0E8AC46FE800CC", @@ -135,6 +163,9 @@ smbios_dictionary = { "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20703_UART, "Screen Size": 12, "Ethernet Chipset": None, + "Stock GPUs": [ + device_probe.Intel.Archs.Broadwell + ], }, "MacBook8,1_v2": { "Board ID": "Mac-F305150B0C7DEEEF", @@ -146,6 +177,9 @@ smbios_dictionary = { "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20703_UART, "Screen Size": 12, "Ethernet Chipset": None, + "Stock GPUs": [ + device_probe.Intel.Archs.Broadwell + ], }, "MacBook9,1": { "Board ID": "Mac-9AE82516C7C6B903", @@ -157,6 +191,9 @@ smbios_dictionary = { "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20703_UART, "Screen Size": 12, "Ethernet Chipset": None, + "Stock GPUs": [ + device_probe.Intel.Archs.Skylake + ], }, "MacBook10,1": { "Board ID": "Mac-EE2EBD4B90B839A8", @@ -168,6 +205,9 @@ smbios_dictionary = { "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20703_UART, "Screen Size": 12, "Ethernet Chipset": None, + "Stock GPUs": [ + device_probe.Intel.Archs.Kaby_Lake + ], }, "MacBookAir1,1": { "Board ID": "Mac-F42C8CC8", @@ -179,6 +219,9 @@ smbios_dictionary = { "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM2046, "Screen Size": 13, "Ethernet Chipset": None, + "Stock GPUs": [ + device_probe.Intel.Archs.GMA_X3100 + ], }, "MacBookAir2,1": { "Board ID": "Mac-F42D88C8", @@ -191,6 +234,9 @@ smbios_dictionary = { "Screen Size": 13, "nForce Chipset": True, "Ethernet Chipset": None, + "Stock GPUs": [ + device_probe.NVIDIA.Archs.Tesla + ], }, "MacBookAir3,1": { "Board ID": "Mac-942452F5819B1C1B", @@ -203,6 +249,9 @@ smbios_dictionary = { "Screen Size": 11, "nForce Chipset": True, "Ethernet Chipset": None, + "Stock GPUs": [ + device_probe.NVIDIA.Archs.Tesla + ], }, "MacBookAir3,2": { "Board ID": "Mac-942C5DF58193131B", @@ -215,6 +264,9 @@ smbios_dictionary = { "Screen Size": 13, "nForce Chipset": True, "Ethernet Chipset": None, + "Stock GPUs": [ + device_probe.NVIDIA.Archs.Tesla + ], }, "MacBookAir4,1": { "Board ID": "Mac-C08A6BB70A942AC2", @@ -226,6 +278,9 @@ smbios_dictionary = { "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM2070, "Screen Size": 11, "Ethernet Chipset": "Broadcom", # Set for Apple Thunderbolt Adapter + "Stock GPUs": [ + device_probe.Intel.Archs.Sandy_Bridge + ], }, "MacBookAir4,2": { "Board ID": "Mac-742912EFDBEE19B3", @@ -237,6 +292,9 @@ smbios_dictionary = { "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM2070, "Screen Size": 13, "Ethernet Chipset": "Broadcom", # Set for Apple Thunderbolt Adapter + "Stock GPUs": [ + device_probe.Intel.Archs.Sandy_Bridge + ], }, "MacBookAir5,1": { "Board ID": "Mac-66F35F19FE2A0D05", @@ -248,6 +306,9 @@ smbios_dictionary = { "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20702_v1, "Screen Size": 11, "Ethernet Chipset": None, + "Stock GPUs": [ + device_probe.Intel.Archs.Ivy_Bridge + ], }, "MacBookAir5,2": { "Board ID": "Mac-2E6FAB96566FE58C", @@ -259,6 +320,9 @@ smbios_dictionary = { "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20702_v1, "Screen Size": 13, "Ethernet Chipset": None, + "Stock GPUs": [ + device_probe.Intel.Archs.Ivy_Bridge + ], }, "MacBookAir6,1": { "Board ID": "Mac-35C1E88140C3E6CF", @@ -270,6 +334,9 @@ smbios_dictionary = { "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20702_v2, "Screen Size": 11, "Ethernet Chipset": None, + "Stock GPUs": [ + device_probe.Intel.Archs.Haswell + ], }, "MacBookAir6,2": { "Board ID": "Mac-7DF21CB3ED6977E5", @@ -281,6 +348,9 @@ smbios_dictionary = { "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20702_v2, "Screen Size": 13, "Ethernet Chipset": None, + "Stock GPUs": [ + device_probe.Intel.Archs.Haswell + ], }, "MacBookAir7,1": { "Board ID": "Mac-9F18E312C5C2BF0B", @@ -292,6 +362,9 @@ smbios_dictionary = { "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20702_v2, "Screen Size": 11, "Ethernet Chipset": None, + "Stock GPUs": [ + device_probe.Intel.Archs.Broadwell + ], }, "MacBookAir7,2": { "Board ID": "Mac-937CB26E2E02BB01", @@ -303,6 +376,9 @@ smbios_dictionary = { "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20702_v2, "Screen Size": 13, "Ethernet Chipset": None, + "Stock GPUs": [ + device_probe.Intel.Archs.Broadwell + ], }, "MacBookAir8,1": { "Board ID": "Mac-827FAC58A8FDFA22", @@ -314,6 +390,9 @@ smbios_dictionary = { "Bluetooth Model": bluetooth_data.bluetooth_data.UART, "Screen Size": 13, "Ethernet Chipset": None, + "Stock GPUs": [ + device_probe.Intel.Archs.Coffee_Lake + ], }, "MacBookAir8,1_v2": { "Board ID": "Mac-112818653D3AABFC", @@ -325,6 +404,9 @@ smbios_dictionary = { "Bluetooth Model": bluetooth_data.bluetooth_data.UART, "Screen Size": 13, "Ethernet Chipset": None, + "Stock GPUs": [ + device_probe.Intel.Archs.Coffee_Lake + ], }, "AAPL_MacBookAir8,1": { # AppleInternal MacBookAir8,1 @@ -338,6 +420,9 @@ smbios_dictionary = { "Bluetooth Model": bluetooth_data.bluetooth_data.UART, "Screen Size": 13, "Ethernet Chipset": None, + "Stock GPUs": [ + device_probe.Intel.Archs.Coffee_Lake + ], }, "MacBookAir8,2": { "Board ID": "Mac-226CB3C6A851A671", @@ -349,6 +434,9 @@ smbios_dictionary = { "Bluetooth Model": bluetooth_data.bluetooth_data.UART, "Screen Size": 13, "Ethernet Chipset": None, + "Stock GPUs": [ + device_probe.Intel.Archs.Coffee_Lake + ], }, "MacBookAir9,1": { "Board ID": "Mac-0CFF9C7C2B63DF8D", @@ -360,6 +448,9 @@ smbios_dictionary = { "Bluetooth Model": bluetooth_data.bluetooth_data.UART, "Screen Size": 13, "Ethernet Chipset": None, + "Stock GPUs": [ + device_probe.Intel.Archs.Ice_Lake + ], }, "AAPL_MacBookAir9,1": { # AppleInternal MacBookAir9,1 @@ -373,6 +464,9 @@ smbios_dictionary = { "Bluetooth Model": bluetooth_data.bluetooth_data.UART, "Screen Size": 13, "Ethernet Chipset": None, + "Stock GPUs": [ + device_probe.Intel.Archs.Ice_Lake + ], }, "MacBookAir10,1": { "Board ID": None, @@ -383,6 +477,7 @@ smbios_dictionary = { "Wireless Model": device_probe.Broadcom.Chipsets.AppleBCMWLANBusInterfacePCIe, "Bluetooth Model": bluetooth_data.bluetooth_data.PCIe, "Ethernet Chipset": None, + "Stock GPUs": [], # TODO: Add Apple Silicon GPU }, "MacBookPro1,1": { "Board ID": "Mac-F425BEC8", @@ -395,6 +490,9 @@ smbios_dictionary = { "Screen Size": 15, "UGA Graphics": True, "Ethernet Chipset": "Marvell", + "Stock GPUs": [ + device_probe.AMD.Archs.R500 + ], }, "MacBookPro1,2": { "Board ID": "Mac-F42DBEC8", @@ -407,6 +505,9 @@ smbios_dictionary = { "Screen Size": 17, "UGA Graphics": True, "Ethernet Chipset": "Marvell", + "Stock GPUs": [ + device_probe.AMD.Archs.R500 + ], }, "MacBookPro2,1": { "Board ID": "Mac-F42189C8", @@ -419,6 +520,9 @@ smbios_dictionary = { "Screen Size": 17, "UGA Graphics": True, "Ethernet Chipset": "Marvell", + "Stock GPUs": [ + device_probe.AMD.Archs.R500 + ], }, "MacBookPro2,2": { "Board ID": "Mac-F42187C8", @@ -431,6 +535,9 @@ smbios_dictionary = { "Screen Size": 15, "UGA Graphics": True, "Ethernet Chipset": "Marvell", + "Stock GPUs": [ + device_probe.AMD.Archs.R500 + ], }, "MacBookPro3,1": { "Board ID": "Mac-F4238BC8", @@ -443,6 +550,9 @@ smbios_dictionary = { "Screen Size": 15, # Shipped with 17 as well "UGA Graphics": True, "Ethernet Chipset": "Marvell", + "Stock GPUs": [ + device_probe.NVIDIA.Archs.Tesla + ], }, "MacBookPro3,1_v2": { "Board ID": "Mac-F42388C8", @@ -455,6 +565,9 @@ smbios_dictionary = { "Screen Size": 15, # Shipped with 17 as well "UGA Graphics": True, "Ethernet Chipset": "Marvell", + "Stock GPUs": [ + device_probe.NVIDIA.Archs.Tesla + ], }, "MacBookPro4,1": { "Board ID": "Mac-F42C89C8", @@ -468,6 +581,9 @@ smbios_dictionary = { "Switchable GPUs": True, "UGA Graphics": True, "Ethernet Chipset": "Marvell", + "Stock GPUs": [ + device_probe.NVIDIA.Archs.Tesla + ], }, "MacBookPro4,1_v2": { "Board ID": "Mac-F42C86C8", @@ -481,6 +597,9 @@ smbios_dictionary = { "Switchable GPUs": True, "UGA Graphics": True, "Ethernet Chipset": "Marvell", + "Stock GPUs": [ + device_probe.NVIDIA.Archs.Tesla + ], }, "MacBookPro5,1": { "Board ID": "Mac-F42D86C8", @@ -494,6 +613,9 @@ smbios_dictionary = { "Switchable GPUs": True, "Ethernet Chipset": "Nvidia", "nForce Chipset": True, + "Stock GPUs": [ + device_probe.NVIDIA.Archs.Tesla + ], }, "MacBookPro5,1_v2": { "Board ID": "Mac-F42D86A9", @@ -507,6 +629,9 @@ smbios_dictionary = { "Switchable GPUs": True, "Ethernet Chipset": "Nvidia", "nForce Chipset": True, + "Stock GPUs": [ + device_probe.NVIDIA.Archs.Tesla + ], }, "MacBookPro5,2": { "Board ID": "Mac-F2268EC8", @@ -520,6 +645,9 @@ smbios_dictionary = { "Switchable GPUs": True, "Ethernet Chipset": "Nvidia", "nForce Chipset": True, + "Stock GPUs": [ + device_probe.NVIDIA.Archs.Tesla + ], }, "MacBookPro5,3": { "Board ID": "Mac-F22587C8", @@ -533,6 +661,9 @@ smbios_dictionary = { "Switchable GPUs": True, "Ethernet Chipset": "Nvidia", "nForce Chipset": True, + "Stock GPUs": [ + device_probe.NVIDIA.Archs.Tesla + ], }, "MacBookPro5,4": { "Board ID": "Mac-F22587A1", @@ -546,6 +677,9 @@ smbios_dictionary = { "Switchable GPUs": True, "Ethernet Chipset": "Nvidia", "nForce Chipset": True, + "Stock GPUs": [ + device_probe.NVIDIA.Archs.Tesla + ], }, "MacBookPro5,5": { "Board ID": "Mac-F2268AC8", @@ -558,6 +692,9 @@ smbios_dictionary = { "Screen Size": 13, "Ethernet Chipset": "Nvidia", "nForce Chipset": True, + "Stock GPUs": [ + device_probe.NVIDIA.Archs.Tesla + ], }, "MacBookPro6,1": { "Board ID": "Mac-F22589C8", @@ -570,6 +707,10 @@ smbios_dictionary = { "Screen Size": 17, "Switchable GPUs": True, "Ethernet Chipset": "Broadcom", + "Stock GPUs": [ + device_probe.Intel.Archs.Iron_Lake, + device_probe.NVIDIA.Archs.Tesla + ], }, "MacBookPro6,2": { "Board ID": "Mac-F22586C8", @@ -582,6 +723,10 @@ smbios_dictionary = { "Screen Size": 15, "Switchable GPUs": True, "Ethernet Chipset": "Broadcom", + "Stock GPUs": [ + device_probe.Intel.Archs.Iron_Lake, + device_probe.NVIDIA.Archs.Tesla + ], }, "MacBookPro7,1": { "Board ID": "Mac-F222BEC8", @@ -594,6 +739,9 @@ smbios_dictionary = { "Screen Size": 13, "Ethernet Chipset": "Broadcom", "nForce Chipset": True, + "Stock GPUs": [ + device_probe.NVIDIA.Archs.Tesla + ], }, "MacBookPro8,1": { "Board ID": "Mac-94245B3640C91C81", @@ -605,6 +753,10 @@ smbios_dictionary = { "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM2070, "Screen Size": 13, "Ethernet Chipset": "Broadcom", + "Stock GPUs": [ + device_probe.Intel.Archs.Sandy_Bridge, + device_probe.AMD.Archs.TeraScale_2 + ], }, "MacBookPro8,2": { "Board ID": "Mac-94245A3940C91C80", @@ -617,6 +769,10 @@ smbios_dictionary = { "Screen Size": 15, "Switchable GPUs": True, "Ethernet Chipset": "Broadcom", + "Stock GPUs": [ + device_probe.Intel.Archs.Sandy_Bridge, + device_probe.AMD.Archs.TeraScale_2 + ], }, "MacBookPro8,3": { "Board ID": "Mac-942459F5819B171B", @@ -629,6 +785,10 @@ smbios_dictionary = { "Screen Size": 17, "Switchable GPUs": True, "Ethernet Chipset": "Broadcom", + "Stock GPUs": [ + device_probe.Intel.Archs.Sandy_Bridge, + device_probe.AMD.Archs.TeraScale_2 + ], }, "AAPL_MacBookPro8,3": { # AppleInternal MacBookPro8,3 @@ -643,6 +803,10 @@ smbios_dictionary = { "Screen Size": 17, "Switchable GPUs": True, "Ethernet Chipset": "Broadcom", + "Stock GPUs": [ + device_probe.Intel.Archs.Sandy_Bridge, + device_probe.AMD.Archs.TeraScale_2 + ], }, "MacBookPro9,1": { "Board ID": "Mac-4B7AC7E43945597E", @@ -655,6 +819,10 @@ smbios_dictionary = { "Screen Size": 15, "Switchable GPUs": True, "Ethernet Chipset": "Broadcom", + "Stock GPUs": [ + device_probe.Intel.Archs.Ivy_Bridge, + device_probe.NVIDIA.Archs.Kepler + ], }, "MacBookPro9,2": { "Board ID": "Mac-6F01561E16C75D06", @@ -666,6 +834,9 @@ smbios_dictionary = { "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20702_v1, "Screen Size": 13, "Ethernet Chipset": "Broadcom", + "Stock GPUs": [ + device_probe.NVIDIA.Archs.Kepler + ], }, "MacBookPro10,1": { "Board ID": "Mac-C3EC7CD22292981F", @@ -678,6 +849,10 @@ smbios_dictionary = { "Screen Size": 15, "Switchable GPUs": True, "Ethernet Chipset": None, + "Stock GPUs": [ + device_probe.Intel.Archs.Ivy_Bridge, + device_probe.NVIDIA.Archs.Kepler + ], }, "MacBookPro10,2": { "Board ID": "Mac-AFD8A9D944EA4843", @@ -689,6 +864,9 @@ smbios_dictionary = { "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20702_v1, "Screen Size": 13, "Ethernet Chipset": None, + "Stock GPUs": [ + device_probe.NVIDIA.Archs.Kepler + ], }, "MacBookPro11,1": { "Board ID": "Mac-189A3D4F975D5FFC", @@ -700,6 +878,9 @@ smbios_dictionary = { "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20702_v2, "Screen Size": 13, "Ethernet Chipset": None, + "Stock GPUs": [ + device_probe.Intel.Archs.Haswell, + ], }, "MacBookPro11,2": { "Board ID": "Mac-3CBD00234E554E41", @@ -711,6 +892,9 @@ smbios_dictionary = { "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20702_v2, "Screen Size": 15, "Ethernet Chipset": None, + "Stock GPUs": [ + device_probe.Intel.Archs.Haswell, + ], }, "MacBookPro11,3": { "Board ID": "Mac-2BD1B31983FE1663", @@ -723,6 +907,9 @@ smbios_dictionary = { "Screen Size": 15, "Switchable GPUs": True, "Ethernet Chipset": None, + "Stock GPUs": [ + device_probe.Intel.Archs.Haswell, + ], }, "MacBookPro11,4": { "Board ID": "Mac-06F11FD93F0323C5", @@ -734,6 +921,9 @@ smbios_dictionary = { "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20702_v2, "Screen Size": 15, "Ethernet Chipset": None, + "Stock GPUs": [ + device_probe.Intel.Archs.Haswell, + ], }, "MacBookPro11,5": { "Board ID": "Mac-06F11F11946D27C5", @@ -746,6 +936,10 @@ smbios_dictionary = { "Screen Size": 15, "Switchable GPUs": True, "Ethernet Chipset": None, + "Stock GPUs": [ + device_probe.Intel.Archs.Haswell, + device_probe.AMD.Archs.Legacy_GCN_7000 + ], }, "MacBookPro12,1": { "Board ID": "Mac-E43C1C25D4880AD6", @@ -757,6 +951,9 @@ smbios_dictionary = { "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20702_v2, "Screen Size": 13, "Ethernet Chipset": None, + "Stock GPUs": [ + device_probe.Intel.Archs.Broadwell, + ], }, "MacBookPro13,1": { "Board ID": "Mac-473D31EABEB93F9B", @@ -768,6 +965,9 @@ smbios_dictionary = { "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20703_UART, "Screen Size": 13, "Ethernet Chipset": None, + "Stock GPUs": [ + device_probe.Intel.Archs.Skylake, + ], }, "MacBookPro13,2": { "Board ID": "Mac-66E35819EE2D0D05", @@ -779,6 +979,9 @@ smbios_dictionary = { "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20703_UART, "Screen Size": 13, "Ethernet Chipset": None, + "Stock GPUs": [ + device_probe.Intel.Archs.Skylake, + ], }, "MacBookPro13,3": { "Board ID": "Mac-A5C67F76ED83108C", @@ -791,6 +994,10 @@ smbios_dictionary = { "Screen Size": 15, "Switchable GPUs": True, "Ethernet Chipset": None, + "Stock GPUs": [ + device_probe.Intel.Archs.Skylake, + device_probe.AMD.Archs.Polaris + ], }, "MacBookPro14,1": { "Board ID": "Mac-B4831CEBD52A0C4C", @@ -802,6 +1009,9 @@ smbios_dictionary = { "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20703_UART, "Screen Size": 13, "Ethernet Chipset": None, + "Stock GPUs": [ + device_probe.Intel.Archs.Kaby_Lake, + ], }, "MacBookPro14,2": { "Board ID": "Mac-CAD6701F7CEA0921", @@ -813,6 +1023,9 @@ smbios_dictionary = { "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20703_UART, "Screen Size": 13, "Ethernet Chipset": None, + "Stock GPUs": [ + device_probe.Intel.Archs.Kaby_Lake, + ], }, "MacBookPro14,3": { "Board ID": "Mac-551B86E5744E2388", @@ -825,6 +1038,10 @@ smbios_dictionary = { "Screen Size": 15, "Switchable GPUs": True, "Ethernet Chipset": None, + "Stock GPUs": [ + device_probe.Intel.Archs.Kaby_Lake, + device_probe.AMD.Archs.Polaris + ], }, "MacBookPro15,1": { "Board ID": "Mac-937A206F2EE63C01", @@ -837,6 +1054,10 @@ smbios_dictionary = { "Screen Size": 15, "Switchable GPUs": True, "Ethernet Chipset": None, + "Stock GPUs": [ + device_probe.Intel.Archs.Coffee_Lake, + device_probe.AMD.Archs.Polaris + ], }, "MacBookPro15,2": { "Board ID": "Mac-827FB448E656EC26", @@ -848,6 +1069,9 @@ smbios_dictionary = { "Bluetooth Model": bluetooth_data.bluetooth_data.UART, "Screen Size": 13, "Ethernet Chipset": None, + "Stock GPUs": [ + device_probe.Intel.Archs.Coffee_Lake, + ], }, "MacBookPro15,3": { "Board ID": "Mac-1E7E29AD0135F9BC", @@ -860,6 +1084,10 @@ smbios_dictionary = { "Screen Size": 15, "Switchable GPUs": True, "Ethernet Chipset": None, + "Stock GPUs": [ + device_probe.Intel.Archs.Coffee_Lake, + device_probe.AMD.Archs.Vega + ], }, "MacBookPro15,4": { "Board ID": "Mac-53FDB3D8DB8CA971", @@ -871,6 +1099,9 @@ smbios_dictionary = { "Bluetooth Model": bluetooth_data.bluetooth_data.UART, "Screen Size": 13, "Ethernet Chipset": None, + "Stock GPUs": [ + device_probe.Intel.Archs.Coffee_Lake, + ], }, "MacBookPro16,1": { "Board ID": "Mac-E1008331FDC96864", @@ -883,17 +1114,24 @@ smbios_dictionary = { "Screen Size": 16, "Switchable GPUs": True, "Ethernet Chipset": None, + "Stock GPUs": [ + device_probe.Intel.Archs.Coffee_Lake, + device_probe.AMD.Archs.Navi + ], }, "MacBookPro16,2": { "Board ID": "Mac-5F9802EFE386AA28", "FirmwareFeatures": "0xFFAFF06E", "SecureBootModel": "j214k", - "CPU Generation": cpu_data.cpu_data.coffee_lake.value, + "CPU Generation": cpu_data.cpu_data.ice_lake.value, "Max OS Supported": os_data.os_data.max_os, "Wireless Model": device_probe.Broadcom.Chipsets.AppleBCMWLANBusInterfacePCIe, "Bluetooth Model": bluetooth_data.bluetooth_data.UART, "Screen Size": 13, "Ethernet Chipset": None, + "Stock GPUs": [ + device_probe.Intel.Archs.Ice_Lake, + ], }, "MacBookPro16,3": { "Board ID": "Mac-E7203C0F68AA0004", @@ -905,6 +1143,9 @@ smbios_dictionary = { "Bluetooth Model": bluetooth_data.bluetooth_data.UART, "Screen Size": 13, "Ethernet Chipset": None, + "Stock GPUs": [ + device_probe.Intel.Archs.Coffee_Lake, + ], }, "MacBookPro16,4": { "Board ID": "Mac-A61BADE1FDAD7B05", @@ -917,6 +1158,10 @@ smbios_dictionary = { "Screen Size": 16, "Switchable GPUs": True, "Ethernet Chipset": None, + "Stock GPUs": [ + device_probe.Intel.Archs.Coffee_Lake, + device_probe.AMD.Archs.Navi + ], }, "MacBookPro17,1": { "Board ID": None, @@ -927,6 +1172,7 @@ smbios_dictionary = { "Wireless Model": device_probe.Broadcom.Chipsets.AppleBCMWLANBusInterfacePCIe, "Bluetooth Model": bluetooth_data.bluetooth_data.PCIe, "Ethernet Chipset": None, + "Stock GPUs": [], }, "Macmini1,1": { "Board ID": "Mac-F4208EC8", @@ -937,6 +1183,9 @@ smbios_dictionary = { "Wireless Model": device_probe.Atheros.Chipsets.AirPortAtheros40, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM2045, "Ethernet Chipset": "Marvell", + "Stock GPUs": [ + device_probe.Intel.Archs.GMA_950 + ], }, "Macmini2,1": { "Board ID": "Mac-F4208EAA", @@ -947,6 +1196,9 @@ smbios_dictionary = { "Wireless Model": device_probe.Atheros.Chipsets.AirPortAtheros40, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM2045, "Ethernet Chipset": "Marvell", + "Stock GPUs": [ + device_probe.Intel.Archs.GMA_950 + ], }, "Macmini3,1": { "Board ID": "Mac-F22C86C8", @@ -958,6 +1210,9 @@ smbios_dictionary = { "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM2046, "Ethernet Chipset": "Nvidia", "nForce Chipset": True, + "Stock GPUs": [ + device_probe.NVIDIA.Archs.Tesla + ], }, "Macmini4,1": { "Board ID": "Mac-F2208EC8", @@ -968,6 +1223,9 @@ smbios_dictionary = { "Wireless Model": device_probe.Broadcom.Chipsets.AirPortBrcm4360, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM2070, "Ethernet Chipset": "Broadcom", + "Stock GPUs": [ + device_probe.NVIDIA.Archs.Tesla + ], }, "Macmini5,1": { "Board ID": "Mac-8ED6AF5B48C039E1", @@ -978,6 +1236,9 @@ smbios_dictionary = { "Wireless Model": device_probe.Broadcom.Chipsets.AirPortBrcm4360, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM2070, "Ethernet Chipset": "Broadcom", + "Stock GPUs": [ + device_probe.Intel.Archs.Sandy_Bridge + ], }, "Macmini5,2": { "Board ID": "Mac-4BC72D62AD45599E", @@ -988,6 +1249,10 @@ smbios_dictionary = { "Wireless Model": device_probe.Broadcom.Chipsets.AirPortBrcm4360, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM2070, "Ethernet Chipset": "Broadcom", + "Stock GPUs": [ + device_probe.Intel.Archs.Sandy_Bridge, + device_probe.AMD.Archs.TeraScale_2 + ], }, "Macmini5,3": { "Board ID": "Mac-7BA5B2794B2CDB12", @@ -998,6 +1263,9 @@ smbios_dictionary = { "Wireless Model": device_probe.Broadcom.Chipsets.AirPortBrcm4360, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM2070, "Ethernet Chipset": "Broadcom", + "Stock GPUs": [ + device_probe.Intel.Archs.Sandy_Bridge, + ], }, "Macmini6,1": { "Board ID": "Mac-031AEE4D24BFF0B1", @@ -1008,6 +1276,9 @@ smbios_dictionary = { "Wireless Model": device_probe.Broadcom.Chipsets.AirPortBrcm4360, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20702_v1, "Ethernet Chipset": "Broadcom", + "Stock GPUs": [ + device_probe.Intel.Archs.Ivy_Bridge, + ], }, "Macmini6,2": { "Board ID": "Mac-F65AE981FFA204ED", @@ -1018,6 +1289,9 @@ smbios_dictionary = { "Wireless Model": device_probe.Broadcom.Chipsets.AirPortBrcm4360, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20702_v1, "Ethernet Chipset": "Broadcom", + "Stock GPUs": [ + device_probe.Intel.Archs.Ivy_Bridge, + ], }, "Macmini7,1": { "Board ID": "Mac-35C5E08120C7EEAF", @@ -1028,6 +1302,9 @@ smbios_dictionary = { "Wireless Model": device_probe.Broadcom.Chipsets.AirportBrcmNIC, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20702_v2, "Ethernet Chipset": "Broadcom", + "Stock GPUs": [ + device_probe.Intel.Archs.Haswell, + ], }, "Macmini8,1": { "Board ID": "Mac-7BA5B2DFE22DDD8C", @@ -1038,6 +1315,9 @@ smbios_dictionary = { "Wireless Model": device_probe.Broadcom.Chipsets.AppleBCMWLANBusInterfacePCIe, "Bluetooth Model": bluetooth_data.bluetooth_data.UART, "Ethernet Chipset": "Broadcom", + "Stock GPUs": [ + device_probe.Intel.Archs.Coffee_Lake, + ], }, "Macmini9,1": { "Board ID": None, @@ -1048,6 +1328,7 @@ smbios_dictionary = { "Wireless Model": device_probe.Broadcom.Chipsets.AppleBCMWLANBusInterfacePCIe, "Bluetooth Model": bluetooth_data.bluetooth_data.PCIe, "Ethernet Chipset": "Broadcom", + "Stock GPUs": [], }, "iMac4,1": { "Board ID": "Mac-F42786C8", @@ -1059,6 +1340,9 @@ smbios_dictionary = { "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM2045, "UGA Graphics": True, "Ethernet Chipset": "Marvell", + "Stock GPUs": [ + device_probe.AMD.Archs.R500, + ], }, "iMac4,2": { "Board ID": "Mac-F4218EC8", @@ -1070,6 +1354,9 @@ smbios_dictionary = { "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM2045, "UGA Graphics": True, "Ethernet Chipset": "Marvell", + "Stock GPUs": [ + device_probe.Intel.Archs.GMA_950, + ], }, "iMac5,1": { "Board ID": "Mac-F4228EC8", @@ -1081,6 +1368,9 @@ smbios_dictionary = { "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM2046, "UGA Graphics": True, "Ethernet Chipset": "Marvell", + "Stock GPUs": [ + device_probe.AMD.Archs.R500, + ], }, "iMac5,2": { "Board ID": "Mac-F4218EC8", @@ -1092,6 +1382,9 @@ smbios_dictionary = { "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM2046, "UGA Graphics": True, "Ethernet Chipset": "Marvell", + "Stock GPUs": [ + device_probe.Intel.Archs.GMA_950, + ], }, "iMac6,1": { "Board ID": "Mac-F4218FC8", @@ -1103,6 +1396,10 @@ smbios_dictionary = { "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM2046, "UGA Graphics": True, "Ethernet Chipset": "Marvell", + "Stock GPUs": [ + device_probe.AMD.Archs.R500, + device_probe.NVIDIA.Archs.Curie + ], }, "iMac7,1": { "Board ID": "Mac-F42386C8", @@ -1114,6 +1411,10 @@ smbios_dictionary = { "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM2046, "UGA Graphics": True, "Ethernet Chipset": "Marvell", + "Stock GPUs": [ + device_probe.AMD.Archs.TeraScale_1, + device_probe.NVIDIA.Archs.Tesla, + ], }, "iMac7,1_v2": { "Board ID": "Mac-F4238CC8", @@ -1125,6 +1426,10 @@ smbios_dictionary = { "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM2046, "UGA Graphics": True, "Ethernet Chipset": "Marvell", + "Stock GPUs": [ + device_probe.AMD.Archs.TeraScale_1, + device_probe.NVIDIA.Archs.Tesla, + ], }, "iMac8,1": { "Board ID": "Mac-F227BEC8", @@ -1136,6 +1441,10 @@ smbios_dictionary = { "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM2046, "UGA Graphics": True, "Ethernet Chipset": "Marvell", + "Stock GPUs": [ + device_probe.AMD.Archs.TeraScale_1, + device_probe.NVIDIA.Archs.Tesla, + ], }, "iMac8,1_v2": { "Board ID": "Mac-F226BEC8", @@ -1147,6 +1456,10 @@ smbios_dictionary = { "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM2046, "UGA Graphics": True, "Ethernet Chipset": "Marvell", + "Stock GPUs": [ + device_probe.AMD.Archs.TeraScale_1, + device_probe.NVIDIA.Archs.Tesla, + ], }, "iMac9,1": { "Board ID": "Mac-F2218FA9", @@ -1158,6 +1471,9 @@ smbios_dictionary = { "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM2046, "Ethernet Chipset": "Nvidia", "nForce Chipset": True, + "Stock GPUs": [ + device_probe.NVIDIA.Archs.Tesla, + ], }, "iMac9,1_v2": { "Board ID": "Mac-F2218EA9", @@ -1169,6 +1485,9 @@ smbios_dictionary = { "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM2046, "Ethernet Chipset": "Nvidia", "nForce Chipset": True, + "Stock GPUs": [ + device_probe.NVIDIA.Archs.Tesla, + ], }, "iMac9,1_v3": { "Board ID": "Mac-F2218EC8", @@ -1180,6 +1499,9 @@ smbios_dictionary = { "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM2046, "Ethernet Chipset": "Nvidia", "nForce Chipset": True, + "Stock GPUs": [ + device_probe.NVIDIA.Archs.Tesla, + ], }, "iMac9,1_v4": { "Board ID": "Mac-F2218FC8", @@ -1191,6 +1513,9 @@ smbios_dictionary = { "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM2046, "Ethernet Chipset": "Nvidia", "nForce Chipset": True, + "Stock GPUs": [ + device_probe.NVIDIA.Archs.Tesla, + ], }, "iMac10,1": { "Board ID": "Mac-F221DCC8", @@ -1203,6 +1528,9 @@ smbios_dictionary = { "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM2046, "Ethernet Chipset": "Nvidia", "nForce Chipset": True, + "Stock GPUs": [ + device_probe.NVIDIA.Archs.Tesla, + ], }, "iMac10,1_v2": { "Board ID": "Mac-F2268CC8", @@ -1214,6 +1542,9 @@ smbios_dictionary = { "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM2046, "Ethernet Chipset": "Nvidia", "nForce Chipset": True, + "Stock GPUs": [ + device_probe.NVIDIA.Archs.Tesla, + ], }, "iMac10,1_v3": { "Board ID": "Mac-F2268DC8", @@ -1225,6 +1556,9 @@ smbios_dictionary = { "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM2046, "Ethernet Chipset": "Nvidia", "nForce Chipset": True, + "Stock GPUs": [ + device_probe.NVIDIA.Archs.Tesla, + ], }, "iMac11,1": { "Board ID": "Mac-F2268DAE", @@ -1235,6 +1569,9 @@ smbios_dictionary = { "Wireless Model": device_probe.Atheros.Chipsets.AirPortAtheros40, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM2046, "Ethernet Chipset": "Broadcom", + "Stock GPUs": [ + device_probe.AMD.Archs.TeraScale_1, + ], }, "iMac11,2": { "Board ID": "Mac-F2238AC8", @@ -1245,6 +1582,10 @@ smbios_dictionary = { "Wireless Model": device_probe.Atheros.Chipsets.AirPortAtheros40, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM2046, "Ethernet Chipset": "Broadcom", + "Stock GPUs": [ + device_probe.AMD.Archs.TeraScale_1, + device_probe.AMD.Archs.TeraScale_2, + ], }, "iMac11,3": { "Board ID": "Mac-F2238BAE", @@ -1255,6 +1596,10 @@ smbios_dictionary = { "Wireless Model": device_probe.Atheros.Chipsets.AirPortAtheros40, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM2046, "Ethernet Chipset": "Broadcom", + "Stock GPUs": [ + device_probe.AMD.Archs.TeraScale_1, + device_probe.AMD.Archs.TeraScale_2, + ], }, "iMac12,1": { "Board ID": "Mac-942B5BF58194151B", @@ -1265,6 +1610,10 @@ smbios_dictionary = { "Wireless Model": device_probe.Atheros.Chipsets.AirPortAtheros40, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM2046, "Ethernet Chipset": "Broadcom", + "Stock GPUs": [ + device_probe.Intel.Archs.Sandy_Bridge, + device_probe.AMD.Archs.TeraScale_2, + ], }, "iMac12,2": { "Board ID": "Mac-942B59F58194171B", @@ -1275,6 +1624,10 @@ smbios_dictionary = { "Wireless Model": device_probe.Atheros.Chipsets.AirPortAtheros40, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM2046, "Ethernet Chipset": "Broadcom", + "Stock GPUs": [ + device_probe.Intel.Archs.Sandy_Bridge, + device_probe.AMD.Archs.TeraScale_2, + ], }, "AAPL_iMac12,2": { # AppleInternal iMac12,2 @@ -1287,6 +1640,10 @@ smbios_dictionary = { "Wireless Model": device_probe.Atheros.Chipsets.AirPortAtheros40, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM2046, "Ethernet Chipset": "Broadcom", + "Stock GPUs": [ + device_probe.Intel.Archs.Sandy_Bridge, + device_probe.AMD.Archs.TeraScale_2, + ], }, "iMac13,1": { "Board ID": "Mac-00BE6ED71E35EB86", @@ -1297,6 +1654,10 @@ smbios_dictionary = { "Wireless Model": device_probe.Broadcom.Chipsets.AirPortBrcm4360, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20702_v1, "Ethernet Chipset": "Broadcom", + "Stock GPUs": [ + device_probe.Intel.Archs.Ivy_Bridge, + device_probe.NVIDIA.Archs.Kepler, + ], }, "iMac13,2": { "Board ID": "Mac-FC02E91DDD3FA6A4", @@ -1307,6 +1668,10 @@ smbios_dictionary = { "Wireless Model": device_probe.Broadcom.Chipsets.AirPortBrcm4360, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20702_v1, "Ethernet Chipset": "Broadcom", + "Stock GPUs": [ + device_probe.Intel.Archs.Ivy_Bridge, + device_probe.NVIDIA.Archs.Kepler, + ], }, "iMac13,3": { "Board ID": "Mac-7DF2A3B5E5D671ED", @@ -1317,6 +1682,10 @@ smbios_dictionary = { "Wireless Model": device_probe.Broadcom.Chipsets.AirPortBrcm4360, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20702_v1, "Ethernet Chipset": "Broadcom", + "Stock GPUs": [ + device_probe.Intel.Archs.Ivy_Bridge, + device_probe.NVIDIA.Archs.Kepler, + ], }, "iMac14,1": { "Board ID": "Mac-031B6874CF7F642A", @@ -1327,6 +1696,10 @@ smbios_dictionary = { "Wireless Model": device_probe.Broadcom.Chipsets.AirportBrcmNIC, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20702_v2, "Ethernet Chipset": "Broadcom", + "Stock GPUs": [ + device_probe.Intel.Archs.Haswell, + device_probe.NVIDIA.Archs.Kepler, + ], }, "iMac14,2": { "Board ID": "Mac-27ADBB7B4CEE8E61", @@ -1337,6 +1710,10 @@ smbios_dictionary = { "Wireless Model": device_probe.Broadcom.Chipsets.AirportBrcmNIC, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20702_v2, "Ethernet Chipset": "Broadcom", + "Stock GPUs": [ + device_probe.Intel.Archs.Haswell, + device_probe.NVIDIA.Archs.Kepler, + ], }, "iMac14,3": { "Board ID": "Mac-77EB7D7DAF985301", @@ -1347,6 +1724,10 @@ smbios_dictionary = { "Wireless Model": device_probe.Broadcom.Chipsets.AirportBrcmNIC, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20702_v2, "Ethernet Chipset": "Broadcom", + "Stock GPUs": [ + device_probe.Intel.Archs.Haswell, + device_probe.NVIDIA.Archs.Kepler, + ], }, "iMac14,4": { "Board ID": "Mac-81E3E92DD6088272", @@ -1357,6 +1738,9 @@ smbios_dictionary = { "Wireless Model": device_probe.Broadcom.Chipsets.AirportBrcmNIC, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20702_v2, "Ethernet Chipset": "Broadcom", + "Stock GPUs": [ + device_probe.Intel.Archs.Haswell, + ], }, "iMac15,1": { "Board ID": "Mac-42FD25EABCABB274", @@ -1367,6 +1751,10 @@ smbios_dictionary = { "Wireless Model": device_probe.Broadcom.Chipsets.AirportBrcmNIC, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20702_v2, "Ethernet Chipset": "Broadcom", + "Stock GPUs": [ + device_probe.Intel.Archs.Haswell, + device_probe.AMD.Archs.Legacy_GCN_7000, + ], }, "iMac15,1_v2": { "Board ID": "Mac-FA842E06C61E91C5", @@ -1377,6 +1765,10 @@ smbios_dictionary = { "Wireless Model": device_probe.Broadcom.Chipsets.AirportBrcmNIC, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20702_v2, "Ethernet Chipset": "Broadcom", + "Stock GPUs": [ + device_probe.Intel.Archs.Haswell, + device_probe.AMD.Archs.Legacy_GCN_7000, + ], }, "iMac16,1": { "Board ID": "Mac-A369DDC4E67F1C45", @@ -1387,6 +1779,9 @@ smbios_dictionary = { "Wireless Model": device_probe.Broadcom.Chipsets.AirportBrcmNIC, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20702_v2, "Ethernet Chipset": "Broadcom", + "Stock GPUs": [ + device_probe.Intel.Archs.Broadwell, + ], }, "iMac16,2": { "Board ID": "Mac-FFE5EF870D7BA81A", @@ -1397,6 +1792,9 @@ smbios_dictionary = { "Wireless Model": device_probe.Broadcom.Chipsets.AirportBrcmNIC, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20702_v2, "Ethernet Chipset": "Broadcom", + "Stock GPUs": [ + device_probe.Intel.Archs.Broadwell, + ], }, "iMac17,1": { "Board ID": "Mac-DB15BD556843C820", @@ -1409,6 +1807,10 @@ smbios_dictionary = { "Wireless Model": device_probe.Broadcom.Chipsets.AirportBrcmNIC, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20702_v2, "Ethernet Chipset": "Broadcom", + "Stock GPUs": [ + device_probe.Intel.Archs.Skylake, + device_probe.AMD.Archs.Legacy_GCN_9000, + ], }, "iMac17,1_v2": { "Board ID": "Mac-65CE76090165799A", @@ -1420,6 +1822,10 @@ smbios_dictionary = { "Wireless Model": device_probe.Broadcom.Chipsets.AirportBrcmNIC, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20702_v2, "Ethernet Chipset": "Broadcom", + "Stock GPUs": [ + device_probe.Intel.Archs.Skylake, + device_probe.AMD.Archs.Legacy_GCN_9000, + ], }, "iMac17,1_v3": { "Board ID": "Mac-B809C3757DA9BB8D", @@ -1430,6 +1836,10 @@ smbios_dictionary = { "Wireless Model": device_probe.Broadcom.Chipsets.AirportBrcmNIC, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20702_v2, "Ethernet Chipset": "Broadcom", + "Stock GPUs": [ + device_probe.Intel.Archs.Skylake, + device_probe.AMD.Archs.Legacy_GCN_9000, + ], }, "iMac18,1": { "Board ID": "Mac-4B682C642B45593E", @@ -1440,6 +1850,9 @@ smbios_dictionary = { "Wireless Model": device_probe.Broadcom.Chipsets.AirportBrcmNIC, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20703, "Ethernet Chipset": "Broadcom", + "Stock GPUs": [ + device_probe.Intel.Archs.Kaby_Lake, + ], }, "iMac18,2": { "Board ID": "Mac-77F17D7DA9285301", @@ -1450,6 +1863,10 @@ smbios_dictionary = { "Wireless Model": device_probe.Broadcom.Chipsets.AirportBrcmNIC, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20703, "Ethernet Chipset": "Broadcom", + "Stock GPUs": [ + device_probe.Intel.Archs.Kaby_Lake, + device_probe.AMD.Archs.Polaris, + ], }, "iMac18,3": { "Board ID": "Mac-BE088AF8C5EB4FA2", @@ -1460,6 +1877,10 @@ smbios_dictionary = { "Wireless Model": device_probe.Broadcom.Chipsets.AirportBrcmNIC, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20703, "Ethernet Chipset": "Broadcom", + "Stock GPUs": [ + device_probe.Intel.Archs.Kaby_Lake, + device_probe.AMD.Archs.Polaris, + ], }, "iMac19,1": { "Board ID": "Mac-AA95B1DDAB278B95", @@ -1470,6 +1891,11 @@ smbios_dictionary = { "Wireless Model": device_probe.Broadcom.Chipsets.AppleBCMWLANBusInterfacePCIe, "Bluetooth Model": bluetooth_data.bluetooth_data.UART, "Ethernet Chipset": "Broadcom", + "Stock GPUs": [ + device_probe.Intel.Archs.Coffee_Lake, + device_probe.AMD.Archs.Polaris, + device_probe.AMD.Archs.Vega, + ], }, "AAPL_iMac19,1": { # AppleInternal iMac19,1 unit @@ -1481,6 +1907,11 @@ smbios_dictionary = { "Wireless Model": device_probe.Broadcom.Chipsets.AppleBCMWLANBusInterfacePCIe, "Bluetooth Model": bluetooth_data.bluetooth_data.UART, "Ethernet Chipset": "Broadcom", + "Stock GPUs": [ + device_probe.Intel.Archs.Coffee_Lake, + device_probe.AMD.Archs.Polaris, + device_probe.AMD.Archs.Vega, + ], }, "iMac19,2": { "Board ID": "Mac-63001698E7A34814", @@ -1491,6 +1922,11 @@ smbios_dictionary = { "Wireless Model": device_probe.Broadcom.Chipsets.AppleBCMWLANBusInterfacePCIe, "Bluetooth Model": bluetooth_data.bluetooth_data.UART, "Ethernet Chipset": "Broadcom", + "Stock GPUs": [ + device_probe.Intel.Archs.Coffee_Lake, + device_probe.AMD.Archs.Polaris, + device_probe.AMD.Archs.Vega, + ], }, "iMac20,1": { "Board ID": "Mac-CFF7D910A743CAAF", @@ -1501,6 +1937,10 @@ smbios_dictionary = { "Wireless Model": device_probe.Broadcom.Chipsets.AppleBCMWLANBusInterfacePCIe, "Bluetooth Model": bluetooth_data.bluetooth_data.UART, "Ethernet Chipset": "Broadcom", + "Stock GPUs": [ + device_probe.Intel.Archs.Comet_Lake, + device_probe.AMD.Archs.Navi, + ], }, "iMac20,2": { "Board ID": "Mac-AF89B6D9451A490B", @@ -1511,6 +1951,10 @@ smbios_dictionary = { "Wireless Model": device_probe.Broadcom.Chipsets.AppleBCMWLANBusInterfacePCIe, "Bluetooth Model": bluetooth_data.bluetooth_data.UART, "Ethernet Chipset": "Broadcom", + "Stock GPUs": [ + device_probe.Intel.Archs.Comet_Lake, + device_probe.AMD.Archs.Navi, + ], }, "iMac21,1": { "Board ID": None, @@ -1521,6 +1965,7 @@ smbios_dictionary = { "Wireless Model": device_probe.Broadcom.Chipsets.AppleBCMWLANBusInterfacePCIe, "Bluetooth Model": bluetooth_data.bluetooth_data.PCIe, "Ethernet Chipset": "Broadcom", + "Stock GPUs": [], }, "iMac21,2": { "Board ID": None, @@ -1531,6 +1976,7 @@ smbios_dictionary = { "Wireless Model": device_probe.Broadcom.Chipsets.AppleBCMWLANBusInterfacePCIe, "Bluetooth Model": bluetooth_data.bluetooth_data.PCIe, "Ethernet Chipset": "Broadcom", + "Stock GPUs": [], }, "iMacPro1,1": { "Board ID": "Mac-7BA5B2D9E42DDD94", @@ -1541,6 +1987,9 @@ smbios_dictionary = { "Wireless Model": device_probe.Broadcom.Chipsets.AppleBCMWLANBusInterfacePCIe, "Bluetooth Model": bluetooth_data.bluetooth_data.UART, "Ethernet Chipset": "Broadcom", + "Stock GPUs": [ + device_probe.AMD.Archs.Vega, + ], }, "MacPro1,1": { "Board ID": "Mac-F4208DC8", @@ -1552,6 +2001,9 @@ smbios_dictionary = { "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM2045, "UGA Graphics": True, "Ethernet Chipset": "Intel 80003ES2LAN", + "Stock GPUs": [ + device_probe.NVIDIA.Archs.Curie + ], }, "MacPro2,1": { "Board ID": "Mac-F4208DA9", @@ -1563,6 +2015,9 @@ smbios_dictionary = { "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM2045, "UGA Graphics": True, "Ethernet Chipset": "Intel 80003ES2LAN", + "Stock GPUs": [ + device_probe.NVIDIA.Archs.Curie + ], }, "MacPro3,1": { "Board ID": "Mac-F42C88C8", @@ -1574,6 +2029,9 @@ smbios_dictionary = { "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM2045, "UGA Graphics": True, "Ethernet Chipset": "Intel 80003ES2LAN", + "Stock GPUs": [ + device_probe.AMD.Archs.TeraScale_1 + ], }, "MacPro4,1": { "Board ID": "Mac-F221BEC8", @@ -1584,6 +2042,9 @@ smbios_dictionary = { "Wireless Model": device_probe.Atheros.Chipsets.AirPortAtheros40, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM2046, "Ethernet Chipset": "Intel 82574L", + "Stock GPUs": [ + device_probe.NVIDIA.Archs.Tesla + ], }, "MacPro5,1": { "Board ID": "Mac-F221BEC8", @@ -1594,6 +2055,9 @@ smbios_dictionary = { "Wireless Model": device_probe.Broadcom.Chipsets.AirPortBrcm4331, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM2046, "Ethernet Chipset": "Intel 82574L", + "Stock GPUs": [ + device_probe.AMD.Archs.TeraScale_2 + ], }, "MacPro6,1": { "Board ID": "Mac-F60DEB81FF30ACF6", @@ -1604,6 +2068,9 @@ smbios_dictionary = { "Wireless Model": device_probe.Broadcom.Chipsets.AirportBrcmNIC, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20702_v2, "Ethernet Chipset": "Broadcom", + "Stock GPUs": [ + device_probe.AMD.Archs.Legacy_GCN_7000 + ], }, "MacPro7,1": { "Board ID": "Mac-27AD2F918AE68F61", @@ -1614,6 +2081,11 @@ smbios_dictionary = { "Wireless Model": device_probe.Broadcom.Chipsets.AppleBCMWLANBusInterfacePCIe, "Bluetooth Model": bluetooth_data.bluetooth_data.UART, "Ethernet Chipset": "Broadcom", + "Stock GPUs": [ + device_probe.AMD.Archs.Polaris, + device_probe.AMD.Archs.Vega, + device_probe.AMD.Archs.Navi + ], }, "Xserve1,1": { "Board ID": "Mac-F4208AC8", @@ -1625,6 +2097,9 @@ smbios_dictionary = { "Bluetooth Model": bluetooth_data.bluetooth_data.NonApplicable, "UGA Graphics": True, "Ethernet Chipset": "Intel 80003ES2LAN", + "Stock GPUs": [ + device_probe.AMD.Archs.R500 + ], }, "Xserve2,1": { "Board ID": "Mac-F42289C8", @@ -1636,6 +2111,9 @@ smbios_dictionary = { "Bluetooth Model": bluetooth_data.bluetooth_data.NonApplicable, "UGA Graphics": True, "Ethernet Chipset": "Intel 80003ES2LAN", + "Stock GPUs": [ + device_probe.AMD.Archs.R500 + ], }, "Xserve3,1": { "Board ID": "Mac-F223BEC8", @@ -1646,6 +2124,9 @@ smbios_dictionary = { "Wireless Model": None, "Bluetooth Model": bluetooth_data.bluetooth_data.NonApplicable, "Ethernet Chipset": "Intel 82574L", + "Stock GPUs": [ + device_probe.NVIDIA.Archs.Tesla + ], }, "ADP3,2": { "Board ID": None, @@ -1656,6 +2137,7 @@ smbios_dictionary = { "Wireless Model": device_probe.Broadcom.Chipsets.AppleBCMWLANBusInterfacePCIe, "Bluetooth Model": bluetooth_data.bluetooth_data.PCIe, "Ethernet Chipset": "Broadcom", + "Stock GPUs": [], }, "AAPLJ53,1": { # AppleInternal MacBookPro11,4 @@ -1666,6 +2148,10 @@ smbios_dictionary = { "Max OS Supported": os_data.os_data.mavericks, "Wireless Model": device_probe.Broadcom.Chipsets.AirportBrcmNIC, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20702_v2, + "Stock GPUs": [ + device_probe.Intel.Archs.Haswell, + ], + }, "Intel Virtual Machine": { "Board ID": "VMM-x86_64", @@ -1675,6 +2161,7 @@ smbios_dictionary = { "Max OS Supported": os_data.os_data.max_os, "Wireless Model": None, "Bluetooth Model": bluetooth_data.bluetooth_data.NonApplicable, + "Stock GPUs": [], }, "VirtualMac1,1": { # Apple Silicon Virtual Machine @@ -1685,6 +2172,7 @@ smbios_dictionary = { "Max OS Supported": os_data.os_data.max_os, "Wireless Model": None, "Bluetooth Model": bluetooth_data.bluetooth_data.NonApplicable, + "Stock GPUs": [], }, "VirtualMac2,1": { # Apple Silicon Virtual Machine @@ -1695,6 +2183,7 @@ smbios_dictionary = { "Max OS Supported": os_data.os_data.max_os, "Wireless Model": None, "Bluetooth Model": bluetooth_data.bluetooth_data.NonApplicable, + "Stock GPUs": [], }, "iBridge2,11": { # Unknown ID, Intel based, present in Monterey @@ -1705,6 +2194,7 @@ smbios_dictionary = { "Max OS Supported": os_data.os_data.max_os, "Wireless Model": None, "Bluetooth Model": bluetooth_data.bluetooth_data.NonApplicable, + "Stock GPUs": [], }, "iBridge2,13": { # Unknown ID, Intel based, present in Monterey @@ -1715,5 +2205,6 @@ smbios_dictionary = { "Max OS Supported": os_data.os_data.max_os, "Wireless Model": None, "Bluetooth Model": bluetooth_data.bluetooth_data.NonApplicable, + "Stock GPUs": [], }, } From f9c1d96aea9f25e22cc3f937e4dfadae4455ef96 Mon Sep 17 00:00:00 2001 From: Mykola Grymalyuk Date: Wed, 13 Oct 2021 15:06:43 -0600 Subject: [PATCH 6/9] Fix ADP3,2 ID --- data/smbios_data.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/data/smbios_data.py b/data/smbios_data.py index 5222bab74..14e13c433 100644 --- a/data/smbios_data.py +++ b/data/smbios_data.py @@ -2131,7 +2131,7 @@ smbios_dictionary = { "ADP3,2": { "Board ID": None, "FirmwareFeatures": None, - "SecureBootModel": "j293", + "SecureBootModel": "j273a", "CPU Generation": cpu_data.cpu_data.apple_dtk.value, "Max OS Supported": os_data.os_data.max_os, "Wireless Model": device_probe.Broadcom.Chipsets.AppleBCMWLANBusInterfacePCIe, From f58de2e000fb4efdb642d1c933e00a0718ff1561 Mon Sep 17 00:00:00 2001 From: Mykola Grymalyuk Date: Thu, 14 Oct 2021 19:05:34 -0600 Subject: [PATCH 7/9] Sync PatcherSupportPkg Closes https://github.com/dortania/OpenCore-Legacy-Patcher/issues/569 --- CHANGELOG.md | 2 +- resources/constants.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 651e615a6..11d3a40b9 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -26,7 +26,7 @@ - Add Legacy GMUX patchsets - Applicable for dual GPU MacBookPro5,x and demuxed MacBookPro8,x - Increment Binaries: - - PatcherSupportPkg 0.1.6 release + - PatcherSupportPkg 0.1.7 release - RestrictEvents 1.0.5 rolling (2430ed0) - Limit MacBookPro6,2 G State - Works around crashing when switching GPUs diff --git a/resources/constants.py b/resources/constants.py index 08702bbc4..257729c2b 100644 --- a/resources/constants.py +++ b/resources/constants.py @@ -14,7 +14,7 @@ class Constants: def __init__(self): # Patcher Versioning self.patcher_version = "0.3.0" # OpenCore-Legacy-Patcher - self.patcher_support_pkg_version = "0.1.6" # PatcherSupportPkg + self.patcher_support_pkg_version = "0.1.7" # PatcherSupportPkg self.url_patcher_support_pkg = "https://github.com/dortania/PatcherSupportPkg/releases/download/" self.nightly_url_patcher_support_pkg = "https://nightly.link/dortania/PatcherSupportPkg/workflows/build/master/" From fa89865552dadef0912583526fa3dd93513dcdab Mon Sep 17 00:00:00 2001 From: Mykola Grymalyuk Date: Fri, 15 Oct 2021 09:23:05 -0600 Subject: [PATCH 8/9] Fix Beta 10 Bluetooth --- CHANGELOG.md | 2 + .../Acidanthera/BlueToolFixup-v2.6.1.zip | Bin 11976 -> 10247 bytes .../Kexts/Acidanthera/BlueToolFixup.patch | 44 +++++++++++++++++- 3 files changed, 45 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 11d3a40b9..e02de4f2d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -47,6 +47,8 @@ - Adds [AMDGPUWakeHandler](https://github.com/blackgate/AMDGPUWakeHandler) - Add Legacy GCN support for iMac11,x and iMac12,x with upgraded GPUs - Note: iMac12,x with legacy GCN will fail to wake +- Fix Beta 10 Bluetooth + - Works around new Broadcom/CSR vendor checks in `bluetoothd` ## 0.2.5 diff --git a/payloads/Kexts/Acidanthera/BlueToolFixup-v2.6.1.zip b/payloads/Kexts/Acidanthera/BlueToolFixup-v2.6.1.zip index 718c32283ae6e5a4ea78eeaaa4404dde5feeba2a..a86d49f6a09c090180e0f8b2c694ea67f2b40d53 100644 GIT binary patch literal 10247 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 K%guN8>;C{Fi@Ngw diff --git a/payloads/Kexts/Acidanthera/BlueToolFixup.patch b/payloads/Kexts/Acidanthera/BlueToolFixup.patch index 1f1fa890a..438fc46ae 100644 --- a/payloads/Kexts/Acidanthera/BlueToolFixup.patch +++ b/payloads/Kexts/Acidanthera/BlueToolFixup.patch @@ -1,5 +1,5 @@ diff --git a/BrcmPatchRAM/BlueToolFixup.cpp b/BrcmPatchRAM/BlueToolFixup.cpp -index 0fa891a..b64b780 100644 +index 0fa891a..4cebff4 100644 --- a/BrcmPatchRAM/BlueToolFixup.cpp +++ b/BrcmPatchRAM/BlueToolFixup.cpp @@ -37,8 +37,10 @@ bool BlueToolFixup::start(IOService *provider) { @@ -13,3 +13,45 @@ index 0fa891a..b64b780 100644 registerService(); return true; +@@ -50,7 +52,22 @@ bool BlueToolFixup::start(IOService *provider) { + static const uint8_t kSkipUpdateFilePathOriginal[] = "/etc/bluetool/SkipBluetoothAutomaticFirmwareUpdate"; + static const uint8_t kSkipUpdateFilePathPatched[] = "/System/Library/CoreServices/boot.efi"; + ++static const uint8_t kVendorCheckOriginal[] = ++ { ++ 0x74, 0x08, // jz short 08 ++ 0x81, 0xFA, // cmp edx ++ 0x12, 0x0A, 0x00, 0x00 // Vendor CSR ++ }; ++ ++ static const uint8_t kVendorCheckPatched[] = ++ { ++ 0xEB, 0x08, // jmp short 08 ++ 0x81, 0xFA, // cmp edx ++ 0x12, 0x0A, 0x00, 0x00 // Vendor CSR ++ }; ++ + static const char *blueToolPath = "/usr/sbin/BlueTool"; ++static const char *bluetoothdPath = "/usr/sbin/bluetoothd"; + + static mach_vm_address_t orig_cs_validate {}; + +@@ -70,10 +87,14 @@ static inline void searchAndPatch(const void *haystack, size_t haystackSize, con + static void patched_cs_validate_page(vnode_t vp, memory_object_t pager, memory_object_offset_t page_offset, const void *data, int *validated_p, int *tainted_p, int *nx_p) { + char path[PATH_MAX]; + int pathlen = PATH_MAX; +- FunctionCast(patched_cs_validate_page, orig_cs_validate)(vp, pager, page_offset, data, validated_p, tainted_p, nx_p); +- if (vn_getpath(vp, path, &pathlen) == 0 && UNLIKELY(strcmp(path, blueToolPath) == 0)) { +- searchAndPatch(data, PAGE_SIZE, path, kSkipUpdateFilePathOriginal, kSkipUpdateFilePathPatched); +- } ++ if (vn_getpath(vp, path, &pathlen) == 0) { ++ if (UNLIKELY(strcmp(path, blueToolPath) == 0)) { ++ searchAndPatch(data, PAGE_SIZE, path, kSkipUpdateFilePathOriginal, kSkipUpdateFilePathPatched); ++ } ++ if (UNLIKELY(strcmp(path, bluetoothdPath) == 0)) { ++ searchAndPatch(data, PAGE_SIZE, path, kVendorCheckOriginal, kVendorCheckPatched); ++ } ++ } + } + + From 0b3e45f7bab1e246870e2b004f8086559cd99824 Mon Sep 17 00:00:00 2001 From: Mykola Grymalyuk Date: Fri, 15 Oct 2021 09:33:34 -0600 Subject: [PATCH 9/9] Fix board ID call Closes https://github.com/dortania/OpenCore-Legacy-Patcher/issues/571 --- resources/cli_menu.py | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/resources/cli_menu.py b/resources/cli_menu.py index 411433f7d..4e03ca249 100644 --- a/resources/cli_menu.py +++ b/resources/cli_menu.py @@ -382,10 +382,13 @@ Q. Return to previous menu elif change_menu == "2": custom_smbios = input("Set new SMBIOS mode: ") try: - test = self.constants.board_id[custom_smbios] - self.constants.override_smbios = custom_smbios + if smbios_data.smbios_dictionary[custom_smbios]["Board ID"] != None: + self.constants.override_smbios = custom_smbios + else: + print("Non-Intel SMBIOS, reverting to Default setting") + self.constants.override_smbios = "Default" except KeyError: - print("Unsupported SMBIOS, defaulting to Default setting") + print("Unsupported SMBIOS, reverting to Default setting") self.constants.override_smbios = "Default" elif change_menu == "3": print("Disabling SMBIOS spoof")