uImage: only try to load 'kernel' images (Hollis Blanchard)

Loading other image types (e.g. IH_TYPE_MULTI, IH_TYPE_FLATDT) is not
implemented.

IH_TYPE_STANDALONE images could be loaded, but would unexpectedly fail if they
tried to use any uboot services.

Signed-off-by: Hollis Blanchard <hollisb@us.ibm.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>



git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5765 c046a42c-6fe2-441c-8c8c-71466251a162
This commit is contained in:
aliguori 2008-11-20 22:15:46 +00:00
parent 5a9154e069
commit 7e5f90fa3f
1 changed files with 4 additions and 4 deletions

View File

@ -479,9 +479,9 @@ int load_uimage(const char *filename, target_ulong *ep, target_ulong *loadaddr,
if (hdr->ih_magic != IH_MAGIC)
goto out;
/* TODO: Implement Multi-File images. */
if (hdr->ih_type == IH_TYPE_MULTI) {
fprintf(stderr, "Unable to load multi-file u-boot images\n");
/* TODO: Implement other image types. */
if (hdr->ih_type != IH_TYPE_KERNEL) {
fprintf(stderr, "Can only load u-boot image type \"kernel\"\n");
goto out;
}
@ -498,7 +498,7 @@ int load_uimage(const char *filename, target_ulong *ep, target_ulong *loadaddr,
/* TODO: Check CPU type. */
if (is_linux) {
if (hdr->ih_type == IH_TYPE_KERNEL && hdr->ih_os == IH_OS_LINUX)
if (hdr->ih_os == IH_OS_LINUX)
*is_linux = 1;
else
*is_linux = 0;