]> git.ipfire.org Git - thirdparty/u-boot.git/blobdiff - lib/image-sparse.c
net: hifemac_mdio: use log_msg_ret() correctly, report error by dev_err()
[thirdparty/u-boot.git] / lib / image-sparse.c
index 5ec0f94ab3eb6a27ff172b8585b46d1183b91450..09225692e9b1efb4c7d45bdc464b86689df887c1 100644 (file)
@@ -35,7 +35,6 @@
  */
 
 #include <config.h>
-#include <common.h>
 #include <blk.h>
 #include <image-sparse.h>
 #include <div64.h>
@@ -55,7 +54,8 @@ static lbaint_t write_sparse_chunk_raw(struct sparse_storage *info,
                                       void *data,
                                       char *response)
 {
-       lbaint_t n = blkcnt, write_blks, blks = 0, aligned_buf_blks = 100;
+       lbaint_t n = blkcnt, write_blks, blks = 0;
+       lbaint_t aligned_buf_blks = FASTBOOT_MAX_BLK_WRITE;
        uint32_t *aligned_buf = NULL;
 
        if (CONFIG_IS_ENABLED(SYS_DCACHE_OFF)) {
@@ -211,7 +211,7 @@ int write_sparse_image(struct sparse_storage *info,
 
                        blks = write_sparse_chunk_raw(info, blk, blkcnt,
                                                      data, response);
-                       if (blks < 0)
+                       if (IS_ERR_VALUE(blks))
                                return -1;
 
                        blk += blks;
@@ -288,8 +288,8 @@ int write_sparse_image(struct sparse_storage *info,
 
                case CHUNK_TYPE_CRC32:
                        if (chunk_header->total_sz !=
-                           sparse_header->chunk_hdr_sz) {
-                               info->mssg("Bogus chunk size for chunk type Dont Care",
+                           sparse_header->chunk_hdr_sz + sizeof(uint32_t)) {
+                               info->mssg("Bogus chunk size for chunk type CRC32",
                                           response);
                                return -1;
                        }