Hi Pranav,
This patch looks good to me.
Reviewed-by: Sami Mujawar <sami.mujawar@arm.com>
Regards,
Sami Mujawar
Extend the SMBIOS support for RD-N2-Cfg1 platform. RD-N2-Cfg1 platform is a derivative of the RD-N2 platform and so most of the table values for RD-N2 platform is reused. Signed-off-by: Pranav Madhu <pranav.madhu@arm.com> --- Platform/ARM/SgiPkg/Drivers/SmbiosPlatformDxe/Type1SystemInformation.c | 7 +++++-- Platform/ARM/SgiPkg/Drivers/SmbiosPlatformDxe/Type4ProcessorInformation.c | 7 +++++-- Platform/ARM/SgiPkg/Drivers/SmbiosPlatformDxe/Type7CacheInformation.c | 18 ++++++++++++++++++ 3 files changed, 28 insertions(+), 4 deletions(-) diff --git a/Platform/ARM/SgiPkg/Drivers/SmbiosPlatformDxe/Type1SystemInformation.c b/Platform/ARM/SgiPkg/Drivers/SmbiosPlatformDxe/Type1SystemInformation.c index 367587c07673..e8326cc6ef14 100644 --- a/Platform/ARM/SgiPkg/Drivers/SmbiosPlatformDxe/Type1SystemInformation.c +++ b/Platform/ARM/SgiPkg/Drivers/SmbiosPlatformDxe/Type1SystemInformation.c @@ -31,7 +31,8 @@ "RdE1Edge\0" \ "RdV1\0" \ "RdV1Mc\0" \ - "RdN2\0" + "RdN2\0" \ + "RdN2Cfg1\0" typedef enum { ManufacturerName = 1, @@ -64,7 +65,9 @@ STATIC GUID mSmbiosUid[] = { /* Rd-V1Mc */ {0x1f3a0806, 0x18b5, 0x4eca, {0xad, 0xcd, 0xba, 0x9b, 0x07, 0xb1, 0x0a, 0xcf}}, /* Rd-N2 */ - {0xf2cded73, 0x37f9, 0x4ec9, {0xd9, 0xf9, 0x89, 0x9b, 0x74, 0x91, 0x20, 0x49}} + {0xf2cded73, 0x37f9, 0x4ec9, {0xd9, 0xf9, 0x89, 0x9b, 0x74, 0x91, 0x20, 0x49}}, + /* Rd-N2-Cfg1 */ + {0xa4941d3d, 0xfac3, 0x4ace, {0x9a, 0x7e, 0xce, 0x26, 0x76, 0x64, 0x5e, 0xda}}, }; /* System information */ diff --git a/Platform/ARM/SgiPkg/Drivers/SmbiosPlatformDxe/Type4ProcessorInformation.c b/Platform/ARM/SgiPkg/Drivers/SmbiosPlatformDxe/Type4ProcessorInformation.c index 9ecaea3603de..b554ee6dea58 100644 --- a/Platform/ARM/SgiPkg/Drivers/SmbiosPlatformDxe/Type4ProcessorInformation.c +++ b/Platform/ARM/SgiPkg/Drivers/SmbiosPlatformDxe/Type4ProcessorInformation.c @@ -27,7 +27,7 @@ #define SOCKET_TYPE_BASE 3 #define SOCKET_TYPE_NUM 1 #define PROCESSOR_VERSION_BASE (SOCKET_TYPE_BASE + SOCKET_TYPE_NUM) -#define PROCESSOR_VERSION_NUM 8 +#define PROCESSOR_VERSION_NUM 9 #define SERIAL_NUMBER_BASE (PROCESSOR_VERSION_BASE + PROCESSOR_VERSION_NUM) #define TYPE4_STRINGS \ "0x000\0" /* Part Number */ \ @@ -41,6 +41,7 @@ "Neoverse-V1\0" \ "Neoverse-V1\0" \ "Neoverse-N2\0" \ + "Neoverse-N2\0" \ "000-0\0" /* Serial number */ \ "783-3\0" \ "786-1\0" \ @@ -48,7 +49,8 @@ "786-2\0" \ "78A-1\0" \ "78A-2\0" \ - "7B7-1\0" + "7B7-1\0" \ + "7B6-1\0" typedef enum { PartNumber = 1, @@ -173,6 +175,7 @@ InstallType4ProcessorInformation ( mArmRdSmbiosType4.Base.ThreadCount = CoreCount; break; case RdN2: + case RdN2Cfg1: mArmRdSmbiosType4.Base.CoreCount = CoreCount; mArmRdSmbiosType4.Base.EnabledCoreCount = CoreCount; mArmRdSmbiosType4.Base.ThreadCount = CoreCount; diff --git a/Platform/ARM/SgiPkg/Drivers/SmbiosPlatformDxe/Type7CacheInformation.c b/Platform/ARM/SgiPkg/Drivers/SmbiosPlatformDxe/Type7CacheInformation.c index 6be62900bd71..aec7c1b585fc 100644 --- a/Platform/ARM/SgiPkg/Drivers/SmbiosPlatformDxe/Type7CacheInformation.c +++ b/Platform/ARM/SgiPkg/Drivers/SmbiosPlatformDxe/Type7CacheInformation.c @@ -315,6 +315,24 @@ InstallType7CacheInformation ( mArmRdSmbiosType7[4].Base.InstalledSize2 = 32768; // 32MB SLC mArmRdSmbiosType7[4].Base.Associativity = CacheAssociativity16Way; break; + case RdN2Cfg1: + /* L1 instruction cache */ + mArmRdSmbiosType7[0].Base.MaximumCacheSize2 = 64; // 64KB + mArmRdSmbiosType7[0].Base.InstalledSize2 = 64; // 64KB + mArmRdSmbiosType7[0].Base.Associativity = CacheAssociativity4Way; + /* L1 data cache */ + mArmRdSmbiosType7[1].Base.MaximumCacheSize2 = 64; // 64KB + mArmRdSmbiosType7[1].Base.InstalledSize2 = 64; // 64KB + mArmRdSmbiosType7[1].Base.Associativity = CacheAssociativity4Way; + /* L2 cache */ + mArmRdSmbiosType7[2].Base.MaximumCacheSize2 = 1024; // 1MB + mArmRdSmbiosType7[2].Base.InstalledSize2 = 1024; // 1MB + mArmRdSmbiosType7[2].Base.Associativity = CacheAssociativity8Way; + /* System level cache */ + mArmRdSmbiosType7[4].Base.MaximumCacheSize2 = 8192; // 8MB SLC + mArmRdSmbiosType7[4].Base.InstalledSize2 = 8192; // 8MB SLC + mArmRdSmbiosType7[4].Base.Associativity = CacheAssociativity16Way; + break; } /* Install valid cache information tables */