xref: /rk3399_rockchip-uboot/board/freescale/mx31ads/u-boot.lds (revision 0649cd0d4908d9b983a0361b8665938ef25701be)
1f5acb9fdSJean-Christophe PLAGNIOL-VILLARD/*
2f5acb9fdSJean-Christophe PLAGNIOL-VILLARD * January 2004 - Changed to support H4 device
3f5acb9fdSJean-Christophe PLAGNIOL-VILLARD * Copyright (c) 2004 Texas Instruments
4f5acb9fdSJean-Christophe PLAGNIOL-VILLARD *
5f5acb9fdSJean-Christophe PLAGNIOL-VILLARD * (C) Copyright 2002
6792a09ebSDetlev Zundel * Gary Jennejohn, DENX Software Engineering, <garyj@denx.de>
7f5acb9fdSJean-Christophe PLAGNIOL-VILLARD *
81a459660SWolfgang Denk * SPDX-License-Identifier:	GPL-2.0+
9f5acb9fdSJean-Christophe PLAGNIOL-VILLARD */
10f5acb9fdSJean-Christophe PLAGNIOL-VILLARD
11f5acb9fdSJean-Christophe PLAGNIOL-VILLARDOUTPUT_FORMAT("elf32-littlearm", "elf32-littlearm", "elf32-littlearm")
12f5acb9fdSJean-Christophe PLAGNIOL-VILLARDOUTPUT_ARCH(arm)
13f5acb9fdSJean-Christophe PLAGNIOL-VILLARDENTRY(_start)
14f5acb9fdSJean-Christophe PLAGNIOL-VILLARDSECTIONS
15f5acb9fdSJean-Christophe PLAGNIOL-VILLARD{
16f5acb9fdSJean-Christophe PLAGNIOL-VILLARD	. = 0x00000000;
17f5acb9fdSJean-Christophe PLAGNIOL-VILLARD
18f5acb9fdSJean-Christophe PLAGNIOL-VILLARD	. = ALIGN(4);
19f5acb9fdSJean-Christophe PLAGNIOL-VILLARD	.text	   :
20f5acb9fdSJean-Christophe PLAGNIOL-VILLARD	{
21d026dec8SAlbert ARIBAUD		*(.__image_copy_start)
22f5acb9fdSJean-Christophe PLAGNIOL-VILLARD	  /* WARNING - the following is hand-optimized to fit within	*/
23f5acb9fdSJean-Christophe PLAGNIOL-VILLARD	  /* the sector layout of our flash chips!	XXX FIXME XXX	*/
24f5acb9fdSJean-Christophe PLAGNIOL-VILLARD
2541623c91SAlbert ARIBAUD	  *					(.vectors)
261a9a91dcSBenoît Thébaudeau	  arch/arm/cpu/arm1136/start.o		(.text*)
27e2906a59SMasahiro Yamada	  board/freescale/mx31ads/built-in.o	(.text*)
28e2906a59SMasahiro Yamada	  arch/arm/lib/built-in.o		(.text*)
29e2906a59SMasahiro Yamada	  net/built-in.o			(.text*)
30e2906a59SMasahiro Yamada	  drivers/mtd/built-in.o		(.text*)
31f5acb9fdSJean-Christophe PLAGNIOL-VILLARD
32f5acb9fdSJean-Christophe PLAGNIOL-VILLARD	  . = DEFINED(env_offset) ? env_offset : .;
33*0649cd0dSSimon Glass	  env/embedded.o(.text*)
34f5acb9fdSJean-Christophe PLAGNIOL-VILLARD
351a9a91dcSBenoît Thébaudeau	  *(.text*)
36f5acb9fdSJean-Christophe PLAGNIOL-VILLARD	}
374ac2e2d6SFabio Estevam	. = ALIGN(4);
381a9a91dcSBenoît Thébaudeau	.rodata : { *(.rodata*) }
39f5acb9fdSJean-Christophe PLAGNIOL-VILLARD
40f5acb9fdSJean-Christophe PLAGNIOL-VILLARD	. = ALIGN(4);
414ac2e2d6SFabio Estevam	.data : {
421a9a91dcSBenoît Thébaudeau		*(.data*)
434ac2e2d6SFabio Estevam	}
44f5acb9fdSJean-Christophe PLAGNIOL-VILLARD
45f5acb9fdSJean-Christophe PLAGNIOL-VILLARD	. = ALIGN(4);
46f5acb9fdSJean-Christophe PLAGNIOL-VILLARD
47f5acb9fdSJean-Christophe PLAGNIOL-VILLARD	. = ALIGN(4);
4855675142SMarek Vasut	.u_boot_list : {
49ef123c52SAlbert ARIBAUD		KEEP(*(SORT(.u_boot_list*)));
5055675142SMarek Vasut	}
51f5acb9fdSJean-Christophe PLAGNIOL-VILLARD
52f5acb9fdSJean-Christophe PLAGNIOL-VILLARD	. = ALIGN(4);
534ac2e2d6SFabio Estevam
54d026dec8SAlbert ARIBAUD	.image_copy_end :
55d026dec8SAlbert ARIBAUD	{
56d026dec8SAlbert ARIBAUD		*(.__image_copy_end)
57d026dec8SAlbert ARIBAUD	}
58b736e4b9SStefano Babic
5947bd65efSAlbert ARIBAUD	.rel_dyn_start :
6047bd65efSAlbert ARIBAUD	{
6147bd65efSAlbert ARIBAUD		*(.__rel_dyn_start)
6247bd65efSAlbert ARIBAUD	}
6347bd65efSAlbert ARIBAUD
644ac2e2d6SFabio Estevam	.rel.dyn : {
654ac2e2d6SFabio Estevam		*(.rel*)
6647bd65efSAlbert ARIBAUD	}
6747bd65efSAlbert ARIBAUD
6847bd65efSAlbert ARIBAUD	.rel_dyn_end :
6947bd65efSAlbert ARIBAUD	{
7047bd65efSAlbert ARIBAUD		*(.__rel_dyn_end)
714ac2e2d6SFabio Estevam	}
724ac2e2d6SFabio Estevam
736469a346SSimon Glass	.hash : { *(.hash*) }
746469a346SSimon Glass
75d0b5d9daSAlbert ARIBAUD	.end :
76d0b5d9daSAlbert ARIBAUD	{
77d0b5d9daSAlbert ARIBAUD		*(.__end)
78d0b5d9daSAlbert ARIBAUD	}
79d0b5d9daSAlbert ARIBAUD
80d0b5d9daSAlbert ARIBAUD	_image_binary_end = .;
814ac2e2d6SFabio Estevam
82f84a7b8fSAlbert ARIBAUD/*
83f84a7b8fSAlbert ARIBAUD * Compiler-generated __bss_start and __bss_end, see arch/arm/lib/bss.c
84f84a7b8fSAlbert ARIBAUD * __bss_base and __bss_limit are for linker only (overlay ordering)
85f84a7b8fSAlbert ARIBAUD */
86f84a7b8fSAlbert ARIBAUD
873ebd1cbcSAlbert ARIBAUD	.bss_start __rel_dyn_start (OVERLAY) : {
883ebd1cbcSAlbert ARIBAUD		KEEP(*(.__bss_start));
89f84a7b8fSAlbert ARIBAUD		__bss_base = .;
903ebd1cbcSAlbert ARIBAUD	}
913ebd1cbcSAlbert ARIBAUD
92f84a7b8fSAlbert ARIBAUD	.bss __bss_base (OVERLAY) : {
933ebd1cbcSAlbert ARIBAUD		*(.bss*)
944ac2e2d6SFabio Estevam		 . = ALIGN(4);
95f84a7b8fSAlbert ARIBAUD		 __bss_limit = .;
96f5acb9fdSJean-Christophe PLAGNIOL-VILLARD	}
97f84a7b8fSAlbert ARIBAUD	.bss_end __bss_limit (OVERLAY) : {
98f84a7b8fSAlbert ARIBAUD		KEEP(*(.__bss_end));
99f5acb9fdSJean-Christophe PLAGNIOL-VILLARD	}
1004ac2e2d6SFabio Estevam
101d0b5d9daSAlbert ARIBAUD	.dynsym _image_binary_end : { *(.dynsym) }
10247ed5dd0SAlbert ARIBAUD	.dynbss : { *(.dynbss) }
10347ed5dd0SAlbert ARIBAUD	.dynstr : { *(.dynstr*) }
10447ed5dd0SAlbert ARIBAUD	.dynamic : { *(.dynamic*) }
1056469a346SSimon Glass	.gnu.hash : { *(.gnu.hash) }
10647ed5dd0SAlbert ARIBAUD	.plt : { *(.plt*) }
10747ed5dd0SAlbert ARIBAUD	.interp : { *(.interp*) }
10847ed5dd0SAlbert ARIBAUD	.gnu : { *(.gnu*) }
10947ed5dd0SAlbert ARIBAUD	.ARM.exidx : { *(.ARM.exidx*) }
1104ac2e2d6SFabio Estevam}
111