blob: fc80f215e3d5feac08a47227e97205b5c8328d6a [file] [log] [blame]
Gilles Gameiroebd46d12015-02-10 01:36:01 -08001/*
2 * Copyright (c) 2012-2014 Birdland Audio - http://birdland.com/oem
3 * Copyright (c) 2004-2008 Texas Instruments
4 *
5 * (C) Copyright 2002
6 * Gary Jennejohn, DENX Software Engineering, <garyj@denx.de>
7 *
8 * See file CREDITS for list of people who contributed to this
9 * project.
10 *
11 * SPDX-License-Identifier: GPL-2.0+
12 */
13
14OUTPUT_FORMAT("elf32-littlearm", "elf32-littlearm", "elf32-littlearm")
15OUTPUT_ARCH(arm)
16ENTRY(_start)
17SECTIONS
18{
19 . = 0x00000000;
20
21 . = ALIGN(4);
22 .text :
23 {
24 *(.__image_copy_start)
25 *(.vectors)
26 CPUDIR/start.o (.text*)
27 board/birdland/bav335x/built-in.o (.text*)
28 *(.text*)
29 }
30
31 . = ALIGN(4);
32 .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
33
34 . = ALIGN(4);
35 .data : {
36 *(.data*)
37 }
38
39 . = ALIGN(4);
40
41 . = .;
42
43 . = ALIGN(4);
44 .u_boot_list : {
45 KEEP(*(SORT(.u_boot_list*)));
46 }
47
48 . = ALIGN(4);
49
50 .image_copy_end :
51 {
52 *(.__image_copy_end)
53 }
54
55 .rel_dyn_start :
56 {
57 *(.__rel_dyn_start)
58 }
59
60 .rel.dyn : {
61 *(.rel*)
62 }
63
64 .rel_dyn_end :
65 {
66 *(.__rel_dyn_end)
67 }
68
69 .hash : { *(.hash*) }
70
71 .end :
72 {
73 *(.__end)
74 }
75
76 _image_binary_end = .;
77
78 /*
79 * Deprecated: this MMU section is used by pxa at present but
80 * should not be used by new boards/CPUs.
81 */
82 . = ALIGN(4096);
83 .mmutable : {
84 *(.mmutable)
85 }
86
87/*
88 * Compiler-generated __bss_start and __bss_end, see arch/arm/lib/bss.c
89 * __bss_base and __bss_limit are for linker only (overlay ordering)
90 */
91
92 .bss_start __rel_dyn_start (OVERLAY) : {
93 KEEP(*(.__bss_start));
94 __bss_base = .;
95 }
96
97 .bss __bss_base (OVERLAY) : {
98 *(.bss*)
99 . = ALIGN(4);
100 __bss_limit = .;
101 }
102
103 .bss_end __bss_limit (OVERLAY) : {
104 KEEP(*(.__bss_end));
105 }
106
107 .dynsym _image_binary_end : { *(.dynsym) }
108 .dynbss : { *(.dynbss) }
109 .dynstr : { *(.dynstr*) }
110 .dynamic : { *(.dynamic*) }
111 .gnu.hash : { *(.gnu.hash) }
112 .plt : { *(.plt*) }
113 .interp : { *(.interp*) }
114 .gnu : { *(.gnu*) }
115 .ARM.exidx : { *(.ARM.exidx*) }
116}