blob: 47910d3e4f82bbfdf8b40a18fe95000b967621a3 [file] [log] [blame]
Stefan Roesec6bc1db2012-01-03 16:49:01 +01001/*
Stefan Roese7618ad02015-08-18 09:27:17 +02002 * Copyright (C) 2015 Stefan Roese <sr@denx.de>
3 *
Stefan Roesec6bc1db2012-01-03 16:49:01 +01004 * Copyright (C) 2011 Marek Vasut <marek.vasut@gmail.com>
5 * on behalf of DENX Software Engineering GmbH
6 *
7 * January 2004 - Changed to support H4 device
8 * Copyright (c) 2004-2008 Texas Instruments
9 *
10 * (C) Copyright 2002
11 * Gary Jennejohn, DENX Software Engineering, <garyj@denx.de>
12 *
Wolfgang Denkd79de1d2013-07-08 09:37:19 +020013 * SPDX-License-Identifier: GPL-2.0+
Stefan Roesec6bc1db2012-01-03 16:49:01 +010014 */
15
Stefan Roese7618ad02015-08-18 09:27:17 +020016MEMORY { .sram : ORIGIN = CONFIG_SPL_TEXT_BASE,\
17 LENGTH = CONFIG_SPL_MAX_SIZE }
18
Stefan Roesec6bc1db2012-01-03 16:49:01 +010019OUTPUT_FORMAT("elf32-littlearm", "elf32-littlearm", "elf32-littlearm")
20OUTPUT_ARCH(arm)
21ENTRY(_start)
22SECTIONS
23{
Stefan Roese7618ad02015-08-18 09:27:17 +020024 .text :
Stefan Roesec6bc1db2012-01-03 16:49:01 +010025 {
Stefan Roese7618ad02015-08-18 09:27:17 +020026 __start = .;
Albert ARIBAUD9852cc62014-04-15 16:13:51 +020027 *(.vectors)
Stefan Roese7618ad02015-08-18 09:27:17 +020028 CPUDIR/spear/start.o (.text*)
Benoît Thébaudeau3954db82013-04-11 09:36:03 +000029 *(.text*)
Stefan Roese7618ad02015-08-18 09:27:17 +020030 } > .sram
Stefan Roesec6bc1db2012-01-03 16:49:01 +010031
32 . = ALIGN(4);
Stefan Roese7618ad02015-08-18 09:27:17 +020033 .rodata : { *(SORT_BY_ALIGNMENT(.rodata*)) } >.sram
Stefan Roesec6bc1db2012-01-03 16:49:01 +010034
35 . = ALIGN(4);
Stefan Roese7618ad02015-08-18 09:27:17 +020036 .data : { *(SORT_BY_ALIGNMENT(.data*)) } >.sram
Stefan Roesec6bc1db2012-01-03 16:49:01 +010037
38 . = ALIGN(4);
Stefan Roese7618ad02015-08-18 09:27:17 +020039 .u_boot_list : {
40 KEEP(*(SORT(.u_boot_list*)));
41 } > .sram
Stefan Roesec6bc1db2012-01-03 16:49:01 +010042
Stefan Roese7618ad02015-08-18 09:27:17 +020043 . = ALIGN(4);
44 __image_copy_end = .;
45 _end = .;
Stefan Roesec6bc1db2012-01-03 16:49:01 +010046
Stefan Roese7618ad02015-08-18 09:27:17 +020047 .bss :
48 {
Stefan Roesec6bc1db2012-01-03 16:49:01 +010049 . = ALIGN(4);
50 __bss_start = .;
51 *(.bss*)
52 . = ALIGN(4);
Simon Glassed70c8f2013-03-14 06:54:53 +000053 __bss_end = .;
Stefan Roese7618ad02015-08-18 09:27:17 +020054 } > .sram
Stefan Roesec6bc1db2012-01-03 16:49:01 +010055}