1 /** @file 2 Intel Firmware Version Info (FVI) related definitions. 3 4 @todo update document/spec reference 5 6 Copyright (c) 2016, Intel Corporation. All rights reserved.<BR> 7 This program and the accompanying materials 8 are licensed and made available under the terms and conditions of the BSD License 9 which accompanies this distribution. The full text of the license may be found at 10 http://opensource.org/licenses/bsd-license.php 11 12 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 13 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 14 15 @par Specification Reference: 16 System Management BIOS (SMBIOS) Reference Specification v3.0.0 dated 2015-Feb-12 17 http://www.dmtf.org/sites/default/files/standards/documents/DSP0134_3.0.0.pdf 18 19 **/ 20 21 #ifndef __FIRMWARE_VERSION_INFO_H__ 22 #define __FIRMWARE_VERSION_INFO_H__ 23 24 #include <IndustryStandard/SmBios.h> 25 26 #define INTEL_FIRMWARE_VERSION_INFO_GROUP_NAME "Firmware Version Info" 27 28 #pragma pack(1) 29 30 /// 31 /// Firmware Version Structure 32 /// 33 typedef struct { 34 UINT8 MajorVersion; 35 UINT8 MinorVersion; 36 UINT8 Revision; 37 UINT16 BuildNumber; 38 } INTEL_FIRMWARE_VERSION; 39 40 /// 41 /// Firmware Version Info (FVI) Structure 42 /// 43 typedef struct { 44 SMBIOS_TABLE_STRING ComponentName; ///< String Index of Component Name 45 SMBIOS_TABLE_STRING VersionString; ///< String Index of Version String 46 INTEL_FIRMWARE_VERSION Version; ///< Firmware version 47 } INTEL_FIRMWARE_VERSION_INFO; 48 49 /// 50 /// SMBIOS OEM Type Intel Firmware Version Info (FVI) Structure 51 /// 52 typedef struct { 53 SMBIOS_STRUCTURE Header; ///< SMBIOS structure header 54 UINT8 Count; ///< Number of FVI entries in this structure 55 INTEL_FIRMWARE_VERSION_INFO Fvi[1]; ///< FVI structure(s) 56 } SMBIOS_TABLE_TYPE_OEM_INTEL_FVI; 57 58 #pragma pack() 59 60 #endif 61