dsp: firmware_update: Change return type of downstream device ABI/APIs
So far all of the downstream device related ABI/APIs were marked as
`TESTING`, before stabilize them, any deprecated code should be
removed, including PLDM Completion Code, therefore, change all of the
return type of these to `ERRNO`.
Change-Id: Ie6b390fcc1c91a425f9181ec4ce4495729baab51
Signed-off-by: Unive Tien <unive.tien.wiwynn@gmail.com>
diff --git a/src/dsp/firmware_update.c b/src/dsp/firmware_update.c
index d570d5c..d2b068a 100644
--- a/src/dsp/firmware_update.c
+++ b/src/dsp/firmware_update.c
@@ -919,11 +919,13 @@
struct pldm_msg *msg)
{
if (msg == NULL) {
- return PLDM_ERROR_INVALID_DATA;
+ return -EINVAL;
}
- return encode_pldm_header_only(PLDM_REQUEST, instance_id, PLDM_FWUP,
- PLDM_QUERY_DOWNSTREAM_DEVICES, msg);
+ return encode_pldm_header_only_errno(PLDM_REQUEST, instance_id,
+ PLDM_FWUP,
+ PLDM_QUERY_DOWNSTREAM_DEVICES,
+ msg);
}
LIBPLDM_ABI_TESTING
@@ -936,7 +938,7 @@
int rc;
if (msg == NULL || resp_data == NULL || !payload_length) {
- return PLDM_ERROR_INVALID_DATA;
+ return -EINVAL;
}
rc = pldm_msgbuf_init_errno(buf, PLDM_OPTIONAL_COMMAND_RESP_MIN_LEN,
@@ -947,38 +949,33 @@
rc = pldm_msgbuf_extract(buf, resp_data->completion_code);
if (rc) {
- return pldm_xlate_errno(rc);
+ return rc;
}
if (PLDM_SUCCESS != resp_data->completion_code) {
// Return the CC directly without decoding the rest of the payload
- return PLDM_SUCCESS;
+ return 0;
}
if (payload_length < PLDM_QUERY_DOWNSTREAM_DEVICES_RESP_BYTES) {
- return PLDM_ERROR_INVALID_LENGTH;
+ return -EBADMSG;
}
rc = pldm_msgbuf_extract(buf,
resp_data->downstream_device_update_supported);
if (rc) {
- return pldm_xlate_errno(rc);
+ return rc;
}
if (!is_downstream_device_update_support_valid(
resp_data->downstream_device_update_supported)) {
- return PLDM_ERROR_INVALID_DATA;
+ return -EINVAL;
}
pldm_msgbuf_extract(buf, resp_data->number_of_downstream_devices);
pldm_msgbuf_extract(buf, resp_data->max_number_of_downstream_devices);
pldm_msgbuf_extract(buf, resp_data->capabilities.value);
- rc = pldm_msgbuf_destroy_consumed(buf);
- if (rc) {
- pldm_xlate_errno(rc);
- }
-
- return PLDM_SUCCESS;
+ return pldm_msgbuf_destroy_consumed(buf);
}
LIBPLDM_ABI_TESTING
@@ -992,11 +989,11 @@
int rc;
if (msg == NULL) {
- return PLDM_ERROR_INVALID_DATA;
+ return -EINVAL;
}
if (!is_transfer_operation_flag_valid(transfer_operation_flag)) {
- return PLDM_INVALID_TRANSFER_OPERATION_FLAG;
+ return -EINVAL;
}
struct pldm_header_info header = { 0 };
@@ -1004,7 +1001,7 @@
header.msg_type = PLDM_REQUEST;
header.pldm_type = PLDM_FWUP;
header.command = PLDM_QUERY_DOWNSTREAM_IDENTIFIERS;
- rc = pack_pldm_header(&header, &(msg->hdr));
+ rc = pack_pldm_header_errno(&header, &(msg->hdr));
if (rc) {
return rc;
}
@@ -1013,19 +1010,14 @@
PLDM_QUERY_DOWNSTREAM_IDENTIFIERS_REQ_BYTES,
msg->payload, payload_length);
if (rc) {
- return pldm_xlate_errno(rc);
+ return rc;
}
pldm_msgbuf_insert(buf, data_transfer_handle);
// Data correctness has been verified, cast it to 1-byte data directly.
pldm_msgbuf_insert(buf, (uint8_t)transfer_operation_flag);
- rc = pldm_msgbuf_destroy(buf);
- if (rc) {
- return pldm_xlate_errno(rc);
- }
-
- return PLDM_SUCCESS;
+ return pldm_msgbuf_destroy(buf);
}
LIBPLDM_ABI_TESTING
@@ -1037,29 +1029,29 @@
struct pldm_msgbuf _buf;
struct pldm_msgbuf *buf = &_buf;
void *remaining = NULL;
- int rc = PLDM_ERROR;
+ int rc = 0;
if (msg == NULL || resp_data == NULL || iter == NULL ||
!payload_length) {
- return PLDM_ERROR_INVALID_DATA;
+ return -EINVAL;
}
rc = pldm_msgbuf_init_errno(buf, PLDM_OPTIONAL_COMMAND_RESP_MIN_LEN,
msg->payload, payload_length);
if (rc) {
- return pldm_xlate_errno(rc);
+ return rc;
}
rc = pldm_msgbuf_extract(buf, resp_data->completion_code);
if (rc) {
- return pldm_xlate_errno(rc);
+ return rc;
}
if (PLDM_SUCCESS != resp_data->completion_code) {
- return PLDM_SUCCESS;
+ return 0;
}
if (payload_length < PLDM_QUERY_DOWNSTREAM_IDENTIFIERS_RESP_MIN_LEN) {
- return PLDM_ERROR_INVALID_LENGTH;
+ return -EBADMSG;
}
pldm_msgbuf_extract(buf, resp_data->next_data_transfer_handle);
@@ -1067,26 +1059,26 @@
rc = pldm_msgbuf_extract(buf, resp_data->downstream_devices_length);
if (rc) {
- return pldm_xlate_errno(rc);
+ return rc;
}
pldm_msgbuf_extract(buf, resp_data->number_of_downstream_devices);
rc = pldm_msgbuf_span_required(
buf, resp_data->downstream_devices_length, &remaining);
if (rc) {
- return pldm_xlate_errno(rc);
+ return rc;
}
rc = pldm_msgbuf_destroy(buf);
if (rc) {
- return pldm_xlate_errno(rc);
+ return rc;
}
iter->field.ptr = remaining;
iter->field.length = resp_data->downstream_devices_length;
iter->devs = resp_data->number_of_downstream_devices;
- return PLDM_SUCCESS;
+ return 0;
}
LIBPLDM_ABI_TESTING