]>
Commit | Line | Data |
---|---|---|
65cdd643 AA |
1 | /* |
2 | * Copyright (c) 2004-2008 Texas Instruments | |
3 | * | |
4 | * (C) Copyright 2002 | |
5 | * Gary Jennejohn, DENX Software Engineering, <[email protected]> | |
6 | * | |
1a459660 | 7 | * SPDX-License-Identifier: GPL-2.0+ |
65cdd643 AA |
8 | */ |
9 | ||
10 | OUTPUT_FORMAT("elf32-littlearm", "elf32-littlearm", "elf32-littlearm") | |
11 | OUTPUT_ARCH(arm) | |
12 | ENTRY(_start) | |
13 | SECTIONS | |
14 | { | |
15 | . = 0x00000000; | |
16 | ||
17 | . = ALIGN(4); | |
18 | .text : | |
19 | { | |
20 | __image_copy_start = .; | |
41623c91 | 21 | *(.vectors) |
65cdd643 AA |
22 | CPUDIR/start.o (.text*) |
23 | *(.text*) | |
24 | } | |
25 | ||
26 | . = ALIGN(4); | |
27 | .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) } | |
28 | ||
29 | . = ALIGN(4); | |
30 | .data : { | |
31 | *(.data*) | |
32 | } | |
33 | ||
34 | . = ALIGN(4); | |
35 | ||
36 | . = .; | |
37 | ||
38 | __image_copy_end = .; | |
39 | ||
40 | .rel.dyn : { | |
41 | __rel_dyn_start = .; | |
42 | *(.rel*) | |
43 | __rel_dyn_end = .; | |
44 | } | |
45 | ||
d0b5d9da AA |
46 | .end : |
47 | { | |
48 | *(.__end) | |
49 | } | |
50 | ||
51 | _image_binary_end = .; | |
65cdd643 | 52 | |
65cdd643 AA |
53 | .bss __rel_dyn_start (OVERLAY) : { |
54 | __bss_start = .; | |
55 | *(.bss*) | |
56 | . = ALIGN(4); | |
0ce033d2 | 57 | __bss_end = .; |
65cdd643 AA |
58 | } |
59 | ||
d0b5d9da | 60 | .dynsym _image_binary_end : { *(.dynsym) } |
47ed5dd0 AA |
61 | .dynbss : { *(.dynbss) } |
62 | .dynstr : { *(.dynstr*) } | |
63 | .dynamic : { *(.dynamic*) } | |
64 | .hash : { *(.hash*) } | |
65 | .plt : { *(.plt*) } | |
66 | .interp : { *(.interp*) } | |
67 | .gnu : { *(.gnu*) } | |
68 | .ARM.exidx : { *(.ARM.exidx*) } | |
65cdd643 AA |
69 | } |
70 | ||
6ebc3461 AA |
71 | #if defined(CONFIG_SPL_MAX_SIZE) |
72 | ASSERT(__image_copy_end - __image_copy_start < (CONFIG_SPL_MAX_SIZE), \ | |
73 | "SPL image too big"); | |
74 | #endif | |
75 | ||
76 | #if defined(CONFIG_SPL_BSS_MAX_SIZE) | |
77 | ASSERT(__bss_end - __bss_start < (CONFIG_SPL_BSS_MAX_SIZE), \ | |
78 | "SPL image BSS too big"); | |
79 | #endif | |
80 | ||
81 | #if defined(CONFIG_SPL_MAX_FOOTPRINT) | |
82 | ASSERT(__bss_end - _start < (CONFIG_SPL_MAX_FOOTPRINT), \ | |
83 | "SPL image plus BSS too big"); | |
65cdd643 | 84 | #endif |