Réf : Re: Réf : Re: Réf : Re: Init of the memory by RTEMS

Leonard Bise leonard.bise at syderal.ch
Thu Dec 10 07:37:57 UTC 2009


I tried this methode but surprinsingly the memory in this area STILL gets 
erased. I don't know by what  and it does not make any sense either.

401e0000 g       *ABS*  00000000 _RAM_END

That seems correct but something is STILL clearing that damn memory !

I'm seriously lost now.. 

Léonard.





Joel Sherrill <joel.sherrill at oarcorp.com> 
09.12.2009 20:28

A
Aleix Conchillo Flaqué <aconchillo at ice.csic.es>
cc
Leonard Bise <leonard.bise at syderal.ch>, "rtems-users at rtems.org" 
<rtems-users at rtems.org>
Objet
Re: Réf : Re: Réf : Re: Init of the memory by RTEMS






On 12/09/2009 10:24 AM, Aleix Conchillo Flaqué wrote:
> Why don't you just change the start of your Application? For example:
>
>
> MEMORY
> {
>   ram     : ORIGIN = 0x40020000, LENGTH = 2M - 128 K
> }
>
> RTEMS will not modify anything from 0x40000000 to 0x4001FFFF.
>
Or simply leave ORIGIN alone and subtract 128K from the LENGTH.
Either way works.  But you can't tell RTEMS about it. :)

--joel
>
> On Wed, Dec 9, 2009 at 14:26, Leonard Bise <leonard.bise at syderal.ch 
> <mailto:leonard.bise at syderal.ch>> wrote:
>
>
>     Thanks for your answer Joel.
>
>     We are using the 4.6 version of RTEMS so I guess the memory must
>     be cleared.
>
>     I already use a customized linkcmds file in this application, to
>     specify various sections and other stuff.
>
>     Thats what I modified for my RAM size :
>
>     RAM_SIZE   = 2M ;
>
>     EEPROM_SIZe = 512K ;
>
>     PROM_SIZE        = 64K ;
>
>     RAM_END = RAM_START + RAM_SIZE;
>
>     MEMORY
>     {
>       rom     : ORIGIN = 0x00000000, LENGTH = 64K
>       ram     : ORIGIN = 0x40000000, LENGTH = 2M
>       eeprom  : ORIGIN = 0x60000000, LENGTH = 512K
>     }
>
>     >If you do not reserve the memory area out of the linkcmds, then
>     >it is likely to be used for some other purpose and overwritten.
>
>     How can I reserve memory ? I tried creating a section like this :
>
>       sCCA_Main 0x401E7000: {
>         *(sCCA_Main)
>        } > ram
>
>     then my var in the code looks like this :
>
>     uint32 PkgHW_CCA_main __attribute__ (( section ( "sCCA_Main" ) ) ) ;
>
>     But this does not work, the data I place in 0x401E7000 before
>     starting execution of my RTEMS apps is overwritten by 0.
>     Hope you can help.
>
>     Léonard.
>
>
>
>
>     *Joel Sherrill <joel.sherrill at oarcorp.com
>     <mailto:joel.sherrill at oarcorp.com>>*
>
>     09.12.2009 14:16
>
> 
>     A
>                Leonard Bise <leonard.bise at syderal.ch
>     <mailto:leonard.bise at syderal.ch>>
>     cc
>                Sebastian Huber <sebastian.huber at embedded-brains.de
>     <mailto:sebastian.huber at embedded-brains.de>>,
>     "rtems-users at rtems.org <mailto:rtems-users at rtems.org>"
>     <rtems-users at rtems.org <mailto:rtems-users at rtems.org>>
>     Objet
>                Re: Réf : Re: Init of the memory by RTEMS
>
>
>
> 
>
>
>
>
>
>     On 12/09/2009 06:41 AM, Leonard Bise wrote:
>     >
>     > I forgot to mention it.
>     >
>     > I'm using RTEMS for the LEON2 platform.
>     >
>     Version?
>     > Also I'm not too sure how to know the address of the workspace
>     or heap?
>     >
>     They are next to each other and the linkcmds and symbol
>     table from your application should give the information.
>
>     Where did  you override the RAM size?  The linkcmds
>     has this:
>
>     MEMORY
>     {
>       rom     : ORIGIN = 0x00000000, LENGTH = 256M
>       ram     : ORIGIN = 0x40000000, LENGTH = 1024M
>     }
>
>     And the start.S zeroes out the BSS from "_edata"
>     to "_end".
>
>     The addresses you mentioned will be part of the
>     unused memory from after the bss until the end of ram
>     and since you didn't tell the linkcmds or RTEMS about them,
>     they will be put in either the Workspace or C Program Heap
>     and used by something.
>
>
>
>     --joel
>
>     > Léonard.
>     >
>     >
>     >
>     > *Sebastian Huber <sebastian.huber at embedded-brains.de
>     <mailto:sebastian.huber at embedded-brains.de>>*
>     >
>     > 09.12.2009 11:31
>     >
>     >
>     > A
>     >                  Leonard Bise <leonard.bise at syderal.ch
>     <mailto:leonard.bise at syderal.ch>>
>     > cc
>     > rtems-users at rtems.org <mailto:rtems-users at rtems.org>
>     > Objet
>     >                  Re: Init of the memory by RTEMS
>     >
>     >
>     >
>     >
>     >
>     >
>     >
>     >
>     >
>     > Hi,
>     >
>     > which BSP do you use? Is the memory address 0x401E7000 part of the
>     > workspace or
>     > heap?
>     >
>     > CU
>     >
>     > --
>     > Sebastian Huber, embedded brains GmbH
>     >
>     > Address : Obere Lagerstr. 30, D-82178 Puchheim, Germany
>     > Phone   : +49 89 18 90 80 79-6
>     > Fax     : +49 89 18 90 80 79-9
>     > E-Mail  : sebastian.huber at embedded-brains.de
>     <mailto:sebastian.huber at embedded-brains.de>
>     > PGP     : Public key available on request.
>     >
>     > Diese Nachricht ist keine geschäftliche Mitteilung im Sinne des
>     EHUG.
>     >
>
>
>
>     _______________________________________________
>     rtems-users mailing list
>     rtems-users at rtems.org <mailto:rtems-users at rtems.org>
>     http://www.rtems.org/mailman/listinfo/rtems-users
>
>


-- 
Joel Sherrill, Ph.D.             Director of Research&  Development
joel.sherrill at OARcorp.com        On-Line Applications Research
Ask me about RTEMS: a free RTOS  Huntsville AL 35805
    Support Available             (256) 722-9985



-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.rtems.org/pipermail/users/attachments/20091210/94468bf7/attachment-0001.html>


More information about the users mailing list