U-Boot Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [U-Boot-Users] boot uncompressed uImage
@ 2005-04-27  9:26 朱成
  2005-04-27  9:47 ` Leif Lindholm
  2005-04-27 10:17 ` Wolfgang Denk
  0 siblings, 2 replies; 4+ messages in thread
From: 朱成 @ 2005-04-27  9:26 UTC (permalink / raw)
  To: u-boot

hello,all

i builded compressed image using montavista's tools :

1.
/bin/sh /usr/src/linux-2.4.20_mvlcee31/scripts/mkuboot.sh -A arm -O
linux -T kernel \
-C none -a 0x10008000 -e 0x10008000 \
-n 'Linux-2.4.20_mvlcee31-omap730_gsm_gprs' \
-d /usr/src/linux-2.4.20_mvlcee31/arch/arm/boot/zImage uImage

2.
tftp 0x10000000 uImage
(i used u-boot-1.1.2, 0x10000000 is physical address)

3.
bootm
and kernel could boot successfully.

but i want to install uncompressed image, so i do:

1.
/bin/sh /usr/src/linux-2.4.20_mvlcee31/scripts/mkuboot.sh -A arm -O
linux -T kernel \
-C none -a 0x10008000 -e 0x10008000 \
-n 'Linux-2.4.20_mvlcee31-omap730_gsm_gprs' \
-d /usr/src/linux-2.4.20_mvlcee31/vmlinux uImage

2.
tftp 0x10000000 uImage

3.
bootm

but kernel booting failed, and u-boot rebooted!

shall i change 0x10008000 to sth. and do something else?

thanks!

^ permalink raw reply	[flat|nested] 4+ messages in thread

* [U-Boot-Users] boot uncompressed uImage
  2005-04-27  9:26 [U-Boot-Users] boot uncompressed uImage 朱成
@ 2005-04-27  9:47 ` Leif Lindholm
  2005-04-27 10:05   ` 朱成
  2005-04-27 10:17 ` Wolfgang Denk
  1 sibling, 1 reply; 4+ messages in thread
From: Leif Lindholm @ 2005-04-27  9:47 UTC (permalink / raw)
  To: u-boot

On Wed, 2005-04-27 at 17:26 +0800, ?? wrote:
> but i want to install uncompressed image, so i do:
> 
> 1.
> /bin/sh /usr/src/linux-2.4.20_mvlcee31/scripts/mkuboot.sh -A arm -O
> linux -T kernel \
> -C none -a 0x10008000 -e 0x10008000 \
> -n 'Linux-2.4.20_mvlcee31-omap730_gsm_gprs' \
> -d /usr/src/linux-2.4.20_mvlcee31/vmlinux uImage

I'm gonna risk making a fool out of myself since I've never actually
worked with ARM, but...

vmlinux is (for all other platforms I've used) an ELF image, not a raw
binary. In order to be usable for u-boot, you need to run

<path-to-your-cross>objcopy -S -O binary vmlinux vmlinux.bin

and then use the resulting vmlinux.bin instead.

/
	Leif

^ permalink raw reply	[flat|nested] 4+ messages in thread

* [U-Boot-Users] boot uncompressed uImage
  2005-04-27  9:47 ` Leif Lindholm
@ 2005-04-27 10:05   ` 朱成
  0 siblings, 0 replies; 4+ messages in thread
From: 朱成 @ 2005-04-27 10:05 UTC (permalink / raw)
  To: u-boot

> I'm gonna risk making a fool out of myself since I've never actually
> worked with ARM, but...
> 
> vmlinux is (for all other platforms I've used) an ELF image, not a raw
> binary. In order to be usable for u-boot, you need to run
> 
> <path-to-your-cross>objcopy -S -O binary vmlinux vmlinux.bin
> 
> and then use the resulting vmlinux.bin instead.
> 


ok, i do it successfully! thanks!

^ permalink raw reply	[flat|nested] 4+ messages in thread

* [U-Boot-Users] boot uncompressed uImage
  2005-04-27  9:26 [U-Boot-Users] boot uncompressed uImage 朱成
  2005-04-27  9:47 ` Leif Lindholm
@ 2005-04-27 10:17 ` Wolfgang Denk
  1 sibling, 0 replies; 4+ messages in thread
From: Wolfgang Denk @ 2005-04-27 10:17 UTC (permalink / raw)
  To: u-boot

In message <1114593987.6981.25.camel@localhost> you wrote:
> 
> i builded compressed image using montavista's tools :

Well, actually you should ask MV support for help, then.

> /bin/sh /usr/src/linux-2.4.20_mvlcee31/scripts/mkuboot.sh -A arm -O
> linux -T kernel \
> -C none -a 0x10008000 -e 0x10008000 \
> -n 'Linux-2.4.20_mvlcee31-omap730_gsm_gprs' \
> -d /usr/src/linux-2.4.20_mvlcee31/arch/arm/boot/zImage uImage

Normally the build command should look something like this:

...
arm-linux-ld -p -X -T arch/arm/vmlinux.lds arch/arm/kernel/head-armv.o arch/arm/kernel/init_task.o init/main.o init/version.o init/do_mounts.o \
        --start-group \
        arch/arm/kernel/kernel.o arch/arm/mm/mm.o arch/arm/mach-s3c2400/s3c2400.o kernel/kernel.o mm/mm.o fs/fs.o ipc/ipc.o \
         drivers/serial/serial.o drivers/char/char.o drivers/block/block.o drivers/misc/misc.o drivers/net/net.o drivers/scsi/scsidrv.o drivers/mtd/mtdlink.o drivers/i2c/i2c.o drivers/usb/usbdrv.o drivers/media/media.o \
        net/network.o \
        arch/arm/nwfpe/math-emu.o arch/arm/lib/lib.a /work/TRAB/lib/lib.a \
        --end-group \
        -o vmlinux
...
arm-linux-objcopy -O binary -R .note -R .comment -S /work/TRAB/vmlinux piggy
gzip -9 < piggy > piggy.gz
...
mkimage -A arm -O linux -T kernel -C gzip -a 0x0c008000\
-e 0x0c008000 -n 'ARM Linux-2.4.27' \
-d compressed/piggy.gz uImage


I'm not sure if  your  "zImage"  is  equivalent  to  our  "piggy.gz",
Normally  this  is  NOT the case. What you have might work, but it is
not the "correct" way to build an ARM image.

> tftp 0x10000000 uImage

This is dangerous - The "bootm" command will copy your image from the
downlaod address (0x10000000)  tpo  the  load  address  (0x10008000).
Given  the  size of the kernel image this is an overlapping area. The
behaviour is undefined.

> but i want to install uncompressed image, so i do:
> 
> 1.
> /bin/sh /usr/src/linux-2.4.20_mvlcee31/scripts/mkuboot.sh -A arm -O
> linux -T kernel \
> -C none -a 0x10008000 -e 0x10008000 \
> -n 'Linux-2.4.20_mvlcee31-omap730_gsm_gprs' \
> -d /usr/src/linux-2.4.20_mvlcee31/vmlinux uImage

This is definitely wrong, as "vmlinux" is an ELF file, while you need
the raw binary image.

Best regards,

Wolfgang Denk

-- 
Software Engineering:  Embedded and Realtime Systems,  Embedded Linux
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
While money can't buy happiness, it certainly lets  you  choose  your
own form of misery.

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2005-04-27 10:17 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2005-04-27  9:26 [U-Boot-Users] boot uncompressed uImage 朱成
2005-04-27  9:47 ` Leif Lindholm
2005-04-27 10:05   ` 朱成
2005-04-27 10:17 ` Wolfgang Denk

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox