This is the mail archive of the ecos-discuss@sources.redhat.com 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: ROMRAM stand-alone application


I found a discrepancy in the EB55 ROMRAM code, between the section that masks addresses before copying ROM to RAM, and the memory map that the linker uses to determine where to put code.  I used the following patch to adjust the memory map:

Index: mlt_arm_at91_eb55_romram.ldi
===================================================================
RCS file: /cvs/ecos/ecos/packages/hal/arm/at91/eb55/current/include/pkgconf/mlt_arm_at91_eb55_romram.ldi,v
retrieving revision 1.1
diff -u -r1.1 mlt_arm_at91_eb55_romram.ldi
--- mlt_arm_at91_eb55_romram.ldi	13 May 2003 18:27:59 -0000	1.1
+++ mlt_arm_at91_eb55_romram.ldi	17 Dec 2003 14:43:48 -0000
@@ -14,7 +14,7 @@
 {
     SECTIONS_BEGIN
     SECTION_fixed_vectors (sram, 0x20, LMA_EQ_VMA)
-    SECTION_rom_vectors (ram, 0x02008000, LMA_EQ_VMA)
+    SECTION_rom_vectors (ram, 0x02000000, 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)


This alters the location that ROMRAM code is linked at (I think) and matches the startup code for the ROMRAM version of the EB55.  Only problem - if you try to use a ROMRAM version of Redboot to load a RAM version of your application, the same bit of memory is used for both and they clash.  However, this change worked perfectly well for us to develop ROMRAM applications for our EB55.

Hope this helps

Alan Bowman


-----Original Message-----
From: Marco Aurélio da Cruz [mailto:marco@daruma.com.br]
Sent: 08 April 2004 06:31
To: ecos-discuss@sources.redhat.com
Subject: [ECOS] ROMRAM stand-alone application


Hi,

I've developed a board with AT91M55800 (I used EB55 structure to port 
eCos), and since then I've been using a Redboot ROM to load and run a 
RAM image of my application. I changed the ldi, .h and 
hal_plataform_setup.h files to meet my requirements.

Now, I need to record an EPROM to buid a self-booting stand alone 
application. I've created a ROMRAM eCos, based on my working RAM eCos 
files, but it did not work.

Do I need Redboot yet when I want a self-booting application? And ROM 
Monitor and GDB stubs? In the Configtool Template selection, the default 
packages are enough to create a ROMRAM application? And what about de 
grayed Redboot HAL options that appear en the configuration window?

Thank you in advance.

Regards,

Marco Aurélio da Cruz

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