diff options
author | Stefan Agner <stefan.agner@toradex.com> | 2015-05-28 17:14:18 +0200 |
---|---|---|
committer | Stefan Agner <stefan.agner@toradex.com> | 2015-05-28 17:14:18 +0200 |
commit | c959f9e989a1bd75cef55e0230794a35d80bffdd (patch) | |
tree | 88747001af3056d6389313a5c8a211a302fc034b /arch/arm | |
parent | 4582732103393887b0e63a9fe572940909c23f8d (diff) |
imx-common: m4boot: move entry point check
Move entry point is Thumb2 check just after reading the entry point
from the FIT image.
Diffstat (limited to 'arch/arm')
-rw-r--r-- | arch/arm/imx-common/cmd_m4boot.c | 13 |
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 1e0168c97d5..76be8a25e6f 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; |