]> git.kernelconcepts.de Git - karo-tx-uboot.git/blob - board/renesas/sh7785lcr/u-boot.lds
sh: make the linker scripts more generic
[karo-tx-uboot.git] / board / renesas / sh7785lcr / u-boot.lds
1 /*
2  * Copyrigth (c) 2007
3  * Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
4  * Copyrigth (c) 2008-2009 Yoshihiro Shimoda <shimoda.yoshihiro@renesas.com>
5  *
6  * See file CREDITS for list of people who contributed to this
7  * project.
8  *
9  * This program is free software; you can redistribute it and/or
10  * modify it under the terms of the GNU General Public License as
11  * published by the Free Software Foundation; either version 2 of
12  * the License, or (at your option) any later version.
13  *
14  * This program is distributed in the hope that it will be useful,
15  * but WITHOUT ANY WARRANTY; without even the implied warranty of
16  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
17  * GNU General Public License for more details.
18  *
19  * You should have received a copy of the GNU General Public License
20  * along with this program; if not, write to the Free Software
21  * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
22  * MA 02111-1307 USA
23  */
24
25 OUTPUT_FORMAT("elf32-sh-linux", "elf32-sh-linux", "elf32-sh-linux")
26 OUTPUT_ARCH(sh)
27 ENTRY(_start)
28
29 SECTIONS
30 {
31         /*
32          * entry and reloct_dst will be provided via ldflags
33          */
34         . = .;
35
36         PROVIDE (_ftext = .);
37         PROVIDE (_fcode = .);
38         PROVIDE (_start = .);
39
40         .text :
41         {
42                 cpu/sh4/start.o         (.text)
43                 . = ALIGN(8192);
44                 common/env_embedded.o   (.ppcenv)
45                 . = ALIGN(8192);
46                 common/env_embedded.o   (.ppcenvr)
47                 . = ALIGN(8192);
48                 *(.text)
49                 . = ALIGN(4);
50         } =0xFF
51         PROVIDE (_ecode = .);
52         .rodata :
53         {
54                 *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
55                 . = ALIGN(4);
56         }
57         PROVIDE (_etext = .);
58
59
60         PROVIDE (_fdata = .);
61         .data :
62         {
63                 *(.data)
64                 . = ALIGN(4);
65         }
66         PROVIDE (_edata = .);
67
68         PROVIDE (_fgot = .);
69         .got :
70         {
71                 *(.got)
72                 . = ALIGN(4);
73         }
74         PROVIDE (_egot = .);
75
76         PROVIDE (__u_boot_cmd_start = .);
77         .u_boot_cmd :
78         {
79                 *(.u_boot_cmd)
80                 . = ALIGN(4);
81         }
82         PROVIDE (__u_boot_cmd_end = .);
83
84         PROVIDE (reloc_dst_end = .);
85         /* _reloc_dst_end = .; */
86
87         PROVIDE (bss_start = .);
88         PROVIDE (__bss_start = .);
89         .bss :
90         {
91                 *(.bss)
92                 . = ALIGN(4);
93         }
94         PROVIDE (bss_end = .);
95
96         PROVIDE (_end = .);
97 }