greybus: firmware: abort if AP_READY fails

Abort if the AP_READY request fails.

Also update the comment suggesting that this operation was a temporary
one.

Reviewed-by: Viresh Kumar <viresh.kumar@linaro.org>
Signed-off-by: Johan Hovold <johan@hovoldconsulting.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
This commit is contained in:
Johan Hovold 2016-01-21 17:34:26 +01:00 committed by Greg Kroah-Hartman
parent e0deb079ed
commit 8eff510961
1 changed files with 7 additions and 9 deletions

View File

@ -251,25 +251,23 @@ static int gb_firmware_connection_init(struct gb_connection *connection)
firmware_es2_fixup_vid_pid(firmware);
/*
* Module's Bootrom needs a way to know (currently), when to start
* sending requests to the AP. The version request is sent before this
* routine is called, and if the module sends the request right after
* receiving version request, the connection->private field will be
* NULL.
*
* Fix this TEMPORARILY by sending an AP_READY request.
*/
/* Tell bootrom we're ready. */
ret = gb_operation_sync(connection, GB_FIRMWARE_TYPE_AP_READY, NULL, 0,
NULL, 0);
if (ret) {
dev_err(&connection->bundle->dev,
"failed to send AP READY: %d\n", ret);
goto err_free_firmware;
}
dev_dbg(&connection->bundle->dev, "%s: AP_READY sent\n", __func__);
return 0;
err_free_firmware:
kfree(firmware);
return ret;
}
static void gb_firmware_connection_exit(struct gb_connection *connection)