From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 23088 invoked by alias); 1 Mar 2002 19:39:38 -0000 Mailing-List: contact ecos-discuss-help@sources.redhat.com; run by ezmlm Precedence: bulk List-Subscribe: List-Archive: List-Post: List-Help: , Sender: ecos-discuss-owner@sources.redhat.com Received: (qmail 23029 invoked from network); 1 Mar 2002 19:39:37 -0000 Received: from unknown (HELO executor.cambridge.redhat.com) (195.224.55.237) by sources.redhat.com with SMTP; 1 Mar 2002 19:39:37 -0000 Received: from redhat.com (murgh.cambridge.redhat.com [172.16.18.70]) by executor.cambridge.redhat.com (Postfix) with ESMTP id 61DFAABB0B; Fri, 1 Mar 2002 19:39:37 +0000 (GMT) Message-ID: <3C7FD8F9.A3DB46D8@redhat.com> Date: Fri, 01 Mar 2002 11:42:00 -0000 From: Jonathan Larmour Organization: Red Hat UK Ltd. X-Mailer: Mozilla 4.78 [en] (X11; U; Linux 2.2.19-7.0.10enterprise i686) X-Accept-Language: en MIME-Version: 1.0 To: Jing Luo Cc: 'Charles-Henri Balet' , eCos Discuss References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Subject: Re: [ECOS] Insight 5.1.1 with Angel /serial debugger X-SW-Source: 2002-03/txt/msg00024.txt.bz2 Jing Luo wrote: > > Hi, > Thanks Jesper. Now I know porting eCos is not that easy. Porting eCos to work with proprietary ROM monitors may not be as easy, no. > I choose the second option you suggested - port Redboot. > > I changed the hal-platform-setup.h for hardware initialization. > > I want to start Redboot from RAM, but the problem is the memory layout came > out is not the way I wanted as the following. > [mlt_arm_mytarget_ram.ldi] > // eCos memory layout - Thu Feb 28 18:55:04 2002 > > // This is a generated file - do not edit > > #include > > MEMORY > { > ram : ORIGIN = 0xc0000000, LENGTH = 0x2000000 > } > > SECTIONS > { > SECTIONS_BEGIN > SECTION_fixed_vectors (ram, 0xc0000000, LMA_EQ_VMA) > SECTION_rom_vectors (ram, 0xc0020000, 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 > } > > After build library and look in the map, __exception_handlers start from > address 0x20000 which is in the ROM. > I am confused about that. How can I make it run from RAM? Compare with other ports and look at their .ldi files. For example, you'll see that fixed_vectors should be at 0x20 generally. > Have anyone had experience to run Redboot from RAM? > > Another question about the linker file: > what LMA_EQ_VMA mean? Load address is the same as the address the program is expected to run at. This is correct for RAM startup. 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