blob: 053df642ea9b41fa84e7239300631317499fd3cc [file] [log] [blame]
Yoshihiro Shimoda1a2621b2012-11-04 15:53:22 +00001/*
2 * Copyright (C) 2007
3 * Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
4 *
5 * Copyright (C) 2012
6 * Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
7 *
Wolfgang Denk1a459662013-07-08 09:37:19 +02008 * SPDX-License-Identifier: GPL-2.0+
Yoshihiro Shimoda1a2621b2012-11-04 15:53:22 +00009 */
10
11OUTPUT_FORMAT("elf32-sh-linux", "elf32-sh-linux", "elf32-sh-linux")
12OUTPUT_ARCH(sh)
13ENTRY(_start)
14
15SECTIONS
16{
17 /*
18 * entry and reloct_dst will be provided via ldflags
19 */
20 . = .;
21
22 PROVIDE (_ftext = .);
23 PROVIDE (_fcode = .);
24 PROVIDE (_start = .);
25
26 .text :
27 {
28 KEEP(arch/sh/cpu/sh4/start.o (.text))
29 *(.spiboot1.text)
30 *(.spiboot2.text)
31 . = ALIGN(8192);
32 common/env_embedded.o (.ppcenv)
33 . = ALIGN(8192);
34 common/env_embedded.o (.ppcenvr)
35 . = ALIGN(8192);
36 *(.text)
37 . = ALIGN(4);
38 } =0xFF
39 PROVIDE (_ecode = .);
40 .rodata :
41 {
42 *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
43 . = ALIGN(4);
44 }
45 PROVIDE (_etext = .);
46
47
48 PROVIDE (_fdata = .);
49 .data :
50 {
51 *(.data)
52 . = ALIGN(4);
53 }
54 PROVIDE (_edata = .);
55
56 PROVIDE (_fgot = .);
57 .got :
58 {
59 *(.got)
60 . = ALIGN(4);
61 }
62 PROVIDE (_egot = .);
63
64 .u_boot_list : {
Albert ARIBAUDef123c52013-02-25 00:59:00 +000065 KEEP(*(SORT(.u_boot_list*)));
Yoshihiro Shimoda1a2621b2012-11-04 15:53:22 +000066 }
67
68 PROVIDE (reloc_dst_end = .);
69 /* _reloc_dst_end = .; */
70
71 PROVIDE (bss_start = .);
72 PROVIDE (__bss_start = .);
73 .bss (NOLOAD) :
74 {
75 *(.bss)
76 . = ALIGN(4);
77 }
78 PROVIDE (bss_end = .);
79
Simon Glass3929fb02013-03-14 06:54:53 +000080 PROVIDE (__bss_end = .);
Yoshihiro Shimoda1a2621b2012-11-04 15:53:22 +000081}