1/* 2 * Copyright (c) 2014 Xilinx, Inc. Michal Simek 3 * Copyright (c) 2004-2008 Texas Instruments 4 * 5 * (C) Copyright 2002 6 * Gary Jennejohn, DENX Software Engineering, <garyj@denx.de> 7 * 8 * SPDX-License-Identifier: GPL-2.0+ 9 */ 10 11MEMORY { .sram : ORIGIN = CONFIG_SPL_TEXT_BASE,\ 12 LENGTH = CONFIG_SPL_MAX_SIZE } 13MEMORY { .sdram : ORIGIN = CONFIG_SPL_BSS_START_ADDR, \ 14 LENGTH = CONFIG_SPL_BSS_MAX_SIZE } 15 16OUTPUT_FORMAT("elf32-littlearm", "elf32-littlearm", "elf32-littlearm") 17OUTPUT_ARCH(arm) 18ENTRY(_start) 19SECTIONS 20{ 21 . = ALIGN(4); 22 .text : 23 { 24 __image_copy_start = .; 25 *(.vectors) 26 CPUDIR/start.o (.text*) 27 *(.text*) 28 } > .sram 29 30 . = ALIGN(4); 31 .rodata : { 32 *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) 33 } > .sram 34 35 . = ALIGN(4); 36 .data : { 37 *(.data*) 38 } > .sram 39 40 . = ALIGN(4); 41#ifdef CONFIG_SPL_DM 42 .u_boot_list : { 43 KEEP(*(SORT(.u_boot_list_*_driver_*))); 44 KEEP(*(SORT(.u_boot_list_*_uclass_*))); 45 } > .sram 46 47 . = ALIGN(4); 48#endif 49 50 . = .; 51 52 _image_binary_end = .; 53 54 _end = .; 55 56 /* Move BSS section to RAM because of FAT */ 57 .bss (NOLOAD) : { 58 __bss_start = .; 59 *(.bss*) 60 . = ALIGN(4); 61 __bss_end = .; 62 } > .sdram 63 64 /DISCARD/ : { *(.dynsym) } 65 /DISCARD/ : { *(.dynstr*) } 66 /DISCARD/ : { *(.dynamic*) } 67 /DISCARD/ : { *(.plt*) } 68 /DISCARD/ : { *(.interp*) } 69 /DISCARD/ : { *(.gnu*) } 70} 71