blob: 6cd4056bc00ca6104d70566b48ca703e7be7bdab [file] [log] [blame]
Yoshihiro Shimoda07fecef2012-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 Denkd79de1d2013-07-08 09:37:19 +02008 * SPDX-License-Identifier: GPL-2.0+
Yoshihiro Shimoda07fecef2012-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 ARIBAUDc24895e2013-02-25 00:59:00 +000065 KEEP(*(SORT(.u_boot_list*)));
Yoshihiro Shimoda07fecef2012-11-04 15:53:22 +000066 }
67
Simon Glass6c2afb82016-05-14 18:49:29 -060068 PROVIDE (__init_end = .);
Yoshihiro Shimoda07fecef2012-11-04 15:53:22 +000069 PROVIDE (reloc_dst_end = .);
70 /* _reloc_dst_end = .; */
71
72 PROVIDE (bss_start = .);
73 PROVIDE (__bss_start = .);
74 .bss (NOLOAD) :
75 {
76 *(.bss)
77 . = ALIGN(4);
78 }
79 PROVIDE (bss_end = .);
80
Simon Glassed70c8f2013-03-14 06:54:53 +000081 PROVIDE (__bss_end = .);
Yoshihiro Shimoda07fecef2012-11-04 15:53:22 +000082}