1f5acb9fdSJean-Christophe PLAGNIOL-VILLARD/* 2f5acb9fdSJean-Christophe PLAGNIOL-VILLARD * January 2004 - Changed to support H4 device 3f5acb9fdSJean-Christophe PLAGNIOL-VILLARD * Copyright (c) 2004 Texas Instruments 4f5acb9fdSJean-Christophe PLAGNIOL-VILLARD * 5f5acb9fdSJean-Christophe PLAGNIOL-VILLARD * (C) Copyright 2002 6792a09ebSDetlev Zundel * Gary Jennejohn, DENX Software Engineering, <garyj@denx.de> 7f5acb9fdSJean-Christophe PLAGNIOL-VILLARD * 8f5acb9fdSJean-Christophe PLAGNIOL-VILLARD * See file CREDITS for list of people who contributed to this 9f5acb9fdSJean-Christophe PLAGNIOL-VILLARD * project. 10f5acb9fdSJean-Christophe PLAGNIOL-VILLARD * 11f5acb9fdSJean-Christophe PLAGNIOL-VILLARD * This program is free software; you can redistribute it and/or 12f5acb9fdSJean-Christophe PLAGNIOL-VILLARD * modify it under the terms of the GNU General Public License as 13f5acb9fdSJean-Christophe PLAGNIOL-VILLARD * published by the Free Software Foundation; either version 2 of 14f5acb9fdSJean-Christophe PLAGNIOL-VILLARD * the License, or (at your option) any later version. 15f5acb9fdSJean-Christophe PLAGNIOL-VILLARD * 16f5acb9fdSJean-Christophe PLAGNIOL-VILLARD * This program is distributed in the hope that it will be useful, 17f5acb9fdSJean-Christophe PLAGNIOL-VILLARD * but WITHOUT ANY WARRANTY; without even the implied warranty of 18f5acb9fdSJean-Christophe PLAGNIOL-VILLARD * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 19f5acb9fdSJean-Christophe PLAGNIOL-VILLARD * GNU General Public License for more details. 20f5acb9fdSJean-Christophe PLAGNIOL-VILLARD * 21f5acb9fdSJean-Christophe PLAGNIOL-VILLARD * You should have received a copy of the GNU General Public License 22f5acb9fdSJean-Christophe PLAGNIOL-VILLARD * along with this program; if not, write to the Free Software 23f5acb9fdSJean-Christophe PLAGNIOL-VILLARD * Foundation, Inc., 59 Temple Place, Suite 330, Boston, 24f5acb9fdSJean-Christophe PLAGNIOL-VILLARD * MA 02111-1307 USA 25f5acb9fdSJean-Christophe PLAGNIOL-VILLARD */ 26f5acb9fdSJean-Christophe PLAGNIOL-VILLARD 27f5acb9fdSJean-Christophe PLAGNIOL-VILLARDOUTPUT_FORMAT("elf32-littlearm", "elf32-littlearm", "elf32-littlearm") 28f5acb9fdSJean-Christophe PLAGNIOL-VILLARDOUTPUT_ARCH(arm) 29f5acb9fdSJean-Christophe PLAGNIOL-VILLARDENTRY(_start) 30f5acb9fdSJean-Christophe PLAGNIOL-VILLARDSECTIONS 31f5acb9fdSJean-Christophe PLAGNIOL-VILLARD{ 32f5acb9fdSJean-Christophe PLAGNIOL-VILLARD . = 0x00000000; 33f5acb9fdSJean-Christophe PLAGNIOL-VILLARD 34f5acb9fdSJean-Christophe PLAGNIOL-VILLARD . = ALIGN(4); 35f5acb9fdSJean-Christophe PLAGNIOL-VILLARD .text : 36f5acb9fdSJean-Christophe PLAGNIOL-VILLARD { 37d026dec8SAlbert ARIBAUD *(.__image_copy_start) 38f5acb9fdSJean-Christophe PLAGNIOL-VILLARD /* WARNING - the following is hand-optimized to fit within */ 39f5acb9fdSJean-Christophe PLAGNIOL-VILLARD /* the sector layout of our flash chips! XXX FIXME XXX */ 40f5acb9fdSJean-Christophe PLAGNIOL-VILLARD 411a9a91dcSBenoît Thébaudeau arch/arm/cpu/arm1136/start.o (.text*) 421a9a91dcSBenoît Thébaudeau board/freescale/mx31ads/libmx31ads.o (.text*) 431a9a91dcSBenoît Thébaudeau arch/arm/lib/libarm.o (.text*) 441a9a91dcSBenoît Thébaudeau net/libnet.o (.text*) 451a9a91dcSBenoît Thébaudeau drivers/mtd/libmtd.o (.text*) 46f5acb9fdSJean-Christophe PLAGNIOL-VILLARD 47f5acb9fdSJean-Christophe PLAGNIOL-VILLARD . = DEFINED(env_offset) ? env_offset : .; 481a9a91dcSBenoît Thébaudeau common/env_embedded.o(.text*) 49f5acb9fdSJean-Christophe PLAGNIOL-VILLARD 501a9a91dcSBenoît Thébaudeau *(.text*) 51f5acb9fdSJean-Christophe PLAGNIOL-VILLARD } 524ac2e2d6SFabio Estevam . = ALIGN(4); 531a9a91dcSBenoît Thébaudeau .rodata : { *(.rodata*) } 54f5acb9fdSJean-Christophe PLAGNIOL-VILLARD 55f5acb9fdSJean-Christophe PLAGNIOL-VILLARD . = ALIGN(4); 564ac2e2d6SFabio Estevam .data : { 571a9a91dcSBenoît Thébaudeau *(.data*) 584ac2e2d6SFabio Estevam } 59f5acb9fdSJean-Christophe PLAGNIOL-VILLARD 60f5acb9fdSJean-Christophe PLAGNIOL-VILLARD . = ALIGN(4); 61f5acb9fdSJean-Christophe PLAGNIOL-VILLARD 62f5acb9fdSJean-Christophe PLAGNIOL-VILLARD . = ALIGN(4); 6355675142SMarek Vasut .u_boot_list : { 64ef123c52SAlbert ARIBAUD KEEP(*(SORT(.u_boot_list*))); 6555675142SMarek Vasut } 66f5acb9fdSJean-Christophe PLAGNIOL-VILLARD 67f5acb9fdSJean-Christophe PLAGNIOL-VILLARD . = ALIGN(4); 684ac2e2d6SFabio Estevam 69d026dec8SAlbert ARIBAUD .image_copy_end : 70d026dec8SAlbert ARIBAUD { 71d026dec8SAlbert ARIBAUD *(.__image_copy_end) 72d026dec8SAlbert ARIBAUD } 73b736e4b9SStefano Babic 74*47bd65efSAlbert ARIBAUD .rel_dyn_start : 75*47bd65efSAlbert ARIBAUD { 76*47bd65efSAlbert ARIBAUD *(.__rel_dyn_start) 77*47bd65efSAlbert ARIBAUD } 78*47bd65efSAlbert ARIBAUD 794ac2e2d6SFabio Estevam .rel.dyn : { 804ac2e2d6SFabio Estevam *(.rel*) 81*47bd65efSAlbert ARIBAUD } 82*47bd65efSAlbert ARIBAUD 83*47bd65efSAlbert ARIBAUD .rel_dyn_end : 84*47bd65efSAlbert ARIBAUD { 85*47bd65efSAlbert ARIBAUD *(.__rel_dyn_end) 864ac2e2d6SFabio Estevam } 874ac2e2d6SFabio Estevam 884ac2e2d6SFabio Estevam _end = .; 894ac2e2d6SFabio Estevam 90f84a7b8fSAlbert ARIBAUD/* 91f84a7b8fSAlbert ARIBAUD * Compiler-generated __bss_start and __bss_end, see arch/arm/lib/bss.c 92f84a7b8fSAlbert ARIBAUD * __bss_base and __bss_limit are for linker only (overlay ordering) 93f84a7b8fSAlbert ARIBAUD */ 94f84a7b8fSAlbert ARIBAUD 953ebd1cbcSAlbert ARIBAUD .bss_start __rel_dyn_start (OVERLAY) : { 963ebd1cbcSAlbert ARIBAUD KEEP(*(.__bss_start)); 97f84a7b8fSAlbert ARIBAUD __bss_base = .; 983ebd1cbcSAlbert ARIBAUD } 993ebd1cbcSAlbert ARIBAUD 100f84a7b8fSAlbert ARIBAUD .bss __bss_base (OVERLAY) : { 1013ebd1cbcSAlbert ARIBAUD *(.bss*) 1024ac2e2d6SFabio Estevam . = ALIGN(4); 103f84a7b8fSAlbert ARIBAUD __bss_limit = .; 104f5acb9fdSJean-Christophe PLAGNIOL-VILLARD } 105f84a7b8fSAlbert ARIBAUD .bss_end __bss_limit (OVERLAY) : { 106f84a7b8fSAlbert ARIBAUD KEEP(*(.__bss_end)); 107f5acb9fdSJean-Christophe PLAGNIOL-VILLARD } 1084ac2e2d6SFabio Estevam 1094ac2e2d6SFabio Estevam /DISCARD/ : { *(.bss*) } 11009d81184SAlbert ARIBAUD /DISCARD/ : { *(.dynsym) } 1114ac2e2d6SFabio Estevam /DISCARD/ : { *(.dynstr*) } 1124ac2e2d6SFabio Estevam /DISCARD/ : { *(.dynsym*) } 1134ac2e2d6SFabio Estevam /DISCARD/ : { *(.dynamic*) } 1144ac2e2d6SFabio Estevam /DISCARD/ : { *(.hash*) } 1154ac2e2d6SFabio Estevam /DISCARD/ : { *(.plt*) } 1164ac2e2d6SFabio Estevam /DISCARD/ : { *(.interp*) } 1174ac2e2d6SFabio Estevam /DISCARD/ : { *(.gnu*) } 1184ac2e2d6SFabio Estevam} 119