[ECOS] Redboot hanging after "go" command
Sridhar k
ksridhar231@gmail.com
Tue Oct 24 18:45:00 GMT 2006
Hi,
I have been using the startup type as RAM and i h've loaded my redbot
image in external Flash [i h've onchip RAM stating @ 0x40000000 and
external RAM starting @ 0x81000000]
here is my RAM linker script (the path is
C:\cygwin\tmp\app1app1_install\include\pkgconf\mlt_arm_lpc2xxx_olpce2294_ram.ldi).
*********************************
#include <cyg/infra/cyg_type.inc>
MEMORY
{
ram0 : ORIGIN = 0x40000000, LENGTH = 0x4000
ram : ORIGIN = 0x81000000, LENGTH = 0x100000
}
SECTIONS
{
SECTIONS_BEGIN
SECTION_fixed_vectors (ram0, 0x40000400, LMA_EQ_VMA)
SECTION_rom_vectors (ram, 0x81010000, LMA_EQ_VMA)
SECTION_text (ram, ALIGN (0x4), LMA_EQ_VMA)
SECTION_fini (ram, ALIGN (0x4), LMA_EQ_VMA)
SECTION_rodata (ram, ALIGN (0x4), LMA_EQ_VMA)
SECTION_rodata1 (ram, ALIGN (0x4), LMA_EQ_VMA)
SECTION_fixup (ram, ALIGN (0x4), LMA_EQ_VMA)
SECTION_gcc_except_table (ram, ALIGN (0x4), LMA_EQ_VMA)
SECTION_data (ram, ALIGN (0x4), LMA_EQ_VMA)
SECTION_bss (ram, ALIGN (0x4), LMA_EQ_VMA)
CYG_LABEL_DEFN(__heap1) = ALIGN (0x8);
SECTIONS_END
}
Thanks for your time.
On 10/24/06, Gary Thomas <gary@mlbassoc.com> wrote:
> Sridhar k wrote:
> > Thanks for the reply..
> > am getting the follwoing if i dont use the option "-b XXX"
> >
> > RedBoot> load -m ymodem
> > CCBB*** Abort! Attempt to load S-record to address: 0x00000000, which is
> > not val
> > id
> > xyzModem - CRC mode, 2(SOH)/1(STX)/0(CAN) packets, 4 retries
> > RedBoot>
> >
> > By this , I think am certainly doing some thing wrong.please help me out
>
> Build your program for RAM startup - this should get it linked to an
> appropriate address.
>
> >
> > On 10/23/06, Gary Thomas <gary@mlbassoc.com> wrote:
> >> Sridhar k wrote:
> >> > Hi everyone,
> >> >
> >> > Am trying to load a simple hello world program after loading the
> >> > Redboot image into my LPCE2214 target(host is windows/cygwin).
> >> > The redboot image seems to be working fine.am able to ping the board
> >> > from the host and also i can ping the host from the target board
> >> > (from redboot prompt in terminal app). And here are the some redboot
> >> > command outputs for ref..
> >> >
> >> > *******************************
> >> > Non-certified release, version UNKNOWN - built 03:05:23, Oct 19 2006
> >> >
> >> > Platform: Olimex LPC-E2294 development board (ARM7TDMI)
> >> > Copyright (C) 2000, 2001, 2002, 2003, 2004 Red Hat, Inc.RedBoot(tm)
> >> > bootstrap and debug environment [ROM]
> >> > Copyright (C) 2003, 2004, 2005, 2006 eCosCentric Limitedrelease,
> >> > version UNKNOWN - built 03:05:23, Oct 19 2006
> >> >
> >> > RAM: 0x81000000-0x81100000, [0x8100cce0-0x810ed000] available
> >> >
> >> > Platform: Olimex LPC-E2294 development board (ARM7TDMI)
> >> > FLASH: 0x80000000 - 0x80100000, 16 blocks of 0x00010000 bytes each.
> >> > 2000, 2001,
> >> >
> >> >
> >> > RedBoot> fis list
> >> > Name FLASH addr Mem addr Length Entry point
> >> > RedBoot 0x80000000 0x80000000 0x00020000 0x00000000
> >> > FIS directory 0x800F0000 0x800F0000 0x0000F000 0x00000000
> >> > RedBoot config 0x800FF000 0x800FF000 0x00001000 0x00000000
> >> >
> >> > RedBoot>
> >> >
> >> > RedBoot> channel
> >> > Current console channel id: 0
> >> >
> >> >
> >> > *******************************
> >> > /* this is a simple hello world program */
> >> > #include <stdio.h>
> >> > #include <cyg/kernel/kapi.h>
> >> > #include <cyg/infra/diag.h>
> >> > #include <cyg/io/io.h>
> >> >
> >> > int main(void)
> >> > {
> >> > diag_printf("Hello, eCos world!\n");
> >> > return 0;
> >> > }
> >> > *******************************
> >> >
> >> > I h've compiled this hello.c using the Makefile from exapmles
> >> > directory and made the "hello.srec" from "hello.o" using the
> >> > arm-elf-objcopy.
> >> > I have loaded this hello.sre file using the folowing command from
> >> > windows hyperterminal redboot promt.
> >> >
> >> > *******************************
> >> > RedBoot> load -m ymodem -b 0x81010400
> >> > CCCAddress offset = 0x81010400
> >> > Entry point: 0x81010400, address range: 0x81010400-0x81010420
> >> > xyzModem - CRC mode, 2(SOH)/1(STX)/0(CAN) packets, 5 retries
> >> >
> >> > RedBoot>
> >> > RedBoot> go
> >> > *******************************
> >> > $ arm-elf-size hello.srec
> >> > text data bss dec hex filename
> >> > 0 52 0 52 34 hello.srec
> >> >
> >> > after loading this when i give "go" command its hanging..its coming
> >> > out of this hang state only if i reset the target.
> >> > Please correct me if am doing any thing wrong.Please suggest.
> >> >
> >>
> >> Why are you forcing the address? eCos programs are not position
> >> independent and the code needs to load at the address it was linked
> >> to run at. Try the 'load' command without the '-b XXX' option and
> >> see what happens.
>
> --
> ------------------------------------------------------------
> Gary Thomas | Consulting for the
> MLB Associates | Embedded world
> ------------------------------------------------------------
>
--
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