Skip to contentSkip to conversation

Tidy up ARM link scripts

PATCH New Simon Glass 4 participants 18 messages Nov 11, 2011 – Nov 20, 2011

Subsystems (2)
lore
Share & tools
lore
#0 lore raw

cover Tidy up ARM link scripts

The ARM link scripts are very similar but each CPU has its own. This series adds support for a default link script across an architecture in arch/<arch>/cpu/u-boot.lds.

It is then possible to remove most of the ARM link scripts. This will make it easier to maintain these.

Simon Glass (6):
Allow arch directory to contain .lds without requiring Makefile
arm: Remove jornada link script
arm: Remove unneeded setting of LDCSRIPT
Define CPUDIR for the .lds link script
arm: add a common .lds link script
arm: Use common .lds file where possible

 Makefile                            |   13 ++++-
 arch/arm/config.mk                  |    7 ---
 arch/arm/cpu/arm1136/u-boot.lds     |   89 -----------------------------------
 arch/arm/cpu/arm1176/u-boot.lds     |   78 ------------------------------
 arch/arm/cpu/arm720t/u-boot.lds     |   79 -------------------------------
 arch/arm/cpu/arm920t/u-boot.lds     |   88 ----------------------------------
 arch/arm/cpu/arm925t/u-boot.lds     |   83 --------------------------------
 arch/arm/cpu/arm926ejs/u-boot.lds   |   80 -------------------------------
 arch/arm/cpu/arm946es/u-boot.lds    |   80 -------------------------------
 arch/arm/cpu/arm_intcm/u-boot.lds   |   80 -------------------------------
 arch/arm/cpu/lh7a40x/u-boot.lds     |   80 -------------------------------
 arch/arm/cpu/pxa/u-boot.lds         |   80 -------------------------------
 arch/arm/cpu/s3c44b0/u-boot.lds     |   80 -------------------------------
 arch/arm/cpu/sa1100/u-boot.lds      |   83 --------------------------------
 arch/arm/cpu/{armv7 => }/u-boot.lds |    5 +-
 board/jornada/u-boot.lds            |   58 -----------------------
 16 files changed, 13 insertions(+), 1050 deletions(-)
 delete mode 100644 arch/arm/cpu/arm1136/u-boot.lds
 delete mode 100644 arch/arm/cpu/arm1176/u-boot.lds
 delete mode 100644 arch/arm/cpu/arm720t/u-boot.lds
 delete mode 100644 arch/arm/cpu/arm920t/u-boot.lds
 delete mode 100644 arch/arm/cpu/arm925t/u-boot.lds
 delete mode 100644 arch/arm/cpu/arm926ejs/u-boot.lds
 delete mode 100644 arch/arm/cpu/arm946es/u-boot.lds
 delete mode 100644 arch/arm/cpu/arm_intcm/u-boot.lds
 delete mode 100644 arch/arm/cpu/lh7a40x/u-boot.lds
 delete mode 100644 arch/arm/cpu/pxa/u-boot.lds
 delete mode 100644 arch/arm/cpu/s3c44b0/u-boot.lds
 delete mode 100644 arch/arm/cpu/sa1100/u-boot.lds
 rename arch/arm/cpu/{armv7 => }/u-boot.lds (94%)
 delete mode 100644 board/jornada/u-boot.lds
Signature · 1 line
1.7.3.1
#1 lore raw

PATCH 1/6 Allow arch directory to contain .lds without requiring Makefile

The Makefile for a CPU is in arch/($ARCH)/cpu/$(CPU). We want to support having an .lds file in arch/$(ARCH)/cpu without requiring an additional Makefile there. This change makes it clear that we expect a Makefile in the same directory as the link script except in this case.

---
 Makefile |    9 ++++++++-
 1 files changed, 8 insertions(+), 1 deletions(-)
Makefile +8 -1
index 294c762..e7da1c0 100644
@@ -174,6 +174,8 @@ include $(TOPDIR)/config.mk
 # that (or fail if absent).  Otherwise, search for a linker script in a
 # standard location.
 
+LDSCRIPT_MAKEFILE_DIR = $(dir $(LDSCRIPT))
+
 ifndef LDSCRIPT
 	#LDSCRIPT := $(TOPDIR)/board/$(BOARDDIR)/u-boot.lds.debug
 	ifdef CONFIG_SYS_LDSCRIPT
@@ -196,6 +198,11 @@ ifndef LDSCRIPT
 		LDSCRIPT := $(TOPDIR)/$(CPUDIR)/u-boot.lds
 	endif
 	ifeq ($(wildcard $(LDSCRIPT)),)
+		LDSCRIPT := $(TOPDIR)/arch/$(ARCH)/cpu/u-boot.lds
+		# We don't expect a Makefile here
+		LDSCRIPT_MAKEFILE_DIR =
+	endif
+	ifeq ($(wildcard $(LDSCRIPT)),)
 $(error could not find linker script)
 	endif
 endif
@@ -498,7 +505,7 @@ depend dep:	$(TIMESTAMP_FILE) $(VERSION_FILE) \
 		$(obj)include/autoconf.mk \
 		$(obj)include/generated/generic-asm-offsets.h \
 		$(obj)include/generated/asm-offsets.h
-		for dir in $(SUBDIRS) $(CPUDIR) $(dir $(LDSCRIPT)) ; do \
+		for dir in $(SUBDIRS) $(CPUDIR) $(LDSCRIPT_MAKEFILE_DIR) ; do \
 			$(MAKE) -C $$dir _depend ; done
 
 TAG_SUBDIRS = $(SUBDIRS)
Signature · 1 line
1.7.3.1
#2 lore raw

PATCH 1/6 Allow arch directory to contain .lds without requiring Makefile

Quoted 24 lines

The Makefile for a CPU is in arch/($ARCH)/cpu/$(CPU). We want to support having an .lds file in arch/$(ARCH)/cpu without requiring an additional Makefile there. This change makes it clear that we expect a Makefile in the same directory as the link script except in this case.

---
 Makefile |    9 ++++++++-
 1 files changed, 8 insertions(+), 1 deletions(-)
Makefile +2 -0
index 294c762..e7da1c0 100644
@@ -174,6 +174,8 @@ include $(TOPDIR)/config.mk
 # that (or fail if absent).  Otherwise, search for a linker script in a
 # standard location.
 
+LDSCRIPT_MAKEFILE_DIR = $(dir $(LDSCRIPT))
+
 ifndef LDSCRIPT
 	#LDSCRIPT := $(TOPDIR)/board/$(BOARDDIR)/u-boot.lds.debug
 	ifdef CONFIG_SYS_LDSCRIPT

Makefile ifndef LDSCRIPT · line 205

Quoted 8 lines
Makefile +5 -0
@@ -196,6 +198,11 @@ ifndef LDSCRIPT
 		LDSCRIPT := $(TOPDIR)/$(CPUDIR)/u-boot.lds
 	endif
 	ifeq ($(wildcard $(LDSCRIPT)),)
+		LDSCRIPT := $(TOPDIR)/arch/$(ARCH)/cpu/u-boot.lds
+		# We don't expect a Makefile here
+		LDSCRIPT_MAKEFILE_DIR =
+	endif
+	ifeq ($(wildcard $(LDSCRIPT)),)

Do I see the same ifeq... twice in here ? I understand what you do here, but it'd be good to add a comment please.

Quoted 12 lines
Makefile +1 -1
 $(error could not find linker script)
 	endif
 endif
@@ -498,7 +505,7 @@ depend dep:	$(TIMESTAMP_FILE) $(VERSION_FILE) \
 		$(obj)include/autoconf.mk \
 		$(obj)include/generated/generic-asm-offsets.h \
 		$(obj)include/generated/asm-offsets.h
-		for dir in $(SUBDIRS) $(CPUDIR) $(dir $(LDSCRIPT)) ; do \
+		for dir in $(SUBDIRS) $(CPUDIR) $(LDSCRIPT_MAKEFILE_DIR) ; do \
 			$(MAKE) -C $$dir _depend ; done
 
 TAG_SUBDIRS = $(SUBDIRS)
#3 lore raw

PATCH 1/6 Allow arch directory to contain .lds without requiring Makefile

Hi Marek,

Quoted 27 lines · Marek Vasut
Quoted 27 lines

The Makefile for a CPU is in arch/($ARCH)/cpu/$(CPU). We want to support having an .lds file in arch/$(ARCH)/cpu without requiring an additional Makefile there. This change makes it clear that we expect a Makefile in the same directory as the link script except in this case.

---
?Makefile | ? ?9 ++++++++-
?1 files changed, 8 insertions(+), 1 deletions(-)

Makefile +0 -0
index 294c762..e7da1c0 100644
@@ -174,6 +174,8 @@ include $(TOPDIR)/config.mk

?# that (or fail if absent). ?Otherwise, search for a linker script in a ?# standard location.

Makefile +2 -0
+LDSCRIPT_MAKEFILE_DIR = $(dir $(LDSCRIPT))
+

?ifndef LDSCRIPT
? ? ? #LDSCRIPT := $(TOPDIR)/board/$(BOARDDIR)/u-boot.lds.debug ? ? ? ifdef CONFIG_SYS_LDSCRIPT

Makefile +0 -0
@@ -196,6 +198,11 @@ ifndef LDSCRIPT

? ? ? ? ? ? ? LDSCRIPT := $(TOPDIR)/$(CPUDIR)/u-boot.lds ? ? ? endif
? ? ? ifeq ($(wildcard $(LDSCRIPT)),)

Quoted 8 lines
Quoted 5 lines

+ ? ? ? ? ? ? LDSCRIPT := $(TOPDIR)/arch/$(ARCH)/cpu/u-boot.lds
+ ? ? ? ? ? ? # We don't expect a Makefile here
+ ? ? ? ? ? ? LDSCRIPT_MAKEFILE_DIR =
+ ? ? endif
+ ? ? ifeq ($(wildcard $(LDSCRIPT)),)

Do I see the same ifeq... twice in here ? I understand what you do here, but it'd be good to add a comment please.

Actually it is in there 3 times, and I added a 4th! It is just trying to find a link script. I will add a comment to the top.

Regards,
Simon

Quoted 15 lines
Quoted 14 lines

?$(error could not find linker script)
? ? ? endif
?endif

Makefile +0 -0
@@ -498,7 +505,7 @@ depend dep: ? ? ? $(TIMESTAMP_FILE) $(VERSION_FILE) \
 ? ? ? ? ? ? ? $(obj)include/autoconf.mk \
 ? ? ? ? ? ? ? $(obj)include/generated/generic-asm-offsets.h \

? ? ? ? ? ? ? $(obj)include/generated/asm-offsets.h
- ? ? ? ? ? ? for dir in $(SUBDIRS) $(CPUDIR) $(dir $(LDSCRIPT)) ; do \
+ ? ? ? ? ? ? for dir in $(SUBDIRS) $(CPUDIR) $(LDSCRIPT_MAKEFILE_DIR) ; do \
? ? ? ? ? ? ? ? ? ? ? $(MAKE) -C $$dir _depend ; done

?TAG_SUBDIRS = $(SUBDIRS)

#4 lore raw

PATCH 1/6 Allow arch directory to contain .lds without requiring Makefile

In reply to Marek Vasut
Quoted 11 lines · On Saturday 19 November 2011 23:07:08 Marek Vasut wrote:

Makefile ifndef LDSCRIPT · line 205

Quoted 8 lines
Makefile +5 -0
 		LDSCRIPT := $(TOPDIR)/$(CPUDIR)/u-boot.lds
 	endif
 	ifeq ($(wildcard $(LDSCRIPT)),)
+		LDSCRIPT := $(TOPDIR)/arch/$(ARCH)/cpu/u-boot.lds
+		# We don't expect a Makefile here
+		LDSCRIPT_MAKEFILE_DIR =
+	endif
+	ifeq ($(wildcard $(LDSCRIPT)),)

Do I see the same ifeq... twice in here ? I understand what you do here, but it'd be good to add a comment please.

in the larger context, it makes sense
-mike
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 836 bytes
Desc: This is a digitally signed message part.
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20111120/fed3af77/attachment.pgp>

#5 lore raw

PATCH 2/6 arm: Remove jornada link script

In reply to Simon Glass

This link script seems old and incompatible with relocation and its own sa1000 start.S file. It isn't used because the CPU's link script was picked up in preference to this.

---
 board/jornada/u-boot.lds |   58 ----------------------------------------------
 1 files changed, 0 insertions(+), 58 deletions(-)
 delete mode 100644 board/jornada/u-boot.lds
board/jornada/u-boot.lds deleted +0 -58
deleted file mode 100644
index c75b21f..0000000
@@ -1,58 +0,0 @@
-/*
- * (C) Copyright 2000-2004
- * Wolfgang Denk, DENX Software Engineering, wd at denx.de.
- * 2004 (c) MontaVista Software, Inc.
- *
- * See file CREDITS for list of people who contributed to this
- * project.
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License as
- * published by the Free Software Foundation; either version 2 of
- * the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
- * MA 02111-1307 USA
- */
-
-OUTPUT_FORMAT("elf32-littlearm", "elf32-littlearm", "elf32-littlearm")
-OUTPUT_ARCH(arm)
-ENTRY(_start)
-SECTIONS
-{
-	. = 0x00000000;
-
-	. = ALIGN(4);
-	.text :
-	{
-		cpu/sa1100/start.o	(.text)
-		*(.text)
-	}
-
-	. = ALIGN(4);
-	.rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
-
-	. = ALIGN(4);
-	.data : { *(.data) }
-
-	. = ALIGN(4);
-	.got : { *(.got) }
-
-
-	. = .;
-	__u_boot_cmd_start = .;
-	.u_boot_cmd : { *(.u_boot_cmd) }
-	__u_boot_cmd_end = .;
-
-	. = ALIGN(4);
-	__bss_start = .;
-	.bss (NOLOAD) : { *(.bss) . = ALIGN(4); }
-	__bss_end__ = .;
-}
Signature · 1 line
1.7.3.1
#6 lore raw

PATCH 2/6 arm: Remove jornada link script

Quoted 65 lines

This link script seems old and incompatible with relocation and its own sa1000 start.S file. It isn't used because the CPU's link script was picked up in preference to this.

---
 board/jornada/u-boot.lds |   58
---------------------------------------------- 1 files changed, 0
insertions(+), 58 deletions(-)
 delete mode 100644 board/jornada/u-boot.lds
board/jornada/u-boot.lds deleted +0 -48
deleted file mode 100644
index c75b21f..0000000
@@ -1,58 +0,0 @@
-/*
- * (C) Copyright 2000-2004
- * Wolfgang Denk, DENX Software Engineering, wd at denx.de.
- * 2004 (c) MontaVista Software, Inc.
- *
- * See file CREDITS for list of people who contributed to this
- * project.
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License as
- * published by the Free Software Foundation; either version 2 of
- * the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
- * MA 02111-1307 USA
- */
-
-OUTPUT_FORMAT("elf32-littlearm", "elf32-littlearm", "elf32-littlearm")
-OUTPUT_ARCH(arm)
-ENTRY(_start)
-SECTIONS
-{
-	. = 0x00000000;
-
-	. = ALIGN(4);
-	.text :
-	{
-		cpu/sa1100/start.o	(.text)
-		*(.text)
-	}
-
-	. = ALIGN(4);
-	.rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
-
-	. = ALIGN(4);
-	.data : { *(.data) }
-
-	. = ALIGN(4);
-	.got : { *(.got) }
-
-

board/jornada/u-boot.lds line 58

Quoted 10 lines
board/jornada/u-boot.lds deleted +0 -10
-	. = .;
-	__u_boot_cmd_start = .;
-	.u_boot_cmd : { *(.u_boot_cmd) }
-	__u_boot_cmd_end = .;
-
-	. = ALIGN(4);
-	__bss_start = .;
-	.bss (NOLOAD) : { *(.bss) . = ALIGN(4); }
-	__bss_end__ = .;
-}

Please CC jornada guy next time. Anyway, it looks ok to me, but IMO needs some testing.

M

#7 lore raw

PATCH 2/6 arm: Remove jornada link script

Acked

Quoted 80 lines · Marek Vasut
Quoted 65 lines

This link script seems old and incompatible with relocation and its own sa1000 start.S file. It isn't used because the CPU's link script was picked up in preference to this.

---
 board/jornada/u-boot.lds |   58
---------------------------------------------- 1 files changed, 0
insertions(+), 58 deletions(-)
 delete mode 100644 board/jornada/u-boot.lds
board/jornada/u-boot.lds deleted +0 -48
deleted file mode 100644
index c75b21f..0000000
@@ -1,58 +0,0 @@
-/*
- * (C) Copyright 2000-2004
- * Wolfgang Denk, DENX Software Engineering, wd at denx.de.
- * 2004 (c) MontaVista Software, Inc.
- *
- * See file CREDITS for list of people who contributed to this
- * project.
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License as
- * published by the Free Software Foundation; either version 2 of
- * the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
- * MA 02111-1307 USA
- */
-
-OUTPUT_FORMAT("elf32-littlearm", "elf32-littlearm", "elf32-littlearm")
-OUTPUT_ARCH(arm)
-ENTRY(_start)
-SECTIONS
-{
-	. = 0x00000000;
-
-	. = ALIGN(4);
-	.text :
-	{
-		cpu/sa1100/start.o	(.text)
-		*(.text)
-	}
-
-	. = ALIGN(4);
-	.rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
-
-	. = ALIGN(4);
-	.data : { *(.data) }
-
-	. = ALIGN(4);
-	.got : { *(.got) }
-
-

board/jornada/u-boot.lds line 58

Quoted 10 lines
board/jornada/u-boot.lds deleted +0 -10
-	. = .;
-	__u_boot_cmd_start = .;
-	.u_boot_cmd : { *(.u_boot_cmd) }
-	__u_boot_cmd_end = .;
-
-	. = ALIGN(4);
-	__bss_start = .;
-	.bss (NOLOAD) : { *(.bss) . = ALIGN(4); }
-	__bss_end__ = .;
-}

Please CC jornada guy next time. Anyway, it looks ok to me, but IMO needs some testing.

M

#8 lore raw

PATCH 2/6 arm: Remove jornada link script

Quoted 1 line

Acked

Ok, so how shall we handle SA1110 ? I can pick it up, then send pullrq to albert ?

M

Quoted 85 lines · Marek Vasut
Quoted 83 lines
Quoted 68 lines

This link script seems old and incompatible with relocation and its own sa1000 start.S file. It isn't used because the CPU's link script was picked up in preference to this.

---

 board/jornada/u-boot.lds |   58

---------------------------------------------- 1 files changed, 0 insertions(+), 58 deletions(-)

 delete mode 100644 board/jornada/u-boot.lds
board/jornada/u-boot.lds deleted +0 -48
deleted file mode 100644
index c75b21f..0000000
@@ -1,58 +0,0 @@
-/*
- * (C) Copyright 2000-2004
- * Wolfgang Denk, DENX Software Engineering, wd at denx.de.
- * 2004 (c) MontaVista Software, Inc.
- *
- * See file CREDITS for list of people who contributed to this
- * project.
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License as
- * published by the Free Software Foundation; either version 2 of
- * the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
- * MA 02111-1307 USA
- */
-
-OUTPUT_FORMAT("elf32-littlearm", "elf32-littlearm", "elf32-littlearm")
-OUTPUT_ARCH(arm)
-ENTRY(_start)
-SECTIONS
-{
-	. = 0x00000000;
-
-	. = ALIGN(4);
-	.text :
-	{
-		cpu/sa1100/start.o	(.text)
-		*(.text)
-	}
-
-	. = ALIGN(4);
-	.rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
-
-	. = ALIGN(4);
-	.data : { *(.data) }
-
-	. = ALIGN(4);
-	.got : { *(.got) }
-
-

board/jornada/u-boot.lds line 58

Quoted 10 lines
board/jornada/u-boot.lds deleted +0 -10
-	. = .;
-	__u_boot_cmd_start = .;
-	.u_boot_cmd : { *(.u_boot_cmd) }
-	__u_boot_cmd_end = .;
-
-	. = ALIGN(4);
-	__bss_start = .;
-	.bss (NOLOAD) : { *(.bss) . = ALIGN(4); }
-	__bss_end__ = .;
-}

Please CC jornada guy next time. Anyway, it looks ok to me, but IMO needs some testing.

M

#9 lore raw

PATCH 2/6 arm: Remove jornada link script

Quoted 4 lines · Marek Vasut
Quoted 1 line

Acked

Ok, so how shall we handle SA1110 ? I can pick it up, then send pullrq to albert ?

SGTM - Simon

Quoted 88 lines

M

Quoted 85 lines · Marek Vasut
Quoted 83 lines
Quoted 68 lines

This link script seems old and incompatible with relocation and its own sa1000 start.S file. It isn't used because the CPU's link script was picked up in preference to this.

---

?board/jornada/u-boot.lds | ? 58

---------------------------------------------- 1 files changed, 0 insertions(+), 58 deletions(-)

?delete mode 100644 board/jornada/u-boot.lds

board/jornada/u-boot.lds deleted +0 -48
deleted file mode 100644
index c75b21f..0000000
@@ -1,58 +0,0 @@
-/*
- * (C) Copyright 2000-2004
- * Wolfgang Denk, DENX Software Engineering, wd at denx.de.
- * 2004 (c) MontaVista Software, Inc.
- *
- * See file CREDITS for list of people who contributed to this
- * project.
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License as
- * published by the Free Software Foundation; either version 2 of
- * the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. ?See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
- * MA 02111-1307 USA
- */
-
-OUTPUT_FORMAT("elf32-littlearm", "elf32-littlearm", "elf32-littlearm")
-OUTPUT_ARCH(arm)
-ENTRY(_start)
-SECTIONS
-{
- . = 0x00000000;
-
- . = ALIGN(4);
- .text :
- {
- ? ? ? ? cpu/sa1100/start.o ? ? ?(.text)
- ? ? ? ? *(.text)
- }
-
- . = ALIGN(4);
- .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
-
- . = ALIGN(4);
- .data : { *(.data) }
-
- . = ALIGN(4);
- .got : { *(.got) }
-
-

board/jornada/u-boot.lds line 58

Quoted 10 lines
board/jornada/u-boot.lds deleted +0 -10
- . = .;
- __u_boot_cmd_start = .;
- .u_boot_cmd : { *(.u_boot_cmd) }
- __u_boot_cmd_end = .;
-
- . = ALIGN(4);
- __bss_start = .;
- .bss (NOLOAD) : { *(.bss) . = ALIGN(4); }
- __bss_end__ = .;
-}

Please CC jornada guy next time. Anyway, it looks ok to me, but IMO needs some testing.

M

#10 lore raw

PATCH 3/6 arm: Remove unneeded setting of LDCSRIPT

In reply to Simon Glass

This is set by the top level Makefile anyway, so drop it. This does have the effect of changing the order - now the board link script will have preference over the CPU one. But this seems more correct anyway.

---
 arch/arm/config.mk |    7 -------
 1 files changed, 0 insertions(+), 7 deletions(-)
arch/arm/config.mk +0 -7
index 45f9dca..3c5f987 100644
@@ -70,13 +70,6 @@ PLATFORM_LIBS := $(OBJTREE)/arch/arm/lib/eabi_compat.o \
 endif
 endif
 
-ifdef CONFIG_SYS_LDSCRIPT
-# need to strip off double quotes
-LDSCRIPT := $(subst ",,$(CONFIG_SYS_LDSCRIPT))
-else
-LDSCRIPT := $(SRCTREE)/$(CPUDIR)/u-boot.lds
-endif
-
 # needed for relocation
 ifndef CONFIG_NAND_SPL
 LDFLAGS_u-boot += -pie
Signature · 1 line
1.7.3.1
#11 lore raw

PATCH 4/6 Define CPUDIR for the .lds link script

In reply to Simon Glass

Most link scripts differ only in directory containing the start.o file. Make this a #define to remove this last difference.

---
 Makefile |    4 +++-
 1 files changed, 3 insertions(+), 1 deletions(-)
Makefile +3 -1
index e7da1c0..a207e85 100644
@@ -474,7 +474,9 @@ $(LDSCRIPT):	depend
 		$(MAKE) -C $(dir $@) $(notdir $@)
 
 $(obj)u-boot.lds: $(LDSCRIPT)
-		$(CPP) $(CPPFLAGS) $(LDPPFLAGS) -ansi -D__ASSEMBLY__ -P - <$^ >$@
+		$(CPP) $(CPPFLAGS) $(LDPPFLAGS) \
+			-DCPUDIR=$(CPUDIR) \
+			-ansi -D__ASSEMBLY__ -P - <$^ >$@
 
 nand_spl:	$(TIMESTAMP_FILE) $(VERSION_FILE) depend
 		$(MAKE) -C nand_spl/board/$(BOARDDIR) all
Signature · 1 line
1.7.3.1
#12 lore raw

PATCH 4/6 Define CPUDIR for the .lds link script

Hi,

Quoted 13 lines · Simon Glass

Most link scripts differ only in directory containing the start.o file. Make this a #define to remove this last difference.

---
?Makefile | ? ?4 +++-
?1 files changed, 3 insertions(+), 1 deletions(-)

Makefile +0 -0
index e7da1c0..a207e85 100644

Makefile $(LDSCRIPT): ? ? ? ?depend · line 478

Quoted 6 lines
Makefile +2 -1
@@ -474,7 +474,9 @@ $(LDSCRIPT): ? ? ? ?depend
 ? ? ? ? ? ? ? ?$(MAKE) -C $(dir $@) $(notdir $@)
 
 ?$(obj)u-boot.lds: $(LDSCRIPT)
- ? ? ? ? ? ? ? $(CPP) $(CPPFLAGS) $(LDPPFLAGS) -ansi -D__ASSEMBLY__ -P - <$^ >$@
+ ? ? ? ? ? ? ? $(CPP) $(CPPFLAGS) $(LDPPFLAGS) \
+ ? ? ? ? ? ? ? ? ? ? ? -DCPUDIR=$(CPUDIR) \

One more thought - this maintains current behaviour, but perhaps we could require that there be no other start.o in U-Boot? If so, then we should be able to omit the directory name from start.o.

Regards,
Simon

Quoted 8 lines
Makefile +1 -0
+ ? ? ? ? ? ? ? ? ? ? ? -ansi -D__ASSEMBLY__ -P - <$^ >$@
 

?nand_spl: ? ? ?$(TIMESTAMP_FILE) $(VERSION_FILE) depend ? ? ? ? ? ? ? ?$(MAKE) -C nand_spl/board/$(BOARDDIR) all --
1.7.3.1

#13 lore raw

PATCH 5/6 arm: add a common .lds link script

In reply to Simon Glass

Most ARM CPUs use a very similar link script. This adds a basic script that can be used by most CPUs.

---
 arch/arm/cpu/u-boot.lds |   84 +++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 84 insertions(+), 0 deletions(-)
 create mode 100644 arch/arm/cpu/u-boot.lds
arch/arm/cpu/u-boot.lds new file +84 -0
new file mode 100644
index 0000000..25d68f1
@@ -0,0 +1,84 @@
+/*
+ * Copyright (c) 2004-2008 Texas Instruments
+ *
+ * (C) Copyright 2002
+ * Gary Jennejohn, DENX Software Engineering, <[email protected]>
+ *
+ * See file CREDITS for list of people who contributed to this
+ * project.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of
+ * the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
+ * MA 02111-1307 USA
+ */
+
+OUTPUT_FORMAT("elf32-littlearm", "elf32-littlearm", "elf32-littlearm")
+OUTPUT_ARCH(arm)
+ENTRY(_start)
+SECTIONS
+{
+	. = 0x00000000;
+
+	. = ALIGN(4);
+	.text :
+	{
+		CPUDIR/start.o (.text)
+		*(.text)
+	}
+
+	. = ALIGN(4);
+	.rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
+
+	. = ALIGN(4);
+	.data : {
+		*(.data)
+	}
+
+	. = ALIGN(4);
+
+	. = .;
+	__u_boot_cmd_start = .;
+	.u_boot_cmd : { *(.u_boot_cmd) }
+	__u_boot_cmd_end = .;
+
+	. = ALIGN(4);
+
+	__image_copy_end = .;
+
+	.rel.dyn : {
+		__rel_dyn_start = .;
+		*(.rel*)
+		__rel_dyn_end = .;
+	}
+
+	.dynsym : {
+		__dynsym_start = .;
+		*(.dynsym)
+	}
+
+	_end = .;
+
+	.bss __rel_dyn_start (OVERLAY) : {
+		__bss_start = .;
+		*(.bss)
+		 . = ALIGN(4);
+		__bss_end__ = .;
+	}
+
+	/DISCARD/ : { *(.dynstr*) }
+	/DISCARD/ : { *(.dynamic*) }
+	/DISCARD/ : { *(.plt*) }
+	/DISCARD/ : { *(.interp*) }
+	/DISCARD/ : { *(.gnu*) }
+}
Signature · 1 line
1.7.3.1
#14 lore raw

PATCH 6/6 arm: Use common .lds file where possible

In reply to Simon Glass

Each cpu directory currently has its own .lds file. This is only needed in most cases because the start.o file is in a different subdir.

Now that we can factor out this difference, we can move most cpus over to the common .lds file.

Series:cc: albert

---
 arch/arm/cpu/arm1136/u-boot.lds   |   89 -------------------------------------
 arch/arm/cpu/arm1176/u-boot.lds   |   78 --------------------------------
 arch/arm/cpu/arm720t/u-boot.lds   |   79 --------------------------------
 arch/arm/cpu/arm920t/u-boot.lds   |   88 ------------------------------------
 arch/arm/cpu/arm925t/u-boot.lds   |   83 ----------------------------------
 arch/arm/cpu/arm926ejs/u-boot.lds |   80 ---------------------------------
 arch/arm/cpu/arm946es/u-boot.lds  |   80 ---------------------------------
 arch/arm/cpu/arm_intcm/u-boot.lds |   80 ---------------------------------
 arch/arm/cpu/armv7/u-boot.lds     |   85 -----------------------------------
 arch/arm/cpu/lh7a40x/u-boot.lds   |   80 ---------------------------------
 arch/arm/cpu/pxa/u-boot.lds       |   80 ---------------------------------
 arch/arm/cpu/s3c44b0/u-boot.lds   |   80 ---------------------------------
 arch/arm/cpu/sa1100/u-boot.lds    |   83 ----------------------------------
 13 files changed, 0 insertions(+), 1065 deletions(-)
 delete mode 100644 arch/arm/cpu/arm1136/u-boot.lds
 delete mode 100644 arch/arm/cpu/arm1176/u-boot.lds
 delete mode 100644 arch/arm/cpu/arm720t/u-boot.lds
 delete mode 100644 arch/arm/cpu/arm920t/u-boot.lds
 delete mode 100644 arch/arm/cpu/arm925t/u-boot.lds
 delete mode 100644 arch/arm/cpu/arm926ejs/u-boot.lds
 delete mode 100644 arch/arm/cpu/arm946es/u-boot.lds
 delete mode 100644 arch/arm/cpu/arm_intcm/u-boot.lds
 delete mode 100644 arch/arm/cpu/armv7/u-boot.lds
 delete mode 100644 arch/arm/cpu/lh7a40x/u-boot.lds
 delete mode 100644 arch/arm/cpu/pxa/u-boot.lds
 delete mode 100644 arch/arm/cpu/s3c44b0/u-boot.lds
 delete mode 100644 arch/arm/cpu/sa1100/u-boot.lds
arch/arm/cpu/arm1136/u-boot.lds deleted +0 -89
deleted file mode 100644
index d1e2851..0000000
@@ -1,89 +0,0 @@
-/*
- * (C) Copyright 2009
- * Ilya Yanok, Emcraft Systems Ltd, <[email protected]>
- *
- * Copyright (C) 2005-2007 Samsung Electronics
- * Kyungin Park <[email protected]>
- *
- * Copyright (c) 2004 Texas Instruments
- *
- * (C) Copyright 2002
- * Gary Jennejohn, DENX Software Engineering, <[email protected]>
- *
- * See file CREDITS for list of people who contributed to this
- * project.
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License as
- * published by the Free Software Foundation; either version 2 of
- * the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
- * MA 02111-1307 USA
- */
-
-OUTPUT_FORMAT("elf32-littlearm", "elf32-littlearm", "elf32-littlearm")
-OUTPUT_ARCH(arm)
-ENTRY(_start)
-SECTIONS
-{
-	. = 0x00000000;
-
-	. = ALIGN(4);
-	.text :
-	{
-		arch/arm/cpu/arm1136/start.o	(.text)
-		*(.text)
-	}
-
-	. = ALIGN(4);
-	.rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
-
-	. = ALIGN(4);
-	.data : {
-		*(.data)
-	}
-
-	. = ALIGN(4);
-
-	. = .;
-	__u_boot_cmd_start = .;
-	.u_boot_cmd : { *(.u_boot_cmd) }
-	__u_boot_cmd_end = .;
-
-	. = ALIGN(4);
-
-	.rel.dyn : {
-		__rel_dyn_start = .;
-		*(.rel*)
-		__rel_dyn_end = .;
-	}
-
-	.dynsym : {
-		__dynsym_start = .;
-		*(.dynsym)
-	}
-
-	_end = .;
-
-	.bss __rel_dyn_start (OVERLAY) : {
-		__bss_start = .;
-		*(.bss)
-		 . = ALIGN(4);
-		__bss_end__ = .;
-	}
-
-	/DISCARD/ : { *(.dynstr*) }
-	/DISCARD/ : { *(.dynamic*) }
-	/DISCARD/ : { *(.plt*) }
-	/DISCARD/ : { *(.interp*) }
-	/DISCARD/ : { *(.gnu*) }
-}
arch/arm/cpu/arm1176/u-boot.lds deleted +0 -78

78 lines not on this page · raw message

arch/arm/cpu/arm720t/u-boot.lds deleted +0 -79

79 lines not on this page · raw message

arch/arm/cpu/arm920t/u-boot.lds deleted +0 -88

88 lines not on this page · raw message

arch/arm/cpu/arm925t/u-boot.lds deleted +0 -83

83 lines not on this page · raw message

arch/arm/cpu/arm926ejs/u-boot.lds deleted +0 -80

80 lines not on this page · raw message

arch/arm/cpu/arm946es/u-boot.lds deleted +0 -80

80 lines not on this page · raw message

arch/arm/cpu/arm_intcm/u-boot.lds deleted +0 -80

80 lines not on this page · raw message

arch/arm/cpu/armv7/u-boot.lds deleted +0 -85

85 lines not on this page · raw message

arch/arm/cpu/lh7a40x/u-boot.lds deleted +0 -80

80 lines not on this page · raw message

arch/arm/cpu/pxa/u-boot.lds deleted +0 -80

80 lines not on this page · raw message

arch/arm/cpu/s3c44b0/u-boot.lds deleted +0 -80

80 lines not on this page · raw message

arch/arm/cpu/sa1100/u-boot.lds deleted +0 -83

83 lines not on this page · raw message

Signature · 1 line
1.7.3.1
#15 lore raw

cover Tidy up ARM link scripts

In reply to Simon Glass
Quoted 7 lines

The ARM link scripts are very similar but each CPU has its own. This series adds support for a default link script across an architecture in arch/<arch>/cpu/u-boot.lds.

It is then possible to remove most of the ARM link scripts. This will make it easier to maintain these.

Please CC Albert Aribaud <[email protected]> with such series.

Quoted 41 lines

Simon Glass (6):
Allow arch directory to contain .lds without requiring Makefile
arm: Remove jornada link script
arm: Remove unneeded setting of LDCSRIPT
Define CPUDIR for the .lds link script
arm: add a common .lds link script
arm: Use common .lds file where possible

 Makefile                            |   13 ++++-
 arch/arm/config.mk                  |    7 ---
 arch/arm/cpu/arm1136/u-boot.lds     |   89

----------------------------------- arch/arm/cpu/arm1176/u-boot.lds |
78 ------------------------------ arch/arm/cpu/arm720t/u-boot.lds |
79 ------------------------------- arch/arm/cpu/arm920t/u-boot.lds |
88 ---------------------------------- arch/arm/cpu/arm925t/u-boot.lds
| 83 -------------------------------- arch/arm/cpu/arm926ejs/u-boot.lds

 |   80 ------------------------------- arch/arm/cpu/arm946es/u-boot.lds  
 |   80 ------------------------------- arch/arm/cpu/arm_intcm/u-boot.lds 
 |   80 ------------------------------- arch/arm/cpu/lh7a40x/u-boot.lds   
 |   80 ------------------------------- arch/arm/cpu/pxa/u-boot.lds       
 |   80 ------------------------------- arch/arm/cpu/s3c44b0/u-boot.lds   
 |   80 ------------------------------- arch/arm/cpu/sa1100/u-boot.lds    
 |   83 -------------------------------- arch/arm/cpu/{armv7 =>
}/u-boot.lds |    5 +-
 board/jornada/u-boot.lds            |   58 -----------------------
 16 files changed, 13 insertions(+), 1050 deletions(-)
 delete mode 100644 arch/arm/cpu/arm1136/u-boot.lds
 delete mode 100644 arch/arm/cpu/arm1176/u-boot.lds
 delete mode 100644 arch/arm/cpu/arm720t/u-boot.lds
 delete mode 100644 arch/arm/cpu/arm920t/u-boot.lds
 delete mode 100644 arch/arm/cpu/arm925t/u-boot.lds
 delete mode 100644 arch/arm/cpu/arm926ejs/u-boot.lds
 delete mode 100644 arch/arm/cpu/arm946es/u-boot.lds
 delete mode 100644 arch/arm/cpu/arm_intcm/u-boot.lds
 delete mode 100644 arch/arm/cpu/lh7a40x/u-boot.lds
 delete mode 100644 arch/arm/cpu/pxa/u-boot.lds
 delete mode 100644 arch/arm/cpu/s3c44b0/u-boot.lds
 delete mode 100644 arch/arm/cpu/sa1100/u-boot.lds
 rename arch/arm/cpu/{armv7 => }/u-boot.lds (94%)
 delete mode 100644 board/jornada/u-boot.lds
#16 lore raw

cover Tidy up ARM link scripts

Hi Marek,

Quoted 9 lines · Marek Vasut
Quoted 7 lines

The ARM link scripts are very similar but each CPU has its own. This series adds support for a default link script across an architecture in arch/<arch>/cpu/u-boot.lds.

It is then possible to remove most of the ARM link scripts. This will make it easier to maintain these.

Please CC Albert Aribaud <[email protected]> with such series.

Yes, I did intend to, but a typo got me. I have a new version with a few tidy-ups so will cc Albert with that one.

Regards
Simon

Quoted 42 lines
Quoted 41 lines

Simon Glass (6):
? Allow arch directory to contain .lds without requiring Makefile ? arm: Remove jornada link script
? arm: Remove unneeded setting of LDCSRIPT
? Define CPUDIR for the .lds link script
? arm: add a common .lds link script
? arm: Use common .lds file where possible

?Makefile ? ? ? ? ? ? ? ? ? ? ? ? ? ?| ? 13 ++++-
?arch/arm/config.mk ? ? ? ? ? ? ? ? ?| ? ?7 ---
?arch/arm/cpu/arm1136/u-boot.lds ? ? | ? 89

----------------------------------- arch/arm/cpu/arm1176/u-boot.lds ? ? | ?78 ------------------------------ arch/arm/cpu/arm720t/u-boot.lds ? ? | 79 ------------------------------- arch/arm/cpu/arm920t/u-boot.lds ? ? | 88 ---------------------------------- arch/arm/cpu/arm925t/u-boot.lds | ? 83 -------------------------------- arch/arm/cpu/arm926ejs/u-boot.lds

?| ? 80 ------------------------------- arch/arm/cpu/arm946es/u-boot.lds
?| ? 80 ------------------------------- arch/arm/cpu/arm_intcm/u-boot.lds
?| ? 80 ------------------------------- arch/arm/cpu/lh7a40x/u-boot.lds
?| ? 80 ------------------------------- arch/arm/cpu/pxa/u-boot.lds
?| ? 80 ------------------------------- arch/arm/cpu/s3c44b0/u-boot.lds
?| ? 80 ------------------------------- arch/arm/cpu/sa1100/u-boot.lds
?| ? 83 -------------------------------- arch/arm/cpu/{armv7 =>

}/u-boot.lds | ? ?5 +-
?board/jornada/u-boot.lds ? ? ? ? ? ?| ? 58 ----------------------- ?16 files changed, 13 insertions(+), 1050 deletions(-) ?delete mode 100644 arch/arm/cpu/arm1136/u-boot.lds ?delete mode 100644 arch/arm/cpu/arm1176/u-boot.lds ?delete mode 100644 arch/arm/cpu/arm720t/u-boot.lds ?delete mode 100644 arch/arm/cpu/arm920t/u-boot.lds ?delete mode 100644 arch/arm/cpu/arm925t/u-boot.lds ?delete mode 100644 arch/arm/cpu/arm926ejs/u-boot.lds ?delete mode 100644 arch/arm/cpu/arm946es/u-boot.lds ?delete mode 100644 arch/arm/cpu/arm_intcm/u-boot.lds ?delete mode 100644 arch/arm/cpu/lh7a40x/u-boot.lds ?delete mode 100644 arch/arm/cpu/pxa/u-boot.lds
?delete mode 100644 arch/arm/cpu/s3c44b0/u-boot.lds ?delete mode 100644 arch/arm/cpu/sa1100/u-boot.lds ?rename arch/arm/cpu/{armv7 => }/u-boot.lds (94%) ?delete mode 100644 board/jornada/u-boot.lds

#17 lore raw

cover Tidy up ARM link scripts

Quoted 10 lines

Hi Marek,

Quoted 7 lines · Marek Vasut
Quoted 6 lines

The ARM link scripts are very similar but each CPU has its own. This series adds support for a default link script across an architecture in arch/<arch>/cpu/u-boot.lds.

It is then possible to remove most of the ARM link scripts. This will make it easier to maintain these.

Quoted 7 lines
Quoted 1 line

Please CC Albert Aribaud <[email protected]> with such series.

Yes, I did intend to, but a typo got me. I have a new version with a few tidy-ups so will cc Albert with that one.

Regards
Simon

Thanks!!

M

Quoted 46 lines
Quoted 46 lines
Quoted 46 lines

Simon Glass (6):
Allow arch directory to contain .lds without requiring Makefile
arm: Remove jornada link script
arm: Remove unneeded setting of LDCSRIPT
Define CPUDIR for the .lds link script
arm: add a common .lds link script
arm: Use common .lds file where possible

 Makefile                            |   13 ++++-
 arch/arm/config.mk                  |    7 ---
 arch/arm/cpu/arm1136/u-boot.lds     |   89

----------------------------------- arch/arm/cpu/arm1176/u-boot.lds | 78 ------------------------------ arch/arm/cpu/arm720t/u-boot.lds | 79 ------------------------------- arch/arm/cpu/arm920t/u-boot.lds
| 88 ----------------------------------
arch/arm/cpu/arm925t/u-boot.lds

| 83 --------------------------------
| arch/arm/cpu/arm926ejs/u-boot.lds

 |   80 ------------------------------- arch/arm/cpu/arm946es/u-boot.lds
 |   80 -------------------------------
arch/arm/cpu/arm_intcm/u-boot.lds |   80
------------------------------- arch/arm/cpu/lh7a40x/u-boot.lds |   80
------------------------------- arch/arm/cpu/pxa/u-boot.lds |   80
------------------------------- arch/arm/cpu/s3c44b0/u-boot.lds |   80
------------------------------- arch/arm/cpu/sa1100/u-boot.lds |   83
-------------------------------- arch/arm/cpu/{armv7 => }/u-boot.lds |
   5 +-
 board/jornada/u-boot.lds            |   58 -----------------------
 16 files changed, 13 insertions(+), 1050 deletions(-)
 delete mode 100644 arch/arm/cpu/arm1136/u-boot.lds
 delete mode 100644 arch/arm/cpu/arm1176/u-boot.lds
 delete mode 100644 arch/arm/cpu/arm720t/u-boot.lds
 delete mode 100644 arch/arm/cpu/arm920t/u-boot.lds
 delete mode 100644 arch/arm/cpu/arm925t/u-boot.lds
 delete mode 100644 arch/arm/cpu/arm926ejs/u-boot.lds
 delete mode 100644 arch/arm/cpu/arm946es/u-boot.lds
 delete mode 100644 arch/arm/cpu/arm_intcm/u-boot.lds
 delete mode 100644 arch/arm/cpu/lh7a40x/u-boot.lds
 delete mode 100644 arch/arm/cpu/pxa/u-boot.lds
 delete mode 100644 arch/arm/cpu/s3c44b0/u-boot.lds
 delete mode 100644 arch/arm/cpu/sa1100/u-boot.lds
 rename arch/arm/cpu/{armv7 => }/u-boot.lds (94%)
 delete mode 100644 board/jornada/u-boot.lds