firmware_update: Add 1.3.0 version updates
Add the newly added commands, completion codes , descriptor types as
part of firmware update spec version 1.3.0.
Change-Id: Idfb3f9deef23039879de6391348b33a88c89fdf5
Signed-off-by: Manojkiran Eda <manojkiran.eda@gmail.com>
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 1a505e3..9b9416d 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -22,6 +22,7 @@
- base: Add command specific completion codes.
- firmware update: Add support for DSP0267 v1.2.0 by adding
`component_opaque_data` fields to correctly parse their contents.
+- firmware_update: Add 1.3.0 version updates.
### Changed
diff --git a/include/libpldm/firmware_update.h b/include/libpldm/firmware_update.h
index 9d8cc2a..7d61c55 100644
--- a/include/libpldm/firmware_update.h
+++ b/include/libpldm/firmware_update.h
@@ -118,6 +118,8 @@
PLDM_QUERY_DOWNSTREAM_IDENTIFIERS = 0x04,
PLDM_QUERY_DOWNSTREAM_FIRMWARE_PARAMETERS = 0x05,
PLDM_REQUEST_UPDATE = 0x10,
+ PLDM_GET_PACKAGE_DATA = 0x11,
+ PLDM_GET_DEVICE_META_DATA = 0x12,
PLDM_PASS_COMPONENT_TABLE = 0x13,
PLDM_UPDATE_COMPONENT = 0x14,
PLDM_REQUEST_FIRMWARE_DATA = 0x15,
@@ -158,7 +160,10 @@
PLDM_FWUP_INVALID_TRANSFER_HANDLE = 0x90,
PLDM_FWUP_INVALID_TRANSFER_OPERATION_FLAG = 0x91,
PLDM_FWUP_ACTIVATE_PENDING_IMAGE_NOT_PERMITTED = 0x92,
- PLDM_FWUP_PACKAGE_DATA_ERROR = 0x93
+ PLDM_FWUP_PACKAGE_DATA_ERROR = 0x93,
+ PLDM_FWUP_NO_OPAQUE_DATA = 0x94,
+ PLDM_FWUP_UPDATE_SECURITY_REVISION_NOT_PERMITTED = 0x95,
+ PLDM_FWUP_DOWNSTREAM_DEVICE_LIST_CHANGED = 0x96
};
/** @brief String type values defined in the PLDM firmware update specification
@@ -192,6 +197,8 @@
PLDM_FWUP_ASCII_MODEL_NUMBER_SHORT_STRING = 0x0107,
PLDM_FWUP_SCSI_PRODUCT_ID = 0x0108,
PLDM_FWUP_UBM_CONTROLLER_DEVICE_CODE = 0x0109,
+ PLDM_FWUP_IEEE_EUI_64_ID = 0x010a,
+ PLDM_FWUP_PCI_REVISION_ID_RANGE = 0x010b,
PLDM_FWUP_VENDOR_DEFINED = 0xffff
};
@@ -214,7 +221,9 @@
PLDM_FWUP_ASCII_MODEL_NUMBER_LONG_STRING_LENGTH = 40,
PLDM_FWUP_ASCII_MODEL_NUMBER_SHORT_STRING_LENGTH = 10,
PLDM_FWUP_SCSI_PRODUCT_ID_LENGTH = 16,
- PLDM_FWUP_UBM_CONTROLLER_DEVICE_CODE_LENGTH = 4
+ PLDM_FWUP_UBM_CONTROLLER_DEVICE_CODE_LENGTH = 4,
+ PLDM_FWUP_IEEE_EUI_64_ID_LENGTH = 8,
+ PLDM_FWUP_PCI_REVISION_ID_RANGE_LENGTH = 2
};
/** @brief ComponentClassification values defined in firmware update
@@ -325,6 +334,9 @@
PLDM_FWUP_FD_ABORTED_TRANSFER_LOW_POWER_STATE = 0x0b,
PLDM_FWUP_FD_ABORTED_TRANSFER_RESET_NEEDED = 0x0c,
PLDM_FWUP_FD_ABORTED_TRANSFER_STORAGE_ISSUE = 0x0d,
+ PLDM_FWUP_FD_ABORTED_TRANSFER_INVALID_COMPONENT_OPAQUE_DATA = 0x0e,
+ PLDM_FWUP_FD_ABORTED_TRANSFER_DOWNSTREAM_DEVICE_FAILURE = 0x0f,
+ PLDM_FWUP_FD_ABORTED_TRANSFER_SECURITY_REVISION_ERROR = 0x10,
PLDM_FWUP_VENDOR_TRANSFER_RESULT_RANGE_MIN = 0x70,
PLDM_FWUP_VENDOR_TRANSFER_RESULT_RANGE_MAX = 0x8f
};
@@ -337,6 +349,7 @@
PLDM_FWUP_VERIFY_ERROR_VERSION_MISMATCH = 0x02,
PLDM_FWUP_VERIFY_FAILED_FD_SECURITY_CHECKS = 0x03,
PLDM_FWUP_VERIFY_ERROR_IMAGE_INCOMPLETE = 0x04,
+ PLDM_FWUP_VERIFY_FAILURE_SECURITY_REVISION_ERROR = 0x10,
PLDM_FWUP_VENDOR_VERIFY_RESULT_RANGE_MIN = 0x90,
PLDM_FWUP_VENDOR_VERIFY_RESULT_RANGE_MAX = 0xaf
};
@@ -347,6 +360,7 @@
PLDM_FWUP_APPLY_SUCCESS = 0x00,
PLDM_FWUP_APPLY_SUCCESS_WITH_ACTIVATION_METHOD = 0x01,
PLDM_FWUP_APPLY_FAILURE_MEMORY_ISSUE = 0x02,
+ PLDM_FWUP_APPLY_FAILURE_SECURITY_REVISION_ERROR = 0x10,
PLDM_FWUP_VENDOR_APPLY_RESULT_RANGE_MIN = 0xb0,
PLDM_FWUP_VENDOR_APPLY_RESULT_RANGE_MAX = 0xcf
};
@@ -377,7 +391,8 @@
PLDM_FD_OPERATION_IN_PROGRESS = 0,
PLDM_FD_OPERATION_SUCCESSFUL = 1,
PLDM_FD_OPERATION_FAILED = 2,
- PLDM_FD_IDLE_LEARN_COMPONENTS_READ_XFER = 3
+ PLDM_FD_IDLE_LEARN_COMPONENTS_READ_XFER = 3,
+ PLDM_FD_IDLE_SELF_CONTAINED_ACTIVATION_FAILURE = 4
};
/** @brief Firmware device aux state status in GetStatus response
@@ -386,6 +401,7 @@
PLDM_FD_AUX_STATE_IN_PROGRESS_OR_SUCCESS = 0x00,
PLDM_FD_TIMEOUT = 0x09,
PLDM_FD_GENERIC_ERROR = 0x0a,
+ PLDM_FD_SELF_CONTAINED_ACTIVATION_FAILURE = 0x0b,
PLDM_FD_VENDOR_DEFINED_STATUS_CODE_START = 0x70,
PLDM_FD_VENDOR_DEFINED_STATUS_CODE_END = 0xef
};