From 997e9f74a1a3839550881b8d178c3610ea07ee6f Mon Sep 17 00:00:00 2001 From: Saurabh Mishra Date: Tue, 22 Nov 2022 13:15:10 +0530 Subject: [PATCH] vc/intel/fsp/mtl: Add new header file FirmwareVersionInfo.h Changes include: - Add header file FirmwareVersionInfo.h BUG=b:260183604 BRANCH=None TEST=Verified Google/Rex0 build with all the patch in relation chain and verified the version output prints no junk data. Signed-off-by: Saurabh Mishra Change-Id: Ib5c843bb0dccd5db92f74148df3a17037988392c Reviewed-on: https://review.coreboot.org/c/coreboot/+/69882 Reviewed-by: Ronak Kanabar Reviewed-by: Subrata Banik Tested-by: build bot (Jenkins) --- .../fsp2_0/meteorlake/FirmwareVersionInfo.h | 60 +++++++++++++++++++ 1 file changed, 60 insertions(+) create mode 100644 src/vendorcode/intel/fsp/fsp2_0/meteorlake/FirmwareVersionInfo.h diff --git a/src/vendorcode/intel/fsp/fsp2_0/meteorlake/FirmwareVersionInfo.h b/src/vendorcode/intel/fsp/fsp2_0/meteorlake/FirmwareVersionInfo.h new file mode 100644 index 0000000000..fa6ce0c2aa --- /dev/null +++ b/src/vendorcode/intel/fsp/fsp2_0/meteorlake/FirmwareVersionInfo.h @@ -0,0 +1,60 @@ +/** @file + Header file for Firmware Version Information + + @copyright + Copyright (c) 2015 - 2022, Intel Corporation. All rights reserved.
+ + This program and the accompanying materials are licensed and made available under + the terms and conditions of the BSD License which accompanies this distribution. + The full text of the license may be found at + http://opensource.org/licenses/bsd-license.php + + THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, + WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. + + @par Specification Reference: + System Management BIOS (SMBIOS) Reference Specification v3.0.0 dated 2015-Feb-12 + http://www.dmtf.org/sites/default/files/standards/documents/DSP0134_3.0.0.pdf + +**/ + +#ifndef __FIRMWARE_VERSION_INFO_H__ +#define __FIRMWARE_VERSION_INFO_H__ + +#include + +#define INTEL_FIRMWARE_VERSION_INFO_GROUP_NAME "Firmware Version Info" + +#pragma pack(1) + +/// +/// Firmware Version Structure +/// +typedef struct { + UINT8 MajorVersion; + UINT8 MinorVersion; + UINT8 Revision; + UINT16 BuildNumber; +} INTEL_FIRMWARE_VERSION; + +/// +/// Firmware Version Info (FVI) Structure +/// +typedef struct { + SMBIOS_TABLE_STRING ComponentName; ///< String Index of Component Name + SMBIOS_TABLE_STRING VersionString; ///< String Index of Version String + INTEL_FIRMWARE_VERSION Version; ///< Firmware version +} INTEL_FIRMWARE_VERSION_INFO; + +/// +/// SMBIOS OEM Type Intel Firmware Version Info (FVI) Structure +/// +typedef struct { + SMBIOS_STRUCTURE Header; ///< SMBIOS structure header + UINT8 Count; ///< Number of FVI entries in this structure + INTEL_FIRMWARE_VERSION_INFO Fvi[1]; ///< FVI structure(s) +} SMBIOS_TABLE_TYPE_OEM_INTEL_FVI; + +#pragma pack() + +#endif