From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 22295 invoked by alias); 7 Jul 2005 12:40:10 -0000 Mailing-List: contact ecos-discuss-help@ecos.sourceware.org; run by ezmlm Precedence: bulk List-Subscribe: List-Archive: List-Post: List-Help: , Sender: ecos-discuss-owner@ecos.sourceware.org Received: (qmail 22203 invoked by uid 22791); 7 Jul 2005 12:40:03 -0000 Received: from sta-206-168-96-204.rockynet.com (HELO hermes.chez-thomas.org) (206.168.96.204) by sourceware.org (qpsmtpd/0.30-dev) with ESMTP; Thu, 07 Jul 2005 12:40:03 +0000 Received: by hermes.chez-thomas.org (Postfix, from userid 2000) id B19D510070C; Thu, 7 Jul 2005 06:39:56 -0600 (MDT) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by hermes.chez-thomas.org (Postfix) with ESMTP id 9F0C7100704; Thu, 7 Jul 2005 06:39:48 -0600 (MDT) From: Gary Thomas To: Steven_cheng <05071@alphanetworks.com> Cc: eCos Discussion In-Reply-To: <024701c582eb$a18cc590$016ffea9@stevencheng> References: <01fa01c582d7$28c64870$016ffea9@stevencheng> <1120732804.30301.64.camel@hermes> <024701c582eb$a18cc590$016ffea9@stevencheng> Content-Type: text/plain Date: Thu, 07 Jul 2005 12:40:00 -0000 Message-Id: <1120739988.30301.72.camel@hermes> Mime-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: Re: [ECOS] Can I assign the offset of code start in redboot.binwhen using startup from ROM X-SW-Source: 2005-07/txt/msg00074.txt.bz2 On Thu, 2005-07-07 at 20:01 +0800, Steven_cheng wrote: > 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" ?? > No. The first 0x1500 bytes of code are the exception vectors, which includes the reset vector where execution actually begins. The code starting at 0xFFF00000 in the listing below is what will be put into the ROM. Note: I know that this platform works; I did the port myself. > 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 > > ------------------------------------------------------------ > > -- ------------------------------------------------------------ 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