xref: /rk3399_rockchip-uboot/arch/mips/cpu/u-boot.lds (revision cb5dbca8994b8c02fbb55d42ed9b90b9766c26ea)
1*cb5dbca8SGabor Juhos/*
2*cb5dbca8SGabor Juhos * (C) Copyright 2003
3*cb5dbca8SGabor Juhos * Wolfgang Denk Engineering, <wd@denx.de>
4*cb5dbca8SGabor Juhos *
5*cb5dbca8SGabor Juhos * See file CREDITS for list of people who contributed to this
6*cb5dbca8SGabor Juhos * project.
7*cb5dbca8SGabor Juhos *
8*cb5dbca8SGabor Juhos * This program is free software; you can redistribute it and/or
9*cb5dbca8SGabor Juhos * modify it under the terms of the GNU General Public License as
10*cb5dbca8SGabor Juhos * published by the Free Software Foundation; either version 2 of
11*cb5dbca8SGabor Juhos * the License, or (at your option) any later version.
12*cb5dbca8SGabor Juhos *
13*cb5dbca8SGabor Juhos * This program is distributed in the hope that it will be useful,
14*cb5dbca8SGabor Juhos * but WITHOUT ANY WARRANTY; without even the implied warranty of
15*cb5dbca8SGabor Juhos * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
16*cb5dbca8SGabor Juhos * GNU General Public License for more details.
17*cb5dbca8SGabor Juhos *
18*cb5dbca8SGabor Juhos * You should have received a copy of the GNU General Public License
19*cb5dbca8SGabor Juhos * along with this program; if not, write to the Free Software
20*cb5dbca8SGabor Juhos * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
21*cb5dbca8SGabor Juhos * MA 02111-1307 USA
22*cb5dbca8SGabor Juhos */
23*cb5dbca8SGabor Juhos
24*cb5dbca8SGabor Juhos#if defined(CONFIG_64BIT)
25*cb5dbca8SGabor Juhos#define PTR_COUNT_SHIFT	3
26*cb5dbca8SGabor Juhos#else
27*cb5dbca8SGabor Juhos#define PTR_COUNT_SHIFT	2
28*cb5dbca8SGabor Juhos#endif
29*cb5dbca8SGabor Juhos
30*cb5dbca8SGabor JuhosOUTPUT_ARCH(mips)
31*cb5dbca8SGabor JuhosENTRY(_start)
32*cb5dbca8SGabor JuhosSECTIONS
33*cb5dbca8SGabor Juhos{
34*cb5dbca8SGabor Juhos	. = 0x00000000;
35*cb5dbca8SGabor Juhos
36*cb5dbca8SGabor Juhos	. = ALIGN(4);
37*cb5dbca8SGabor Juhos	.text : {
38*cb5dbca8SGabor Juhos		*(.text*)
39*cb5dbca8SGabor Juhos	}
40*cb5dbca8SGabor Juhos
41*cb5dbca8SGabor Juhos	. = ALIGN(4);
42*cb5dbca8SGabor Juhos	.rodata : {
43*cb5dbca8SGabor Juhos		*(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
44*cb5dbca8SGabor Juhos	}
45*cb5dbca8SGabor Juhos
46*cb5dbca8SGabor Juhos	. = ALIGN(4);
47*cb5dbca8SGabor Juhos	.data : {
48*cb5dbca8SGabor Juhos		*(.data*)
49*cb5dbca8SGabor Juhos	}
50*cb5dbca8SGabor Juhos
51*cb5dbca8SGabor Juhos	. = .;
52*cb5dbca8SGabor Juhos	_gp = ALIGN(16) + 0x7ff0;
53*cb5dbca8SGabor Juhos
54*cb5dbca8SGabor Juhos	.got : {
55*cb5dbca8SGabor Juhos		__got_start = .;
56*cb5dbca8SGabor Juhos		*(.got)
57*cb5dbca8SGabor Juhos		__got_end = .;
58*cb5dbca8SGabor Juhos	}
59*cb5dbca8SGabor Juhos
60*cb5dbca8SGabor Juhos	. = ALIGN(4);
61*cb5dbca8SGabor Juhos	.sdata : {
62*cb5dbca8SGabor Juhos		*(.sdata*)
63*cb5dbca8SGabor Juhos	}
64*cb5dbca8SGabor Juhos
65*cb5dbca8SGabor Juhos	. = ALIGN(4);
66*cb5dbca8SGabor Juhos	.u_boot_list : {
67*cb5dbca8SGabor Juhos		#include <u-boot.lst>
68*cb5dbca8SGabor Juhos	}
69*cb5dbca8SGabor Juhos
70*cb5dbca8SGabor Juhos	uboot_end_data = .;
71*cb5dbca8SGabor Juhos
72*cb5dbca8SGabor Juhos	num_got_entries = (__got_end - __got_start) >> PTR_COUNT_SHIFT;
73*cb5dbca8SGabor Juhos
74*cb5dbca8SGabor Juhos	. = ALIGN(4);
75*cb5dbca8SGabor Juhos	.sbss : {
76*cb5dbca8SGabor Juhos		*(.sbss*)
77*cb5dbca8SGabor Juhos	}
78*cb5dbca8SGabor Juhos
79*cb5dbca8SGabor Juhos	.bss : {
80*cb5dbca8SGabor Juhos		*(.bss*)
81*cb5dbca8SGabor Juhos		. = ALIGN(4);
82*cb5dbca8SGabor Juhos	}
83*cb5dbca8SGabor Juhos	uboot_end = .;
84*cb5dbca8SGabor Juhos}
85