This is the mail archive of the
ecos-discuss@sources.redhat.com
mailing list for the eCos project.
Re: Can I assign the offset of code start in redboot.binwhen using startup from ROM
- From: "Steven_cheng" <05071 at alphanetworks dot com>
- To: "Gary Thomas" <gary at mlbassoc dot com>
- Cc: "eCos Discussion" <ecos-discuss at ecos dot sourceware dot org>
- Date: Thu, 7 Jul 2005 20:01:38 +0800
- Subject: Re: [ECOS] Can I assign the offset of code start in redboot.binwhen using startup from ROM
- References: <01fa01c582d7$28c64870$016ffea9@stevencheng> <1120732804.30301.64.camel@hermes>
Hi Gray,
I configure eCos with configtool.
Step:
1) Select Template "Cogent PowerPC 8245" and Package "RedBoot"
2) Configure Startup type "ROM"
3) Import packages/hal/powerpc/csb281/current/misc/redboot_ROM.ecm
4) Build code
5) burn install/bin/redboot.bin (and check the content of redboot.bin)
Question:
1) Does the rom image be burned with redboot.bin
2) Does the code start from the _start in the vector.S for startup type
"ROM" ??
Thank you for your help ~~~
/Steven
After executing the command "powerpc-eabi-objdump -h
install/bin/redboot.elf",
The result is as following table:
file format elf32-powerpc
Sections:
Idx Name Size VMA LMA File off Algn
0 .vectors 00001500 fff00000 fff00000 00010000 2**8
CONTENTS, ALLOC, LOAD, READONLY, CODE
1 .text 0001489c fff01500 fff01500 00011500 2**2
CONTENTS, ALLOC, LOAD, READONLY, CODE
2 .fini 00000000 fff15d9c fff15d9c 00033f48 2**0
CONTENTS
3 .rodata1 00000000 fff15da0 fff15da0 00033f48 2**0
CONTENTS
4 .rodata 00003880 fff15da0 fff15da0 00025da0 2**2
CONTENTS, ALLOC, LOAD, READONLY, DATA
5 .fixup 00000000 fff19620 fff19620 00033f48 2**0
CONTENTS
6 .gcc_except_table 00000000 fff19620 fff19620 00033f48 2**0
CONTENTS
7 .data 00000c48 00003300 fff19620 00033300 2**3
CONTENTS, ALLOC, LOAD, CODE
8 .sbss 00000100 00003f48 00003f48 00003f48 2**3
ALLOC
9 .bss 00005420 00004050 00004050 00003f50 2**4
ALLOC
10 .debug_line 0000d084 00000000 00000000 00033f48 2**0
CONTENTS, READONLY, DEBUGGING
11 .debug_info 0002ff4e 00000000 00000000 00040fcc 2**0
CONTENTS, READONLY, DEBUGGING
12 .debug_abbrev 00006886 00000000 00000000 00070f1a 2**0
CONTENTS, READONLY, DEBUGGING
13 .debug_aranges 000015f0 00000000 00000000 000777a0 2**3
CONTENTS, READONLY, DEBUGGING
14 .debug_frame 000032c0 00000000 00000000 00078d90 2**2
CONTENTS, READONLY, DEBUGGING
15 .debug_pubnames 00002800 00000000 00000000 0007c050 2**0
CONTENTS, READONLY, DEBUGGING
16 .debug_str 00005d6c 00000000 00000000 0007e850 2**0
CONTENTS, READONLY, DEBUGGING
17 .debug_ranges 00000710 00000000 00000000 000845bc 2**0
CONTENTS, READONLY, DEBUGGING
> >
> > Environment:
> > arch: MPC8245
> > package: RedBoot
> > startup type: ROM
> >
> > After building the code, I burn the the redboot.bin into my rom flash,
but
> > it
> > seems not to be executed. Then I found that the code offset starts in
0x0,
> > not
> > in 0x100, in the redboot.bin. The MPC8245 can not start from offset
0x100
> > to execute the rom code. So the rom code is failed.
> >
> > Questions:
> > 1) The MPC8245 rom code should start from 0x100 in redboot.bin for
> > burning.(???)
> > 2) Does anybody know how I can move the code offset start from 0x0
to
> > 0x100 ??
> > 3) Does the code start from the _start in the vector.S for startup
type
> > "ROM" ??
> >
> > It was as following:
> >
> > 0x00000000 rom_code _start # map to _start in vectors.S
> > 0x00000010 rom_code
> > 0x00000020 rom_code ......
> > ...
> > 0x00000100 rom_code ......
> > ......
> >
> >
> > But I think it should be as following:
> >
> > 0x00000000 Vector
> > 0x00000010 empty
> > 0x00000020 empty
> > ...
> > 0x00000100 rom_code _start ......# map to _start in vectors.S
> > ......
> >
> > 4) Is it correct ??
> >
>
> How did you configure eCos? (i.e. what commands/steps did you use?)
> You can see how the image is laid out in memory using this command:
> powerpc-eabi-objdump -h install/bin/redboot.elf
> What do you see from it?
>
> --
> ------------------------------------------------------------
> Gary Thomas | Consulting for the
> MLB Associates | Embedded world
> ------------------------------------------------------------
>
--
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss