[ECOS] Re: Re: unable to execute linux kernel with Redboot

Claudio Scordino cloud.of.andor@gmail.com
Mon Sep 4 10:34:00 GMT 2006

On Monday 04 September 2006 12:20, Claudio Scordino wrote:
> >>>>> Jan van de Wijdeven writes:
> >
> > Hi,
> > I'm unable to run a linux kernel from the Redboot bootloader. I'm
> > using a XScale board through a serial port.
> >
> > First I load the zImage into memory with the "load" command. Then I
> > give the "exec" command. This doesn't do anything and I have to reset
> > the board. I've been trying to find a solution and some people speak
> > of an entry point for the linux kernel. My redboot manual states this
> > to be 0xc0008000 for the SA1100, but since this processor is similar
> > to the XScale I tried that one.
> > Here's the command I give:
> 0xc0008000 is the kernel entry point, not the zImage entry port. And its
> wrong for XScale.
> RedBoot> exec 0xc0008000 -c "console=ttyS0,115200n8"
> > Using base address 0x00017c00 and length 0x000b1660
> >
> > Then nothing happens.
> No surprise.
> > Can anyone tell me what I'm doing wrong? The redboot manual doesn't
> > give me any more information.
> You need to find out where the zImage wants to be. This depends on the
> kernel version with later zImage being relocatable. If not relocatable,
> you want to use ZTEXTADDR. ZTEXTADDR is a physical address, so you need
> to convert to virtual address for RedBoot to use for the load command.
> ZTEXTADDR is typically defined in arch/arm/boot/Makefile.
> So, assume ZTEXTADDR is 0xA0080000. Just clear the top bits to get the
> virtual address in RedBoot (at least for most XScale boards). In this
> case, 0x80000. Therefore, something like this should work:
>   RedBoot> load -r -b 0x80000 zImage
>   RedBoot> exec -b 0x80000 -l 0 -c "console=ttyS0,115200" 0xA0080000
> Note that the last part of the exec command is the physical address.
> This should also work for a relocatable zImage.


     I'm having the same problem with my IXDP465 board with RedBoot 2.02.

My documentation suggests to use

load -r -v -b 0x01600000 zImage
load -r -v -b 0x00800000 ramdisk.gz

which does not work.

My linux-2.6.x/arch/arm/boot/compressed/Makefile sets ZTEXTADDR to 0, so
based on Mark's instructions, my RedBoot commands would be something like 

RedBoot> load -r -b 0x0000 zImage
RedBoot> exec -b 0x0000 -l 0 -c "console=ttyS0,115200" 0x000000

which is very odd, and probably makes no sense.

Any suggestion is welcome.

Many thanks,


Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss

More information about the Ecos-discuss mailing list