10107f240SMasahiro Yamada/* 20107f240SMasahiro Yamada * Copyright (c) 2014 Xilinx, Inc. Michal Simek 30107f240SMasahiro Yamada * Copyright (c) 2004-2008 Texas Instruments 40107f240SMasahiro Yamada * 50107f240SMasahiro Yamada * (C) Copyright 2002 60107f240SMasahiro Yamada * Gary Jennejohn, DENX Software Engineering, <garyj@denx.de> 70107f240SMasahiro Yamada * 80107f240SMasahiro Yamada * SPDX-License-Identifier: GPL-2.0+ 90107f240SMasahiro Yamada */ 100107f240SMasahiro Yamada 110107f240SMasahiro YamadaMEMORY { .sram : ORIGIN = CONFIG_SPL_TEXT_BASE,\ 120107f240SMasahiro Yamada LENGTH = CONFIG_SPL_MAX_SIZE } 130107f240SMasahiro YamadaMEMORY { .sdram : ORIGIN = CONFIG_SPL_BSS_START_ADDR, \ 140107f240SMasahiro Yamada LENGTH = CONFIG_SPL_BSS_MAX_SIZE } 150107f240SMasahiro Yamada 160107f240SMasahiro YamadaOUTPUT_FORMAT("elf32-littlearm", "elf32-littlearm", "elf32-littlearm") 170107f240SMasahiro YamadaOUTPUT_ARCH(arm) 180107f240SMasahiro YamadaENTRY(_start) 190107f240SMasahiro YamadaSECTIONS 200107f240SMasahiro Yamada{ 210107f240SMasahiro Yamada . = ALIGN(4); 220107f240SMasahiro Yamada .text : 230107f240SMasahiro Yamada { 240107f240SMasahiro Yamada __image_copy_start = .; 250107f240SMasahiro Yamada *(.vectors) 260107f240SMasahiro Yamada CPUDIR/start.o (.text*) 270107f240SMasahiro Yamada *(.text*) 280107f240SMasahiro Yamada } > .sram 290107f240SMasahiro Yamada 300107f240SMasahiro Yamada . = ALIGN(4); 310107f240SMasahiro Yamada .rodata : { 320107f240SMasahiro Yamada *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) 330107f240SMasahiro Yamada } > .sram 340107f240SMasahiro Yamada 350107f240SMasahiro Yamada . = ALIGN(4); 360107f240SMasahiro Yamada .data : { 370107f240SMasahiro Yamada *(.data*) 380107f240SMasahiro Yamada } > .sram 390107f240SMasahiro Yamada 400107f240SMasahiro Yamada . = ALIGN(4); 4171556fbcSSimon Glass .u_boot_list : { 42*f8a48263STom Rini KEEP(*(SORT(.u_boot_list*))); 4371556fbcSSimon Glass } > .sram 4471556fbcSSimon Glass 4571556fbcSSimon Glass . = ALIGN(4); 460107f240SMasahiro Yamada 4771556fbcSSimon Glass _image_binary_end = .; 480107f240SMasahiro Yamada 490107f240SMasahiro Yamada _end = .; 500107f240SMasahiro Yamada 510107f240SMasahiro Yamada /* Move BSS section to RAM because of FAT */ 520107f240SMasahiro Yamada .bss (NOLOAD) : { 530107f240SMasahiro Yamada __bss_start = .; 540107f240SMasahiro Yamada *(.bss*) 550107f240SMasahiro Yamada . = ALIGN(4); 560107f240SMasahiro Yamada __bss_end = .; 570107f240SMasahiro Yamada } > .sdram 580107f240SMasahiro Yamada 590107f240SMasahiro Yamada /DISCARD/ : { *(.dynsym) } 600107f240SMasahiro Yamada /DISCARD/ : { *(.dynstr*) } 610107f240SMasahiro Yamada /DISCARD/ : { *(.dynamic*) } 620107f240SMasahiro Yamada /DISCARD/ : { *(.plt*) } 630107f240SMasahiro Yamada /DISCARD/ : { *(.interp*) } 640107f240SMasahiro Yamada /DISCARD/ : { *(.gnu*) } 650107f240SMasahiro Yamada} 66