blob: 2ae4f20ef9fd38e03054f773525c7a4d47372d3b [file] [log] [blame]
Nobuhiro Iwamatsu6c0bbdc2007-09-23 02:31:13 +09001/*
2 * Copyrigth (c) 2007
3 * Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
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_FORMAT("elf32-sh-linux", "elf32-sh-linux", "elf32-sh-linux")
25OUTPUT_ARCH(sh)
26ENTRY(_start)
27
28SECTIONS
29{
30 /*
Jean-Christophe PLAGNIOL-VILLARD236aad82009-06-04 12:06:44 +020031 * entry and reloct_dst will be provided via ldflags
32 */
33 . = .;
Nobuhiro Iwamatsu6c0bbdc2007-09-23 02:31:13 +090034
35 PROVIDE (_ftext = .);
36 PROVIDE (_fcode = .);
37 PROVIDE (_start = .);
Wolfgang Denk61fb15c52007-12-27 01:52:50 +010038
Nobuhiro Iwamatsu6c0bbdc2007-09-23 02:31:13 +090039 .text :
40 {
41 cpu/sh4/start.o (.text)
42 . = ALIGN(8192);
Jean-Christophe PLAGNIOL-VILLARD0cf4fd32008-09-10 22:48:01 +020043 common/env_embedded.o (.ppcenv)
Nobuhiro Iwamatsu6c0bbdc2007-09-23 02:31:13 +090044 . = ALIGN(8192);
Jean-Christophe PLAGNIOL-VILLARD0cf4fd32008-09-10 22:48:01 +020045 common/env_embedded.o (.ppcenvr)
Nobuhiro Iwamatsu6c0bbdc2007-09-23 02:31:13 +090046 . = ALIGN(8192);
47 *(.text)
48 . = ALIGN(4);
49 } =0xFF
50 PROVIDE (_ecode = .);
51 .rodata :
52 {
Trent Piephof62fb992009-02-18 15:22:05 -080053 *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
Nobuhiro Iwamatsu6c0bbdc2007-09-23 02:31:13 +090054 . = ALIGN(4);
55 }
56 PROVIDE (_etext = .);
57
58
59 PROVIDE (_fdata = .);
60 .data :
61 {
62 *(.data)
63 . = ALIGN(4);
64 }
65 PROVIDE (_edata = .);
66
67 PROVIDE (_fgot = .);
68 .got :
69 {
70 *(.got)
71 . = ALIGN(4);
72 }
73 PROVIDE (_egot = .);
74
75 PROVIDE (__u_boot_cmd_start = .);
76 .u_boot_cmd :
77 {
78 *(.u_boot_cmd)
79 . = ALIGN(4);
80 }
81 PROVIDE (__u_boot_cmd_end = .);
82
Wolfgang Denk61fb15c52007-12-27 01:52:50 +010083 PROVIDE (reloc_dst_end = .);
Nobuhiro Iwamatsu6c0bbdc2007-09-23 02:31:13 +090084 /* _reloc_dst_end = .; */
85
86 PROVIDE (bss_start = .);
87 PROVIDE (__bss_start = .);
Wolfgang Denk64134f02008-01-12 20:31:39 +010088 .bss (NOLOAD) :
Nobuhiro Iwamatsu6c0bbdc2007-09-23 02:31:13 +090089 {
90 *(.bss)
91 . = ALIGN(4);
92 }
93 PROVIDE (bss_end = .);
94
95 PROVIDE (_end = .);
96}