diff options
author | Jassi Brar <jaswinder.singh@linaro.org> | 2018-04-06 12:05:09 +0530 |
---|---|---|
committer | Tom Rini <trini@konsulko.com> | 2018-05-07 20:57:51 -0400 |
commit | 2f83f219bfd42bc6ac54689cf4189bd239ed41fe (patch) | |
tree | 0ae20b4263858f12c70f4f7712b3a4eafb8d72fd /common/fb_mmc.c | |
parent | 32d3154e5c9fe396cd78e30af64b7f26523a04b5 (diff) |
fastboot: sparse: make write_sparse_image useable for non-fastboot
write_sparse_image could be useful for non-fastboot users.
For ex a platform, without usb-device/fastboot support, could
get sparse images over tftp and write using the mmc command.
Or non-android systems could also leverage the sparse format.
Towards that, this patch removes anything fastboot specific from
the write_sparse_image implementation. Which includes making the
function return integer as error code and calls for fastboot logging
via an optional callback function 'mssg'.
Signed-off-by: Jassi Brar <jaswinder.singh@linaro.org>
Diffstat (limited to 'common/fb_mmc.c')
-rw-r--r-- | common/fb_mmc.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/common/fb_mmc.c b/common/fb_mmc.c index 234ce83b802..46f0073dbc2 100644 --- a/common/fb_mmc.c +++ b/common/fb_mmc.c @@ -329,6 +329,7 @@ void fb_mmc_flash_write(const char *cmd, void *download_buffer, if (is_sparse_image(download_buffer)) { struct fb_mmc_sparse sparse_priv; struct sparse_storage sparse; + int err; sparse_priv.dev_desc = dev_desc; @@ -337,12 +338,15 @@ void fb_mmc_flash_write(const char *cmd, void *download_buffer, sparse.size = info.size; sparse.write = fb_mmc_sparse_write; sparse.reserve = fb_mmc_sparse_reserve; + sparse.mssg = fastboot_fail; printf("Flashing sparse image at offset " LBAFU "\n", sparse.start); sparse.priv = &sparse_priv; - write_sparse_image(&sparse, cmd, download_buffer); + err = write_sparse_image(&sparse, cmd, download_buffer); + if (!err) + fastboot_okay(""); } else { write_raw_image(dev_desc, &info, cmd, download_buffer, download_bytes); |