OpenCores
URL https://opencores.org/ocsvn/openrisc/openrisc/trunk

Subversion Repositories openrisc

[/] [openrisc/] [trunk/] [rtos/] [ecos-3.0/] [packages/] [hal/] [coldfire/] [m5272c3/] [current/] [include/] [pkgconf/] [mlt_coldfire_m5272c3_romram.ldi] - Rev 811

Go to most recent revision | Compare with Previous | Blame | View Log

//===========================================================================
//
//      mlt_coldfire_m5272c3_romram.ldi
//
//      ROMRAM startup linker control script
//
//===========================================================================
// ####ECOSGPLCOPYRIGHTBEGIN####                                            
// -------------------------------------------                              
// This file is part of eCos, the Embedded Configurable Operating System.   
// Copyright (C) 1998, 1999, 2000, 2001, 2002, 2006 Free Software Foundation, Inc.
//
// eCos is free software; you can redistribute it and/or modify it under    
// the terms of the GNU General Public License as published by the Free     
// Software Foundation; either version 2 or (at your option) any later      
// version.                                                                 
//
// eCos is distributed in the hope that it will be useful, but WITHOUT      
// ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or    
// FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License    
// for more details.                                                        
//
// You should have received a copy of the GNU General Public License        
// along with eCos; if not, write to the Free Software Foundation, Inc.,    
// 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.            
//
// As a special exception, if other files instantiate templates or use      
// macros or inline functions from this file, or you compile this file      
// and link it with other works to produce a work based on this file,       
// this file does not by itself cause the resulting work to be covered by   
// the GNU General Public License. However the source code for this file    
// must still be made available in accordance with section (3) of the GNU   
// General Public License v2.                                               
//
// This exception does not invalidate any other reasons why a work based    
// on this file might be covered by the GNU General Public License.         
// -------------------------------------------                              
// ####ECOSGPLCOPYRIGHTEND####                                              
//===========================================================================
//#####DESCRIPTIONBEGIN####
//
// Author(s):     Enrico Piria
// Contributors:  Wade Jensen
// Date:          2005-25-06
// Purpose:       Linker script specific to the M5272C3 board, used for
//                ROMRAM startup.
//
//####DESCRIPTIONEND####
//========================================================================

#include <cyg/infra/cyg_type.inc>
#include CYGBLD_HAL_PLATFORM_H

MEMORY
{
    sdram           : ORIGIN = 0x00000000, LENGTH = 0x01000000
    devs            : ORIGIN = 0x10000000, LENGTH = 0x00001800
    sram            : ORIGIN = 0x20000000, LENGTH = 0x00001000
    ext_sram        : ORIGIN = 0x30000000, LENGTH = 0x00080000
    flash           : ORIGIN = 0xFFE00000, LENGTH = 0x00200000
}

SECTIONS
{
    SECTIONS_BEGIN

#if (CYGHWR_HAL_ROM_LMA == 0xFFF00000)
    SECTION_romvec              (flash, 0xFFF00000, LMA_EQ_VMA)
#else
    SECTION_romvec              (flash, 0xFFE00000, LMA_EQ_VMA)
#endif
    
    SECTION_boot                (flash, ALIGN(0x4), FOLLOWING(.romvec))

    SECTION_ramvec              (sdram, 0x00000000 (NOLOAD), LMA_EQ_VMA)
    SECTION_virtual_vec_table   (sdram, ALIGN (0x4) (NOLOAD), LMA_EQ_VMA)
    
    SECTION_text                (sdram, ALIGN (0x4),FOLLOWING(.boot))
    SECTION_fini                (sdram, ALIGN (0x4),FOLLOWING(.text))
    SECTION_rodata1             (sdram, ALIGN (0x4),FOLLOWING(.fini))
    SECTION_rodata              (sdram, ALIGN (0x4),FOLLOWING(.rodata1))
    SECTION_fixup               (sdram, ALIGN (0x4),FOLLOWING(.rodata))
    SECTION_gcc_except_table    (sdram, ALIGN (0x4),FOLLOWING(.fixup))
    SECTION_data                (sdram, ALIGN (0x4), FOLLOWING (.gcc_except_table))
    SECTION_bss                 (sdram, ALIGN (0x4) (NOLOAD), LMA_EQ_VMA)
    SECTION_uninvar             (sdram, ALIGN (0x4) (NOLOAD), LMA_EQ_VMA)

    // The heap starts here.
    CYG_LABEL_DEFN(__heap1) = ALIGN (0x4);

    CYG_LABEL_DEFN(__romram_copy_source) = LOADADDR(.text);
    CYG_LABEL_DEFN(__romram_copy_dest) = ADDR(.text);
    CYG_LABEL_DEFN(__romram_copy_length) = SIZEOF(.text) + SIZEOF(.fini) + SIZEOF(.rodata1) + SIZEOF(.rodata) + SIZEOF(.fixup) + SIZEOF(.gcc_except_table) + SIZEOF(.data);

    SECTIONS_END
}

Go to most recent revision | Compare with Previous | Blame | View Log

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.