This is the mail archive of the
ecos-discuss@sourceware.org
mailing list for the eCos project.
Re: Re: Booting from Flash in a AT91M55800A based platform
- From: Frank Pagliughi <fpagliughi at mindspring dot com>
- To: Marc-Andrà Beck <marc-andre_beck at gmx dot ch>
- Cc: Lambrecht JÃrgen <J dot Lambrecht at TELEVIC dot com>, eCos Discuss <ecos-discuss at ecos dot sourceware dot org>
- Date: Mon, 25 Aug 2008 14:18:04 -0400
- Subject: Re: [ECOS] Re: Booting from Flash in a AT91M55800A based platform
- References: <48B290B3.6080804@netlabs.org> <48B2A9B4.3050108@gmx.ch>
Marc-Andrà Beck wrote:
No. while booting from RAM I only see the RAM. There's no FLASH part:
RAM: 0x40000000-0x40080000, [0x4001f1e8-0x40034000] available
Are you testing a ROM/Flash boot or a RAM boot? If you're trying to
debug apps from RAM you need to use your JTAG to configure the
oscillator, PLL, and chip select registers before loading the
application into memory.
> - Does the JTAG software claim that the "program and verify" worked
> properly?
Yes.
> - Are the Flash chips properly wired on the board?
Yes. Verified and reverified.
Ok. With the chips programmed and verified, you should be able to use
the JTAG to reset the board and single step through the first few
assembly instructions. Remember that it uses a base address of zero
until it gets to the remap (stmia) instruction. And also remember that
you can't use the JTAG to single-step over that instruction. There are
two points where the system can easily get lost in here:
1. When it sets the clock frequency. If the board stops responding after
you set the oscillator or PLL frequencies, then you've set them too fast
for the board to support.
2. If the board doesn't make it past the remap command, then either the
values in _InitMemory table are wrong, or your .text section is mapped
to a different address than you think. To get past the remap command,
set a breakpoint at the remapped address of the first instruction after
the _InitMemory table (the symbol "10"), then 'go'.
If you get here, and can still single step, then things are good. You're
running from Flash and your basic CPU initialization is correct. Now you
can connect to the board with GDB/Insight and follow the debug with that.
--
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss