blob: 17f8091ea4ebfbc2c02e4b7ab2f7f10bcbff608f [file] [log] [blame]
Nobuhiro Iwamatsu6f7d4362008-08-31 23:02:04 +09001/*
2 * Copyright (C) 2008 Nobuhiro Iwamatsu
3 * Copyright (C) 2008 Renesas Solutions Corp.
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-VILLARD6e743892009-06-04 12:06:44 +020031 * entry and reloct_dst will be provided via ldflags
Nobuhiro Iwamatsu6f7d4362008-08-31 23:02:04 +090032 */
Jean-Christophe PLAGNIOL-VILLARD6e743892009-06-04 12:06:44 +020033 . = .;
Nobuhiro Iwamatsu6f7d4362008-08-31 23:02:04 +090034
35 PROVIDE (_ftext = .);
36 PROVIDE (_fcode = .);
37 PROVIDE (_start = .);
38
39 .text :
40 {
Nobuhiro Iwamatsucb4148c2011-03-07 16:36:21 +090041 KEEP(arch/sh/cpu/sh2/start.o (.text))
Nobuhiro Iwamatsu6f7d4362008-08-31 23:02:04 +090042 . = ALIGN(8192);
Jean-Christophe PLAGNIOL-VILLARD4436c1e2008-09-10 22:48:01 +020043 common/env_embedded.o (.ppcenv)
Nobuhiro Iwamatsu6f7d4362008-08-31 23:02:04 +090044 . = ALIGN(8192);
Jean-Christophe PLAGNIOL-VILLARD4436c1e2008-09-10 22:48:01 +020045 common/env_embedded.o (.ppcenvr)
Nobuhiro Iwamatsu6f7d4362008-08-31 23:02:04 +090046 . = ALIGN(8192);
47 *(.text)
48 . = ALIGN(4);
49 } =0xFF
50 PROVIDE (_ecode = .);
51 .rodata :
52 {
Trent Piepho4438e5e2009-02-18 15:22:05 -080053 *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
Nobuhiro Iwamatsu6f7d4362008-08-31 23:02:04 +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
Nobuhiro Iwamatsu6f7d4362008-08-31 23:02:04 +090075
Marek Vasut607092a2012-10-12 10:27:03 +000076 .u_boot_list : {
77 #include <u-boot.lst>
78 }
79
Nobuhiro Iwamatsu6f7d4362008-08-31 23:02:04 +090080 PROVIDE (reloc_dst_end = .);
81
82 PROVIDE (bss_start = .);
83 PROVIDE (__bss_start = .);
84 .bss :
85 {
86 *(.bss)
87 . = ALIGN(4);
88 }
89 PROVIDE (bss_end = .);
90
Po-Yu Chuangcedbf4b2011-03-01 22:59:59 +000091 PROVIDE (__bss_end__ = .);
Nobuhiro Iwamatsu6f7d4362008-08-31 23:02:04 +090092}