blob: 525565134777d29c0544d682d87b2fb2e5189e72 [file] [log] [blame]
wdenk327f7a02001-11-28 17:49:55 +00001/*
2 * (C) Copyright 2000
3 * Rob Taylor, Flying Pig Systems Ltd. robt@flyingpig.com
4 *
5 * See file CREDITS for list of people who contributed to this
6 * project.
7 *
8 * This program is free software; you can redistribute it and/or
9 * modify it under the terms of the GNU General Public License as
10 * published by the Free Software Foundation; either version 2 of
11 * the License, or (at your option) any later version.
12 *
13 * This program is distributed in the hope that it will be useful,
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 * GNU General Public License for more details.
17 *
18 * You should have received a copy of the GNU General Public License
19 * along with this program; if not, write to the Free Software
20 * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
21 * MA 02111-1307 USA
22 */
23
24OUTPUT_ARCH(powerpc)
wdenk327f7a02001-11-28 17:49:55 +000025
26MEMORY {
Wolfgang Denka1be4762008-05-20 16:00:29 +020027 ram (!rx) : org = 0x00000000 , LENGTH = 8M
28 code (!rx) : org = 0x00002000 , LENGTH = (4M - 0x2000)
29 rom (rx) : org = 0xfff00000 , LENGTH = 512K
wdenk327f7a02001-11-28 17:49:55 +000030}
31
32SECTIONS
33{
34 _f_init = .;
35 PROVIDE(_f_init = .);
36 _f_init_rom = .;
37 PROVIDE(_f_init_rom = .);
38
39 .init : {
Stefan Roese88fbf932010-04-15 16:07:28 +020040 arch/powerpc/cpu/mpc824x/start.o (.text)
wdenk327f7a02001-11-28 17:49:55 +000041 *(.init)
42 } > ram
43 _init_size = SIZEOF(.init);
44 PROVIDE(_init_size = SIZEOF(.init));
45
46 ENTRY(_start)
47
48/* _ftext = .;
49 _ftext_rom = .;
50 _text_size = SIZEOF(.text);
51 */
52 .text : {
53 *(.text)
54 *(.got1)
55 } > ram
56 .rodata : { *(.rodata) } > ram
57 .dtors : { *(.dtors) } > ram
58 .data : { *(.data) } > ram
59 .sdata : { *(.sdata) } > ram
60 .sdata2 : { *(.sdata2)
61 *(.got)
62 _GOT2_TABLE_ = .;
63 *(.got2)
64 _FIXUP_TABLE_ = .;
65 *(.fixup)
66 } > ram
67 __got2_entries = (_FIXUP_TABLE_ - _GOT2_TABLE_) >>2;
68 __fixup_entries = (. - _FIXUP_TABLE_)>>2;
69
70 .sbss : { *(.sbss) } > ram
71 .sbss2 : { *(.sbss2) } > ram
72 .bss : { *(.bss) } > ram
73 .debug : { *(.debug) } > ram
74 .line : { *(.line) } > ram
75 .symtab : { *(.symtab) } > ram
76 .shrstrtab : { *(.shstrtab) } > ram
77 .strtab : { *(.strtab) } > ram
78 /* .reloc :
79 {
80 *(.got)
81 _GOT2_TABLE_ = .;
82 *(.got2)
83 _FIXUP_TABLE_ = .;
84 *(.fixup)
85 } > ram
86 */
wdenk57b2d802003-06-27 21:31:46 +000087
wdenk57b2d802003-06-27 21:31:46 +000088
wdenk327f7a02001-11-28 17:49:55 +000089 __start___ex_table = .;
90 __ex_table : { *(__ex_table) } > ram
91 __stop___ex_table = .;
92
93
94 .ppcenv :
95 {
Jean-Christophe PLAGNIOL-VILLARD4436c1e2008-09-10 22:48:01 +020096 common/env_embedded.o (.ppcenv)
wdenk327f7a02001-11-28 17:49:55 +000097 } > ram
98
Po-Yu Chuangcedbf4b2011-03-01 22:59:59 +000099 __bss_end__ = . ;
wdenk327f7a02001-11-28 17:49:55 +0000100 PROVIDE (end = .);
101}