From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by mx.groups.io with SMTP id smtpd.web08.23863.1621866509064620526 for ; Mon, 24 May 2021 07:28:29 -0700 Authentication-Results: mx.groups.io; dkim=missing; spf=pass (domain: arm.com, ip: 217.140.110.172, mailfrom: pranav.madhu@arm.com) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 9B5ADED1; Mon, 24 May 2021 07:28:27 -0700 (PDT) Received: from usa.arm.com (a074742.blr.arm.com [10.162.16.32]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id 6C1B83F719; Mon, 24 May 2021 07:28:26 -0700 (PDT) From: "Pranav Madhu" To: devel@edk2.groups.io Cc: Ard Biesheuvel , Sami Mujawar Subject: [edk2-platforms][PATCH V4 00/11] Add SMBIOS tables for Arm's Reference Design platforms Date: Mon, 24 May 2021 19:58:05 +0530 Message-Id: <20210524142816.9967-1-pranav.madhu@arm.com> X-Mailer: git-send-email 2.17.1 MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Changes since V3: - Add UpdateMemorySize API to update memory size information as suggested= by Sami. Changes since V2: - Addressed comments from Sami - Picked up Sami's reviewed-by tags. Changes since V1: - Rebase the patches on top of latest master branch SMBIOS provides basic hardware and firmware configuration information through table-driven data structure. This patch series adds SMBIOS support for Arm's SGI/RD platforms. The first patch in this series defines platform-id values for the RD-N2 platform library header. The second patch add SgiGetProductId API, which is used by the SMBIOS driver to distinguish between the platforms, and install the right table. The third patch in this series adds SMBIOS driver support that allows for installation of multiple SMBIOS tables. And subsequent patches in this series add SMBIOS tables, which are mandatory as per Arm serverready SBBR specification. Link to github branch with the patches in this series - https://github.com/Pranav-Madhu/edk2-platforms/tree/topics/rd_smbios Pranav Madhu (11): Platform/Sgi: Define RD-N2 platform id values Platform/Sgi: Add GetProductId API for SGI/RD Platforms Platform/Sgi: Add Initial SMBIOS support Platform/Sgi: Add SMBIOS Type1 Table Platform/Sgi: Add SMBIOS Type3 Table Platform/Sgi: Add SMBIOS Type4 Table Platform/Sgi: Add SMBIOS Type7 Table Platform/Sgi: Add SMBIOS Type16 Table Platform/Sgi: Add SMBIOS Type17 Table Platform/Sgi: Add SMBIOS Type19 Table Platform/Sgi: Add SMBIOS Type32 Table Platform/ARM/SgiPkg/SgiPlatform.dsc.inc | 11 + Platform/ARM/SgiPkg/SgiPlatform.fdf | 8 +- .../SmbiosPlatformDxe/SmbiosPlatformDxe.inf | 62 +++ .../SmbiosPlatformDxe/SmbiosPlatformDxe.h | 197 +++++++++ Platform/ARM/SgiPkg/Include/SgiPlatform.h | 36 +- .../SmbiosPlatformDxe/SmbiosPlatformDxe.c | 106 +++++ .../SmbiosPlatformDxe/Type0BiosInformation.c | 135 ++++++ .../Type16PhysicalMemoryArray.c | 106 +++++ .../SmbiosPlatformDxe/Type17MemoryDevice.c | 409 ++++++++++++++++++ .../Type19MemoryArrayMappedAddress.c | 97 +++++ .../Type1SystemInformation.c | 142 ++++++ .../Type32SystemBootInformation.c | 84 ++++ .../SmbiosPlatformDxe/Type3SystemEnclosure.c | 103 +++++ .../Type4ProcessorInformation.c | 219 ++++++++++ .../SmbiosPlatformDxe/Type7CacheInformation.c | 342 +++++++++++++++ .../SgiPkg/Library/PlatformLib/PlatformLib.c | 86 +++- 16 files changed, 2140 insertions(+), 3 deletions(-) create mode 100644 Platform/ARM/SgiPkg/Drivers/SmbiosPlatformDxe/SmbiosP= latformDxe.inf create mode 100644 Platform/ARM/SgiPkg/Drivers/SmbiosPlatformDxe/SmbiosP= latformDxe.h create mode 100644 Platform/ARM/SgiPkg/Drivers/SmbiosPlatformDxe/SmbiosP= latformDxe.c create mode 100644 Platform/ARM/SgiPkg/Drivers/SmbiosPlatformDxe/Type0Bi= osInformation.c create mode 100644 Platform/ARM/SgiPkg/Drivers/SmbiosPlatformDxe/Type16P= hysicalMemoryArray.c create mode 100644 Platform/ARM/SgiPkg/Drivers/SmbiosPlatformDxe/Type17M= emoryDevice.c create mode 100644 Platform/ARM/SgiPkg/Drivers/SmbiosPlatformDxe/Type19M= emoryArrayMappedAddress.c create mode 100644 Platform/ARM/SgiPkg/Drivers/SmbiosPlatformDxe/Type1Sy= stemInformation.c create mode 100644 Platform/ARM/SgiPkg/Drivers/SmbiosPlatformDxe/Type32S= ystemBootInformation.c create mode 100644 Platform/ARM/SgiPkg/Drivers/SmbiosPlatformDxe/Type3Sy= stemEnclosure.c create mode 100644 Platform/ARM/SgiPkg/Drivers/SmbiosPlatformDxe/Type4Pr= ocessorInformation.c create mode 100644 Platform/ARM/SgiPkg/Drivers/SmbiosPlatformDxe/Type7Ca= cheInformation.c --=20 2.17.1