1b2d5ac59SScott Wood/* 2b2d5ac59SScott Wood * (C) Copyright 2013 3b2d5ac59SScott Wood * David Feng <fenghua@phytium.com.cn> 4b2d5ac59SScott Wood * 5b2d5ac59SScott Wood * (C) Copyright 2002 6b2d5ac59SScott Wood * Gary Jennejohn, DENX Software Engineering, <garyj@denx.de> 7b2d5ac59SScott Wood * 8b2d5ac59SScott Wood * (C) Copyright 2010 9b2d5ac59SScott Wood * Texas Instruments, <www.ti.com> 10b2d5ac59SScott Wood * Aneesh V <aneesh@ti.com> 11b2d5ac59SScott Wood * 12b2d5ac59SScott Wood * SPDX-License-Identifier: GPL-2.0+ 13b2d5ac59SScott Wood */ 14b2d5ac59SScott Wood 15b2d5ac59SScott WoodMEMORY { .sram : ORIGIN = CONFIG_SPL_TEXT_BASE, 16b2d5ac59SScott Wood LENGTH = CONFIG_SPL_MAX_SIZE } 17b2d5ac59SScott WoodMEMORY { .sdram : ORIGIN = CONFIG_SPL_BSS_START_ADDR, 18b2d5ac59SScott Wood LENGTH = CONFIG_SPL_BSS_MAX_SIZE } 19b2d5ac59SScott Wood 20b2d5ac59SScott WoodOUTPUT_FORMAT("elf64-littleaarch64", "elf64-littleaarch64", "elf64-littleaarch64") 21b2d5ac59SScott WoodOUTPUT_ARCH(aarch64) 22b2d5ac59SScott WoodENTRY(_start) 23b2d5ac59SScott WoodSECTIONS 24b2d5ac59SScott Wood{ 25b2d5ac59SScott Wood .text : { 26b2d5ac59SScott Wood . = ALIGN(8); 27b2d5ac59SScott Wood *(.__image_copy_start) 28b2d5ac59SScott Wood CPUDIR/start.o (.text*) 29b2d5ac59SScott Wood *(.text*) 30b2d5ac59SScott Wood } >.sram 31b2d5ac59SScott Wood 32b2d5ac59SScott Wood .rodata : { 33b2d5ac59SScott Wood . = ALIGN(8); 34b2d5ac59SScott Wood *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) 35b2d5ac59SScott Wood } >.sram 36b2d5ac59SScott Wood 37b2d5ac59SScott Wood .data : { 38b2d5ac59SScott Wood . = ALIGN(8); 39b2d5ac59SScott Wood *(.data*) 40b2d5ac59SScott Wood } >.sram 41b2d5ac59SScott Wood 42b2d5ac59SScott Wood .u_boot_list : { 43b2d5ac59SScott Wood . = ALIGN(8); 44b2d5ac59SScott Wood KEEP(*(SORT(.u_boot_list*))); 45b2d5ac59SScott Wood } >.sram 46b2d5ac59SScott Wood 47b2d5ac59SScott Wood .image_copy_end : { 48b2d5ac59SScott Wood . = ALIGN(8); 49b2d5ac59SScott Wood *(.__image_copy_end) 50b2d5ac59SScott Wood } >.sram 51b2d5ac59SScott Wood 52b2d5ac59SScott Wood .end : { 53b2d5ac59SScott Wood . = ALIGN(8); 54b2d5ac59SScott Wood *(.__end) 55b2d5ac59SScott Wood } >.sram 56b2d5ac59SScott Wood 57*6184121cSAndy Yan#ifndef CONFIG_SPL_SKIP_RELOCATE 58*6184121cSAndy Yan . = ALIGN(8); 59*6184121cSAndy Yan 60*6184121cSAndy Yan .rel_dyn_start : 61*6184121cSAndy Yan { 62*6184121cSAndy Yan *(.__rel_dyn_start) 63*6184121cSAndy Yan } >.sram 64*6184121cSAndy Yan 65*6184121cSAndy Yan .rela.dyn : { 66*6184121cSAndy Yan *(.rela*) 67*6184121cSAndy Yan } >.sram 68*6184121cSAndy Yan 69*6184121cSAndy Yan .rel_dyn_end : 70*6184121cSAndy Yan { 71*6184121cSAndy Yan *(.__rel_dyn_end) 72*6184121cSAndy Yan } >.sram 73*6184121cSAndy Yan#endif 740ea6cc12SMasahiro Yamada _image_binary_end = .; 750ea6cc12SMasahiro Yamada 76439edf61SMichal Simek .bss_start (NOLOAD) : { 77b2d5ac59SScott Wood . = ALIGN(8); 78b2d5ac59SScott Wood KEEP(*(.__bss_start)); 79b2d5ac59SScott Wood } >.sdram 80b2d5ac59SScott Wood 81439edf61SMichal Simek .bss (NOLOAD) : { 82b2d5ac59SScott Wood *(.bss*) 83b2d5ac59SScott Wood . = ALIGN(8); 84b2d5ac59SScott Wood } >.sdram 85b2d5ac59SScott Wood 86439edf61SMichal Simek .bss_end (NOLOAD) : { 87b2d5ac59SScott Wood KEEP(*(.__bss_end)); 88b2d5ac59SScott Wood } >.sdram 89b2d5ac59SScott Wood 90b2d5ac59SScott Wood /DISCARD/ : { *(.dynsym) } 91b2d5ac59SScott Wood /DISCARD/ : { *(.dynstr*) } 92b2d5ac59SScott Wood /DISCARD/ : { *(.dynamic*) } 93b2d5ac59SScott Wood /DISCARD/ : { *(.plt*) } 94b2d5ac59SScott Wood /DISCARD/ : { *(.interp*) } 95b2d5ac59SScott Wood /DISCARD/ : { *(.gnu*) } 96b2d5ac59SScott Wood} 97