This is the mail archive of the ecos-discuss@sourceware.org mailing list for the eCos project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

RE: Debugging RAM Redboot using JTAG/ICE


Harish,

I'm not clear if what you're really asking is how to get RedBoot RAM up
and running, or, if it's how to be able to debug a ROM or RAMROM image.
You can use the debugger with a ROM image.

I don't know which debugger you're using, but for an Abatron (or
presumably any other which GDB can talk to), what you need to do is
bring in the symbols from your ELF image at the address that your image
lives at in flash.

For example, if your image lives at 0x10000000 in flash:

(gdb) add-symbol-file redboot.elf 0x10000000
add symbol table from file "redboot.elf" at
        .text_addr = 0x10000000

If you want to be able to single step the startup assembly code, make
sure you have -ggdb -Wa,-gstabs in the compile line.

If your question is about doing board bring up for your platform, you'll
want to pay attention to:

packages/hal/arm/arch
packages/hal/arm/xscale

I'm not sure which eCos/Redboot distribution you're using, but if it's
the Intel one, I'm guessing they have processor specific support for
both the CPU and your ref board under packages/hal/arm/xscale.

--Chris

-----Original Message-----
From: ecos-discuss-owner@ecos.sourceware.org
[mailto:ecos-discuss-owner@ecos.sourceware.org] On Behalf Of Harish
Talanki
Sent: 21 November 2006 23:07
To: ecos-discuss@ecos.sourceware.org
Subject: Re: [ECOS] Debugging RAM Redboot using JTAG/ICE

Hello Gary,
   Thanks for the reply. Could you point me to specific
files/directories which I need to look at.

Thanks,

>>> Gary Thomas <gary@mlbassoc.com> 11/21/06 3:44 PM >>>
Harish Talanki wrote:
> Hello All,
>   I am new to Redboot & eCos development and trying to get started on
these areas.
> we have a IXP2350 based Road runner eval board which already has
Redboot running out of Flash.
> I tried 3 different ways to try run the RAM version of Redboot . I
used same redboot.elf
> in all following cases.
>  
> 1. I built  RAM version of redboot, and load redboot.elf file through
my JTAG ICE into
>     memory at 0x200000. I verify that the image is loaded properly,
after setting up all
>     memory controller registers. Now when I try to "Run", it throws up
the data exception.
>  
> 2. The board already had Redboot burned onto the Flash. I ran the
redboot out of the Flash,
>     and used "load" command to load the same redboot.elf file into
memory and run it
>     using "go" command. Everything works fine.
>  
> 3. I first run the Flash version of the redboot in control of ICE box
and when the target comes
>     to redboot prompt, I make a "halt" from my ICE just to make sure
my ICE has control of the
>     processor. Then I load the Redboot.elf using "load" command of
Redboot. Now I issue "halt"
>     from my JTAG ICE debugger, and load AGAIN the same file using ICE
box, so it will overwrite
>     the redboot.elf in memory which was already loaded using "load"
command.
>     Now I issue "Run" at 0x200040 [Entry point] from ICE, everything
works magically.
>  
> My questions are 
>     1. why am I not able to run RAM version, redboot.elf completely in
control of my ICE tools?
>     2. RAM version of Redboot built by the tool chain works only for
loading by another Redboot,
>         not able to run/debug the same image using JTAG/ICE tools.
why?
>     3. How can I build a version of Redboot that I can debug
completely in control of JTAG/ICE.

Normally, eCos applications assume that the [ROM or ROMRAM] RedBoot has
done some setup
of the hardware before they are launched.  In the case of ARM targets,
this includes setting
up the basic MMU tables.  This is most likely why launching a RAM
RedBoot from your JTAG
environment does not work.

Look at the startup code for your platform and see if it can be enabled
for RAM applications.

>     4. Redboot "load" command is doing special setup on target, apart
from just loading the image into memory
>         what is it? which is missing when I load the image directly
into memory using JTAG tools.
>  
> Our goal is to bringup redboot on our custom board based on IXP2350.
>  
> Being new to this development environment, my avenues are almost
closed. 
> Any suggestions will be of great help. Highly appreciate your help.
>  
> Regards,
> 
> 


-- 
------------------------------------------------------------
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

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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]