spl: zImage support in Falcon mode
Other payload than uImage is currently considered to be raw U-Boot image. Check also for zImage in Falcon mode. Signed-off-by: Ladislav Michl <ladis@linux-mips.org> Reviewed-by: Heiko Schocher <hs@denx.de>
This commit is contained in:
@@ -56,6 +56,15 @@ __weak int spl_start_uboot(void)
|
||||
puts("SPL: Direct Linux boot not active!\n");
|
||||
return 1;
|
||||
}
|
||||
|
||||
/*
|
||||
* Weak default function for arch specific zImage check. Return zero
|
||||
* and fill start and end address if image is recognized.
|
||||
*/
|
||||
int __weak bootz_setup(ulong image, ulong *start, ulong *end)
|
||||
{
|
||||
return 1;
|
||||
}
|
||||
#endif
|
||||
|
||||
/*
|
||||
@@ -124,6 +133,20 @@ int spl_parse_image_header(const struct image_header *header)
|
||||
/* Signature not found, proceed to other boot methods. */
|
||||
return -EINVAL;
|
||||
#else
|
||||
#ifdef CONFIG_SPL_OS_BOOT
|
||||
ulong start, end;
|
||||
|
||||
if (!bootz_setup((ulong)header, &start, &end)) {
|
||||
spl_image.name = "Linux";
|
||||
spl_image.os = IH_OS_LINUX;
|
||||
spl_image.load_addr = CONFIG_SYS_LOAD_ADDR;
|
||||
spl_image.entry_point = CONFIG_SYS_LOAD_ADDR;
|
||||
spl_image.size = end - start;
|
||||
debug("spl: payload zImage, load addr: 0x%x size: %d\n",
|
||||
spl_image.load_addr, spl_image.size);
|
||||
return 0;
|
||||
}
|
||||
#endif
|
||||
/* Signature not found - assume u-boot.bin */
|
||||
debug("mkimage signature not found - ih_magic = %x\n",
|
||||
header->ih_magic);
|
||||
|
||||
Reference in New Issue
Block a user