diff options
author | kaloz <kaloz@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2013-12-13 16:38:43 +0000 |
---|---|---|
committer | kaloz <kaloz@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2013-12-13 16:38:43 +0000 |
commit | 3d9c0a8198ae7b9119ef04e24465653a2f402560 (patch) | |
tree | 4e83af9d51432d28f083d3698c4ad9cbb7c14f9a /package | |
parent | a57f79892f16585b7f89b912cb951d2a2aa7e34b (diff) |
[uboot-omap]: fix jffs2 with internal libgcc and switch omap4 to ext4
Signed-off-by: Imre Kaloz <kaloz@openwrt.org>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@39044 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'package')
-rw-r--r-- | package/boot/uboot-omap/patches/001-switch_omap4_ext4.patch | 11 | ||||
-rw-r--r-- | package/boot/uboot-omap/patches/002-fix_jffs2.patch | 34 |
2 files changed, 45 insertions, 0 deletions
diff --git a/package/boot/uboot-omap/patches/001-switch_omap4_ext4.patch b/package/boot/uboot-omap/patches/001-switch_omap4_ext4.patch new file mode 100644 index 0000000000..d741c08675 --- /dev/null +++ b/package/boot/uboot-omap/patches/001-switch_omap4_ext4.patch @@ -0,0 +1,11 @@ +--- a/include/configs/omap4_common ++++ b/include/configs/omap4_common.h +@@ -143,7 +143,7 @@ + "vram=16M\0" \ + "mmcdev=0\0" \ + "mmcroot=/dev/mmcblk0p2 rw\0" \ +- "mmcrootfstype=ext3 rootwait\0" \ ++ "mmcrootfstype=ext4 rootwait\0" \ + "mmcargs=setenv bootargs console=${console} " \ + "vram=${vram} " \ + "root=${mmcroot} " \ 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 0000000000..cba0e25aac --- /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 <wd@denx.de> +Reported-by: Chris Ruehl <chris.ruehl@gtsys.com.hk> +Cc: Chris Ruehl <chris.ruehl@gtsys.com.hk> + +--- + 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 |