blob: c9881f7ec07e56b4068357914377838e2aec75fc [file] [log] [blame]
Furquan Shaikh8c8c3772014-02-19 11:35:30 -08001/*
Furquan Shaikh8c8c3772014-02-19 11:35:30 -08002 *
3 * Copyright (C) 2013 Google, Inc.
4 * Copyright (C) 2008 Advanced Micro Devices, Inc.
5 *
6 * Redistribution and use in source and binary forms, with or without
7 * modification, are permitted provided that the following conditions
8 * are met:
9 * 1. Redistributions of source code must retain the above copyright
10 * notice, this list of conditions and the following disclaimer.
11 * 2. Redistributions in binary form must reproduce the above copyright
12 * notice, this list of conditions and the following disclaimer in the
13 * documentation and/or other materials provided with the distribution.
14 * 3. The name of the author may not be used to endorse or promote products
15 * derived from this software without specific prior written permission.
16 *
17 * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
18 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
19 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
20 * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
21 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
22 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
23 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
24 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
25 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
26 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
27 * SUCH DAMAGE.
28 */
29
Furquan Shaikh8c8c3772014-02-19 11:35:30 -080030OUTPUT_FORMAT("elf64-littleaarch64","elf64-littleaarch64", "elf64-littleaarch64")
Michael Walle492d55f2020-07-03 23:26:20 +020031OUTPUT_ARCH(aarch64)
Furquan Shaikh8c8c3772014-02-19 11:35:30 -080032
33ENTRY(_entry)
34
Furquan Shaikh8c8c3772014-02-19 11:35:30 -080035SECTIONS
36{
Stefan Reinauer82184452016-03-12 16:18:17 -080037 . = CONFIG_LP_BASE_ADDRESS;
Furquan Shaikh8c8c3772014-02-19 11:35:30 -080038
39 . = ALIGN(16);
40 _start = .;
41
42 .text : {
Yi Chou32ea2ab2023-11-18 12:12:01 +080043 _text = .;
Furquan Shaikh8c8c3772014-02-19 11:35:30 -080044 *(.text._entry)
45 *(.text)
46 *(.text.*)
Yi Chou32ea2ab2023-11-18 12:12:01 +080047 _etext = .;
Furquan Shaikh8c8c3772014-02-19 11:35:30 -080048 }
49
50 .rodata : {
Yi Chou32ea2ab2023-11-18 12:12:01 +080051 _rodata = .;
Furquan Shaikh8c8c3772014-02-19 11:35:30 -080052 *(.rodata)
53 *(.rodata.*)
Yi Chou32ea2ab2023-11-18 12:12:01 +080054 _erodata = .;
Furquan Shaikh8c8c3772014-02-19 11:35:30 -080055 }
56
57 .data : {
Yi Chou32ea2ab2023-11-18 12:12:01 +080058 _data = .;
Furquan Shaikh8c8c3772014-02-19 11:35:30 -080059 *(.data)
60 *(.data.*)
Yi Chou32ea2ab2023-11-18 12:12:01 +080061 _edata = .;
Furquan Shaikh8c8c3772014-02-19 11:35:30 -080062 }
63
Furquan Shaikh8c8c3772014-02-19 11:35:30 -080064 .bss : {
Yi Chou1739c992023-11-17 19:58:11 +080065 *(.ttb_buffer)
66
Yi Chou32ea2ab2023-11-18 12:12:01 +080067 _bss = .;
Furquan Shaikh8c8c3772014-02-19 11:35:30 -080068 *(.sbss)
69 *(.sbss.*)
70 *(.bss)
71 *(.bss.*)
72 *(COMMON)
Yi Chou32ea2ab2023-11-18 12:12:01 +080073 _ebss = .;
Furquan Shaikh8c8c3772014-02-19 11:35:30 -080074
75 /* Stack and heap */
76
77 . = ALIGN(16);
78 _heap = .;
Stefan Reinauer82184452016-03-12 16:18:17 -080079 . += CONFIG_LP_HEAP_SIZE;
Furquan Shaikh8c8c3772014-02-19 11:35:30 -080080 . = ALIGN(16);
81 _eheap = .;
82
Yi Chou32ea2ab2023-11-18 12:12:01 +080083 _stack = .;
Stefan Reinauer82184452016-03-12 16:18:17 -080084 . += CONFIG_LP_STACK_SIZE;
Furquan Shaikh8c8c3772014-02-19 11:35:30 -080085 . = ALIGN(16);
Yi Chou32ea2ab2023-11-18 12:12:01 +080086 _estack = .;
Furquan Shaikh8c8c3772014-02-19 11:35:30 -080087 }
88
89 _end = .;
90
91 /DISCARD/ : {
92 *(.comment)
93 *(.note*)
94 }
95}