public inbox for ecos-discuss@sourceware.org
 help / color / mirror / Atom feed
* [ECOS] memory layout
@ 2001-01-23 22:51 Natarajan, Mekala (CTS)
  2001-01-23 23:46 ` Jesper Skov
  0 siblings, 1 reply; 27+ messages in thread
From: Natarajan, Mekala (CTS) @ 2001-01-23 22:51 UTC (permalink / raw)
  To: 'ecos-discuss@sourceware.cygnus.com'

Hi all,
	i build my application for aeb-1.
when i tried to link the obj files with arm-elf-gcc it reported the
following error:

bss not within region ram. i am using aeb-1 version-B (128kb ram).

is there any option in the kernel configuration so that i can reduce the
code size.

regards,
mekala



This e-mail and any files transmitted with it are for the sole use of the intended recipient(s) and may contain confidential and privileged information.
If you are not the intended recipient, please contact the sender by reply e-mail and destroy all copies of the original message. 
Any unauthorised review, use, disclosure, dissemination, forwarding, printing or copying of this email or any action taken in reliance on this e-mail is strictly 
prohibited and may be unlawful.

		Visit us at http://www.cognizant.com

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [ECOS] memory layout
  2001-01-23 22:51 [ECOS] memory layout Natarajan, Mekala (CTS)
@ 2001-01-23 23:46 ` Jesper Skov
  0 siblings, 0 replies; 27+ messages in thread
From: Jesper Skov @ 2001-01-23 23:46 UTC (permalink / raw)
  To: Natarajan, Mekala (CTS); +Cc: 'ecos-discuss@sourceware.cygnus.com'

>>>>> "Natarajan," == Natarajan, Mekala (CTS) <NMekala@chn.cognizant.com> writes:

Natarajan,> is there any option in the kernel configuration so that i
Natarajan,> can reduce the code size.

Yes, many. But if you're looking for this option:

 CYGBLD_KERNEL_REDUCE_SIZE_TO_HALF

we took it out a few releases back. We had complaints from MicroSoft
and Wind River about unfair competition. Too bad really.


No, seriously, you need to look at your image (use
'tool-prefix-objdump -D image'). What is taking up the space? If it's
the application, changing the eCos configuration is not going to help.

Of course you can also tweak the kernel, libc, libm, posix, <random
package> options to reduce size. But that require that you read the
option descriptions and decide if it's safe/sensible or not to
disable/enable the option. If you need feature X you can obviously not
disable it to save space.

Jesper

^ permalink raw reply	[flat|nested] 27+ messages in thread

* [ECOS] Memory layout
@ 2008-04-10 21:35 Syed Ismail
  0 siblings, 0 replies; 27+ messages in thread
From: Syed Ismail @ 2008-04-10 21:35 UTC (permalink / raw)
  To: ecos-discuss


Hello
 I have an arm based mx31 freescale processor. Using patches from freescale, i was able to create redboot image ang with minor configuration changes it worked. Now i have a few questions.

1. The image is a romram image. Loads from nor flash and executes in ram. The ram is an sdram at physical addr 0x80000000, virt addr mapped to 0x0. I now want use a ram at a different physical address. What changes do i do?

2. What does this do

X_ARM_MMU_SECTION(0x800, 0x000,   0x80,  ARM_CACHEABLE,   ARM_BUFFERABLE,   ARM_ACCESS_PERM_RW_RW); /* SDRAM */
    X_ARM_MMU_SECTION(0x800, 0x800,   0x80,  ARM_CACHEABLE,   ARM_BUFFERABLE,   ARM_ACCESS_PERM_RW_RW); /* SDRAM */
    
Should i add the new ram physical address here? What is ARM_CACHEABLE and BUFFERABLE? Does the above write into registers of processor or is it only a table used by redboot code?

3. As a general query, is it possible to load and execute images like redboot from a PSRAM.

Thanks

--
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [ECOS] memory layout
  2007-10-29 14:13 [ECOS] memory layout Syed Ismail
@ 2007-10-29 14:18 ` Andrew Lunn
  0 siblings, 0 replies; 27+ messages in thread
From: Andrew Lunn @ 2007-10-29 14:18 UTC (permalink / raw)
  To: Syed Ismail; +Cc: eCos Disuss

On Mon, Oct 29, 2007 at 02:11:26PM -0000, Syed Ismail wrote:
> 
> Hi

> For our custom board, based on mx31 ads, i need to change the rom
> and ram address and length in redboot. In addition to the .ldi file,
> what else needs to be changed. 

There is a header file in the same directory. That might need
changing. If you are adding or removing RAM or FLASH, you may need to
modify the code which programs the MMU. This is also in the HAL.

       Andrew

-- 
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss

^ permalink raw reply	[flat|nested] 27+ messages in thread

* [ECOS] memory layout
@ 2007-10-29 14:13 Syed Ismail
  2007-10-29 14:18 ` Andrew Lunn
  0 siblings, 1 reply; 27+ messages in thread
From: Syed Ismail @ 2007-10-29 14:13 UTC (permalink / raw)
  To: ecos-discuss


Hi
  For our custom board, based on mx31 ads, i need to change the rom and ram address and length in redboot. In addition to the .ldi file, what else needs to be changed. And can i get to know the sequence of how redboot starts up on the board along with the corresponding source files
                                                     Ismail

--
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss

^ permalink raw reply	[flat|nested] 27+ messages in thread

* [ECOS] Memory Layout
@ 2003-10-08 14:29 James Yates
  0 siblings, 0 replies; 27+ messages in thread
From: James Yates @ 2003-10-08 14:29 UTC (permalink / raw)
  To: ecos-discuss

I have looked through the mail list archives but can't find an actual solution to this. I am trying to modify the memory layout for my hardware platform. Can someone point me in the direction of a document explaining the layout of the mlt file. Or alternatively, can someone point me in the direction of somewhere to download the version 1 configuration tool that includes the memory layout tool. I can understand the ldi file which is standard gcc-ld type format but the mlt seems a bit conusing.

	If anyone can help, I will be very appreciative.

			James Yates

--
Before posting, please read the FAQ: http://sources.redhat.com/fom/ecos
and search the list archive: http://sources.redhat.com/ml/ecos-discuss

^ permalink raw reply	[flat|nested] 27+ messages in thread

* [ECOS] Memory layout
@ 2003-09-18  7:31 Matthieu.GIRARDIN
  0 siblings, 0 replies; 27+ messages in thread
From: Matthieu.GIRARDIN @ 2003-09-18  7:31 UTC (permalink / raw)
  To: ecos-discuss

Hi 

Here I must change the memory layout of my board.
Can someone explain me the exact syntaxe of a section line in a file mlt ?
I work on it but I don't understand all the line...

Thanks

-- 
Before posting, please read the FAQ: http://sources.redhat.com/fom/ecos
and search the list archive: http://sources.redhat.com/ml/ecos-discuss

^ permalink raw reply	[flat|nested] 27+ messages in thread

* [ECOS] memory layout
@ 2002-11-18 19:44 AL Chane
  0 siblings, 0 replies; 27+ messages in thread
From: AL Chane @ 2002-11-18 19:44 UTC (permalink / raw)
  To: ecos-discuss; +Cc: WuJon C.S. (E-mail)

Hi,

     I use configuration tool to modify ARM7 based memory layout.
I don't know exactly what I should allocate for "fixed_vector",
"rom_vector"?
What's different between them? As for the same ARM7 core porting, can I
leave those contiguous "text","fini","rodata"......"heap1" following
"rom_vector" unchanged?

thanks for the help.

Al



-- 
Before posting, please read the FAQ: http://sources.redhat.com/fom/ecos
and search the list archive: http://sources.redhat.com/ml/ecos-discuss

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [ECOS] memory layout
  2002-10-30  9:55 Schumacher, Gordon
@ 2002-11-04 20:37 ` Jonathan Larmour
  0 siblings, 0 replies; 27+ messages in thread
From: Jonathan Larmour @ 2002-11-04 20:37 UTC (permalink / raw)
  To: Schumacher, Gordon; +Cc: ecos-discuss

Schumacher, Gordon wrote:
> What I've been doing is using 1.3.net for memory configuration, and 2.0 for
> everything else (as 1.3.net can't actually build 2.0's repository IIRC.)

The current binaries on http://sources.redhat.com/ecos/anoncvs.html which
have been there for a few months definitely should.

Jifl
-- 
eCosCentric       http://www.eCosCentric.com/       <info@eCosCentric.com>
--[ "You can complain because roses have thorns, or you ]--
--[  can rejoice because thorns have roses." -Lincoln   ]-- Opinions==mine


-- 
Before posting, please read the FAQ: http://sources.redhat.com/fom/ecos
and search the list archive: http://sources.redhat.com/ml/ecos-discuss

^ permalink raw reply	[flat|nested] 27+ messages in thread

* RE: [ECOS] memory layout
@ 2002-10-30  9:55 Schumacher, Gordon
  2002-11-04 20:37 ` Jonathan Larmour
  0 siblings, 1 reply; 27+ messages in thread
From: Schumacher, Gordon @ 2002-10-30  9:55 UTC (permalink / raw)
  To: 'Chris Garry', AL Chane, ecos-discuss

What I've been doing is using 1.3.net for memory configuration, and 2.0 for
everything else (as 1.3.net can't actually build 2.0's repository IIRC.)

# -----Original Message-----
# From: Chris Garry [mailto:cgarry@sweeneydesign.co.uk]
# Sent: Wednesday, October 30, 2002 5:54 AM
# To: AL Chane; ecos-discuss@sources.redhat.com
# Subject: Re: [ECOS] memory layout
# 
# 
# I believe only ver 1.3.net of the configuration tool has a working
# memory layout tool. You should either use this version of the
# configuration tool or modify the .ldi & .h files by hand.
# 
# Chris
# 
# ----- Original Message ----- 
# From: "AL Chane" <al_chane@issc.com.tw>
# To: <ecos-discuss@sources.redhat.com>
# Sent: Wednesday, October 30, 2002 9:09 AM
# Subject: [ECOS] memory layout
# 
# 
# > 
# --------------------------------------------------------------
# --------------
# > -------------
# > How do I modify memory layout using Windows config tool?
# > 
# > I can find "memory layout" under "eCos HAL"->"ARM Architecture"
# > ->ARM *** board. And it's greyed out, showing:
# > 
# > Memory layout linker script fragment | <pkgconf/mlt_***.ldi>
# > Memory layout header file                  | <pkgconf/mlt_**.h>
# > 
# > thanks for the helps.
# > 
# > 
# --------------------------------------------------------------
# --------------
# > -----------------
# > 
# > On Wednesday 30 October 2002 09:35, AL Chane wrote:
# > >     I try to modify the memory layout in the .ldi (Linker 
# script fragment)
# > > It shows that "This is a generated file, do not edit". I 
# wonder if this is
# > > the right file to modify memory layout? Or there is other 
# file(s) to
# > modify
# > > so I can get a desired memory layout in the "generated" .ldi ?
# > >
# > > thanks for the helps.
# > 
# > That's true if You're using Windows. You should modify the 
# memory layout
# > using
# > the GUI config tool on Windows.  Otherwise just edit it and also the
# > corresponding h file.
# > 
# > Regards
# > iz
# > 
# > 
# > -- 
# > Before posting, please read the FAQ: 
# http://sources.redhat.com/fom/ecos
# > and search the list archive: 
# http://sources.redhat.com/ml/ecos-discuss
# > 
# 
# -- 
# Before posting, please read the FAQ: 
# http://sources.redhat.com/fom/ecos
# and search the list archive: http://sources.redhat.com/ml/ecos-discuss
# 

-- 
Before posting, please read the FAQ: http://sources.redhat.com/fom/ecos
and search the list archive: http://sources.redhat.com/ml/ecos-discuss

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [ECOS] memory layout
  2002-10-30  1:09 [ECOS] memory layout AL Chane
@ 2002-10-30  4:52 ` Chris Garry
  0 siblings, 0 replies; 27+ messages in thread
From: Chris Garry @ 2002-10-30  4:52 UTC (permalink / raw)
  To: AL Chane, ecos-discuss

I believe only ver 1.3.net of the configuration tool has a working
memory layout tool. You should either use this version of the
configuration tool or modify the .ldi & .h files by hand.

Chris

----- Original Message ----- 
From: "AL Chane" <al_chane@issc.com.tw>
To: <ecos-discuss@sources.redhat.com>
Sent: Wednesday, October 30, 2002 9:09 AM
Subject: [ECOS] memory layout


> ----------------------------------------------------------------------------
> -------------
> How do I modify memory layout using Windows config tool?
> 
> I can find "memory layout" under "eCos HAL"->"ARM Architecture"
> ->ARM *** board. And it's greyed out, showing:
> 
> Memory layout linker script fragment | <pkgconf/mlt_***.ldi>
> Memory layout header file                  | <pkgconf/mlt_**.h>
> 
> thanks for the helps.
> 
> ----------------------------------------------------------------------------
> -----------------
> 
> On Wednesday 30 October 2002 09:35, AL Chane wrote:
> >     I try to modify the memory layout in the .ldi (Linker script fragment)
> > It shows that "This is a generated file, do not edit". I wonder if this is
> > the right file to modify memory layout? Or there is other file(s) to
> modify
> > so I can get a desired memory layout in the "generated" .ldi ?
> >
> > thanks for the helps.
> 
> That's true if You're using Windows. You should modify the memory layout
> using
> the GUI config tool on Windows.  Otherwise just edit it and also the
> corresponding h file.
> 
> Regards
> iz
> 
> 
> -- 
> Before posting, please read the FAQ: http://sources.redhat.com/fom/ecos
> and search the list archive: http://sources.redhat.com/ml/ecos-discuss
> 

-- 
Before posting, please read the FAQ: http://sources.redhat.com/fom/ecos
and search the list archive: http://sources.redhat.com/ml/ecos-discuss

^ permalink raw reply	[flat|nested] 27+ messages in thread

* [ECOS] memory layout
@ 2002-10-30  1:09 AL Chane
  2002-10-30  4:52 ` Chris Garry
  0 siblings, 1 reply; 27+ messages in thread
From: AL Chane @ 2002-10-30  1:09 UTC (permalink / raw)
  To: ecos-discuss

----------------------------------------------------------------------------
-------------
How do I modify memory layout using Windows config tool?

I can find "memory layout" under "eCos HAL"->"ARM Architecture"
->ARM *** board. And it's greyed out, showing:

Memory layout linker script fragment | <pkgconf/mlt_***.ldi>
Memory layout header file                  | <pkgconf/mlt_**.h>

thanks for the helps.

----------------------------------------------------------------------------
-----------------

On Wednesday 30 October 2002 09:35, AL Chane wrote:
>     I try to modify the memory layout in the .ldi (Linker script fragment)
> It shows that "This is a generated file, do not edit". I wonder if this is
> the right file to modify memory layout? Or there is other file(s) to
modify
> so I can get a desired memory layout in the "generated" .ldi ?
>
> thanks for the helps.

That's true if You're using Windows. You should modify the memory layout
using
the GUI config tool on Windows.  Otherwise just edit it and also the
corresponding h file.

Regards
iz


-- 
Before posting, please read the FAQ: http://sources.redhat.com/fom/ecos
and search the list archive: http://sources.redhat.com/ml/ecos-discuss

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [ECOS] Memory layout
  2002-04-10 18:18 Agarwal, Lomesh
@ 2002-04-11 18:03 ` Jonathan Larmour
  0 siblings, 0 replies; 27+ messages in thread
From: Jonathan Larmour @ 2002-04-11 18:03 UTC (permalink / raw)
  To: Agarwal, Lomesh; +Cc: eCos Discuss

"Agarwal, Lomesh" wrote:
> 
> Thanks for the reply.
> One question:
> When vectors.s copies __exception_handlers manually I am adding 0xc4000000
> to the __exception_handlers address. But since my rom is defined as
> 0xc4000000, so I don't need to add 0xc4000000 while copying. Right?

Yep.

> One more question. You said SECTION_fini, SECTION_rodata, SECTION_rodata1,
> SECTION_fixup, SECTION_gcc_except_table, SECTION_fixed_vectors should all be
> in ram. I am using ROM start type not RAM. So, shouldn't they be residing in
> rom?

Sorry - my fault for quoting too much. I was only referring to the
fixed_vectors section.

Jifl
-- 
Red Hat, Rustat House, Clifton Road, Cambridge, UK. Tel: +44 (1223) 271062
Maybe this world is another planet's Hell -Aldous Huxley || Opinions==mine

-- 
Before posting, please read the FAQ: http://sources.redhat.com/fom/ecos
and search the list archive: http://sources.redhat.com/ml/ecos-discuss

^ permalink raw reply	[flat|nested] 27+ messages in thread

* RE: [ECOS] Memory layout
@ 2002-04-10 18:23 Agarwal, Lomesh
  0 siblings, 0 replies; 27+ messages in thread
From: Agarwal, Lomesh @ 2002-04-10 18:23 UTC (permalink / raw)
  To: 'Jonathan Larmour'; +Cc: eCos Discuss

One more question. You said SECTION_fini, SECTION_rodata, SECTION_rodata1,
SECTION_fixup, SECTION_gcc_except_table, SECTION_fixed_vectors should all be
in ram. I am using ROM start type not RAM. So, shouldn't they be residing in
rom?

Thanks,
Lomesh

-----Original Message-----
From: Jonathan Larmour [mailto:jlarmour@redhat.com] 
Sent: Wednesday, April 10, 2002 5:39 PM
To: Agarwal, Lomesh
Cc: eCos Discuss
Subject: Re: [ECOS] Memory layout


"Agarwal, Lomesh" wrote:
> 
> During startup my flash is at 0 then I unalias it. After unaliasing flash
> sits at 0xc4000000 and RAM sits at 0.
> What about this:
> MEMORY
> {
>     ram  : ORIGIN = 0x00000000, LENGTH = 0x10000000
>     rom  : ORIGIN = 0xc4000000, LENGTH = 0x01000000
> }

This now looks right.

> SECTIONS
> {
>     SECTIONS_BEGIN
>     SECTION_rom_vectors (ram, 0x00000000, LMA_EQ_VMA)   // vector page
gets
> remapped from ROM to RAM

It still has to be loaded into ROM, and the way eCos works, it copies the
vectors "manually" in vectors.S into the start of RAM - look at everything
about __exception_handlers in vectors.S. So actually this should be:

  SECTION_rom_vectors (rom, 0xc4000000, LMA_EQ_VMA)
 
>     SECTION_text (ram, 0x00002000, LMA_EQ_VMA)

Should be SECTION_text (rom, ALIGN(0x4), LMA_EQ_VMA)

>     SECTION_fini (rom, ALIGN (0x4), LMA_EQ_VMA)
>     SECTION_rodata (rom, ALIGN (0x4), LMA_EQ_VMA)
>     SECTION_rodata1 (rom, ALIGN (0x4), LMA_EQ_VMA)
>     SECTION_fixup (rom, ALIGN (0x4), LMA_EQ_VMA)
>     SECTION_gcc_except_table (rom, ALIGN (0x4), LMA_EQ_VMA)
>     SECTION_fixed_vectors (rom, 0x20, LMA_EQ_VMA)

Should be ram

Jifl
-- 
Red Hat, Rustat House, Clifton Road, Cambridge, UK. Tel: +44 (1223) 271062
Maybe this world is another planet's Hell -Aldous Huxley || Opinions==mine

-- 
Before posting, please read the FAQ: http://sources.redhat.com/fom/ecos
and search the list archive: http://sources.redhat.com/ml/ecos-discuss

^ permalink raw reply	[flat|nested] 27+ messages in thread

* RE: [ECOS] Memory layout
@ 2002-04-10 18:18 Agarwal, Lomesh
  2002-04-11 18:03 ` Jonathan Larmour
  0 siblings, 1 reply; 27+ messages in thread
From: Agarwal, Lomesh @ 2002-04-10 18:18 UTC (permalink / raw)
  To: 'Jonathan Larmour'; +Cc: eCos Discuss

Thanks for the reply.
One question:
When vectors.s copies __exception_handlers manually I am adding 0xc4000000
to the __exception_handlers address. But since my rom is defined as
0xc4000000, so I don't need to add 0xc4000000 while copying. Right?

-----Original Message-----
From: Jonathan Larmour [mailto:jlarmour@redhat.com] 
Sent: Wednesday, April 10, 2002 5:39 PM
To: Agarwal, Lomesh
Cc: eCos Discuss
Subject: Re: [ECOS] Memory layout


"Agarwal, Lomesh" wrote:
> 
> During startup my flash is at 0 then I unalias it. After unaliasing flash
> sits at 0xc4000000 and RAM sits at 0.
> What about this:
> MEMORY
> {
>     ram  : ORIGIN = 0x00000000, LENGTH = 0x10000000
>     rom  : ORIGIN = 0xc4000000, LENGTH = 0x01000000
> }

This now looks right.

> SECTIONS
> {
>     SECTIONS_BEGIN
>     SECTION_rom_vectors (ram, 0x00000000, LMA_EQ_VMA)   // vector page
gets
> remapped from ROM to RAM

It still has to be loaded into ROM, and the way eCos works, it copies the
vectors "manually" in vectors.S into the start of RAM - look at everything
about __exception_handlers in vectors.S. So actually this should be:

  SECTION_rom_vectors (rom, 0xc4000000, LMA_EQ_VMA)
 
>     SECTION_text (ram, 0x00002000, LMA_EQ_VMA)

Should be SECTION_text (rom, ALIGN(0x4), LMA_EQ_VMA)

>     SECTION_fini (rom, ALIGN (0x4), LMA_EQ_VMA)
>     SECTION_rodata (rom, ALIGN (0x4), LMA_EQ_VMA)
>     SECTION_rodata1 (rom, ALIGN (0x4), LMA_EQ_VMA)
>     SECTION_fixup (rom, ALIGN (0x4), LMA_EQ_VMA)
>     SECTION_gcc_except_table (rom, ALIGN (0x4), LMA_EQ_VMA)
>     SECTION_fixed_vectors (rom, 0x20, LMA_EQ_VMA)

Should be ram

Jifl
-- 
Red Hat, Rustat House, Clifton Road, Cambridge, UK. Tel: +44 (1223) 271062
Maybe this world is another planet's Hell -Aldous Huxley || Opinions==mine

-- 
Before posting, please read the FAQ: http://sources.redhat.com/fom/ecos
and search the list archive: http://sources.redhat.com/ml/ecos-discuss

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [ECOS] Memory layout
  2002-04-10 15:31 Agarwal, Lomesh
@ 2002-04-10 17:39 ` Jonathan Larmour
  0 siblings, 0 replies; 27+ messages in thread
From: Jonathan Larmour @ 2002-04-10 17:39 UTC (permalink / raw)
  To: Agarwal, Lomesh; +Cc: eCos Discuss

"Agarwal, Lomesh" wrote:
> 
> During startup my flash is at 0 then I unalias it. After unaliasing flash
> sits at 0xc4000000 and RAM sits at 0.
> What about this:
> MEMORY
> {
>     ram  : ORIGIN = 0x00000000, LENGTH = 0x10000000
>     rom  : ORIGIN = 0xc4000000, LENGTH = 0x01000000
> }

This now looks right.

> SECTIONS
> {
>     SECTIONS_BEGIN
>     SECTION_rom_vectors (ram, 0x00000000, LMA_EQ_VMA)   // vector page gets
> remapped from ROM to RAM

It still has to be loaded into ROM, and the way eCos works, it copies the
vectors "manually" in vectors.S into the start of RAM - look at everything
about __exception_handlers in vectors.S. So actually this should be:

  SECTION_rom_vectors (rom, 0xc4000000, LMA_EQ_VMA)
 
>     SECTION_text (ram, 0x00002000, LMA_EQ_VMA)

Should be SECTION_text (rom, ALIGN(0x4), LMA_EQ_VMA)

>     SECTION_fini (rom, ALIGN (0x4), LMA_EQ_VMA)
>     SECTION_rodata (rom, ALIGN (0x4), LMA_EQ_VMA)
>     SECTION_rodata1 (rom, ALIGN (0x4), LMA_EQ_VMA)
>     SECTION_fixup (rom, ALIGN (0x4), LMA_EQ_VMA)
>     SECTION_gcc_except_table (rom, ALIGN (0x4), LMA_EQ_VMA)
>     SECTION_fixed_vectors (rom, 0x20, LMA_EQ_VMA)

Should be ram

Jifl
-- 
Red Hat, Rustat House, Clifton Road, Cambridge, UK. Tel: +44 (1223) 271062
Maybe this world is another planet's Hell -Aldous Huxley || Opinions==mine

-- 
Before posting, please read the FAQ: http://sources.redhat.com/fom/ecos
and search the list archive: http://sources.redhat.com/ml/ecos-discuss

^ permalink raw reply	[flat|nested] 27+ messages in thread

* RE: [ECOS] Memory layout
@ 2002-04-10 15:31 Agarwal, Lomesh
  2002-04-10 17:39 ` Jonathan Larmour
  0 siblings, 1 reply; 27+ messages in thread
From: Agarwal, Lomesh @ 2002-04-10 15:31 UTC (permalink / raw)
  To: 'Jonathan Larmour'; +Cc: eCos Discuss

During startup my flash is at 0 then I unalias it. After unaliasing flash
sits at 0xc4000000 and RAM sits at 0.
What about this:
MEMORY
{
    ram  : ORIGIN = 0x00000000, LENGTH = 0x10000000
    rom  : ORIGIN = 0xc4000000, LENGTH = 0x01000000
}

SECTIONS
{
    SECTIONS_BEGIN
    SECTION_rom_vectors (ram, 0x00000000, LMA_EQ_VMA)   // vector page gets
remapped from ROM to RAM
    SECTION_text (ram, 0x00002000, LMA_EQ_VMA)
    SECTION_fini (rom, ALIGN (0x4), LMA_EQ_VMA)
    SECTION_rodata (rom, ALIGN (0x4), LMA_EQ_VMA)
    SECTION_rodata1 (rom, ALIGN (0x4), LMA_EQ_VMA)
    SECTION_fixup (rom, ALIGN (0x4), LMA_EQ_VMA)
    SECTION_gcc_except_table (rom, ALIGN (0x4), LMA_EQ_VMA)
    SECTION_fixed_vectors (rom, 0x20, LMA_EQ_VMA)
    SECTION_data (ram, 0xA000, FOLLOWING (.gcc_except_table))
    SECTION_bss (ram, ALIGN (0x4), LMA_EQ_VMA)
    CYG_LABEL_DEFN(__heap1) = ALIGN (0x8);
//    CYG_LABEL_DEFN(__pci_window) = 0xf00000; . =
CYG_LABEL_DEFN(__pci_window) + 0x100000;
    SECTIONS_END
}

-----Original Message-----
From: Jonathan Larmour [mailto:jlarmour@redhat.com] 
Sent: Wednesday, April 10, 2002 3:22 PM
To: Agarwal, Lomesh
Cc: eCos Discuss
Subject: Re: [ECOS] Memory layout


"Agarwal, Lomesh" wrote:
> 
> Actually I copied and pasted the wrong file.
> My rom.ldi file is as follows:
> MEMORY
> {
>     ram  : ORIGIN = 0x00000000, LENGTH = 0x10000000
>     rom  : ORIGIN = 0x00000000, LENGTH = 0x01000000
> }

These shouldn't overlap. The comments I wrote before about using the
unaliased addresses still holds, so almost certainly your ROM address above
should be different and your platform start up code needs to be
appropriately written to do the unaliasing/remapping.

Jifl
-- 
Red Hat, Rustat House, Clifton Road, Cambridge, UK. Tel: +44 (1223) 271062
Maybe this world is another planet's Hell -Aldous Huxley || Opinions==mine

-- 
Before posting, please read the FAQ: http://sources.redhat.com/fom/ecos
and search the list archive: http://sources.redhat.com/ml/ecos-discuss

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [ECOS] Memory layout
  2002-04-10 14:01 Agarwal, Lomesh
@ 2002-04-10 15:22 ` Jonathan Larmour
  0 siblings, 0 replies; 27+ messages in thread
From: Jonathan Larmour @ 2002-04-10 15:22 UTC (permalink / raw)
  To: Agarwal, Lomesh; +Cc: eCos Discuss

"Agarwal, Lomesh" wrote:
> 
> Actually I copied and pasted the wrong file.
> My rom.ldi file is as follows:
> MEMORY
> {
>     ram  : ORIGIN = 0x00000000, LENGTH = 0x10000000
>     rom  : ORIGIN = 0x00000000, LENGTH = 0x01000000
> }

These shouldn't overlap. The comments I wrote before about using the
unaliased addresses still holds, so almost certainly your ROM address above
should be different and your platform start up code needs to be
appropriately written to do the unaliasing/remapping.

Jifl
-- 
Red Hat, Rustat House, Clifton Road, Cambridge, UK. Tel: +44 (1223) 271062
Maybe this world is another planet's Hell -Aldous Huxley || Opinions==mine

-- 
Before posting, please read the FAQ: http://sources.redhat.com/fom/ecos
and search the list archive: http://sources.redhat.com/ml/ecos-discuss

^ permalink raw reply	[flat|nested] 27+ messages in thread

* RE: [ECOS] Memory layout
@ 2002-04-10 14:01 Agarwal, Lomesh
  2002-04-10 15:22 ` Jonathan Larmour
  0 siblings, 1 reply; 27+ messages in thread
From: Agarwal, Lomesh @ 2002-04-10 14:01 UTC (permalink / raw)
  To: 'Jonathan Larmour'; +Cc: eCos Discuss

Actually I copied and pasted the wrong file.
My rom.ldi file is as follows:
MEMORY
{
    ram  : ORIGIN = 0x00000000, LENGTH = 0x10000000
    rom  : ORIGIN = 0x00000000, LENGTH = 0x01000000
}

SECTIONS
{
    SECTIONS_BEGIN
    SECTION_rom_vectors (ram, 0x00000000, LMA_EQ_VMA)   // vector page gets
remapped from ROM to RAM
    SECTION_text (ram, 0x00002000, LMA_EQ_VMA)
    SECTION_fini (rom, ALIGN (0x4), LMA_EQ_VMA)
    SECTION_rodata (rom, ALIGN (0x4), LMA_EQ_VMA)
    SECTION_rodata1 (rom, ALIGN (0x4), LMA_EQ_VMA)
    SECTION_fixup (rom, ALIGN (0x4), LMA_EQ_VMA)
    SECTION_gcc_except_table (rom, ALIGN (0x4), LMA_EQ_VMA)
    SECTION_fixed_vectors (rom, 0x20, LMA_EQ_VMA)
    SECTION_data (ram, 0xA000, FOLLOWING (.gcc_except_table))
    SECTION_bss (ram, ALIGN (0x4), LMA_EQ_VMA)
    CYG_LABEL_DEFN(__heap1) = ALIGN (0x8);
//    CYG_LABEL_DEFN(__pci_window) = 0xf00000; . =
CYG_LABEL_DEFN(__pci_window) + 0x100000;
    SECTIONS_END
}
So, is this correct if on my platform during boot Flash is aliased at 0 and
after unaliasing flash my DRAM is at 0 address.

Thanks,
Lomesh

-----Original Message-----
From: Jonathan Larmour [mailto:jlarmour@redhat.com] 
Sent: Wednesday, April 10, 2002 1:51 PM
To: Agarwal, Lomesh
Cc: eCos Discuss
Subject: Re: [ECOS] Memory layout


"Agarwal, Lomesh" wrote:
> 
> I want to burn RedBoot in a flash. I should use "ROM" start type. Right?

Yes.

> On my platform during boot Flash is aliased at 0 and after unaliasing
flash
> my DRAM is at 0 address. I have modified the rom.ldi file as follows:
> 
> MEMORY
> {
>     ram  : ORIGIN = 0xA0000000, LENGTH = 0x2000000
>     rom  : ORIGIN = 0x00000000, LENGTH = 0x800000
> }

No, the memory layout should reflect the addresses after unaliasing or MMU
mapping. And it's up to the very initial startup code to set up the
unaliasing/remapping without relying on linker defined symbols or
relocations to do it.

Jifl
-- 
Red Hat, Rustat House, Clifton Road, Cambridge, UK. Tel: +44 (1223) 271062
Maybe this world is another planet's Hell -Aldous Huxley || Opinions==mine

-- 
Before posting, please read the FAQ: http://sources.redhat.com/fom/ecos
and search the list archive: http://sources.redhat.com/ml/ecos-discuss

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [ECOS] Memory layout
  2002-04-07 16:14 [ECOS] Memory layout Agarwal, Lomesh
@ 2002-04-10 13:51 ` Jonathan Larmour
  0 siblings, 0 replies; 27+ messages in thread
From: Jonathan Larmour @ 2002-04-10 13:51 UTC (permalink / raw)
  To: Agarwal, Lomesh; +Cc: eCos Discuss

"Agarwal, Lomesh" wrote:
> 
> I want to burn RedBoot in a flash. I should use "ROM" start type. Right?

Yes.

> On my platform during boot Flash is aliased at 0 and after unaliasing flash
> my DRAM is at 0 address. I have modified the rom.ldi file as follows:
> 
> MEMORY
> {
>     ram  : ORIGIN = 0xA0000000, LENGTH = 0x2000000
>     rom  : ORIGIN = 0x00000000, LENGTH = 0x800000
> }

No, the memory layout should reflect the addresses after unaliasing or MMU
mapping. And it's up to the very initial startup code to set up the
unaliasing/remapping without relying on linker defined symbols or
relocations to do it.

Jifl
-- 
Red Hat, Rustat House, Clifton Road, Cambridge, UK. Tel: +44 (1223) 271062
Maybe this world is another planet's Hell -Aldous Huxley || Opinions==mine

-- 
Before posting, please read the FAQ: http://sources.redhat.com/fom/ecos
and search the list archive: http://sources.redhat.com/ml/ecos-discuss

^ permalink raw reply	[flat|nested] 27+ messages in thread

* [ECOS] Memory layout
@ 2002-04-07 16:14 Agarwal, Lomesh
  2002-04-10 13:51 ` Jonathan Larmour
  0 siblings, 1 reply; 27+ messages in thread
From: Agarwal, Lomesh @ 2002-04-07 16:14 UTC (permalink / raw)
  To: eCos Discuss

I want to burn RedBoot in a flash. I should use "ROM" start type. Right?
On my platform during boot Flash is aliased at 0 and after unaliasing flash
my DRAM is at 0 address. I have modified the rom.ldi file as follows:

MEMORY
{
    ram  : ORIGIN = 0xA0000000, LENGTH = 0x2000000
    rom  : ORIGIN = 0x00000000, LENGTH = 0x800000
}

SECTIONS
{
    SECTIONS_BEGIN
    SECTION_rom_vectors (ram, 0xA0000000, AT(0x00000000))   // vector page
gets remapped from ROM to RAM
    SECTION_text (rom, 0x00002000, LMA_EQ_VMA)
    SECTION_fini (rom, ALIGN (0x4), LMA_EQ_VMA)
    SECTION_rodata (rom, ALIGN (0x4), LMA_EQ_VMA)
    SECTION_rodata1 (rom, ALIGN (0x4), LMA_EQ_VMA)
    SECTION_fixup (rom, ALIGN (0x4), LMA_EQ_VMA)
    SECTION_gcc_except_table (rom, ALIGN (0x4), LMA_EQ_VMA)
    SECTION_fixed_vectors (rom, 0x20, LMA_EQ_VMA)
    SECTION_data (ram, 0xA000A000, FOLLOWING (.gcc_except_table))
    SECTION_bss (ram, ALIGN (0x4), LMA_EQ_VMA)
    CYG_LABEL_DEFN(__heap1) = ALIGN (0x8);
//    CYG_LABEL_DEFN(__pci_window) = 0xf00000; . =
CYG_LABEL_DEFN(__pci_window) + 0x100000;
    SECTIONS_END
}
I wanted to know whether this is right or not?
Can someone help?

Thanks,
Lomesh

-- 
Before posting, please read the FAQ: http://sources.redhat.com/fom/ecos
and search the list archive: http://sources.redhat.com/ml/ecos-discuss

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [ECOS] Memory Layout
  2001-04-19 17:37       ` james chen
@ 2001-04-19 17:48         ` Gary Thomas
  0 siblings, 0 replies; 27+ messages in thread
From: Gary Thomas @ 2001-04-19 17:48 UTC (permalink / raw)
  To: james chen; +Cc: ecos-discuss

On 20-Apr-2001 james chen wrote:
> Hi, Thomas:
>>
>> Question: if you are building a custom board and shipping a bundled
> application
>> with it, why would you _not_ want RedBoot, even in the final product?
>>
>      First, I don't know whether it will cost down the performance or not.

None.

> 
>      Second, it will require extra flash memory to hold it.

There would be this cost, but IMO it's minor, especially when weighed against
the flexibility and features which are available.  Things like:
  * Ability to debug code in the field (things _do_ break)
  * Ability to update code in FLASH - RedBoot, applications, etc
  * If your target has networking hardware, ability to connect via network
    to the debug/bootstrap environment.
  * Flexible & extensible control over the boot-time behaviour
  * Support for POST and BIST

> 
>      Third, I want to replace redboot with my hardware check code in final
> product. when power on, it will run code to check hardware, if the hardware
> is all OK, then load eCos to RAM from flash memory and run eCos
> automatically. it seems RedBoot doesn't support it.

This mode of operation is fully supported by RedBoot and already in place on
a number of targets.

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [ECOS] Memory Layout
  2001-04-19  5:12     ` Gary Thomas
@ 2001-04-19 17:37       ` james chen
  2001-04-19 17:48         ` Gary Thomas
  0 siblings, 1 reply; 27+ messages in thread
From: james chen @ 2001-04-19 17:37 UTC (permalink / raw)
  To: Gary Thomas; +Cc: ecos-discuss

Hi, Thomas:
>
> Question: if you are building a custom board and shipping a bundled
application
> with it, why would you _not_ want RedBoot, even in the final product?
>
     First, I don't know whether it will cost down the performance or not.

     Second, it will require extra flash memory to hold it.

     Third, I want to replace redboot with my hardware check code in final
product. when power on, it will run code to check hardware, if the hardware
is all OK, then load eCos to RAM from flash memory and run eCos
automatically. it seems RedBoot doesn't support it.

Regards,
James


^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [ECOS] Memory Layout
  2001-04-18 18:05   ` james chen
@ 2001-04-19  5:12     ` Gary Thomas
  2001-04-19 17:37       ` james chen
  0 siblings, 1 reply; 27+ messages in thread
From: Gary Thomas @ 2001-04-19  5:12 UTC (permalink / raw)
  To: james chen; +Cc: ecos-discuss

On 19-Apr-2001 james chen wrote:
>>
>> On 18-Apr-2001 james chen wrote:
>> > Hello,
>> >
>> >        From memory layout, I find that Redboot( startup in ROM) and
>> > Applications( startup in RAM ) both share the same memory address and
> size.
>> > When I use GDB debugging applications through redboot's gdb stub. Will
>> > redboot's memory  be cracked by Applications? Thanks in advance!
>>
>> Memory used by RedBoot and "normal" applications do not overlap.  The MLT
>> files imply that they do, but this is because RedBoot is just a ROM
>> application and the MLT setup is to allow for any application to use all
>> available resources.
>>
>> In general, RedBoot uses a chunk of low memory (128k is typical) and
>> RAM based applications are set up to load just above that and use the
>> remaining memory.
>>
>        After looking many ARM based platform in eCos. RAM based applications
> leave different size memory( from 0x8000--0x20000), I think these memory is
> used by RedBoot except vectors( sure?:-) ). Which size will I leave memory
> for RedBoot, I am using my custom board based on ARM7TDMI.
>        Another quesiton, when I release my applications and RedBoot will not
> ship in. Will the memory used by redboot be lost( can't used by normal
> applicationss). If then, how can I re-use it?

If your application is to run in RAM, then you should leave things as is.
There *will* be a monitor of some sort, even if it is not RedBoot, and it will
require memory to run.  We have carved out the space up to 0x20000 for this.

If your application runs in ROM, then there is no problem as it will have
access to all of RAM.

Question: if you are building a custom board and shipping a bundled application
with it, why would you _not_ want RedBoot, even in the final product?

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [ECOS] Memory Layout
  2001-04-18  5:24 ` Gary Thomas
@ 2001-04-18 18:05   ` james chen
  2001-04-19  5:12     ` Gary Thomas
  0 siblings, 1 reply; 27+ messages in thread
From: james chen @ 2001-04-18 18:05 UTC (permalink / raw)
  To: Gary Thomas; +Cc: ecos-discuss

>
> On 18-Apr-2001 james chen wrote:
> > Hello,
> >
> >        From memory layout, I find that Redboot( startup in ROM) and
> > Applications( startup in RAM ) both share the same memory address and
size.
> > When I use GDB debugging applications through redboot's gdb stub. Will
> > redboot's memory  be cracked by Applications? Thanks in advance!
>
> Memory used by RedBoot and "normal" applications do not overlap.  The MLT
> files imply that they do, but this is because RedBoot is just a ROM
> application and the MLT setup is to allow for any application to use all
> available resources.
>
> In general, RedBoot uses a chunk of low memory (128k is typical) and
> RAM based applications are set up to load just above that and use the
> remaining memory.
>
       After looking many ARM based platform in eCos. RAM based applications
leave different size memory( from 0x8000--0x20000), I think these memory is
used by RedBoot except vectors( sure?:-) ). Which size will I leave memory
for RedBoot, I am using my custom board based on ARM7TDMI.
       Another quesiton, when I release my applications and RedBoot will not
ship in. Will the memory used by redboot be lost( can't used by normal
applicationss). If then, how can I re-use it?

      Thanks in advance!

james chen


^ permalink raw reply	[flat|nested] 27+ messages in thread

* RE: [ECOS] Memory Layout
  2001-04-18  2:01 [ECOS] Memory Layout james chen
@ 2001-04-18  5:24 ` Gary Thomas
  2001-04-18 18:05   ` james chen
  0 siblings, 1 reply; 27+ messages in thread
From: Gary Thomas @ 2001-04-18  5:24 UTC (permalink / raw)
  To: james chen; +Cc: ecos-discuss

On 18-Apr-2001 james chen wrote:
> Hello,
> 
>        From memory layout, I find that Redboot( startup in ROM) and
> Applications( startup in RAM ) both share the same memory address and size.
> When I use GDB debugging applications through redboot's gdb stub. Will
> redboot's memory  be cracked by Applications? Thanks in advance!

Memory used by RedBoot and "normal" applications do not overlap.  The MLT
files imply that they do, but this is because RedBoot is just a ROM 
application and the MLT setup is to allow for any application to use all
available resources.

In general, RedBoot uses a chunk of low memory (128k is typical) and
RAM based applications are set up to load just above that and use the
remaining memory.

^ permalink raw reply	[flat|nested] 27+ messages in thread

* [ECOS] Memory Layout
@ 2001-04-18  2:01 james chen
  2001-04-18  5:24 ` Gary Thomas
  0 siblings, 1 reply; 27+ messages in thread
From: james chen @ 2001-04-18  2:01 UTC (permalink / raw)
  To: ecos-discuss

Hello,

       From memory layout, I find that Redboot( startup in ROM) and
Applications( startup in RAM ) both share the same memory address and size.
When I use GDB debugging applications through redboot's gdb stub. Will
redboot's memory  be cracked by Applications? Thanks in advance!

Regards,
james chen


^ permalink raw reply	[flat|nested] 27+ messages in thread

end of thread, other threads:[~2008-04-10 19:07 UTC | newest]

Thread overview: 27+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2001-01-23 22:51 [ECOS] memory layout Natarajan, Mekala (CTS)
2001-01-23 23:46 ` Jesper Skov
2001-04-18  2:01 [ECOS] Memory Layout james chen
2001-04-18  5:24 ` Gary Thomas
2001-04-18 18:05   ` james chen
2001-04-19  5:12     ` Gary Thomas
2001-04-19 17:37       ` james chen
2001-04-19 17:48         ` Gary Thomas
2002-04-07 16:14 [ECOS] Memory layout Agarwal, Lomesh
2002-04-10 13:51 ` Jonathan Larmour
2002-04-10 14:01 Agarwal, Lomesh
2002-04-10 15:22 ` Jonathan Larmour
2002-04-10 15:31 Agarwal, Lomesh
2002-04-10 17:39 ` Jonathan Larmour
2002-04-10 18:18 Agarwal, Lomesh
2002-04-11 18:03 ` Jonathan Larmour
2002-04-10 18:23 Agarwal, Lomesh
2002-10-30  1:09 [ECOS] memory layout AL Chane
2002-10-30  4:52 ` Chris Garry
2002-10-30  9:55 Schumacher, Gordon
2002-11-04 20:37 ` Jonathan Larmour
2002-11-18 19:44 AL Chane
2003-09-18  7:31 [ECOS] Memory layout Matthieu.GIRARDIN
2003-10-08 14:29 [ECOS] Memory Layout James Yates
2007-10-29 14:13 [ECOS] memory layout Syed Ismail
2007-10-29 14:18 ` Andrew Lunn
2008-04-10 21:35 [ECOS] Memory layout Syed Ismail

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).