]> git.ipfire.org Git - people/ms/u-boot.git/commitdiff
fb_mmc.c: Correct blk_dread() return value checks
authorTom Rini <trini@konsulko.com>
Tue, 15 Aug 2017 01:00:44 +0000 (21:00 -0400)
committerMarek Vasut <marex@denx.de>
Mon, 21 Aug 2017 09:31:11 +0000 (11:31 +0200)
The function blk_dread will return -ENOSYS on failure or on success the
number of blocks read, which must be the number asked to read (otherwise
it failed somewhere).  Correct this check.

Cc: Lukasz Majewski <lukma@denx.de>
Signed-off-by: Tom Rini <trini@konsulko.com>
common/fb_mmc.c

index 2a8ba15f3190b96cd4ab08bb580992b3af0dc0b0..26d60b88d0cad12e5fa6bf8f0753be757f8c75f6 100644 (file)
@@ -132,7 +132,7 @@ static lbaint_t fb_mmc_get_boot_header(struct blk_desc *dev_desc,
 
        /* Read the boot image header */
        res = blk_dread(dev_desc, info->start, hdr_sectors, (void *)hdr);
-       if (res == 0) {
+       if (res != hdr_sectors) {
                error("cannot read header from boot partition");
                fastboot_fail("cannot read header from boot partition");
                return 0;
@@ -215,7 +215,7 @@ static int fb_mmc_update_zimage(struct blk_desc *dev_desc,
        ramdisk_buffer = (u8 *)hdr + (hdr_sectors * info.blksz);
        res = blk_dread(dev_desc, ramdisk_sector_start, ramdisk_sectors,
                        ramdisk_buffer);
-       if (res == 0) {
+       if (res != ramdisk_sectors) {
                error("cannot read ramdisk from boot partition");
                fastboot_fail("cannot read ramdisk from boot partition");
                return -1;