diff --git a/Changelog.md b/Changelog.md index f0e6f4db..78d854e9 100644 --- a/Changelog.md +++ b/Changelog.md @@ -2,6 +2,7 @@ OpenCore Changelog ================== #### v0.6.2 - Updated builtin firmware versions for SMBIOS and the rest +- Added `ProcessorType` option to `Generic` allowing custom CPU names #### v0.6.1 - Improved recognition of early pressed hotkeys, thx @varahash diff --git a/Docs/Configuration.pdf b/Docs/Configuration.pdf index 7caef963..988fdaa9 100644 Binary files a/Docs/Configuration.pdf and b/Docs/Configuration.pdf differ diff --git a/Docs/Configuration.tex b/Docs/Configuration.tex index 30738d84..7253152e 100755 --- a/Docs/Configuration.tex +++ b/Docs/Configuration.tex @@ -4323,6 +4323,11 @@ be used. Version with macOS specific enhancements can be downloaded from a drive with EFI partition being the first partition on the disk. \end{itemize} +\item + \texttt{ProcessorType} + \textbf{Type}: \texttt{plist\ integer}\\ + \textbf{Failsafe}: Automatic\\ + \textbf{Description}: Refer to SMBIOS \texttt{ProcessorType}. \item \texttt{SystemProductName}\\ \textbf{Type}: \texttt{plist\ string}\\ diff --git a/Docs/Differences/Differences.pdf b/Docs/Differences/Differences.pdf index b80e4637..c07be00b 100644 Binary files a/Docs/Differences/Differences.pdf and b/Docs/Differences/Differences.pdf differ diff --git a/Docs/Differences/Differences.tex b/Docs/Differences/Differences.tex index f92f0f1b..656d6cba 100644 --- a/Docs/Differences/Differences.tex +++ b/Docs/Differences/Differences.tex @@ -1,7 +1,7 @@ \documentclass[]{article} %DIF LATEXDIFF DIFFERENCE FILE -%DIF DEL PreviousConfiguration.tex Mon Sep 7 20:41:54 2020 -%DIF ADD ../Configuration.tex Mon Sep 7 20:44:00 2020 +%DIF DEL PreviousConfiguration.tex Thu Sep 10 18:48:52 2020 +%DIF ADD ../Configuration.tex Thu Sep 10 18:56:58 2020 \usepackage{lmodern} \usepackage{amssymb,amsmath} @@ -4383,7 +4383,12 @@ be used. Version with macOS specific enhancements can be downloaded from a drive with EFI partition being the first partition on the disk. \end{itemize} -\item +\DIFaddbegin \item + \texttt{\DIFadd{ProcessorType}} + \textbf{\DIFadd{Type}}\DIFadd{: }\texttt{\DIFadd{plist\ integer}}\\ + \textbf{\DIFadd{Failsafe}}\DIFadd{: Automatic}\\ + \textbf{\DIFadd{Description}}\DIFadd{: Refer to SMBIOS }\texttt{\DIFadd{ProcessorType}}\DIFadd{. +}\DIFaddend \item \texttt{SystemProductName}\\ \textbf{Type}: \texttt{plist\ string}\\ \textbf{Failsafe}: \texttt{MacPro6,1}\\ diff --git a/Docs/Errata/Errata.pdf b/Docs/Errata/Errata.pdf index c11935bc..ef5ef0d5 100644 Binary files a/Docs/Errata/Errata.pdf and b/Docs/Errata/Errata.pdf differ diff --git a/Docs/Sample.plist b/Docs/Sample.plist index dcb83d7d..46caece0 100644 --- a/Docs/Sample.plist +++ b/Docs/Sample.plist @@ -926,6 +926,8 @@ MLB M0000000000000001 + ProcessorType + 0 ROM ESIzRFVm SpoofVendor diff --git a/Docs/SampleCustom.plist b/Docs/SampleCustom.plist index 33c2a71c..9908a081 100644 --- a/Docs/SampleCustom.plist +++ b/Docs/SampleCustom.plist @@ -920,6 +920,25 @@ Automatic + Generic + + AdviseWindows + + MLB + M0000000000000001 + ProcessorType + 0 + ROM + ESIzRFVm + SpoofVendor + + SystemProductName + iMac19,1 + SystemSerialNumber + W00000000001 + SystemUUID + 00000000-0000-0000-0000-000000000000 + DataHub ARTFrequency diff --git a/Include/Acidanthera/Library/OcConfigurationLib.h b/Include/Acidanthera/Library/OcConfigurationLib.h index a80cb79e..c0b5e808 100644 --- a/Include/Acidanthera/Library/OcConfigurationLib.h +++ b/Include/Acidanthera/Library/OcConfigurationLib.h @@ -414,6 +414,7 @@ typedef enum { _(OC_STRING , SystemSerialNumber , , OC_STRING_CONSTR ("OPENCORE_SN1", _, __) , OC_DESTR (OC_STRING) ) \ _(OC_STRING , SystemUuid , , OC_STRING_CONSTR ("", _, __) , OC_DESTR (OC_STRING) ) \ _(OC_STRING , Mlb , , OC_STRING_CONSTR ("OPENCORE_MLB_SN11", _, __), OC_DESTR (OC_STRING) ) \ + _(UINT16 , ProcessorType , , 0 , () ) \ _(UINT8 , Rom , [6] , {0} , () ) \ _(BOOLEAN , SpoofVendor , , FALSE , () ) \ _(BOOLEAN , AdviseWindows , , FALSE , () ) diff --git a/Library/OcConfigurationLib/OcConfigurationLib.c b/Library/OcConfigurationLib/OcConfigurationLib.c index 997f19f6..48cd553b 100644 --- a/Library/OcConfigurationLib/OcConfigurationLib.c +++ b/Library/OcConfigurationLib/OcConfigurationLib.c @@ -496,6 +496,7 @@ OC_SCHEMA mPlatformConfigurationGenericSchema[] = { OC_SCHEMA_BOOLEAN_IN ("AdviseWindows", OC_GLOBAL_CONFIG, PlatformInfo.Generic.AdviseWindows), OC_SCHEMA_STRING_IN ("MLB", OC_GLOBAL_CONFIG, PlatformInfo.Generic.Mlb), + OC_SCHEMA_INTEGER_IN ("ProcessorType", OC_GLOBAL_CONFIG, PlatformInfo.Generic.ProcessorType), OC_SCHEMA_DATAF_IN ("ROM", OC_GLOBAL_CONFIG, PlatformInfo.Generic.Rom), OC_SCHEMA_BOOLEAN_IN ("SpoofVendor", OC_GLOBAL_CONFIG, PlatformInfo.Generic.SpoofVendor), OC_SCHEMA_STRING_IN ("SystemProductName", OC_GLOBAL_CONFIG, PlatformInfo.Generic.SystemProductName), diff --git a/Platform/OpenCore/OpenCorePlatform.c b/Platform/OpenCore/OpenCorePlatform.c index a99710d8..244c6624 100644 --- a/Platform/OpenCore/OpenCorePlatform.c +++ b/Platform/OpenCore/OpenCorePlatform.c @@ -345,8 +345,14 @@ OcPlatformUpdateSmbios ( Data.FirmwareFeaturesMask |= FW_FEATURE_SUPPORTS_CSM_LEGACY_MODE | FW_FEATURE_SUPPORTS_UEFI_WINDOWS_BOOT; } - Data.ProcessorType = NULL; - Data.PlatformFeature = MacInfo->Smbios.PlatformFeature; + // + // Permit overriding the CPU type for those that want it. + // + if (Config->PlatformInfo.Generic.ProcessorType != 0) { + Data.ProcessorType = &Config->PlatformInfo.Generic.ProcessorType; + } + + Data.PlatformFeature = MacInfo->Smbios.PlatformFeature; if (MacInfo->DataHub.SmcRevision != NULL) { OcSmbiosGetSmcVersion (MacInfo->DataHub.SmcRevision, SmcVersion);