[ECOS] ARM platform porting problem

Grant Edwards grante@visi.com
Thu Oct 28 12:41:00 GMT 1999


On Thu, Oct 28, 1999 at 01:35:31PM -0600, Gary Thomas wrote:

> On 28-Oct-99 Grant Edwards wrote:
> > I'm trying to get eCOS running on a Samsung eval board, but the
> > start-up machine code that gets loaded into RAM doesn't seem to match
> > up with the any of the assembly language source files that I can
> > find.
> > 
> > Specifically, the code starting at reset_vector doesn't look right.
> > 
> > I'd like to compare the machien code I see in memory with what the
> > assembler thinks it generated.  I tried to get the assembler to
> > generate a listing for vectors.S, but it won't show the machine
> > code for the routine in question.
> > 
> > The listing claims that reset_vector is at offset 0 in that file's
> > text segment, but the listing dosen't show any machine code below
> > 00b4:
> > 
> 
> Indeed, this does look like a bug in the assembler.
> 
> However, that aside, did you realize that "reset_vector" does not
> actually show up at location 0x0 (relative to the start of your
> program)?  There is additional information in the "vectors" section
> which, depending on the version of 'vectors.S' you have, take up
> anywhere from 0x44 to 0x60 bytes.

I'm using the PID configuration so the linker things that RAM starts
at 0x4000.  My vectors take up 0x44 bytes, so the text segment starts
at 0x4044.  reset_vector is at 0x4044, which is where gdb sets the
PC to when the file is loaded.

However, the code at 0x4044 and up doesn't match the assembly listing.
It looks like my address decoding logic isn't getting set up
correctly, so I don't have RAM enabled -- which is odd, because it was
working yesterday...  (famous last words)

-- 
Grant


More information about the Ecos-discuss mailing list