diff --git a/drivers/staging/greybus/fw-management.c b/drivers/staging/greybus/fw-management.c index 2efe65cfd612..642a393bd15f 100644 --- a/drivers/staging/greybus/fw-management.c +++ b/drivers/staging/greybus/fw-management.c @@ -350,7 +350,8 @@ static int fw_mgmt_backend_fw_updated_operation(struct gb_operation *op) fw_mgmt->backend_fw_request_id = 0; fw_mgmt->backend_fw_status = request->status; - if (fw_mgmt->backend_fw_status != GB_FW_BACKEND_FW_STATUS_SUCCESS) + if ((fw_mgmt->backend_fw_status != GB_FW_BACKEND_FW_STATUS_SUCCESS) && + (fw_mgmt->backend_fw_status != GB_FW_BACKEND_FW_STATUS_RETRY)) dev_err(fw_mgmt->parent, "failed to load backend firmware: %02x\n", fw_mgmt->backend_fw_status); diff --git a/drivers/staging/greybus/greybus_protocols.h b/drivers/staging/greybus/greybus_protocols.h index 2de5aef54637..e51c2b14875f 100644 --- a/drivers/staging/greybus/greybus_protocols.h +++ b/drivers/staging/greybus/greybus_protocols.h @@ -367,6 +367,8 @@ struct gb_fw_download_release_firmware_request { #define GB_FW_BACKEND_FW_STATUS_FAIL_FETCH 0x03 #define GB_FW_BACKEND_FW_STATUS_FAIL_WRITE 0x04 #define GB_FW_BACKEND_FW_STATUS_INT 0x05 +#define GB_FW_BACKEND_FW_STATUS_RETRY 0x06 +#define GB_FW_BACKEND_FW_STATUS_NOT_SUPPORTED 0x07 /* firmware management interface firmware version request has no payload */ struct gb_fw_mgmt_interface_fw_version_response {