summaryrefslogtreecommitdiffstats
path: root/tools/firmware-utils
diff options
context:
space:
mode:
authorJonas Gorski <jogo@openwrt.org>2015-11-04 11:33:22 +0000
committerJonas Gorski <jogo@openwrt.org>2015-11-04 11:33:22 +0000
commit008aec391a3f7813ce9584c4bd60e393825a5b3e (patch)
tree48585407cbddb8ac252e1d8fab3d3f26466d9f5a /tools/firmware-utils
parent1e43316cb9cd7663cf901b2828d4c26e5913effe (diff)
downloadmaster-31e0f0ae-008aec391a3f7813ce9584c4bd60e393825a5b3e.tar.gz
master-31e0f0ae-008aec391a3f7813ce9584c4bd60e393825a5b3e.tar.bz2
master-31e0f0ae-008aec391a3f7813ce9584c4bd60e393825a5b3e.zip
brcm63xx: work around boot failures with squashfs on BCM6368
Due to the LWL/LWR SMP issue on BCM6368, booting with squash might fail if the rootfs is not word aligned. As a quick fix, work around it by ensuring this condition is always true. Reported-by: Álvaro Fernández Rojas <noltari@gmail.com> Signed-off-by: Jonas Gorski <jogo@openwrt.org> SVN-Revision: 47380
Diffstat (limited to 'tools/firmware-utils')
-rw-r--r--tools/firmware-utils/src/imagetag.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/tools/firmware-utils/src/imagetag.c b/tools/firmware-utils/src/imagetag.c
index 6a46a7ebd9..90fb7a4c73 100644
--- a/tools/firmware-utils/src/imagetag.c
+++ b/tools/firmware-utils/src/imagetag.c
@@ -164,6 +164,8 @@ int tagfile(const char *kernel, const char *rootfs, const char *bin, \
/* align the start if requested */
if (args->align_rootfs_flag)
rootfsoff = (rootfsoff % block_size) > 0 ? (((rootfsoff / block_size) + 1) * block_size) : rootfsoff;
+ else
+ rootfsoff = (rootfsoff % 4) > 0 ? (((rootfsoff / 4) + 1) * 4) : rootfsoff;
/* align the end */
rootfsend = rootfsoff + getlen(rootfsfile);