CheckImage(), GetPackageInfo(), and SetPackageInfo() shall return \r
EFI_UNSUPPORTED if not supported by the driver.\r
\r
- Copyright (c) 2009 - 2014, Intel Corporation. All rights reserved.<BR>\r
+ Copyright (c) 2009 - 2015, Intel Corporation. All rights reserved.<BR>\r
Copyright (c) 2013 - 2014, Hewlett-Packard Development Company, L.P.<BR> \r
This program and the accompanying materials \r
are licensed and made available under the terms and conditions of the BSD License \r
/// \r
UINT8 ImageIndex;\r
///\r
- /// A unique number identifying the firmware image type. \r
- /// \r
+ /// A unique GUID identifying the firmware image type.\r
+ ///\r
EFI_GUID ImageTypeId;\r
/// \r
/// A unique number identifying the firmware image. \r
/// present in version 2 or higher.\r
///\r
UINT32 LowestSupportedImageVersion;\r
+ ///\r
+ /// Describes the version that was last attempted to update. If no update attempted the\r
+ /// value will be 0. If the update attempted was improperly formatted and no version\r
+ /// number was available then the value will be zero. Only present in version 3 or higher.\r
+ UINT32 LastAttemptVersion;\r
+ ///\r
+ /// Describes the status that was last attempted to update. If no update has been attempted\r
+ /// the value will be LAST_ATTEMPT_STATUS_SUCCESS. Only present in version 3 or higher.\r
+ ///\r
+ UINT32 LastAttemptStatus;\r
+ ///\r
+ /// An optional number to identify the unique hardware instance within the system for\r
+ /// devices that may have multiple instances (Example: a plug in pci network card). This\r
+ /// number must be unique within the namespace of the ImageTypeId GUID and\r
+ /// ImageIndex. For FMP instances that have multiple descriptors for a single\r
+ /// hardware instance, all descriptors must have the same HardwareInstance value.\r
+ /// This number must be consistent between boots and should be based on some sort of\r
+ /// hardware identified unique id (serial number, etc) whenever possible. If a hardware\r
+ /// based number is not available the FMP provider may use some other characteristic\r
+ /// such as device path, bus/dev/function, slot num, etc for generating the\r
+ /// HardwareInstance. For implementations that will never have more than one\r
+ /// instance a zero can be used. A zero means the FMP provider is not able to determine a\r
+ /// unique hardware instance number or a hardware instance number is not needed. Only\r
+ /// present in version 3 or higher.\r
+ ///\r
+ UINT64 HardwareInstance;\r
} EFI_FIRMWARE_IMAGE_DESCRIPTOR;\r
\r
\r
///\r
/// Descriptor Version exposed by GetImageInfo() function\r
///\r
-#define EFI_FIRMWARE_IMAGE_DESCRIPTOR_VERSION 2\r
+#define EFI_FIRMWARE_IMAGE_DESCRIPTOR_VERSION 3\r
\r
\r
///\r