xref: /rk3399_rockchip-uboot/arch/mips/cpu/u-boot.lds (revision a0af08b9db92c7dc8051a8cfd12d5520d85ab4a9)
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 = .;
56*a0af08b9SPaul Burton	__init_end = .;
573420bf1cSDaniel Schwierzeck
580ba8926eSGabor Juhos	.rel.dyn : {
590ba8926eSGabor Juhos		__rel_dyn_start = .;
600ba8926eSGabor Juhos		*(.rel.dyn)
610ba8926eSGabor Juhos		__rel_dyn_end = .;
620ba8926eSGabor Juhos	}
630ba8926eSGabor Juhos
6479fd7e64SDaniel Schwierzeck	_end = .;
650ba8926eSGabor Juhos
660ba8926eSGabor Juhos	.bss __rel_dyn_start (OVERLAY) : {
67a52852c5SDaniel Schwierzeck		__bss_start = .;
68a52852c5SDaniel Schwierzeck		*(.sbss.*)
69a52852c5SDaniel Schwierzeck		*(.bss.*)
70a52852c5SDaniel Schwierzeck		*(COMMON)
71a52852c5SDaniel Schwierzeck		. = ALIGN(4);
72a52852c5SDaniel Schwierzeck		__bss_end = .;
73cb5dbca8SGabor Juhos	}
740ba8926eSGabor Juhos
7579fd7e64SDaniel Schwierzeck	.dynsym _end : {
7679fd7e64SDaniel Schwierzeck		*(.dynsym)
7779fd7e64SDaniel Schwierzeck	}
7879fd7e64SDaniel Schwierzeck
7979fd7e64SDaniel Schwierzeck	.dynbss : {
800ba8926eSGabor Juhos		*(.dynbss)
8179fd7e64SDaniel Schwierzeck	}
8279fd7e64SDaniel Schwierzeck
8379fd7e64SDaniel Schwierzeck	.dynstr : {
840ba8926eSGabor Juhos		*(.dynstr)
8579fd7e64SDaniel Schwierzeck	}
8679fd7e64SDaniel Schwierzeck
8779fd7e64SDaniel Schwierzeck	.dynamic : {
880ba8926eSGabor Juhos		*(.dynamic)
8979fd7e64SDaniel Schwierzeck	}
9079fd7e64SDaniel Schwierzeck
9179fd7e64SDaniel Schwierzeck	.plt : {
920ba8926eSGabor Juhos		*(.plt)
9379fd7e64SDaniel Schwierzeck	}
9479fd7e64SDaniel Schwierzeck
9579fd7e64SDaniel Schwierzeck	.interp : {
9679fd7e64SDaniel Schwierzeck		*(.interp)
9779fd7e64SDaniel Schwierzeck	}
9879fd7e64SDaniel Schwierzeck
9979fd7e64SDaniel Schwierzeck	.gnu : {
10079fd7e64SDaniel Schwierzeck		*(.gnu*)
10179fd7e64SDaniel Schwierzeck	}
10279fd7e64SDaniel Schwierzeck
10379fd7e64SDaniel Schwierzeck	.MIPS.stubs : {
10479fd7e64SDaniel Schwierzeck		*(.MIPS.stubs)
10579fd7e64SDaniel Schwierzeck	}
10679fd7e64SDaniel Schwierzeck
10779fd7e64SDaniel Schwierzeck	.hash : {
10879fd7e64SDaniel Schwierzeck		*(.hash)
1090ba8926eSGabor Juhos	}
110cb5dbca8SGabor Juhos}
111