From 0e07273c8e79671cc196d07cc9d8b93316380508 Mon Sep 17 00:00:00 2001 From: Mykola Grymalyuk Date: Fri, 1 Oct 2021 09:45:34 -0600 Subject: [PATCH] Move SMBIOS generation to dedicated file --- Data/cpu_data.py | 2 +- Data/smbios_data.py | 324 +++++++++++++++++------------------ Resources/Build.py | 59 ++----- Resources/Constants.py | 2 +- Resources/ModelArray.py | 85 --------- Resources/generate_smbios.py | 53 ++++++ 6 files changed, 233 insertions(+), 292 deletions(-) create mode 100644 Resources/generate_smbios.py diff --git a/Data/cpu_data.py b/Data/cpu_data.py index d372f1103..31016f340 100644 --- a/Data/cpu_data.py +++ b/Data/cpu_data.py @@ -3,7 +3,7 @@ class cpu_data: yonah = 1 conroe = 2 penryn = 3 - nahalem = 4 # (Westmere included) + nehalem = 4 # (Westmere included) sandy_bridge = 5 # 2000 ivy_bridge = 6 # 3000 haswell = 7 # 4000 diff --git a/Data/smbios_data.py b/Data/smbios_data.py index 3d3dab86a..ae051de50 100644 --- a/Data/smbios_data.py +++ b/Data/smbios_data.py @@ -14,15 +14,15 @@ smbios_dictionary = { "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM2045, "Screen Size": 13, "UGA Graphics": True, - + }, - + "MacBook2,1": { "Board ID": "Mac-F4208CA9", "FirmwareFeatures": None, "SecureBootModel": None, "CPU Generation": cpu_data.cpu_data.conroe, - "Max OS supported": os_data.os_data.lion, + "Max OS Supported": os_data.os_data.lion, "Wireless Model": device_probe.Atheros.Chipsets.AirPortAtheros40, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM2045, "Screen Size": 13, @@ -34,7 +34,7 @@ smbios_dictionary = { "FirmwareFeatures": "0xC0001407", "SecureBootModel": None, "CPU Generation": cpu_data.cpu_data.conroe, - "Max OS supported": os_data.os_data.lion, + "Max OS Supported": os_data.os_data.lion, "Wireless Model": device_probe.Broadcom.Chipsets.AirPortBrcm43224, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM2045, "Screen Size": 13, @@ -46,7 +46,7 @@ smbios_dictionary = { "FirmwareFeatures": "0xC0001403", "SecureBootModel": None, "CPU Generation": cpu_data.cpu_data.penryn, - "Max OS supported": os_data.os_data.lion, + "Max OS Supported": os_data.os_data.lion, "Wireless Model": device_probe.Broadcom.Chipsets.AirPortBrcm43224, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM2046, "Screen Size": 13, @@ -59,7 +59,7 @@ smbios_dictionary = { "FirmwareFeatures": "0xC0001403", "SecureBootModel": None, "CPU Generation": cpu_data.cpu_data.penryn, - "Max OS supported": os_data.os_data.el_capitan, + "Max OS Supported": os_data.os_data.el_capitan, "Wireless Model": device_probe.Broadcom.Chipsets.AirPortBrcm4331, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM2046, "Screen Size": 13, @@ -71,7 +71,7 @@ smbios_dictionary = { "FirmwareFeatures": "0xC0001403", "SecureBootModel": None, "CPU Generation": cpu_data.cpu_data.penryn, - "Max OS supported": os_data.os_data.el_capitan, + "Max OS Supported": os_data.os_data.el_capitan, "Wireless Model": device_probe.Broadcom.Chipsets.AirPortBrcm4331, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM2046, "Screen Size": 13, @@ -83,7 +83,7 @@ smbios_dictionary = { "FirmwareFeatures": "0xFC0FE13F", "SecureBootModel": None, "CPU Generation": cpu_data.cpu_data.penryn, - "Max OS supported": os_data.os_data.high_sierra, + "Max OS Supported": os_data.os_data.high_sierra, "Wireless Model": device_probe.Broadcom.Chipsets.AirPortBrcm4360, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM2070, "Screen Size": 13, @@ -95,7 +95,7 @@ smbios_dictionary = { "FirmwareFeatures": "0xFC0FE13F", "SecureBootModel": None, "CPU Generation": cpu_data.cpu_data.penryn, - "Max OS supported": os_data.os_data.high_sierra, + "Max OS Supported": os_data.os_data.high_sierra, "Wireless Model": device_probe.Broadcom.Chipsets.AirPortBrcm4360, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM2070, "Screen Size": 13, @@ -107,41 +107,41 @@ smbios_dictionary = { "FirmwareFeatures": "0xFC0FE13F", "SecureBootModel": None, "CPU Generation": cpu_data.cpu_data.broadwell, - "Max OS supported": os_data.os_data.big_sur, + "Max OS Supported": os_data.os_data.big_sur, "Wireless Model": device_probe.Broadcom.Chipsets.AirportBrcmNIC, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20703_UART, "Screen Size": 12, }, - + "MacBook9,1": { "Board ID": "Mac-9AE82516C7C6B903", "FirmwareFeatures": "0xFC0FE13F", "SecureBootModel": None, "CPU Generation": cpu_data.cpu_data.skylake, - "Max OS supported": None, + "Max OS Supported": None, "Wireless Model": device_probe.Broadcom.Chipsets.AirportBrcmNIC, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20703_UART, "Screen Size": 12, }, - + "MacBook10,1": { "Board ID": "Mac-EE2EBD4B90B839A8", "FirmwareFeatures": "0xFC0FE13F", "SecureBootModel": None, "CPU Generation": cpu_data.cpu_data.kaby_lake, - "Max OS supported": None, + "Max OS Supported": None, "Wireless Model": device_probe.Broadcom.Chipsets.AirportBrcmNIC, - "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20703_UART, + "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20703_UART, "Screen Size": 12, }, - + "MacBookAir1,1": { "Board ID": "Mac-F42C8CC8", "FirmwareFeatures": "0xC0001403", "SecureBootModel": None, "CPU Generation": cpu_data.cpu_data.conroe, - "Max OS supported": os_data.os_data.lion, + "Max OS Supported": os_data.os_data.lion, "Wireless Model": device_probe.Broadcom.Chipsets.AirPortBrcm43224, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM2046, "Screen Size": 13, @@ -152,7 +152,7 @@ smbios_dictionary = { "FirmwareFeatures": "0xC0001403", "SecureBootModel": None, "CPU Generation": cpu_data.cpu_data.penryn, - "Max OS supported": os_data.os_data.el_capitan, + "Max OS Supported": os_data.os_data.el_capitan, "Wireless Model": device_probe.Broadcom.Chipsets.AirPortBrcm43224, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM2046, "Screen Size": 13, @@ -164,7 +164,7 @@ smbios_dictionary = { "FirmwareFeatures": "0xD00DE137", "SecureBootModel": None, "CPU Generation": cpu_data.cpu_data.penryn, - "Max OS supported": os_data.os_data.high_sierra, + "Max OS Supported": os_data.os_data.high_sierra, "Wireless Model": device_probe.Broadcom.Chipsets.AirPortBrcm4331, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM2046, "Screen Size": 11, @@ -176,7 +176,7 @@ smbios_dictionary = { "FirmwareFeatures": "0xD00DE137", "SecureBootModel": None, "CPU Generation": cpu_data.cpu_data.penryn, - "Max OS supported": os_data.os_data.high_sierra, + "Max OS Supported": os_data.os_data.high_sierra, "Wireless Model": device_probe.Broadcom.Chipsets.AirPortBrcm4331, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM2046, "Screen Size": 13, @@ -188,7 +188,7 @@ smbios_dictionary = { "FirmwareFeatures": "0xD00DE137", "SecureBootModel": None, "CPU Generation": cpu_data.cpu_data.sandy_bridge, - "Max OS supported": os_data.os_data.high_sierra, + "Max OS Supported": os_data.os_data.high_sierra, "Wireless Model": device_probe.Broadcom.Chipsets.AirPortBrcm4360, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM2070, "Screen Size": 11, @@ -200,7 +200,7 @@ smbios_dictionary = { "FirmwareFeatures": "0xD00DE137", "SecureBootModel": None, "CPU Generation": cpu_data.cpu_data.sandy_bridge, - "Max OS supported": os_data.os_data.high_sierra, + "Max OS Supported": os_data.os_data.high_sierra, "Wireless Model": device_probe.Broadcom.Chipsets.AirPortBrcm4360, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM2070, "Screen Size": 13, @@ -212,7 +212,7 @@ smbios_dictionary = { "FirmwareFeatures": "0xE00DE137", "SecureBootModel": None, "CPU Generation": cpu_data.cpu_data.ivy_bridge, - "Max OS supported": os_data.os_data.catalina, + "Max OS Supported": os_data.os_data.catalina, "Wireless Model": device_probe.Broadcom.Chipsets.AirPortBrcm4360, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20702_v1, "Screen Size": 11, @@ -224,7 +224,7 @@ smbios_dictionary = { "FirmwareFeatures": "0xE00DE137", "SecureBootModel": None, "CPU Generation": cpu_data.cpu_data.ivy_bridge, - "Max OS supported": os_data.os_data.catalina, + "Max OS Supported": os_data.os_data.catalina, "Wireless Model": device_probe.Broadcom.Chipsets.AirPortBrcm4360, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20702_v1, "Screen Size": 13, @@ -236,7 +236,7 @@ smbios_dictionary = { "FirmwareFeatures": "0xE00FE137", "SecureBootModel": None, "CPU Generation": cpu_data.cpu_data.haswell, - "Max OS supported": os_data.os_data.big_sur, + "Max OS Supported": os_data.os_data.big_sur, "Wireless Model": device_probe.Broadcom.Chipsets.AirportBrcmNIC, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20702_v2, "Screen Size": 11, @@ -248,7 +248,7 @@ smbios_dictionary = { "FirmwareFeatures": "0xE00FE137", "SecureBootModel": None, "CPU Generation": cpu_data.cpu_data.haswell, - "Max OS supported": os_data.os_data.big_sur, + "Max OS Supported": os_data.os_data.big_sur, "Wireless Model": device_probe.Broadcom.Chipsets.AirportBrcmNIC, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20702_v2, "Screen Size": 13, @@ -259,7 +259,7 @@ smbios_dictionary = { "FirmwareFeatures": "0xFF0FF576", "SecureBootModel": None, "CPU Generation": cpu_data.cpu_data.broadwell, - "Max OS supported": None, + "Max OS Supported": None, "Wireless Model": device_probe.Broadcom.Chipsets.AirportBrcmNIC, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20702_v2, "Screen Size": 11, @@ -270,7 +270,7 @@ smbios_dictionary = { "FirmwareFeatures": "0xFF0FF576", "SecureBootModel": None, "CPU Generation": cpu_data.cpu_data.broadwell, - "Max OS supported": None, + "Max OS Supported": None, "Wireless Model": device_probe.Broadcom.Chipsets.AirportBrcmNIC, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20702_v2, "Screen Size": 13, @@ -281,9 +281,9 @@ smbios_dictionary = { "FirmwareFeatures": "0xFD8FF42E", "SecureBootModel": "j140kap", "CPU Generation": cpu_data.cpu_data.coffee_lake, - "Max OS supported": None, + "Max OS Supported": None, "Wireless Model": device_probe.Broadcom.Chipsets.AppleBCMWLANBusInterfacePCIe, - "Bluetooth Model": bluetooth_data.bluetooth_data.UART, + "Bluetooth Model": bluetooth_data.bluetooth_data.UART, "Screen Size": 13, }, @@ -292,9 +292,9 @@ smbios_dictionary = { "FirmwareFeatures": "0xFD8FF42E", "SecureBootModel": "j140aap", "CPU Generation": cpu_data.cpu_data.coffee_lake, - "Max OS supported": None, + "Max OS Supported": None, "Wireless Model": device_probe.Broadcom.Chipsets.AppleBCMWLANBusInterfacePCIe, - "Bluetooth Model": bluetooth_data.bluetooth_data.UART, + "Bluetooth Model": bluetooth_data.bluetooth_data.UART, "Screen Size": 13, }, @@ -303,9 +303,9 @@ smbios_dictionary = { "FirmwareFeatures": "0xFFAFF06E", "SecureBootModel": "j230kap", "CPU Generation": cpu_data.cpu_data.ice_lake, - "Max OS supported": None, + "Max OS Supported": None, "Wireless Model": device_probe.Broadcom.Chipsets.AppleBCMWLANBusInterfacePCIe, - "Bluetooth Model": bluetooth_data.bluetooth_data.UART, + "Bluetooth Model": bluetooth_data.bluetooth_data.UART, "Screen Size": 13, }, @@ -314,7 +314,7 @@ smbios_dictionary = { "FirmwareFeatures": "", "SecureBootModel": None, "CPU Generation": cpu_data.cpu_data.yonah, - "Max OS supported": os_data.os_data.snow_leopard, + "Max OS Supported": os_data.os_data.snow_leopard, "Wireless Model": device_probe.Atheros.Chipsets.AirPortAtheros40, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM2045, "Screen Size": 15, @@ -326,7 +326,7 @@ smbios_dictionary = { "FirmwareFeatures": None, "SecureBootModel": None, "CPU Generation": cpu_data.cpu_data.yonah, - "Max OS supported": os_data.os_data.snow_leopard, + "Max OS Supported": os_data.os_data.snow_leopard, "Wireless Model": device_probe.Atheros.Chipsets.AirPortAtheros40, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM2045, "Screen Size": 17, @@ -338,7 +338,7 @@ smbios_dictionary = { "FirmwareFeatures": None, "SecureBootModel": None, "CPU Generation": cpu_data.cpu_data.conroe, - "Max OS supported": os_data.os_data.lion, + "Max OS Supported": os_data.os_data.lion, "Wireless Model": device_probe.Atheros.Chipsets.AirPortAtheros40, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM2045, "Screen Size": 17, @@ -350,7 +350,7 @@ smbios_dictionary = { "FirmwareFeatures": None, "SecureBootModel": None, "CPU Generation": cpu_data.cpu_data.conroe, - "Max OS supported": os_data.os_data.lion, + "Max OS Supported": os_data.os_data.lion, "Wireless Model": device_probe.Atheros.Chipsets.AirPortAtheros40, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM2045, "Screen Size": 15, @@ -362,10 +362,10 @@ smbios_dictionary = { "FirmwareFeatures": "0xC0001407", "SecureBootModel": None, "CPU Generation": cpu_data.cpu_data.conroe, - "Max OS supported": os_data.os_data.el_capitan, + "Max OS Supported": os_data.os_data.el_capitan, "Wireless Model": device_probe.Atheros.Chipsets.AirPortAtheros40, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM2045, - "Screen Size": 15, # Shipped with 17 as well + "Screen Size": 15, # Shipped with 17 as well "UGA Graphics": True, }, @@ -374,10 +374,10 @@ smbios_dictionary = { "FirmwareFeatures": "0xC0001403", "SecureBootModel": None, "CPU Generation": cpu_data.cpu_data.penryn, - "Max OS supported": os_data.os_data.el_capitan, + "Max OS Supported": os_data.os_data.el_capitan, "Wireless Model": device_probe.Broadcom.Chipsets.AirPortBrcm43224, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM2046, - "Screen Size": 15, # Shipped with 17 as well + "Screen Size": 15, # Shipped with 17 as well "Switchable GPUs": True, "UGA Graphics": True, }, @@ -388,7 +388,7 @@ smbios_dictionary = { "FirmwareFeatures": "0xC0001403", "SecureBootModel": None, "CPU Generation": cpu_data.cpu_data.penryn, - "Max OS supported": os_data.os_data.el_capitan, + "Max OS Supported": os_data.os_data.el_capitan, "Wireless Model": device_probe.Broadcom.Chipsets.AirPortBrcm4331, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM2046, "Screen Size": 15, @@ -401,7 +401,7 @@ smbios_dictionary = { "FirmwareFeatures": "0xC0001403", "SecureBootModel": None, "CPU Generation": cpu_data.cpu_data.penryn, - "Max OS supported": os_data.os_data.el_capitan, + "Max OS Supported": os_data.os_data.el_capitan, "Wireless Model": device_probe.Broadcom.Chipsets.AirPortBrcm4331, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM2046, "Screen Size": 17, @@ -414,7 +414,7 @@ smbios_dictionary = { "FirmwareFeatures": "0xC0001403", "SecureBootModel": None, "CPU Generation": cpu_data.cpu_data.penryn, - "Max OS supported": os_data.os_data.el_capitan, + "Max OS Supported": os_data.os_data.el_capitan, "Wireless Model": device_probe.Broadcom.Chipsets.AirPortBrcm4331, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM2046, "Screen Size": 15, @@ -427,7 +427,7 @@ smbios_dictionary = { "FirmwareFeatures": "0xC0001403", "SecureBootModel": None, "CPU Generation": cpu_data.cpu_data.penryn, - "Max OS supported": os_data.os_data.el_capitan, + "Max OS Supported": os_data.os_data.el_capitan, "Wireless Model": device_probe.Broadcom.Chipsets.AirPortBrcm4331, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM2046, "Screen Size": 15, @@ -440,7 +440,7 @@ smbios_dictionary = { "FirmwareFeatures": "0xC0001403", "SecureBootModel": None, "CPU Generation": cpu_data.cpu_data.penryn, - "Max OS supported": os_data.os_data.el_capitan, + "Max OS Supported": os_data.os_data.el_capitan, "Wireless Model": device_probe.Broadcom.Chipsets.AirPortBrcm4331, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM2046, "Screen Size": 13, @@ -451,8 +451,8 @@ smbios_dictionary = { "Board ID": "Mac-F22589C8", "FirmwareFeatures": "0xC00DE137", "SecureBootModel": None, - "CPU Generation": cpu_data.cpu_data.nahalem, - "Max OS supported": os_data.os_data.high_sierra, + "CPU Generation": cpu_data.cpu_data.nehalem, + "Max OS Supported": os_data.os_data.high_sierra, "Wireless Model": device_probe.Broadcom.Chipsets.AirPortBrcm4360, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM2070, "Screen Size": 17, @@ -464,8 +464,8 @@ smbios_dictionary = { "Board ID": "Mac-F22586C8", "FirmwareFeatures": "0xC00DE137", "SecureBootModel": None, - "CPU Generation": cpu_data.cpu_data.nahalem, - "Max OS supported": os_data.os_data.high_sierra, + "CPU Generation": cpu_data.cpu_data.nehalem, + "Max OS Supported": os_data.os_data.high_sierra, "Wireless Model": device_probe.Broadcom.Chipsets.AirPortBrcm4360, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM2070, "Screen Size": 15, @@ -478,7 +478,7 @@ smbios_dictionary = { "FirmwareFeatures": "0xC00DE137", "SecureBootModel": None, "CPU Generation": cpu_data.cpu_data.penryn, - "Max OS supported": os_data.os_data.high_sierra, + "Max OS Supported": os_data.os_data.high_sierra, "Wireless Model": device_probe.Broadcom.Chipsets.AirPortBrcm4331, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM2046, "Screen Size": 13, @@ -490,7 +490,7 @@ smbios_dictionary = { "FirmwareFeatures": "0xC00DE137", "SecureBootModel": None, "CPU Generation": cpu_data.cpu_data.sandy_bridge, - "Max OS supported": os_data.os_data.high_sierra, + "Max OS Supported": os_data.os_data.high_sierra, "Wireless Model": device_probe.Broadcom.Chipsets.AirPortBrcm4360, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM2070, "Screen Size": 13, @@ -502,7 +502,7 @@ smbios_dictionary = { "FirmwareFeatures": "0xC00DE137", "SecureBootModel": None, "CPU Generation": cpu_data.cpu_data.sandy_bridge, - "Max OS supported": os_data.os_data.high_sierra, + "Max OS Supported": os_data.os_data.high_sierra, "Wireless Model": device_probe.Broadcom.Chipsets.AirPortBrcm4360, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM2070, "Screen Size": 15, @@ -515,7 +515,7 @@ smbios_dictionary = { "FirmwareFeatures": "0xC00DE137", "SecureBootModel": None, "CPU Generation": cpu_data.cpu_data.sandy_bridge, - "Max OS supported": os_data.os_data.high_sierra, + "Max OS Supported": os_data.os_data.high_sierra, "Wireless Model": device_probe.Broadcom.Chipsets.AirPortBrcm4360, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM2070, "Screen Size": 17, @@ -528,7 +528,7 @@ smbios_dictionary = { "FirmwareFeatures": "0xC00DE137", "SecureBootModel": None, "CPU Generation": cpu_data.cpu_data.ivy_bridge, - "Max OS supported": os_data.os_data.catalina, + "Max OS Supported": os_data.os_data.catalina, "Wireless Model": device_probe.Broadcom.Chipsets.AirPortBrcm4360, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20702_v1, "Screen Size": 15, @@ -541,7 +541,7 @@ smbios_dictionary = { "FirmwareFeatures": "0xC10DF577", "SecureBootModel": None, "CPU Generation": cpu_data.cpu_data.ivy_bridge, - "Max OS supported": os_data.os_data.catalina, + "Max OS Supported": os_data.os_data.catalina, "Wireless Model": device_probe.Broadcom.Chipsets.AirPortBrcm4360, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20702_v1, "Screen Size": 13, @@ -553,7 +553,7 @@ smbios_dictionary = { "FirmwareFeatures": "0xE00DE137", "SecureBootModel": None, "CPU Generation": cpu_data.cpu_data.ivy_bridge, - "Max OS supported": os_data.os_data.catalina, + "Max OS Supported": os_data.os_data.catalina, "Wireless Model": device_probe.Broadcom.Chipsets.AirPortBrcm4360, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20702_v1, "Screen Size": 15, @@ -566,7 +566,7 @@ smbios_dictionary = { "FirmwareFeatures": "0xE00DE137", "SecureBootModel": None, "CPU Generation": cpu_data.cpu_data.ivy_bridge, - "Max OS supported": os_data.os_data.catalina, + "Max OS Supported": os_data.os_data.catalina, "Wireless Model": device_probe.Broadcom.Chipsets.AirPortBrcm4360, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20702_v1, "Screen Size": 13, @@ -578,7 +578,7 @@ smbios_dictionary = { "FirmwareFeatures": "0xEB0FF577", "SecureBootModel": None, "CPU Generation": cpu_data.cpu_data.haswell, - "Max OS supported": os_data.os_data.big_sur, + "Max OS Supported": os_data.os_data.big_sur, "Wireless Model": device_probe.Broadcom.Chipsets.AirportBrcmNIC, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20702_v2, "Screen Size": 13, @@ -590,7 +590,7 @@ smbios_dictionary = { "FirmwareFeatures": "0xEB0FF577", "SecureBootModel": None, "CPU Generation": cpu_data.cpu_data.haswell, - "Max OS supported": os_data.os_data.big_sur, + "Max OS Supported": os_data.os_data.big_sur, "Wireless Model": device_probe.Broadcom.Chipsets.AirportBrcmNIC, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20702_v2, "Screen Size": 15, @@ -602,7 +602,7 @@ smbios_dictionary = { "FirmwareFeatures": "0xEB0FF577", "SecureBootModel": None, "CPU Generation": cpu_data.cpu_data.haswell, - "Max OS supported": os_data.os_data.big_sur, + "Max OS Supported": os_data.os_data.big_sur, "Wireless Model": device_probe.Broadcom.Chipsets.AirportBrcmNIC, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20702_v2, "Screen Size": 15, @@ -614,7 +614,7 @@ smbios_dictionary = { "FirmwareFeatures": "0xEB0FF577", "SecureBootModel": None, "CPU Generation": cpu_data.cpu_data.haswell, - "Max OS supported": None, + "Max OS Supported": None, "Wireless Model": device_probe.Broadcom.Chipsets.AirportBrcmNIC, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20702_v2, "Screen Size": 15, @@ -625,7 +625,7 @@ smbios_dictionary = { "FirmwareFeatures": "0xEB0FF577", "SecureBootModel": None, "CPU Generation": cpu_data.cpu_data.haswell, - "Max OS supported": None, + "Max OS Supported": None, "Wireless Model": device_probe.Broadcom.Chipsets.AirportBrcmNIC, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20702_v2, "Screen Size": 15, @@ -637,7 +637,7 @@ smbios_dictionary = { "FirmwareFeatures": "0xFD0FF576", "SecureBootModel": None, "CPU Generation": cpu_data.cpu_data.broadwell, - "Max OS supported": None, + "Max OS Supported": None, "Wireless Model": device_probe.Broadcom.Chipsets.AirportBrcmNIC, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20702_v2, "Screen Size": 13, @@ -648,9 +648,9 @@ smbios_dictionary = { "FirmwareFeatures": "0xFC0FE137", "SecureBootModel": None, "CPU Generation": cpu_data.cpu_data.skylake, - "Max OS supported": None, + "Max OS Supported": None, "Wireless Model": device_probe.Broadcom.Chipsets.AirportBrcmNIC, - "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20703_UART, + "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20703_UART, "Screen Size": 13, }, @@ -659,9 +659,9 @@ smbios_dictionary = { "FirmwareFeatures": "0xFC0FE137", "SecureBootModel": None, "CPU Generation": cpu_data.cpu_data.skylake, - "Max OS supported": None, + "Max OS Supported": None, "Wireless Model": device_probe.Broadcom.Chipsets.AirportBrcmNIC, - "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20703_UART, + "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20703_UART, "Screen Size": 13, }, @@ -670,9 +670,9 @@ smbios_dictionary = { "FirmwareFeatures": "0xFC0FE137", "SecureBootModel": None, "CPU Generation": cpu_data.cpu_data.skylake, - "Max OS supported": None, + "Max OS Supported": None, "Wireless Model": device_probe.Broadcom.Chipsets.AirportBrcmNIC, - "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20703_UART, + "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20703_UART, "Screen Size": 15, "Switchable GPUs": True, }, @@ -682,9 +682,9 @@ smbios_dictionary = { "FirmwareFeatures": "0xFF0FF57E", "SecureBootModel": None, "CPU Generation": cpu_data.cpu_data.kaby_lake, - "Max OS supported": None, + "Max OS Supported": None, "Wireless Model": device_probe.Broadcom.Chipsets.AirportBrcmNIC, - "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20703_UART, + "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20703_UART, "Screen Size": 13, }, @@ -693,9 +693,9 @@ smbios_dictionary = { "FirmwareFeatures": "0xFF0FF57E", "SecureBootModel": None, "CPU Generation": cpu_data.cpu_data.kaby_lake, - "Max OS supported": None, + "Max OS Supported": None, "Wireless Model": device_probe.Broadcom.Chipsets.AirportBrcmNIC, - "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20703_UART, + "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20703_UART, "Screen Size": 13, }, @@ -704,9 +704,9 @@ smbios_dictionary = { "FirmwareFeatures": "0xFF0FF57E", "SecureBootModel": None, "CPU Generation": cpu_data.cpu_data.kaby_lake, - "Max OS supported": None, + "Max OS Supported": None, "Wireless Model": device_probe.Broadcom.Chipsets.AirportBrcmNIC, - "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20703_UART, + "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20703_UART, "Screen Size": 15, "Switchable GPUs": True, }, @@ -716,9 +716,9 @@ smbios_dictionary = { "FirmwareFeatures": "0xFD8FF426", "SecureBootModel": "j680ap", "CPU Generation": cpu_data.cpu_data.coffee_lake, - "Max OS supported": None, + "Max OS Supported": None, "Wireless Model": device_probe.Broadcom.Chipsets.AppleBCMWLANBusInterfacePCIe, - "Bluetooth Model": bluetooth_data.bluetooth_data.UART, + "Bluetooth Model": bluetooth_data.bluetooth_data.UART, "Screen Size": 15, "Switchable GPUs": True, }, @@ -728,9 +728,9 @@ smbios_dictionary = { "FirmwareFeatures": "0xFD8FF426", "SecureBootModel": "j132ap", "CPU Generation": cpu_data.cpu_data.coffee_lake, - "Max OS supported": None, + "Max OS Supported": None, "Wireless Model": device_probe.Broadcom.Chipsets.AppleBCMWLANBusInterfacePCIe, - "Bluetooth Model": bluetooth_data.bluetooth_data.UART, + "Bluetooth Model": bluetooth_data.bluetooth_data.UART, "Screen Size": 13, }, @@ -739,9 +739,9 @@ smbios_dictionary = { "FirmwareFeatures": "0xFD8FF426", "SecureBootModel": "j780ap", "CPU Generation": cpu_data.cpu_data.coffee_lake, - "Max OS supported": None, + "Max OS Supported": None, "Wireless Model": device_probe.Broadcom.Chipsets.AppleBCMWLANBusInterfacePCIe, - "Bluetooth Model": bluetooth_data.bluetooth_data.UART, + "Bluetooth Model": bluetooth_data.bluetooth_data.UART, "Screen Size": 15, "Switchable GPUs": True, }, @@ -751,9 +751,9 @@ smbios_dictionary = { "FirmwareFeatures": "0xFD8FF426", "SecureBootModel": "j213ap", "CPU Generation": cpu_data.cpu_data.coffee_lake, - "Max OS supported": None, + "Max OS Supported": None, "Wireless Model": device_probe.Broadcom.Chipsets.AppleBCMWLANBusInterfacePCIe, - "Bluetooth Model": bluetooth_data.bluetooth_data.UART, + "Bluetooth Model": bluetooth_data.bluetooth_data.UART, "Screen Size": 13, }, @@ -762,9 +762,9 @@ smbios_dictionary = { "FirmwareFeatures": "0xFDAFF066", "SecureBootModel": "j152fap", "CPU Generation": cpu_data.cpu_data.coffee_lake, - "Max OS supported": None, + "Max OS Supported": None, "Wireless Model": device_probe.Broadcom.Chipsets.AppleBCMWLANBusInterfacePCIe, - "Bluetooth Model": bluetooth_data.bluetooth_data.UART, + "Bluetooth Model": bluetooth_data.bluetooth_data.UART, "Screen Size": 16, "Switchable GPUs": True, }, @@ -774,9 +774,9 @@ smbios_dictionary = { "FirmwareFeatures": "0xFFAFF06E", "SecureBootModel": "j214kap", "CPU Generation": cpu_data.cpu_data.coffee_lake, - "Max OS supported": None, + "Max OS Supported": None, "Wireless Model": device_probe.Broadcom.Chipsets.AppleBCMWLANBusInterfacePCIe, - "Bluetooth Model": bluetooth_data.bluetooth_data.UART, + "Bluetooth Model": bluetooth_data.bluetooth_data.UART, "Screen Size": 13, }, @@ -785,9 +785,9 @@ smbios_dictionary = { "FirmwareFeatures": "0xFDAFF066", "SecureBootModel": "j223ap", "CPU Generation": cpu_data.cpu_data.coffee_lake, - "Max OS supported": None, + "Max OS Supported": None, "Wireless Model": device_probe.Broadcom.Chipsets.AppleBCMWLANBusInterfacePCIe, - "Bluetooth Model": bluetooth_data.bluetooth_data.UART, + "Bluetooth Model": bluetooth_data.bluetooth_data.UART, "Screen Size": 13, }, @@ -796,9 +796,9 @@ smbios_dictionary = { "FirmwareFeatures": "0xFDAFF066", "SecureBootModel": "j215ap", "CPU Generation": cpu_data.cpu_data.coffee_lake, - "Max OS supported": None, + "Max OS Supported": None, "Wireless Model": device_probe.Broadcom.Chipsets.AppleBCMWLANBusInterfacePCIe, - "Bluetooth Model": bluetooth_data.bluetooth_data.UART, + "Bluetooth Model": bluetooth_data.bluetooth_data.UART, "Screen Size": 16, "Switchable GPUs": True, }, @@ -808,7 +808,7 @@ smbios_dictionary = { "FirmwareFeatures": None, "SecureBootModel": None, "CPU Generation": cpu_data.cpu_data.yonah, - "Max OS supported": os_data.os_data.snow_leopard, + "Max OS Supported": os_data.os_data.snow_leopard, "Wireless Model": device_probe.Atheros.Chipsets.AirPortAtheros40, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM2045, }, @@ -818,7 +818,7 @@ smbios_dictionary = { "FirmwareFeatures": None, "SecureBootModel": None, "CPU Generation": cpu_data.cpu_data.conroe, - "Max OS supported": os_data.os_data.lion, + "Max OS Supported": os_data.os_data.lion, "Wireless Model": device_probe.Atheros.Chipsets.AirPortAtheros40, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM2045, }, @@ -828,7 +828,7 @@ smbios_dictionary = { "FirmwareFeatures": "0xC0001403", "SecureBootModel": None, "CPU Generation": cpu_data.cpu_data.penryn, - "Max OS supported": os_data.os_data.el_capitan, + "Max OS Supported": os_data.os_data.el_capitan, "Wireless Model": device_probe.Broadcom.Chipsets.AirPortBrcm4331, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM2046, }, @@ -839,7 +839,7 @@ smbios_dictionary = { "FirmwareFeatures": "0xC00C9423", "SecureBootModel": None, "CPU Generation": cpu_data.cpu_data.penryn, - "Max OS supported": os_data.os_data.high_sierra, + "Max OS Supported": os_data.os_data.high_sierra, "Wireless Model": device_probe.Broadcom.Chipsets.AirPortBrcm4360, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM2070, }, @@ -850,7 +850,7 @@ smbios_dictionary = { "FirmwareFeatures": "0xD00DE137", "SecureBootModel": None, "CPU Generation": cpu_data.cpu_data.sandy_bridge, - "Max OS supported": os_data.os_data.high_sierra, + "Max OS Supported": os_data.os_data.high_sierra, "Wireless Model": device_probe.Broadcom.Chipsets.AirPortBrcm4360, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM2070, }, @@ -861,7 +861,7 @@ smbios_dictionary = { "FirmwareFeatures": "0xD00DE137", "SecureBootModel": None, "CPU Generation": cpu_data.cpu_data.sandy_bridge, - "Max OS supported": os_data.os_data.high_sierra, + "Max OS Supported": os_data.os_data.high_sierra, "Wireless Model": device_probe.Broadcom.Chipsets.AirPortBrcm4360, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM2070, }, @@ -872,7 +872,7 @@ smbios_dictionary = { "FirmwareFeatures": "0xD00DE137", "SecureBootModel": None, "CPU Generation": cpu_data.cpu_data.sandy_bridge, - "Max OS supported": os_data.os_data.high_sierra, + "Max OS Supported": os_data.os_data.high_sierra, "Wireless Model": device_probe.Broadcom.Chipsets.AirPortBrcm4360, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM2070, }, @@ -883,7 +883,7 @@ smbios_dictionary = { "FirmwareFeatures": "0xE00DE137", "SecureBootModel": None, "CPU Generation": cpu_data.cpu_data.ivy_bridge, - "Max OS supported": os_data.os_data.catalina, + "Max OS Supported": os_data.os_data.catalina, "Wireless Model": device_probe.Broadcom.Chipsets.AirPortBrcm4360, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20702_v1, }, @@ -894,7 +894,7 @@ smbios_dictionary = { "FirmwareFeatures": "0xE00DE137", "SecureBootModel": None, "CPU Generation": cpu_data.cpu_data.ivy_bridge, - "Max OS supported": os_data.os_data.catalina, + "Max OS Supported": os_data.os_data.catalina, "Wireless Model": device_probe.Broadcom.Chipsets.AirPortBrcm4360, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20702_v1, }, @@ -904,7 +904,7 @@ smbios_dictionary = { "FirmwareFeatures": "0xE00DE137", "SecureBootModel": None, "CPU Generation": cpu_data.cpu_data.haswell, - "Max OS supported": None, + "Max OS Supported": None, "Wireless Model": device_probe.Broadcom.Chipsets.AirportBrcmNIC, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20702_v2, }, @@ -914,9 +914,9 @@ smbios_dictionary = { "FirmwareFeatures": "0xFD8FF466", "SecureBootModel": "j174ap", "CPU Generation": cpu_data.cpu_data.coffee_lake, - "Max OS supported": None, + "Max OS Supported": None, "Wireless Model": device_probe.Broadcom.Chipsets.AppleBCMWLANBusInterfacePCIe, - "Bluetooth Model": bluetooth_data.bluetooth_data.UART, + "Bluetooth Model": bluetooth_data.bluetooth_data.UART, }, "iMac4,1": { @@ -924,7 +924,7 @@ smbios_dictionary = { "FirmwareFeatures": None, "SecureBootModel": None, "CPU Generation": cpu_data.cpu_data.yonah, - "Max OS supported": os_data.os_data.snow_leopard, + "Max OS Supported": os_data.os_data.snow_leopard, "Wireless Model": device_probe.Atheros.Chipsets.AirPortAtheros40, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM2045, "UGA Graphics": True, @@ -935,7 +935,7 @@ smbios_dictionary = { "FirmwareFeatures": None, "SecureBootModel": None, "CPU Generation": cpu_data.cpu_data.yonah, - "Max OS supported": os_data.os_data.snow_leopard, + "Max OS Supported": os_data.os_data.snow_leopard, "Wireless Model": device_probe.Atheros.Chipsets.AirPortAtheros40, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM2045, "UGA Graphics": True, @@ -946,7 +946,7 @@ smbios_dictionary = { "FirmwareFeatures": None, "SecureBootModel": None, "CPU Generation": cpu_data.cpu_data.conroe, - "Max OS supported": os_data.os_data.lion, + "Max OS Supported": os_data.os_data.lion, "Wireless Model": device_probe.Broadcom.Chipsets.AirPortBrcm43224, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM2046, "UGA Graphics": True, @@ -957,7 +957,7 @@ smbios_dictionary = { "FirmwareFeatures": None, "SecureBootModel": None, "CPU Generation": cpu_data.cpu_data.conroe, - "Max OS supported": os_data.os_data.lion, + "Max OS Supported": os_data.os_data.lion, "Wireless Model": device_probe.Broadcom.Chipsets.AirPortBrcm43224, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM2046, "UGA Graphics": True, @@ -968,7 +968,7 @@ smbios_dictionary = { "FirmwareFeatures": None, "SecureBootModel": None, "CPU Generation": cpu_data.cpu_data.conroe, - "Max OS supported": os_data.os_data.lion, + "Max OS Supported": os_data.os_data.lion, "Wireless Model": device_probe.Broadcom.Chipsets.AirPortBrcm43224, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM2046, "UGA Graphics": True, @@ -978,8 +978,8 @@ smbios_dictionary = { "Board ID": "Mac-F42386C8", "FirmwareFeatures": "0xC0001407", "SecureBootModel": None, - "CPU Generation": cpu_data.cpu_data.penryn, # Stock models shipped with Conroe - "Max OS supported": os_data.os_data.el_capitan, + "CPU Generation": cpu_data.cpu_data.penryn, # Stock models shipped with Conroe + "Max OS Supported": os_data.os_data.el_capitan, "Wireless Model": device_probe.Broadcom.Chipsets.AirPortBrcm43224, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM2046, "UGA Graphics": True, @@ -991,7 +991,7 @@ smbios_dictionary = { "FirmwareFeatures": "0xC0001403", "SecureBootModel": None, "CPU Generation": cpu_data.cpu_data.penryn, - "Max OS supported": os_data.os_data.el_capitan, + "Max OS Supported": os_data.os_data.el_capitan, "Wireless Model": device_probe.Broadcom.Chipsets.AirPortBrcm43224, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM2046, "UGA Graphics": True, @@ -1003,7 +1003,7 @@ smbios_dictionary = { "FirmwareFeatures": "0xC0001403", "SecureBootModel": None, "CPU Generation": cpu_data.cpu_data.penryn, - "Max OS supported": os_data.os_data.el_capitan, + "Max OS Supported": os_data.os_data.el_capitan, "Wireless Model": device_probe.Broadcom.Chipsets.AirPortBrcm4331, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM2046, }, @@ -1015,7 +1015,7 @@ smbios_dictionary = { "FirmwareFeatures": "0xE00DE137", "SecureBootModel": None, "CPU Generation": cpu_data.cpu_data.penryn, - "Max OS supported": os_data.os_data.high_sierra, + "Max OS Supported": os_data.os_data.high_sierra, "Wireless Model": device_probe.Atheros.Chipsets.AirPortAtheros40, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM2046, }, @@ -1025,8 +1025,8 @@ smbios_dictionary = { "Board ID": "Mac-F2268DAE", "FirmwareFeatures": "0xE00DE137", "SecureBootModel": None, - "CPU Generation": cpu_data.cpu_data.nahalem, - "Max OS supported": os_data.os_data.high_sierra, + "CPU Generation": cpu_data.cpu_data.nehalem, + "Max OS Supported": os_data.os_data.high_sierra, "Wireless Model": device_probe.Atheros.Chipsets.AirPortAtheros40, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM2046, }, @@ -1036,8 +1036,8 @@ smbios_dictionary = { "Board ID": "Mac-F2238AC8", "FirmwareFeatures": "0xC00C9423", "SecureBootModel": None, - "CPU Generation": cpu_data.cpu_data.nahalem, - "Max OS supported": os_data.os_data.high_sierra, + "CPU Generation": cpu_data.cpu_data.nehalem, + "Max OS Supported": os_data.os_data.high_sierra, "Wireless Model": device_probe.Atheros.Chipsets.AirPortAtheros40, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM2046, }, @@ -1047,8 +1047,8 @@ smbios_dictionary = { "Board ID": "Mac-F2238BAE", "FirmwareFeatures": "0xE00DE137", "SecureBootModel": None, - "CPU Generation": cpu_data.cpu_data.nahalem, - "Max OS supported": os_data.os_data.high_sierra, + "CPU Generation": cpu_data.cpu_data.nehalem, + "Max OS Supported": os_data.os_data.high_sierra, "Wireless Model": device_probe.Atheros.Chipsets.AirPortAtheros40, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM2046, }, @@ -1059,7 +1059,7 @@ smbios_dictionary = { "FirmwareFeatures": "0xE00DE137", "SecureBootModel": None, "CPU Generation": cpu_data.cpu_data.sandy_bridge, - "Max OS supported": os_data.os_data.high_sierra, + "Max OS Supported": os_data.os_data.high_sierra, "Wireless Model": device_probe.Atheros.Chipsets.AirPortAtheros40, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM2046, }, @@ -1070,7 +1070,7 @@ smbios_dictionary = { "FirmwareFeatures": "0xE00DE137", "SecureBootModel": None, "CPU Generation": cpu_data.cpu_data.sandy_bridge, - "Max OS supported": os_data.os_data.high_sierra, + "Max OS Supported": os_data.os_data.high_sierra, "Wireless Model": device_probe.Atheros.Chipsets.AirPortAtheros40, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM2046, }, @@ -1081,7 +1081,7 @@ smbios_dictionary = { "FirmwareFeatures": "0xE00DE137", "SecureBootModel": None, "CPU Generation": cpu_data.cpu_data.ivy_bridge, - "Max OS supported": os_data.os_data.catalina, + "Max OS Supported": os_data.os_data.catalina, "Wireless Model": device_probe.Broadcom.Chipsets.AirPortBrcm4360, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20702_v1, }, @@ -1092,7 +1092,7 @@ smbios_dictionary = { "FirmwareFeatures": "0xE00DE137", "SecureBootModel": None, "CPU Generation": cpu_data.cpu_data.ivy_bridge, - "Max OS supported": os_data.os_data.catalina, + "Max OS Supported": os_data.os_data.catalina, "Wireless Model": device_probe.Broadcom.Chipsets.AirPortBrcm4360, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20702_v1, }, @@ -1103,7 +1103,7 @@ smbios_dictionary = { "FirmwareFeatures": "0xE00DE137", "SecureBootModel": None, "CPU Generation": cpu_data.cpu_data.ivy_bridge, - "Max OS supported": os_data.os_data.catalina, + "Max OS Supported": os_data.os_data.catalina, "Wireless Model": device_probe.Broadcom.Chipsets.AirPortBrcm4360, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20702_v1, }, @@ -1114,7 +1114,7 @@ smbios_dictionary = { "FirmwareFeatures": "0xFB0FF577", "SecureBootModel": None, "CPU Generation": cpu_data.cpu_data.haswell, - "Max OS supported": os_data.os_data.catalina, + "Max OS Supported": os_data.os_data.catalina, "Wireless Model": device_probe.Broadcom.Chipsets.AirportBrcmNIC, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20702_v2, }, @@ -1125,7 +1125,7 @@ smbios_dictionary = { "FirmwareFeatures": "0xE00FE137", "SecureBootModel": None, "CPU Generation": cpu_data.cpu_data.haswell, - "Max OS supported": os_data.os_data.catalina, + "Max OS Supported": os_data.os_data.catalina, "Wireless Model": device_probe.Broadcom.Chipsets.AirportBrcmNIC, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20702_v2, }, @@ -1136,7 +1136,7 @@ smbios_dictionary = { "FirmwareFeatures": "0xE00FE137", "SecureBootModel": None, "CPU Generation": cpu_data.cpu_data.haswell, - "Max OS supported": os_data.os_data.catalina, + "Max OS Supported": os_data.os_data.catalina, "Wireless Model": device_probe.Broadcom.Chipsets.AirportBrcmNIC, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20702_v2, }, @@ -1147,7 +1147,7 @@ smbios_dictionary = { "FirmwareFeatures": "0xF00FE137", "SecureBootModel": None, "CPU Generation": cpu_data.cpu_data.haswell, - "Max OS supported": os_data.os_data.big_sur, + "Max OS Supported": os_data.os_data.big_sur, "Wireless Model": device_probe.Broadcom.Chipsets.AirportBrcmNIC, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20702_v2, }, @@ -1158,7 +1158,7 @@ smbios_dictionary = { "FirmwareFeatures": "0xF80FE137", "SecureBootModel": None, "CPU Generation": cpu_data.cpu_data.haswell, - "Max OS supported": os_data.os_data.big_sur, + "Max OS Supported": os_data.os_data.big_sur, "Wireless Model": device_probe.Broadcom.Chipsets.AirportBrcmNIC, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20702_v2, }, @@ -1168,7 +1168,7 @@ smbios_dictionary = { "FirmwareFeatures": "0xFC0FE137", "SecureBootModel": None, "CPU Generation": cpu_data.cpu_data.broadwell, - "Max OS supported": None, + "Max OS Supported": None, "Wireless Model": device_probe.Broadcom.Chipsets.AirportBrcmNIC, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20702_v2, }, @@ -1178,7 +1178,7 @@ smbios_dictionary = { "FirmwareFeatures": "0xFC0FE137", "SecureBootModel": None, "CPU Generation": cpu_data.cpu_data.broadwell, - "Max OS supported": None, + "Max OS Supported": None, "Wireless Model": device_probe.Broadcom.Chipsets.AirportBrcmNIC, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20702_v2, }, @@ -1190,7 +1190,7 @@ smbios_dictionary = { "FirmwareFeatures": "0xFC0FE137", "SecureBootModel": None, "CPU Generation": cpu_data.cpu_data.skylake, - "Max OS supported": None, + "Max OS Supported": None, "Wireless Model": device_probe.Broadcom.Chipsets.AirportBrcmNIC, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20702_v2, }, @@ -1200,7 +1200,7 @@ smbios_dictionary = { "FirmwareFeatures": "0xFD0FF576", "SecureBootModel": None, "CPU Generation": cpu_data.cpu_data.kaby_lake, - "Max OS supported": None, + "Max OS Supported": None, "Wireless Model": device_probe.Broadcom.Chipsets.AirportBrcmNIC, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20703, }, @@ -1210,7 +1210,7 @@ smbios_dictionary = { "FirmwareFeatures": "0xFD0FF576", "SecureBootModel": None, "CPU Generation": cpu_data.cpu_data.kaby_lake, - "Max OS supported": None, + "Max OS Supported": None, "Wireless Model": device_probe.Broadcom.Chipsets.AirportBrcmNIC, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20703, }, @@ -1220,7 +1220,7 @@ smbios_dictionary = { "FirmwareFeatures": "0xFD0FF576", "SecureBootModel": None, "CPU Generation": cpu_data.cpu_data.kaby_lake, - "Max OS supported": None, + "Max OS Supported": None, "Wireless Model": device_probe.Broadcom.Chipsets.AirportBrcmNIC, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20703, }, @@ -1230,9 +1230,9 @@ smbios_dictionary = { "FirmwareFeatures": "0xFD8FF576", "SecureBootModel": None, "CPU Generation": cpu_data.cpu_data.coffee_lake, - "Max OS supported": None, + "Max OS Supported": None, "Wireless Model": device_probe.Broadcom.Chipsets.AppleBCMWLANBusInterfacePCIe, - "Bluetooth Model": bluetooth_data.bluetooth_data.UART, + "Bluetooth Model": bluetooth_data.bluetooth_data.UART, }, "iMac19,2": { @@ -1240,9 +1240,9 @@ smbios_dictionary = { "FirmwareFeatures": "0xFD8FF576", "SecureBootModel": None, "CPU Generation": cpu_data.cpu_data.coffee_lake, - "Max OS supported": None, + "Max OS Supported": None, "Wireless Model": device_probe.Broadcom.Chipsets.AppleBCMWLANBusInterfacePCIe, - "Bluetooth Model": bluetooth_data.bluetooth_data.UART, + "Bluetooth Model": bluetooth_data.bluetooth_data.UART, }, "iMac20,1": { @@ -1250,9 +1250,9 @@ smbios_dictionary = { "FirmwareFeatures": "0xFD8FF576", "SecureBootModel": "j185ap", "CPU Generation": cpu_data.cpu_data.comet_lake, - "Max OS supported": None, + "Max OS Supported": None, "Wireless Model": device_probe.Broadcom.Chipsets.AppleBCMWLANBusInterfacePCIe, - "Bluetooth Model": bluetooth_data.bluetooth_data.UART, + "Bluetooth Model": bluetooth_data.bluetooth_data.UART, }, "iMac20,2": { @@ -1260,9 +1260,9 @@ smbios_dictionary = { "FirmwareFeatures": "0xFD8FF576", "SecureBootModel": "j185fap", "CPU Generation": cpu_data.cpu_data.comet_lake, - "Max OS supported": None, + "Max OS Supported": None, "Wireless Model": device_probe.Broadcom.Chipsets.AppleBCMWLANBusInterfacePCIe, - "Bluetooth Model": bluetooth_data.bluetooth_data.UART, + "Bluetooth Model": bluetooth_data.bluetooth_data.UART, }, "iMacPro1,1": { @@ -1270,9 +1270,9 @@ smbios_dictionary = { "FirmwareFeatures": "0xFD8FF53E", "SecureBootModel": "j137ap", "CPU Generation": cpu_data.cpu_data.skylake, - "Max OS supported": None, + "Max OS Supported": None, "Wireless Model": device_probe.Broadcom.Chipsets.AppleBCMWLANBusInterfacePCIe, - "Bluetooth Model": bluetooth_data.bluetooth_data.UART, + "Bluetooth Model": bluetooth_data.bluetooth_data.UART, }, "MacPro1,1": { @@ -1280,7 +1280,7 @@ smbios_dictionary = { "FirmwareFeatures": "0x80000015", "SecureBootModel": None, "CPU Generation": cpu_data.cpu_data.conroe, - "Max OS supported": os_data.os_data.lion, + "Max OS Supported": os_data.os_data.lion, "Wireless Model": None, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM2045, "UGA Graphics": True, @@ -1291,7 +1291,7 @@ smbios_dictionary = { "FirmwareFeatures": "0xC0000015", "SecureBootModel": None, "CPU Generation": cpu_data.cpu_data.conroe, - "Max OS supported": os_data.os_data.lion, + "Max OS Supported": os_data.os_data.lion, "Wireless Model": None, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM2045, "UGA Graphics": True, @@ -1302,7 +1302,7 @@ smbios_dictionary = { "FirmwareFeatures": "0xC0001403", "SecureBootModel": None, "CPU Generation": cpu_data.cpu_data.penryn, - "Max OS supported": os_data.os_data.el_capitan, + "Max OS Supported": os_data.os_data.el_capitan, "Wireless Model": device_probe.Broadcom.Chipsets.AirPortBrcm43224, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM2045, "UGA Graphics": True, @@ -1313,8 +1313,8 @@ smbios_dictionary = { "Board ID": "Mac-F221BEC8", "FirmwareFeatures": "0xE001F537", "SecureBootModel": None, - "CPU Generation": cpu_data.cpu_data.nahalem, - "Max OS supported": os_data.os_data.el_capitan, + "CPU Generation": cpu_data.cpu_data.nehalem, + "Max OS Supported": os_data.os_data.el_capitan, "Wireless Model": device_probe.Atheros.Chipsets.AirPortAtheros40, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM2046, }, @@ -1324,8 +1324,8 @@ smbios_dictionary = { "Board ID": "Mac-F221BEC8", "FirmwareFeatures": "0xE80FE137", "SecureBootModel": None, - "CPU Generation": cpu_data.cpu_data.nahalem, - "Max OS supported": os_data.os_data.mojave, + "CPU Generation": cpu_data.cpu_data.nehalem, + "Max OS Supported": os_data.os_data.mojave, "Wireless Model": device_probe.Broadcom.Chipsets.AirPortBrcm4331, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM2046, }, @@ -1335,7 +1335,7 @@ smbios_dictionary = { "FirmwareFeatures": "0xE90FF576", "SecureBootModel": None, "CPU Generation": cpu_data.cpu_data.ivy_bridge, - "Max OS supported": None, + "Max OS Supported": None, "Wireless Model": device_probe.Broadcom.Chipsets.AirportBrcmNIC, "Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20702_v2, }, @@ -1345,9 +1345,9 @@ smbios_dictionary = { "FirmwareFeatures": "0xFDAFF066", "SecureBootModel": "j160ap", "CPU Generation": cpu_data.cpu_data.coffee_lake, - "Max OS supported": None, + "Max OS Supported": None, "Wireless Model": device_probe.Broadcom.Chipsets.AppleBCMWLANBusInterfacePCIe, - "Bluetooth Model": bluetooth_data.bluetooth_data.UART, + "Bluetooth Model": bluetooth_data.bluetooth_data.UART, }, "Xserve1,1": { @@ -1355,7 +1355,7 @@ smbios_dictionary = { "FirmwareFeatures": None, "SecureBootModel": None, "CPU Generation": cpu_data.cpu_data.conroe, - "Max OS supported": os_data.os_data.lion, + "Max OS Supported": os_data.os_data.lion, "Wireless Model": None, "Bluetooth Model": bluetooth_data.bluetooth_data.NonApplicable, "UGA Graphics": True, @@ -1366,7 +1366,7 @@ smbios_dictionary = { "FirmwareFeatures": "0xC0001403", "SecureBootModel": None, "CPU Generation": cpu_data.cpu_data.penryn, - "Max OS supported": os_data.os_data.lion, + "Max OS Supported": os_data.os_data.lion, "Wireless Model": None, "Bluetooth Model": bluetooth_data.bluetooth_data.NonApplicable, "UGA Graphics": True, @@ -1376,10 +1376,10 @@ smbios_dictionary = { "Board ID": "Mac-F223BEC8", "FirmwareFeatures": "0xE001F537", "SecureBootModel": None, - "CPU Generation": cpu_data.cpu_data.nahalem, - "Max OS supported": os_data.os_data.el_capitan, + "CPU Generation": cpu_data.cpu_data.nehalem, + "Max OS Supported": os_data.os_data.el_capitan, "Wireless Model": None, "Bluetooth Model": bluetooth_data.bluetooth_data.NonApplicable, }, -} \ No newline at end of file +} diff --git a/Resources/Build.py b/Resources/Build.py index fb1d2ddac..a07c36799 100644 --- a/Resources/Build.py +++ b/Resources/Build.py @@ -14,7 +14,7 @@ import ast from pathlib import Path from datetime import date -from Resources import Constants, ModelArray, Utilities, device_probe +from Resources import Constants, ModelArray, Utilities, device_probe, generate_smbios from Data import smbios_data, bluetooth_data, cpu_data @@ -30,39 +30,8 @@ class BuildOpenCore: self.config = None self.constants: Constants.Constants = versions self.computer = self.constants.computer - self.gfx0_path = None - def smbios_set(self, model): - if model in ModelArray.MacBookAir_11: - return "MacBookAir7,1" - elif model in ModelArray.MacBookAir_13: - return "MacBookAir7,2" - elif model in ModelArray.MacBook_12: - return "MacBook9,1" - elif model in ModelArray.MacBookPro_13: - return "MacBookPro12,1" - elif model in ModelArray.MacBookPro_15_iGPU: - return "MacBookPro11,4" - elif model in ModelArray.MacBookPro_15_dGPU: - return "MacBookPro11,5" - elif model in ModelArray.Macmini: - return "Macmini7,1" - elif model in ModelArray.iMac_iGPUless: - return "iMacPro1,1" - elif model in ModelArray.iMac_dGPU: - # Check for upgraded GPUs on iMacs - if self.constants.drm_support is True: - return "iMacPro1,1" - else: - return "iMac17,1" - elif model in ModelArray.iMac_iGPU: - return "iMac16,1" - elif model in ModelArray.MacPro: - return "MacPro7,1" - else: - return model - def patch_firmware_feature(self): # Adjust FirmwareFeature to support everything macOS requires # APFS Bit (19/20): 10.13+ (OSInstall) @@ -179,12 +148,12 @@ 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 (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.constants.allow_oc_everywhere is False: + if (smbios_data.smbios_dictionary[generate_smbios.set_smbios_model_spoof(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 smbios_data.smbios_dictionary[self.model]["CPU Generation"] <= cpu_data.cpu_data.sandy_bridge: # Ref: https://github.com/reenigneorcim/SurPlus @@ -345,14 +314,15 @@ class BuildOpenCore: self.get_item_by_kv(self.config["Kernel"]["Patch"], "Identifier", "com.apple.iokit.IOHIDFamily")["Enabled"] = True # SSDT patches - 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")): + if smbios_data.smbios_dictionary[self.model]["CPU Generation"] == cpu_data.cpu_data.nehalem and not (self.model.startswith("MacPro") or self.model.startswith("Xserve")): + # Applicable for consumer Nehalem 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 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 + # Applicable for 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 @@ -453,6 +423,7 @@ class BuildOpenCore: } # Enable FireWire Boot Support + # Applicable for both native FireWire and Thunderbolt to FireWire adapters if self.constants.firewire_boot is True and self.model not in ModelArray.NoFireWireSupport: print("- Enabling FireWire Boot Support") self.enable_kext("IOFireWireFamily.kext", self.constants.fw_kext, self.constants.fw_family_path) @@ -529,7 +500,8 @@ class BuildOpenCore: "class-code": binascii.unhexlify("FFFFFFFF"), } elif self.model == "iMac10,1": - self.enable_kext("AAAMouSSE.kext", self.constants.mousse_version, self.constants.mousse_path) + 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) # Check GPU Vendor if self.constants.metal_build is True: @@ -736,7 +708,7 @@ class BuildOpenCore: spoofed_model = self.model if self.constants.override_smbios == "Default": print("- Setting macOS Monterey Supported SMBIOS") - spoofed_model = self.smbios_set(self.model) + spoofed_model = generate_smbios.set_smbios_model_spoof(self.model) else: spoofed_model = self.constants.override_smbios print(f"- Using Model ID: {spoofed_model}") @@ -983,7 +955,8 @@ class BuildOpenCore: def build_opencore(self): self.build_efi() - self.set_smbios() + if self.constants.allow_oc_everywhere is False: + self.set_smbios() self.cleanup() self.sign_files() print("") diff --git a/Resources/Constants.py b/Resources/Constants.py index 7c113e6b3..69cb58055 100644 --- a/Resources/Constants.py +++ b/Resources/Constants.py @@ -75,7 +75,7 @@ class Constants: self.payload_path = self.current_path / Path("payloads") # Patcher Settings - self.allow_oc_everywhere = False # Set whether Patcher can be run on unsupported Macs + self.allow_oc_everywhere = True # Set whether Patcher can be run on unsupported Macs self.gui_mode = False # Determine whether running in a GUI or TUI self.disk = "" # Set installation ESP self.patch_disk = "" # Set Root Volume to patch diff --git a/Resources/ModelArray.py b/Resources/ModelArray.py index 78ab84b9d..e1265cf11 100644 --- a/Resources/ModelArray.py +++ b/Resources/ModelArray.py @@ -340,91 +340,6 @@ IntelNvidiaDRM = [ IDEPatch = ["MacBook4,1", "MacBookPro4,1", "iMac7,1", "iMac8,1", "MacPro3,1", "Xserve2,1", "Dortania1,1"] -# 11" Air -MacBookAir_11 = [ - "MacBookAir3,1", - "MacBookAir4,1", - "MacBookAir5,1", - "MacBookAir6,1", -] - -# Classic MacBook and 13" Air -MacBookAir_13 = [ - "MacBook4,1", - "MacBook5,1", - "MacBook5,2", - "MacBook6,1", - "MacBook7,1", - "MacBookAir2,1", - "MacBookAir3,2", - "MacBookAir4,2", - "MacBookAir5,2", - "MacBookAir6,2", -] - -# Retina MacBook -MacBook_12 = [ - "MacBook8,1", -] - -# MacBook Pro 13" - -MacBookPro_13 = [ - "MacBookPro5,5", - "MacBookPro7,1", - "MacBookPro8,1", - "MacBookPro9,2", - "MacBookPro10,2", - "MacBookPro11,1", -] - -# MacBook Pro 15" (iGPU) - -MacBookPro_15_iGPU = ["MacBookPro11,2"] - -# MacBook Pro 15" and 17" (dGPU) - -MacBookPro_15_dGPU = [ - "MacBookPro4,1", - "MacBookPro5,1", - "MacBookPro5,2", - "MacBookPro5,3", - "MacBookPro5,4", - "MacBookPro6,1", - "MacBookPro6,2", - "MacBookPro8,2", - "MacBookPro8,3", - "MacBookPro9,1", - "MacBookPro10,1", - "MacBookPro11,3", -] - -# Mac Mini - -Macmini = ["Macmini3,1", "Macmini4,1", "Macmini5,1", "Macmini5,2", "Macmini5,3", "Macmini6,1", "Macmini6,2"] -# iMacPro = dGPU only iMacs -iMac_iGPUless = [ - "iMac7,1", - "iMac8,1", - "iMac9,1", - "iMac10,1", - "iMac11,1", - "iMac11,2", - "iMac11,3", - "iMac12,1", - "iMac12,2", -] - -# iMac = AMD and Nvidia GPU with iGPU -iMac_dGPU = [ - "iMac13,2", - "iMac14,2", - "iMac14,3", - "iMac15,1", -] -# iMac = Intel iGPU -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"] diff --git a/Resources/generate_smbios.py b/Resources/generate_smbios.py new file mode 100644 index 000000000..78c5b7bbe --- /dev/null +++ b/Resources/generate_smbios.py @@ -0,0 +1,53 @@ +from Data import smbios_data, os_data + +def set_smbios_model_spoof(model): + try: + smbios_data.smbios_dictionary[model]["Screen Size"] + # Found mobile SMBIOS + if model.startswith("MacBookAir"): + if smbios_data.smbios_dictionary[model]["Screen Size"] == 13: + return "MacBookAir7,2" + elif smbios_data.smbios_dictionary[model]["Screen Size"] == 11: + return "MacBookAir7,1" + else: + # Unknown Model + raise Exception + elif model.startswith("MacBookPro"): + if smbios_data.smbios_dictionary[model]["Screen Size"] == 13: + return "MacBookPro12,1" + elif smbios_data.smbios_dictionary[model]["Screen Size"] >= 15: + # 15" and 17" + try: + smbios_data.smbios_dictionary[model]["Switchable GPUs"] + return "MacBookPro11,5" + except KeyError: + return "MacBookPro11,4" + else: + # Unknown Model + raise Exception + elif model.startswith("MacBook"): + if smbios_data.smbios_dictionary[model]["Screen Size"] == 13: + return "MacBookAir7,2" + elif smbios_data.smbios_dictionary[model]["Screen Size"] == 12: + return "MacBook9,1" + else: + # Unknown Model + raise Exception + else: + # Unknown Model + raise Exception + except KeyError: + # Found desktop model + if model.startswith("MacPro") or model.startswith("Xserve"): + return "MacPro7,1" + elif model.startswith("Macmini"): + return "Macmini7,1" + elif model.startswith("iMac"): + if smbios_data.smbios_dictionary[model]["Max OS Supported"] <= os_data.os_data.high_sierra: + # Models dropped in Mojave either do not have an iGPU, or should have them disabled + return "iMacPro1,1" + else: + return "iMac17,1" + else: + # Unknown Model + raise Exception \ No newline at end of file