Re: Réf : Re: Réf : Re: Init of the memory by RTEMS
Aleix Conchillo Flaqué
aconchillo at ice.csic.es
Wed Dec 9 16:24:57 UTC 2009
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.
On Wed, Dec 9, 2009 at 14:26, Leonard Bise <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>*
>
> 09.12.2009 14:16
> A
> Leonard Bise <leonard.bise at syderal.ch>
> cc
> Sebastian Huber <sebastian.huber at embedded-brains.de>, "
> rtems-users at rtems.org" <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>*
> >
> > 09.12.2009 11:31
> >
> >
> > A
> > Leonard Bise <leonard.bise at syderal.ch>
> > cc
> > 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
> > 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
> http://www.rtems.org/mailman/listinfo/rtems-users
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.rtems.org/pipermail/users/attachments/20091209/dd395f0c/attachment-0001.html>
More information about the users
mailing list