
Snapdragon bootloader needs to jump from 32bit to 64bit Allow booting in these cases when CONFIG_AARCH32_SUPPORT_ARM64 is defined.
Signed-off-by: Ramon Fried ramon.fried@gmail.com --- common/image-fit.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-)
diff --git a/common/image-fit.c b/common/image-fit.c index 5b93dceae1..62dbfbdd3d 100644 --- a/common/image-fit.c +++ b/common/image-fit.c @@ -1253,17 +1253,24 @@ int fit_image_check_arch(const void *fit, int noffset, uint8_t arch) { uint8_t image_arch; int aarch32_support = 0; + int aarch64_support = 0;
#ifdef CONFIG_ARM64_SUPPORT_AARCH32 aarch32_support = 1; #endif
+#ifdef CONFIG_AARCH32_SUPPORT_ARM64 + aarch64_support = 1; +#endif + if (fit_image_get_arch(fit, noffset, &image_arch)) return 0; return (arch == image_arch) || (arch == IH_ARCH_I386 && image_arch == IH_ARCH_X86_64) || (arch == IH_ARCH_ARM64 && image_arch == IH_ARCH_ARM && - aarch32_support); + aarch32_support) || + (arch == IH_ARCH_ARM && image_arch == IH_ARCH_ARM64 && + aarch64_support); }
/**