This is the mail archive of the
ecos-discuss@sources.redhat.com
mailing list for the eCos project.
Re: Running from Redboot
- From: Gary Thomas <gary at mlbassoc dot com>
- To: Unni Nair <manjunni at yahoo dot com>
- Cc: eCos Discussion <ecos-discuss at sources dot redhat dot com>
- Date: 15 Aug 2003 14:35:00 -0600
- Subject: Re: [ECOS] Running from Redboot
- Organization: MLB Associates
- References: <20030815203050.66215.qmail@web14609.mail.yahoo.com>
On Fri, 2003-08-15 at 14:30, Unni Nair wrote:
> I only have one mlt file (ram mode) since I was using
> only the ram for both redboot and the ecos
> application. Maybe this is my problem and ecos expects
> to see separate mlt files irrespective of where the
> code and data resides..
>
Indeed. RedBoot normally runs from ROM or ROMRAM mode.
There is normally only one RAM configuration - that used
for normal applications. This is how we can stratify
memory between the two different worlds.
I know that the adder platform that you started from worked
this way - since I wrote all the support for that platform!
>
> --- Gary Thomas <gary@mlbassoc.com> wrote:
> > On Fri, 2003-08-15 at 14:24, Unni Nair wrote:
> > > When I increased the size of the reserved_for_rom,
> > the
> > > available ram reported by redboot (start address)
> > was
> > > changed to reflect the change.
> > >
> > > Unfortunately the problem I am facing is with the
> > ECOS
> > > + application linking process, relocating the code
> > to
> > > be loaded to the end of the reserved_for_rom
> > section
> > > (which is not where the available ram resides).
> > >
> >
> > You changed the wrong file - change this value in
> > the MLT
> > files for RAM mode startup.
> >
> > > Unni
> > >
> > > > Hello Gary:
> > > >
> > > > Unfortunately I do not know how to post a
> > followup
> > > to
> > > > your response, hence emailing you directly.
> > >
> > > In that case, why not just send this to the list
> > (and
> > > maybe
> > > copy it to me)?
> > >
> > > >
> > > > The reserved_for_rom section is empty (I
> > actually
> > > > modified the adder board code to suit my needs).
> > > > Apparently redboot is using areas after the
> > > > reserved_for_room section to store additional
> > > > sections. These details are not taken into
> > > > consideration when I recompile for ECOS
> > (default)
> > > and
> > > > the linker is generating code located
> > immediately
> > > > after the reserved_for_rom (empty section). I do
> > not
> > > > know if the reserved_for_rom section is needed?
> > >
> > > It is indeed - that's how the .ldi file indicates
> > what
> > > memory is
> > > used by RedBoot and what memory can be used by the
> > > application.
> > >
> > > Looking at the real 'adder' MLT file:
> > > SECTIONS
> > > {
> > > SECTIONS_BEGIN
> > > CYG_LABEL_DEFN(__reserved_vectors) = 0; . =
> > > CYG_LABEL_DEFN(__reserved_vectors) + 0x3000;
> > > CYG_LABEL_DEFN(__reserved_vsr_table) = ALIGN
> > > (0x10); . = CYG_LABEL_DEFN(__reserved_vsr_table) +
> > > 0x200;
> > > CYG_LABEL_DEFN(__reserved_virtual_table) =
> > ALIGN
> > > (0x10); . =
> > CYG_LABEL_DEFN(__reserved_virtual_table) +
> > > 0x100;
> > > CYG_LABEL_DEFN(__reserved_for_rom) = ALIGN
> > (0x10);
> > > . = CYG_LABEL_DEFN(__reserved_for_rom) + 0x3cd00;
> > > SECTION_vectors (ram, ALIGN (0x10),
> > LMA_EQ_VMA)
> > > SECTION_text (ram, ALIGN (0x4), LMA_EQ_VMA)
> > > SECTION_fini (ram, ALIGN (0x4), LMA_EQ_VMA)
> > > SECTION_rodata1 (ram, ALIGN (0x8), LMA_EQ_VMA)
> > > SECTION_rodata (ram, ALIGN (0x8), LMA_EQ_VMA)
> > > SECTION_fixup (ram, ALIGN (0x4), LMA_EQ_VMA)
> > > SECTION_gcc_except_table (ram, ALIGN (0x1),
> > > LMA_EQ_VMA)
> > > SECTION_data (ram, ALIGN (0x8), LMA_EQ_VMA)
> > > SECTION_sbss (ram, ALIGN (0x4), LMA_EQ_VMA)
> > > SECTION_bss (ram, ALIGN (0x10), LMA_EQ_VMA)
> > > CYG_LABEL_DEFN(__heap1) = ALIGN (0x8);
> > > SECTIONS_END
> > > }
> > >
> > > If you do the calculations, you'll see that the
> > > "__reserved_for_rom" segment
> > > extends up through 0x80000. If your RedBoot
> > reports
> > > an address higher than
> > > this, just change the 0x3cd00 above to an
> > appropriate
> > > value. E.g. 0x4cd00
> > > would start the user applications
> > >
> > > __________________________________
> > > Do you Yahoo!?
> > > Yahoo! SiteBuilder - Free, easy-to-use web site
> > design software
> > > http://sitebuilder.yahoo.com
> > --
> > Gary Thomas <gary@mlbassoc.com>
> > MLB Associates
> >
>
>
> __________________________________
> Do you Yahoo!?
> Yahoo! SiteBuilder - Free, easy-to-use web site design software
> http://sitebuilder.yahoo.com
--
Gary Thomas <gary@mlbassoc.com>
MLB Associates
--
Before posting, please read the FAQ: http://sources.redhat.com/fom/ecos
and search the list archive: http://sources.redhat.com/ml/ecos-discuss