From 716ca530e1c4515d8683c9d5be3d56b301758b66 Mon Sep 17 00:00:00 2001 From: James <> Date: Wed, 4 Nov 2015 11:49:21 +0000 Subject: trunk-47381 --- .../boot/uboot-omap/patches/002-fix_jffs2.patch | 34 ++++++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 package/boot/uboot-omap/patches/002-fix_jffs2.patch (limited to 'package/boot/uboot-omap/patches/002-fix_jffs2.patch') diff --git a/package/boot/uboot-omap/patches/002-fix_jffs2.patch b/package/boot/uboot-omap/patches/002-fix_jffs2.patch new file mode 100644 index 0000000..cba0e25 --- /dev/null +++ b/package/boot/uboot-omap/patches/002-fix_jffs2.patch @@ -0,0 +1,34 @@ +Building boards that have JFFS2 support enabled will fail when using +U-Boot's builtin GCC library, for example like this: + +USE_PRIVATE_LIBGCC=yes ./MAKEALL omap3_evm +... +fs/jffs2/libjffs2.o: In function `jffs2_1pass_build_lists': +fs/jffs2/jffs2_1pass.c:1441: undefined reference to `__aeabi_uldivmod' + +This is caused by a u64 / u32 division in jffs2_1pass.c; the problem +can be avoided by using do_div() instead of plain division. + +Signed-off-by: Wolfgang Denk +Reported-by: Chris Ruehl +Cc: Chris Ruehl + +--- + fs/jffs2/jffs2_1pass.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/fs/jffs2/jffs2_1pass.c b/fs/jffs2/jffs2_1pass.c +index c856983..a7dbe79 100644 +--- a/fs/jffs2/jffs2_1pass.c ++++ b/fs/jffs2/jffs2_1pass.c +@@ -1438,7 +1438,7 @@ jffs2_1pass_build_lists(struct part_info * part) + { + struct b_lists *pL; + struct jffs2_unknown_node *node; +- u32 nr_sectors = part->size/part->sector_size; ++ u32 nr_sectors = do_div(part->size, part->sector_size); + u32 i; + u32 counter4 = 0; + u32 counterF = 0; +-- +1.8.3.1 -- cgit v1.2.3