# Pastebin zcOCzclg @@ -262,7 +304,25 @@ static void boot_jump_linux(bootm_headers_t *images, int flag) if (!fake) kernel_entry(images->ft_addr); +#elif (defined(CONFIG_MTK_ATF) && defined(TCSUPPORT_CPU_ARMV8_64)) +#if defined(CONFIG_ECNT) + extern void jumparch64_smc(ulong addr, ulong arg1, ulong arg2, ulong arg3); +#else + extern void jumparch64_smc(ulong addr, ulong arg1, ulong arg2); +#endif + + /* + * Iverson 20150528 - show message for boot. + */ + debug("images->ep = %lx, images->ft_addr = %lx\n", images->ep, (unsigned long)images->ft_addr); + + announce_and_cleanup(0); +#if defined(CONFIG_ECNT) + jumparch64_smc(images->ep, (unsigned long)images->ft_addr, 0, KERNEL_64BITS); #else + jumparch64_smc(images->ep, (unsigned long)images->ft_addr, 0); +#endif +#else /* should be here for ARM32 kernel */ unsigned long machid = gd->bd->bi_arch_number; char *s; void (*kernel_entry)(int zero, int arch, uint params);