diff options
author | Marian Balakowicz <m8@semihalf.com> | 2008-01-08 18:11:44 +0100 |
---|---|---|
committer | Wolfgang Denk <wd@denx.de> | 2008-02-07 01:12:55 +0100 |
commit | 261dcf4624b25f3c551efcf8634e9194fabba9c3 (patch) | |
tree | 418fbb9ac11e38fd532c72c0078ef94439b80a13 /lib_i386 | |
parent | 559316faf7eae0614c91d77f509b57d6c4c091ba (diff) | |
download | u-boot-imx-261dcf4624b25f3c551efcf8634e9194fabba9c3.zip u-boot-imx-261dcf4624b25f3c551efcf8634e9194fabba9c3.tar.gz u-boot-imx-261dcf4624b25f3c551efcf8634e9194fabba9c3.tar.bz2 |
[new uImage] Remove I386 uImage fake_header() routine
I386 targets are not using a uImage format, instead fake header
is added to ram image before it is further processed by bootm.
Remove this fixup and force proper uImage use for I386.
Signed-off-by: Marian Balakowicz <m8@semihalf.com>
Diffstat (limited to 'lib_i386')
-rw-r--r-- | lib_i386/i386_linux.c | 12 | ||||
-rw-r--r-- | lib_i386/zimage.c | 49 |
2 files changed, 0 insertions, 61 deletions
diff --git a/lib_i386/i386_linux.c b/lib_i386/i386_linux.c index 67a78c4..6cb021a 100644 --- a/lib_i386/i386_linux.c +++ b/lib_i386/i386_linux.c @@ -33,18 +33,6 @@ extern int do_reset (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]); extern image_header_t header; /* from cmd_bootm.c */ - -image_header_t *fake_header(image_header_t *hdr, void *ptr, int size) -{ - /* try each supported image type in order */ - if (NULL != fake_zimage_header(hdr, ptr, size)) { - return hdr; - } - - return NULL; -} - - void do_bootm_linux(cmd_tbl_t *cmdtp, int flag, int argc, char *argv[], ulong addr, ulong *len_ptr, int verify) { diff --git a/lib_i386/zimage.c b/lib_i386/zimage.c index 20f9f8d..c3b4e59 100644 --- a/lib_i386/zimage.c +++ b/lib_i386/zimage.c @@ -212,7 +212,6 @@ void *load_zimage(char *image, unsigned long kernel_size, return setup_base; } - void boot_zimage(void *setup_base) { struct pt_regs regs; @@ -224,51 +223,3 @@ void boot_zimage(void *setup_base) regs.eflags = 0; enter_realmode(((u32)setup_base+SETUP_START_OFFSET)>>4, 0, ®s, ®s); } - - -image_header_t *fake_zimage_header(image_header_t *hdr, void *ptr, int size) -{ - /* There is no way to know the size of a zImage ... * - * so we assume that 2MB will be enough for now */ -#define ZIMAGE_SIZE 0x200000 - - /* load a 1MB, the loaded will have to be moved to its final - * position again later... */ -#define ZIMAGE_LOAD 0x100000 - - ulong checksum; - - if (KERNEL_MAGIC != *(u16*)(ptr + BOOT_FLAG_OFF)) { - /* not a zImage or bzImage */ - return NULL; - } - - if (-1 == size) { - size = ZIMAGE_SIZE; - } -#if 0 - checksum = crc32 (0, ptr, size); -#else - checksum = 0; -#endif - memset(hdr, 0, image_get_header_size ()); - - /* Build new header */ - image_set_magic (hdr, IH_MAGIC); - image_set_time (hdr, 0); - image_set_size (hdr, size); - image_set_load (hdr, ZIMAGE_LOAD); - image_set_ep (hdr, 0); - image_set_dcrc (hdr, checksum); - image_set_os (hdr, IH_OS_LINUX); - image_set_arch (hdr, IH_ARCH_I386); - image_set_type (hdr, IH_TYPE_KERNEL); - image_set_comp (hdr, IH_COMP_NONE); - - image_set_name (hdr, "(none)"); - - checksum = crc32 (0, (const char *)hdr, image_get_header_size ()); - image_set_hcrc (hdr, checksum); - - return hdr; -} |