This is the mail archive of the
ecos-discuss@sources.redhat.com
mailing list for the eCos project.
Re: Port to Accelent IDP StrongARM SA1110
- To: Jonathan Larmour <jlarmour at redhat dot com>
- Subject: Re: [ECOS] Port to Accelent IDP StrongARM SA1110
- From: Cristiano Ligieri Pereira <cpereira at ics dot uci dot edu>
- Date: Wed, 18 Jul 2001 22:32:48 -0700 (PDT)
- cc: ecos-discuss at sourceware dot cygnus dot com
Ok. Now I'm getting these errors when compiling RedBoot:
/tools/H-i686-pc-linux-gnu/arm-elf/bin/ld: address 0x324dc of
/usr/home/cpereira/ecos/pads/port/redboot.RAM/install/bin/redboot.elf
section .text is not within region ram
/tools/H-i686-pc-linux-gnu/arm-elf/bin/ld: address 0x324dc of
/usr/home/cpereira/ecos/pads/port/redboot.RAM/install/bin/redboot.elf
section .fini is not within region ram
/tools/H-i686-pc-linux-gnu/arm-elf/bin/ld: address 0x353e0 of
/usr/home/cpereira/ecos/pads/port/redboot.RAM/install/bin/redboot.elf
section .rodata is not within region ram
/tools/H-i686-pc-linux-gnu/arm-elf/bin/ld: address 0x353e0 of
/usr/home/cpereira/ecos/pads/port/redboot.RAM/install/bin/redboot.elf
section .rodata1 is not within region ram
/tools/H-i686-pc-linux-gnu/arm-elf/bin/ld: address 0x353e0 of
/usr/home/cpereira/ecos/pads/port/redboot.RAM/install/bin/redboot.elf
section .fixup is not within region ram
/tools/H-i686-pc-linux-gnu/arm-elf/bin/ld: address 0x353e0 of
/usr/home/cpereira/ecos/pads/port/redboot.RAM/install/bin/redboot.elf
section .gcc_except_table is not within region ram
/tools/H-i686-pc-linux-gnu/arm-elf/bin/ld: address 0x35b44 of
/usr/home/cpereira/ecos/pads/port/redboot.RAM/install/bin/redboot.elf
section .data is not within region ram
/tools/H-i686-pc-linux-gnu/arm-elf/bin/ld: address 0x4be58 of
/usr/home/cpereira/ecos/pads/port/redboot.RAM/install/bin/redboot.elf
section .bss is not within region ram
/usr/home/cpereira/ecos/pads/port/redboot.RAM/install/lib/libtarget.a(redboot_main.o): In
function `cyg_start':
/opt/cvsecos/packages/redboot/current/src/main.c:272: undefined reference
to `accelent_program_new_stack'
/usr/home/cpereira/ecos/pads/port/redboot.RAM/install/lib/libtarget.a(redboot_main.o): In
function `do_go':
/opt/cvsecos/packages/redboot/current/src/main.c:450: undefined reference
to `accelent_program_new_stack'
collect2: ld returned 1 exit status
make[1]: ***
[/usr/home/cpereira/ecos/pads/port/redboot.RAM/install/bin/redboot.elf]
Error 1
make[1]: Leaving directory
`/usr/home/cpereira/ecos/pads/port/redboot.RAM/redboot/current'
make: *** [build] Error 2
It looks like my memory mapping is not configured properly. Here the
configuration files go:
-- mlt_arm_sa11x0_accelent_ram.h --
// eCos memory layout - Fri Oct 20 05:56:24 2000
// This is a generated file - do not edit
#ifndef __ASSEMBLER__
#include <cyg/infra/cyg_type.h>
#include <stddef.h>
#endif
#define CYGMEM_REGION_ram (0x80000000)
#define CYGMEM_REGION_ram_SIZE (0x2000000)
#define CYGMEM_REGION_ram_ATTR (CYGMEM_REGION_ATTR_R |
CYGMEM_REGION_ATTR_W)
#ifndef __ASSEMBLER__
extern char CYG_LABEL_NAME (__heap1) [];
#endif
#define CYGMEM_SECTION_heap1 (CYG_LABEL_NAME (__heap1))
#define CYGMEM_SECTION_heap1_SIZE (0x2000000 - (size_t) CYG_LABEL_NAME
(__heap1))
-- mlt_arm_sa11x0_accelent_ram.ldi --
// eCos memory layout - Fri Oct 20 05:56:24 2000
// This is a generated file - do not edit
#include <cyg/infra/cyg_type.inc>
MEMORY
{
ram : ORIGIN = 0x80000000, LENGTH = 0x2000000
}
SECTIONS
{
SECTIONS_BEGIN
SECTION_fixed_vectors (ram, 0x20, LMA_EQ_VMA)
SECTION_rom_vectors (ram, 0x20000, LMA_EQ_VMA)
SECTION_text (ram, ALIGN (0x4), LMA_EQ_VMA)
SECTION_fini (ram, ALIGN (0x4), LMA_EQ_VMA)
SECTION_rodata (ram, ALIGN (0x4), LMA_EQ_VMA)
SECTION_rodata1 (ram, ALIGN (0x4), LMA_EQ_VMA)
SECTION_fixup (ram, ALIGN (0x4), LMA_EQ_VMA)
SECTION_gcc_except_table (ram, ALIGN (0x4), LMA_EQ_VMA)
SECTION_data (ram, ALIGN (0x4), LMA_EQ_VMA)
SECTION_bss (ram, ALIGN (0x4), LMA_EQ_VMA)
CYG_LABEL_DEFN(__heap1) = ALIGN (0x8);
SECTIONS_END
}
--
I don't know if it's make sense, but I've tried it for the
mlt_arm_sa11x0_accelent_ram.ldi file and it also didn't work:
// eCos memory layout - Fri Oct 20 05:56:24 2000
// This is a generated file - do not edit
#include <cyg/infra/cyg_type.inc>
MEMORY
{
ram : ORIGIN = 0x80000000, LENGTH = 0x2000000
}
SECTIONS
{
SECTIONS_BEGIN
SECTION_fixed_vectors (ram, 0x80000020, LMA_EQ_VMA)
SECTION_rom_vectors (ram, 0x80020000, LMA_EQ_VMA)
SECTION_text (ram, ALIGN (0x80000004), LMA_EQ_VMA)
SECTION_fini (ram, ALIGN (0x80000004), LMA_EQ_VMA)
SECTION_rodata (ram, ALIGN (0x80000004), LMA_EQ_VMA)
SECTION_rodata1 (ram, ALIGN (0x80000004), LMA_EQ_VMA)
SECTION_fixup (ram, ALIGN (0x80000004), LMA_EQ_VMA)
SECTION_gcc_except_table (ram, ALIGN (0x80000004), LMA_EQ_VMA)
SECTION_data (ram, ALIGN (0x80000004), LMA_EQ_VMA)
SECTION_bss (ram, ALIGN (0x80000004), LMA_EQ_VMA)
CYG_LABEL_DEFN(__heap1) = ALIGN (0x80000008);
SECTIONS_END
}
Thanks again,
Cristiano.
------------------------------------------------------------
Cristiano Ligieri Pereira - http://www.ics.uci.edu/~cpereira
On Thu, 19 Jul 2001, Jonathan Larmour wrote:
> Cristiano Ligieri Pereira wrote:
> >
> > As far as I understand, I have two options: create a GDB Stubs application
> > that can be copied to the CF card and then booted into the SDRAM memory or
> > port RedBoot and do the same thing. Re this, which option is better?
>
> The GDB stubs weren't really intended for RAM startup, hence the problems
> you've had. RedBoot however is, so that's a better target to aim for.
>
> 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
> Come to the Red Hat TechWorld open source conference in Brussels!
> Keynotes, techie talks and exhibitions http://www.redhat-techworld.com/
>