Skip to contentSkip to conversation

arc: make sure _start is in the beginning of .text section

PATCH New Alexey Brodkin 1 participant 2 messages Apr 10, 2015 Synopsys ARC architecture

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 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.

---
 arch/arc/cpu/u-boot.lds | 1 +
 arch/arc/lib/Makefile   | 2 +-
 2 files changed, 2 insertions(+), 1 deletion(-)
arch/arc/cpu/u-boot.lds +1 -0
index ccddbf7..693df74 100644
@@ -13,6 +13,7 @@ SECTIONS
 	.text :	{
 		*(.__text_start)
 		*(.__image_copy_start)
+		arch/arc/lib/start.o (.text*)
 		*(.text*)
 	}
 
arch/arc/lib/Makefile +1 -1
index b887904..459bba9 100644
@@ -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
 
Signature · 1 line
2.1.0
author Applied
#1 lore raw

PATCH 1/1 arc: make sure _start is in the beginning of .text section

Quoted 11 lines · Alexey Brodkin

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.

Applied, thanks.

-Alexey