This is the mail archive of the
ecos-discuss@sources.redhat.com
mailing list for the eCos project.
RE: Memory layout
- From: "Agarwal, Lomesh" <lomesh dot agarwal at intel dot com>
- To: "'Jonathan Larmour'" <jlarmour at redhat dot com>
- Cc: eCos Discuss <ecos-discuss at sources dot redhat dot com>
- Date: Wed, 10 Apr 2002 14:01:29 -0700
- Subject: RE: [ECOS] Memory layout
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