blob: 990cca4ebb6eb280724836b763ab1745b60e6883 [file] [log] [blame]
Christophe Leroy35982952017-07-07 10:16:42 +02001/*
2 * Copyright (C) 2010-2017 CS Systemes d'Information
3 * Christophe Leroy <christophe.leroy@c-s.fr>
4 *
5 * (C) Copyright 2001-2003
6 * Wolfgang Denk, DENX Software Engineering, wd@denx.de.
7 *
8 * Modified by Yuli Barcohen <yuli@arabellasw.com>
9 *
10 * SPDX-License-Identifier: GPL-2.0+
11 */
12
13OUTPUT_ARCH(powerpc)
14SECTIONS
15{
16 /* Read-only sections, merged into text segment: */
17 . = + SIZEOF_HEADERS;
18 .text :
19 {
20 arch/powerpc/cpu/mpc8xx/start.o (.text)
Christophe Leroy35982952017-07-07 10:16:42 +020021 arch/powerpc/cpu/mpc8xx/traps.o (.text*)
Christophe Leroy35982952017-07-07 10:16:42 +020022 arch/powerpc/lib/built-in.o (.text*)
23 board/cssi/MCR3000/built-in.o (.text*)
Christophe Leroy35982952017-07-07 10:16:42 +020024 drivers/net/built-in.o (.text*)
25
Christophe Leroy92b792b2018-03-16 17:20:55 +010026 . = DEFINED(env_offset) ? env_offset : .;
27 env/embedded.o (.text.environment)
28
Christophe Leroy35982952017-07-07 10:16:42 +020029 *(.text)
30 }
31 _etext = .;
32 PROVIDE (etext = .);
33 .rodata :
34 {
35 *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
36 }
37
38 /* Read-write section, merged into data segment: */
39 . = (. + 0x0FFF) & 0xFFFFF000;
40 _erotext = .;
41 PROVIDE (erotext = .);
42 .reloc :
43 {
44 _GOT2_TABLE_ = .;
45 KEEP(*(.got2))
46 KEEP(*(.got))
47 _FIXUP_TABLE_ = .;
48 KEEP(*(.fixup))
49 }
50 __got2_entries = ((_GLOBAL_OFFSET_TABLE_ - _GOT2_TABLE_) >> 2) - 1;
51 __fixup_entries = (. - _FIXUP_TABLE_) >> 2;
52
53 .data :
54 {
55 *(.data*)
56 *(.sdata*)
57 }
58 _edata = .;
59 PROVIDE (edata = .);
60
61 . = .;
62
63 . = ALIGN(4);
64 .u_boot_list : {
65 KEEP(*(SORT(.u_boot_list*)));
66 }
67
68 . = .;
69 __start___ex_table = .;
70 __ex_table : { *(__ex_table) }
71 __stop___ex_table = .;
72
73 . = ALIGN(4096);
74 __init_begin = .;
75 .text.init : { *(.text.init) }
76 .data.init : { *(.data.init) }
77 . = ALIGN(4096);
78 __init_end = .;
79
80 __bss_start = .;
81 .bss (NOLOAD) :
82 {
83 *(.bss*)
84 *(.sbss*)
85 *(COMMON)
86 . = ALIGN(4);
87 }
88 __bss_end = . ;
89 PROVIDE (end = .);
90}
91ENTRY(_start)