summaryrefslogtreecommitdiff
path: root/common/spl/spl_fit.c
diff options
context:
space:
mode:
authorLokesh Vutla <lokeshvutla@ti.com>2016-05-24 10:34:37 +0530
committerTom Rini <trini@konsulko.com>2016-05-27 15:41:39 -0400
commit4d9d34a7f280ba0e14896d4157ede677899f83a2 (patch)
tree48fa79eaf3fcc69617f4dd7953f409eebe6b0bed /common/spl/spl_fit.c
parent53d150b1412bc1b2da07dfdeb2aa834ab62ec7ad (diff)
spl: fit: Fix the number of bytes read when reading fdt from fit
sectors field is not being updated when reading fdt from fit image. Because of this size_of(u-boot.bin) is being read when reading fdt. Fixing it by updating the sectors field properly. Tested-by: Michal Simek <michal.simek@xilinx.com> Reviewed-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>
Diffstat (limited to 'common/spl/spl_fit.c')
-rw-r--r--common/spl/spl_fit.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/common/spl/spl_fit.c b/common/spl/spl_fit.c
index 90acbb2d8a..79cc06ed0b 100644
--- a/common/spl/spl_fit.c
+++ b/common/spl/spl_fit.c
@@ -182,6 +182,7 @@ int spl_load_simple_fit(struct spl_load_info *info, ulong sector, void *fit)
*/
dst = load_ptr + data_size;
fdt_offset += base_offset;
+ sectors = (fdt_len + info->bl_len - 1) / info->bl_len;
count = info->read(info, sector + fdt_offset / info->bl_len, sectors,
dst);
debug("fit read %x sectors to %x, dst %p, data_offset %x\n",