FirmwareVersionInfo.h 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. /** @file
  2. Intel Firmware Version Info (FVI) related definitions.
  3. @todo update document/spec reference
  4. Copyright (c) 2016, Intel Corporation. All rights reserved.<BR>
  5. SPDX-License-Identifier: BSD-2-Clause-Patent
  6. @par Specification Reference:
  7. System Management BIOS (SMBIOS) Reference Specification v3.0.0 dated 2015-Feb-12
  8. http://www.dmtf.org/sites/default/files/standards/documents/DSP0134_3.0.0.pdf
  9. **/
  10. #ifndef __FIRMWARE_VERSION_INFO_H__
  11. #define __FIRMWARE_VERSION_INFO_H__
  12. #include <IndustryStandard/SmBios.h>
  13. #define INTEL_FIRMWARE_VERSION_INFO_GROUP_NAME "Firmware Version Info"
  14. #define INTEL_FVI_SMBIOS_TYPE 0xDD
  15. #pragma pack(1)
  16. ///
  17. /// Firmware Version Structure
  18. ///
  19. typedef struct {
  20. UINT8 MajorVersion;
  21. UINT8 MinorVersion;
  22. UINT8 Revision;
  23. UINT16 BuildNumber;
  24. } INTEL_FIRMWARE_VERSION;
  25. ///
  26. /// Firmware Version Info (FVI) Structure
  27. ///
  28. typedef struct {
  29. SMBIOS_TABLE_STRING ComponentName; ///< String Index of Component Name
  30. SMBIOS_TABLE_STRING VersionString; ///< String Index of Version String
  31. INTEL_FIRMWARE_VERSION Version; ///< Firmware version
  32. } INTEL_FIRMWARE_VERSION_INFO;
  33. ///
  34. /// SMBIOS OEM Type Intel Firmware Version Info (FVI) Structure
  35. ///
  36. typedef struct {
  37. SMBIOS_STRUCTURE Header; ///< SMBIOS structure header
  38. UINT8 Count; ///< Number of FVI entries in this structure
  39. INTEL_FIRMWARE_VERSION_INFO Fvi[1]; ///< FVI structure(s)
  40. } SMBIOS_TABLE_TYPE_OEM_INTEL_FVI;
  41. #pragma pack()
  42. #endif