xref: /openbmc/u-boot/arch/sh/cpu/u-boot.lds (revision e04f9d0c)
1/*
2 * Copyright (C) 2007
3 * Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
4 *
5 * Copyright (C) 2008-2009
6 * Yoshihiro Shimoda <shimoda.yoshihiro@renesas.com>
7 *
8 * Copyright (C) 2008
9 * Mark Jonas <mark.jonas@de.bosch.com>
10 *
11 * SPDX-License-Identifier:	GPL-2.0+
12 */
13
14OUTPUT_FORMAT("elf32-sh-linux", "elf32-sh-linux", "elf32-sh-linux")
15OUTPUT_ARCH(sh)
16ENTRY(_start)
17
18SECTIONS
19{
20	/*
21	 * entry and reloct_dst will be provided via ldflags
22	 */
23	. = .;
24
25	PROVIDE (_ftext = .);
26	PROVIDE (_fcode = .);
27	PROVIDE (_start = .);
28
29	.text :
30	{
31		KEEP(*/start.o		(.text))
32		. = ALIGN(8192);
33		common/env_embedded.o	(.ppcenv)
34		. = ALIGN(8192);
35		common/env_embedded.o	(.ppcenvr)
36		. = ALIGN(8192);
37		*(.text)
38		. = ALIGN(4);
39	} =0xFF
40	PROVIDE (_ecode = .);
41	.rodata :
42	{
43		*(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
44		. = ALIGN(4);
45	}
46	PROVIDE (_etext = .);
47
48
49	PROVIDE (_fdata = .);
50	.data :
51	{
52		*(.data)
53		. = ALIGN(4);
54	}
55	PROVIDE (_edata = .);
56
57	PROVIDE (_fgot = .);
58	.got :
59	{
60		*(.got)
61		. = ALIGN(4);
62	}
63	PROVIDE (_egot = .);
64
65
66	.u_boot_list : {
67		KEEP(*(SORT(.u_boot_list*)));
68	}
69
70	PROVIDE (__init_end = .);
71	PROVIDE (reloc_dst_end = .);
72	/* _reloc_dst_end = .; */
73
74	PROVIDE (bss_start = .);
75	PROVIDE (__bss_start = .);
76	.bss :
77	{
78		*(.bss)
79		. = ALIGN(4);
80	}
81	PROVIDE (bss_end = .);
82
83	PROVIDE (__bss_end = .);
84}
85