xref: /rk3399_rockchip-uboot/arch/mips/cpu/u-boot.lds (revision 79fd7e649e287228a1445820a72f7dd33baedb96)
1cb5dbca8SGabor Juhos/*
2cb5dbca8SGabor Juhos * (C) Copyright 2003
3cb5dbca8SGabor Juhos * Wolfgang Denk Engineering, <wd@denx.de>
4cb5dbca8SGabor Juhos *
51a459660SWolfgang Denk * SPDX-License-Identifier:	GPL-2.0+
6cb5dbca8SGabor Juhos */
7cb5dbca8SGabor Juhos
8cb5dbca8SGabor Juhos#if defined(CONFIG_64BIT)
9cb5dbca8SGabor Juhos#define PTR_COUNT_SHIFT	3
10cb5dbca8SGabor Juhos#else
11cb5dbca8SGabor Juhos#define PTR_COUNT_SHIFT	2
12cb5dbca8SGabor Juhos#endif
13cb5dbca8SGabor Juhos
14cb5dbca8SGabor JuhosOUTPUT_ARCH(mips)
15cb5dbca8SGabor JuhosENTRY(_start)
16cb5dbca8SGabor JuhosSECTIONS
17cb5dbca8SGabor Juhos{
18cb5dbca8SGabor Juhos	. = 0x00000000;
19cb5dbca8SGabor Juhos
20cb5dbca8SGabor Juhos	. = ALIGN(4);
21cb5dbca8SGabor Juhos	.text : {
22cb5dbca8SGabor Juhos		*(.text*)
23cb5dbca8SGabor Juhos	}
24cb5dbca8SGabor Juhos
25cb5dbca8SGabor Juhos	. = ALIGN(4);
26cb5dbca8SGabor Juhos	.rodata : {
27cb5dbca8SGabor Juhos		*(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
28cb5dbca8SGabor Juhos	}
29cb5dbca8SGabor Juhos
30cb5dbca8SGabor Juhos	. = ALIGN(4);
31cb5dbca8SGabor Juhos	.data : {
32cb5dbca8SGabor Juhos		*(.data*)
33cb5dbca8SGabor Juhos	}
34cb5dbca8SGabor Juhos
35cb5dbca8SGabor Juhos	. = .;
36cb5dbca8SGabor Juhos	_gp = ALIGN(16) + 0x7ff0;
37cb5dbca8SGabor Juhos
38cb5dbca8SGabor Juhos	.got : {
39cb5dbca8SGabor Juhos		*(.got)
40cb5dbca8SGabor Juhos	}
41cb5dbca8SGabor Juhos
4245397816SGabor Juhos	num_got_entries = SIZEOF(.got) >> PTR_COUNT_SHIFT;
4345397816SGabor Juhos
44cb5dbca8SGabor Juhos	. = ALIGN(4);
45cb5dbca8SGabor Juhos	.sdata : {
46cb5dbca8SGabor Juhos		*(.sdata*)
47cb5dbca8SGabor Juhos	}
48cb5dbca8SGabor Juhos
49cb5dbca8SGabor Juhos	. = ALIGN(4);
50cb5dbca8SGabor Juhos	.u_boot_list : {
51ef123c52SAlbert ARIBAUD		KEEP(*(SORT(.u_boot_list*)));
52cb5dbca8SGabor Juhos	}
53cb5dbca8SGabor Juhos
54cb5dbca8SGabor Juhos	. = ALIGN(4);
553420bf1cSDaniel Schwierzeck	__image_copy_end = .;
563420bf1cSDaniel Schwierzeck
570ba8926eSGabor Juhos	.rel.dyn : {
580ba8926eSGabor Juhos		__rel_dyn_start = .;
590ba8926eSGabor Juhos		*(.rel.dyn)
600ba8926eSGabor Juhos		__rel_dyn_end = .;
610ba8926eSGabor Juhos	}
620ba8926eSGabor Juhos
63*79fd7e64SDaniel Schwierzeck	_end = .;
640ba8926eSGabor Juhos
650ba8926eSGabor Juhos	.bss __rel_dyn_start (OVERLAY) : {
66a52852c5SDaniel Schwierzeck		__bss_start = .;
67a52852c5SDaniel Schwierzeck		*(.sbss.*)
68a52852c5SDaniel Schwierzeck		*(.bss.*)
69a52852c5SDaniel Schwierzeck		*(COMMON)
70a52852c5SDaniel Schwierzeck		. = ALIGN(4);
71a52852c5SDaniel Schwierzeck		__bss_end = .;
72cb5dbca8SGabor Juhos	}
730ba8926eSGabor Juhos
74*79fd7e64SDaniel Schwierzeck	.dynsym _end : {
75*79fd7e64SDaniel Schwierzeck		*(.dynsym)
76*79fd7e64SDaniel Schwierzeck	}
77*79fd7e64SDaniel Schwierzeck
78*79fd7e64SDaniel Schwierzeck	.dynbss : {
790ba8926eSGabor Juhos		*(.dynbss)
80*79fd7e64SDaniel Schwierzeck	}
81*79fd7e64SDaniel Schwierzeck
82*79fd7e64SDaniel Schwierzeck	.dynstr : {
830ba8926eSGabor Juhos		*(.dynstr)
84*79fd7e64SDaniel Schwierzeck	}
85*79fd7e64SDaniel Schwierzeck
86*79fd7e64SDaniel Schwierzeck	.dynamic : {
870ba8926eSGabor Juhos		*(.dynamic)
88*79fd7e64SDaniel Schwierzeck	}
89*79fd7e64SDaniel Schwierzeck
90*79fd7e64SDaniel Schwierzeck	.plt : {
910ba8926eSGabor Juhos		*(.plt)
92*79fd7e64SDaniel Schwierzeck	}
93*79fd7e64SDaniel Schwierzeck
94*79fd7e64SDaniel Schwierzeck	.interp : {
95*79fd7e64SDaniel Schwierzeck		*(.interp)
96*79fd7e64SDaniel Schwierzeck	}
97*79fd7e64SDaniel Schwierzeck
98*79fd7e64SDaniel Schwierzeck	.gnu : {
99*79fd7e64SDaniel Schwierzeck		*(.gnu*)
100*79fd7e64SDaniel Schwierzeck	}
101*79fd7e64SDaniel Schwierzeck
102*79fd7e64SDaniel Schwierzeck	.MIPS.stubs : {
103*79fd7e64SDaniel Schwierzeck		*(.MIPS.stubs)
104*79fd7e64SDaniel Schwierzeck	}
105*79fd7e64SDaniel Schwierzeck
106*79fd7e64SDaniel Schwierzeck	.hash : {
107*79fd7e64SDaniel Schwierzeck		*(.hash)
1080ba8926eSGabor Juhos	}
109cb5dbca8SGabor Juhos}
110