summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSeung-Woo Kim <sw0312.kim@samsung.com>2018-06-04 14:45:54 +0300
committerTom Rini <trini@konsulko.com>2018-06-13 14:49:11 +0300
commit6e2151c729674aecabf5ec5a96dac97433632009 (patch)
tree01303bce839ef3000f591bbd301ad4f7c41cbba0
parent920be88e92001fee13d876a6c4aa245cc658800f (diff)
downloadu-boot-6e2151c729674aecabf5ec5a96dac97433632009.tar.xz
fs: fat: fix wrong casting to unsigned value of sect_to_cluster()
After the commit 265edc03d5a1 ("fs/fat: Clean up open-coded sector <-> cluster conversions"), it is hung up writing new file to FAT16 disk with more than 19 files in armv7. It is because result value of sect_to_cluster() is not proper by casting from signed value to unsigned value. Fix the wrong casting of sect_to_cluster(). Reported-by: Jaehoon Chung <jh80.chung@samsung.com> Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com> Reviewed-by: Lukasz Majewski <lukma@denx.de>
-rw-r--r--include/fat.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/include/fat.h b/include/fat.h
index 7dada411e5..09e1423685 100644
--- a/include/fat.h
+++ b/include/fat.h
@@ -180,7 +180,7 @@ static inline u32 clust_to_sect(fsdata *fsdata, u32 clust)
return fsdata->data_begin + clust * fsdata->clust_size;
}
-static inline u32 sect_to_clust(fsdata *fsdata, u32 sect)
+static inline u32 sect_to_clust(fsdata *fsdata, int sect)
{
return (sect - fsdata->data_begin) / fsdata->clust_size;
}