summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStefan Agner <stefan.agner@toradex.com>2015-05-28 17:14:18 +0200
committerStefan Agner <stefan.agner@toradex.com>2015-05-28 17:14:18 +0200
commitc959f9e989a1bd75cef55e0230794a35d80bffdd (patch)
tree88747001af3056d6389313a5c8a211a302fc034b
parent4582732103393887b0e63a9fe572940909c23f8d (diff)
imx-common: m4boot: move entry point check
Move entry point is Thumb2 check just after reading the entry point from the FIT image.
-rw-r--r--arch/arm/imx-common/cmd_m4boot.c13
1 files changed, 6 insertions, 7 deletions
diff --git a/arch/arm/imx-common/cmd_m4boot.c b/arch/arm/imx-common/cmd_m4boot.c
index 1e0168c97d..76be8a25e6 100644
--- a/arch/arm/imx-common/cmd_m4boot.c
+++ b/arch/arm/imx-common/cmd_m4boot.c
@@ -129,6 +129,12 @@ static int do_m4boot(cmd_tbl_t *cmdtp, int flag, int argc,
fit_image_get_os(images.fit_hdr_os, images.fit_noffset_os,
&images.os.os);
+ /* Verify entry point is a Thumb2 address */
+ if (!(images.ep & 0x1)) {
+ printf("Entry point 0x%08lx is not a valid Thumb2 address\n",
+ images.ep);
+ return 0;
+ }
ret = fit_image_load(&images, img_addr, &images.fit_uname_rd,
&images.fit_uname_cfg, IH_ARCH_ARM,
@@ -182,13 +188,6 @@ static int do_m4boot(cmd_tbl_t *cmdtp, int flag, int argc,
return 1;
}
- /* Verify entry point is a Thumb2 address */
- if (!(images.ep & 0x1)) {
- printf("Entry point 0x%08lx is not a valid Thumb2 address\n",
- images.ep);
- return 0;
- }
-
boot_startm4_linux(&images);
return 1;