summaryrefslogtreecommitdiff
path: root/arch/arc
diff options
context:
space:
mode:
authorAlexey Brodkin <abrodkin@synopsys.com>2015-04-10 18:41:58 +0300
committerAlexey Brodkin <abrodkin@synopsys.com>2015-04-10 18:45:34 +0300
commit89576072cb60d50b61813f901c6fc296c01de506 (patch)
treec99082c4a51cfbdc9f275c869ff190e9283450d3 /arch/arc
parent0241c3131dd4c19a1116c863d622358eb2680462 (diff)
arc: make sure _start is in the beginning of .text section
This is important to have entry point in the beginning of .text section because it allows simple loading and execution of U-Boot. For example pre-bootloader loads U-Boot in memory starting from offset 0x81000000 and then just jumps to the same address. Otherwise pre-bootloader would need to find-out where entry-point is. In its turn if it deals with binary image of U-Boot there's no way for pre-bootloader to get required value. Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
Diffstat (limited to 'arch/arc')
-rw-r--r--arch/arc/cpu/u-boot.lds1
-rw-r--r--arch/arc/lib/Makefile2
2 files changed, 2 insertions, 1 deletions
diff --git a/arch/arc/cpu/u-boot.lds b/arch/arc/cpu/u-boot.lds
index ccddbf7dc9..693df74061 100644
--- a/arch/arc/cpu/u-boot.lds
+++ b/arch/arc/cpu/u-boot.lds
@@ -13,6 +13,7 @@ SECTIONS
.text : {
*(.__text_start)
*(.__image_copy_start)
+ arch/arc/lib/start.o (.text*)
*(.text*)
}
diff --git a/arch/arc/lib/Makefile b/arch/arc/lib/Makefile
index b88790492d..459bba9f66 100644
--- a/arch/arc/lib/Makefile
+++ b/arch/arc/lib/Makefile
@@ -4,6 +4,7 @@
# SPDX-License-Identifier: GPL-2.0+
#
+head-y := start.o
obj-y += cache.o
obj-y += cpu.o
obj-y += interrupts.o
@@ -18,7 +19,6 @@ obj-y += memcpy-700.o
obj-y += memset.o
obj-y += reset.o
obj-y += timer.o
-obj-y += start.o
obj-y += ints_low.o
obj-y += init_helpers.o