[U-Boot] [PATCH 11/11] sparc: unified u-boot.lds

Jean-Christophe PLAGNIOL-VILLARD plagnioj at jcrosoft.com
Wed Feb 25 07:11:18 CET 2009


Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj at jcrosoft.com>
---
 board/gaisler/gr_cpci_ax2000/u-boot.lds            |  160 -------------------
 board/gaisler/gr_ep2s60/u-boot.lds                 |  160 -------------------
 board/gaisler/gr_xc3s_1500/u-boot.lds              |  162 --------------------
 board/gaisler/grsim_leon2/u-boot.lds               |  159 -------------------
 lib_sparc/Makefile                                 |    5 +-
 .../grsim/u-boot.lds => lib_sparc/u-boot.lds.S     |   70 +++++-----
 sparc_config.mk                                    |    1 +
 7 files changed, 40 insertions(+), 677 deletions(-)
 delete mode 100644 board/gaisler/gr_cpci_ax2000/u-boot.lds
 delete mode 100644 board/gaisler/gr_ep2s60/u-boot.lds
 delete mode 100644 board/gaisler/gr_xc3s_1500/u-boot.lds
 delete mode 100644 board/gaisler/grsim_leon2/u-boot.lds
 rename board/gaisler/grsim/u-boot.lds => lib_sparc/u-boot.lds.S (73%)

diff --git a/board/gaisler/gr_cpci_ax2000/u-boot.lds b/board/gaisler/gr_cpci_ax2000/u-boot.lds
deleted file mode 100644
index a087631..0000000
--- a/board/gaisler/gr_cpci_ax2000/u-boot.lds
+++ /dev/null
@@ -1,160 +0,0 @@
-/* Linker script for Gaisler Research AB's GR-CPCI-AX2000 board
- * with template design.
- *
- * (C) Copyright 2008
- * Daniel Hellstrom, Gaisler Research, daniel at gaisler.com.
- *
- * 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-sparc", "elf32-sparc", "elf32-sparc")
-OUTPUT_ARCH(sparc)
-ENTRY(_start)
-SECTIONS
-{
-
-/* Read-only sections, merged into text segment: */
-	. = + SIZEOF_HEADERS;
-	.interp : { *(.interp) }
-	.hash          : { *(.hash)		}
-	.dynsym        : { *(.dynsym)		}
-	.dynstr        : { *(.dynstr)		}
-	.rel.text      : { *(.rel.text)		}
-	.rela.text     : { *(.rela.text)	}
-	.rel.data      : { *(.rel.data)		}
-	.rela.data     : { *(.rela.data)	}
-	.rel.rodata    : { *(.rel.rodata)	}
-	.rela.rodata   : { *(.rela.rodata)	}
-	.rel.got       : { *(.rel.got)		}
-	.rela.got      : { *(.rela.got)		}
-	.rel.ctors     : { *(.rel.ctors)	}
-	.rela.ctors    : { *(.rela.ctors)	}
-	.rel.dtors     : { *(.rel.dtors)	}
-	.rela.dtors    : { *(.rela.dtors)	}
-	.rel.bss       : { *(.rel.bss)		}
-	.rela.bss      : { *(.rela.bss)		}
-	.rel.plt       : { *(.rel.plt)		}
-	.rela.plt      : { *(.rela.plt)		}
-	.init          : { *(.init)		}
-	.plt : { *(.plt) }
-
-	.text : {
-		_load_addr = .;
-		_text = .;
-
-		*(.start)
-		cpu/leon3/start.o (.text)
-/* 8k is the same as the PROM offset from end of main memory, (CONFIG_SYS_PROM_SIZE) */
-		. = ALIGN(8192);
-/* PROM CODE, Will be relocated to the end of memory,
- * no global data accesses please.
- */
-		__prom_start = .;
-		*(.prom.pgt)
-		*(.prom.data)
-		*(.prom.text)
-		. = ALIGN(16);
-		__prom_end = .;
-		*(.text)
-		*(.fixup)
-		*(.gnu.warning)
-/*		*(.got1)*/
-		. = ALIGN(16);
-		*(.rodata)
-		*(.rodata1)
-		*(.rodata.*)
-		*(.eh_frame)
-	}
-	. = ALIGN(4);
-	_etext = .;
-
-	/* CMD Table */
-
-	__u_boot_cmd_start = .;
-	.u_boot_cmd : { *(.u_boot_cmd) }
-	. = ALIGN(4);
-	__u_boot_cmd_end = .;
-
-	.data	:
-	{
-		*(.data)
-		*(.data1)
-		*(.data.rel)
-		*(.data.rel.*)
-		*(.sdata)
-		*(.sdata2)
-		*(.dynamic)
-		CONSTRUCTORS
-	}
-	_edata	=	.;
-	PROVIDE (edata = .);
-
-	. = ALIGN(4);
-	__got_start = .;
-	.got : {
-		*(.got)
-/*		*(.data.rel)
-		*(.data.rel.local)*/
-		. = ALIGN(16);
-	}
-	__got_end = .;
-
-/*	.data.rel : { } */
-
-	. = ALIGN(4096);
-	__init_begin = .;
-	.text.init : { *(.text.init) }
-	.data.init : { *(.data.init) }
-	. = ALIGN(4096);
-	__init_end = .;
-
-	__bss_start = .;
-	.bss		:
-	{
-	 *(.sbss) *(.scommon)
-	 *(.dynbss)
-	 *(.bss)
-	 *(COMMON)
-	. = ALIGN(16); /* to speed clearing of bss up */
-	}
-	__bss_end = . ;
-	_end = . ;
-	PROVIDE (end = .);
-
-/* Relocated into main memory */
-
-	/* Start of main memory */
-	/*. = 0x40000000;*/
-
-	.stack (NOLOAD)	: { *(.stack) }
-
-	/* PROM CODE */
-
-	/* global data in RAM passed to kernel after booting */
-
-  .stab 0		: { *(.stab) }
-  .stabstr 0		: { *(.stabstr) }
-  .stab.excl 0		: { *(.stab.excl) }
-  .stab.exclstr 0	: { *(.stab.exclstr) }
-  .stab.index 0		: { *(.stab.index) }
-  .stab.indexstr 0	: { *(.stab.indexstr) }
-  .comment 0		: { *(.comment) }
-
-}
diff --git a/board/gaisler/gr_ep2s60/u-boot.lds b/board/gaisler/gr_ep2s60/u-boot.lds
deleted file mode 100644
index e461a36..0000000
--- a/board/gaisler/gr_ep2s60/u-boot.lds
+++ /dev/null
@@ -1,160 +0,0 @@
-/* Linker script for Gaisler Research AB's Template design
- * for Altera NIOS Development board Stratix II Edition, EP2S60 FPGA.
- *
- * (C) Copyright 2008
- * Daniel Hellstrom, Gaisler Research, daniel at gaisler.com.
- *
- * 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-sparc", "elf32-sparc", "elf32-sparc")
-OUTPUT_ARCH(sparc)
-ENTRY(_start)
-SECTIONS
-{
-
-/* Read-only sections, merged into text segment: */
-	. = + SIZEOF_HEADERS;
-	.interp : { *(.interp) }
-	.hash          : { *(.hash)		}
-	.dynsym        : { *(.dynsym)		}
-	.dynstr        : { *(.dynstr)		}
-	.rel.text      : { *(.rel.text)		}
-	.rela.text     : { *(.rela.text)	}
-	.rel.data      : { *(.rel.data)		}
-	.rela.data     : { *(.rela.data)	}
-	.rel.rodata    : { *(.rel.rodata)	}
-	.rela.rodata   : { *(.rela.rodata)	}
-	.rel.got       : { *(.rel.got)		}
-	.rela.got      : { *(.rela.got)		}
-	.rel.ctors     : { *(.rel.ctors)	}
-	.rela.ctors    : { *(.rela.ctors)	}
-	.rel.dtors     : { *(.rel.dtors)	}
-	.rela.dtors    : { *(.rela.dtors)	}
-	.rel.bss       : { *(.rel.bss)		}
-	.rela.bss      : { *(.rela.bss)		}
-	.rel.plt       : { *(.rel.plt)		}
-	.rela.plt      : { *(.rela.plt)		}
-	.init          : { *(.init)		}
-	.plt : { *(.plt) }
-
-	.text : {
-		_load_addr = .;
-		_text = .;
-
-		*(.start)
-		cpu/leon3/start.o (.text)
-/* 8k is the same as the PROM offset from end of main memory, (CONFIG_SYS_PROM_SIZE) */
-		. = ALIGN(8192);
-/* PROM CODE, Will be relocated to the end of memory,
- * no global data accesses please.
- */
-		__prom_start = .;
-		*(.prom.pgt)
-		*(.prom.data)
-		*(.prom.text)
-		. = ALIGN(16);
-		__prom_end = .;
-		*(.text)
-		*(.fixup)
-		*(.gnu.warning)
-/*		*(.got1)*/
-		. = ALIGN(16);
-		*(.rodata)
-		*(.rodata1)
-		*(.rodata.*)
-		*(.eh_frame)
-	}
-	. = ALIGN(4);
-	_etext = .;
-
-	/* CMD Table */
-
-	__u_boot_cmd_start = .;
-	.u_boot_cmd : { *(.u_boot_cmd) }
-	. = ALIGN(4);
-	__u_boot_cmd_end = .;
-
-	.data	:
-	{
-		*(.data)
-		*(.data1)
-		*(.data.rel)
-		*(.data.rel.*)
-		*(.sdata)
-		*(.sdata2)
-		*(.dynamic)
-		CONSTRUCTORS
-	}
-	_edata	=	.;
-	PROVIDE (edata = .);
-
-	. = ALIGN(4);
-	__got_start = .;
-	.got : {
-		*(.got)
-/*		*(.data.rel)
-		*(.data.rel.local)*/
-		. = ALIGN(16);
-	}
-	__got_end = .;
-
-/*	.data.rel : { } */
-
-	. = ALIGN(4096);
-	__init_begin = .;
-	.text.init : { *(.text.init) }
-	.data.init : { *(.data.init) }
-	. = ALIGN(4096);
-	__init_end = .;
-
-	__bss_start = .;
-	.bss		:
-	{
-	 *(.sbss) *(.scommon)
-	 *(.dynbss)
-	 *(.bss)
-	 *(COMMON)
-	. = ALIGN(16); /* to speed clearing of bss up */
-	}
-	__bss_end = . ;
-	_end = . ;
-	PROVIDE (end = .);
-
-/* Relocated into main memory */
-
-	/* Start of main memory */
-	/*. = 0x40000000;*/
-
-	.stack (NOLOAD)	: { *(.stack) }
-
-	/* PROM CODE */
-
-	/* global data in RAM passed to kernel after booting */
-
-  .stab 0		: { *(.stab) }
-  .stabstr 0		: { *(.stabstr) }
-  .stab.excl 0		: { *(.stab.excl) }
-  .stab.exclstr 0	: { *(.stab.exclstr) }
-  .stab.index 0		: { *(.stab.index) }
-  .stab.indexstr 0	: { *(.stab.indexstr) }
-  .comment 0		: { *(.comment) }
-
-}
diff --git a/board/gaisler/gr_xc3s_1500/u-boot.lds b/board/gaisler/gr_xc3s_1500/u-boot.lds
deleted file mode 100644
index ddd27d4..0000000
--- a/board/gaisler/gr_xc3s_1500/u-boot.lds
+++ /dev/null
@@ -1,162 +0,0 @@
-/* Linker script for Gaisler Research AB's GR-XC3S-1500 board
- * with template design.
- *
- * (C) Copyright 2007
- * Daniel Hellstrom, Gaisler Research, daniel at gaisler.com.
- *
- * 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-sparc", "elf32-sparc", "elf32-sparc")
-OUTPUT_ARCH(sparc)
-ENTRY(_start)
-SECTIONS
-{
-
-/* Read-only sections, merged into text segment: */
-	. = + SIZEOF_HEADERS;
-	.interp : { *(.interp) }
-	.hash          : { *(.hash)		}
-	.dynsym        : { *(.dynsym)		}
-	.dynstr        : { *(.dynstr)		}
-	.rel.text      : { *(.rel.text)		}
-	.rela.text     : { *(.rela.text)	}
-	.rel.data      : { *(.rel.data)		}
-	.rela.data     : { *(.rela.data)	}
-	.rel.rodata    : { *(.rel.rodata)	}
-	.rela.rodata   : { *(.rela.rodata)	}
-	.rel.got       : { *(.rel.got)		}
-	.rela.got      : { *(.rela.got)		}
-	.rel.ctors     : { *(.rel.ctors)	}
-	.rela.ctors    : { *(.rela.ctors)	}
-	.rel.dtors     : { *(.rel.dtors)	}
-	.rela.dtors    : { *(.rela.dtors)	}
-	.rel.bss       : { *(.rel.bss)		}
-	.rela.bss      : { *(.rela.bss)		}
-	.rel.plt       : { *(.rel.plt)		}
-	.rela.plt      : { *(.rela.plt)		}
-	.init          : { *(.init)		}
-	.plt : { *(.plt) }
-
-	.text : {
-		_load_addr = .;
-		_text = .;
-
-		*(.start)
-		cpu/leon3/start.o (.text)
-/* 8k is the same as the PROM offset from end of main memory, (CONFIG_SYS_PROM_SIZE) */
-		. = ALIGN(8192);
-/* PROM CODE, Will be relocated to the end of memory,
- * no global data accesses please.
- */
-		__prom_start = .;
-		*(.prom.pgt)
-		*(.prom.data)
-		*(.prom.text)
-		. = ALIGN(16);
-		__prom_end = .;
-		*(.text)
-		*(.fixup)
-		*(.gnu.warning)
-/*		*(.got1)*/
-		. = ALIGN(16);
-		*(.rodata)
-		*(.rodata1)
-		*(.rodata.*)
-		*(.eh_frame)
-	}
-	. = ALIGN(4);
-	_etext = .;
-
-	/* CMD Table */
-
-	__u_boot_cmd_start = .;
-	.u_boot_cmd : { *(.u_boot_cmd) }
-	. = ALIGN(4);
-	__u_boot_cmd_end = .;
-
-	.data	:
-	{
-		*(.data)
-		*(.data1)
-		*(.data.rel)
-		*(.data.rel.*)
-		*(.sdata)
-		*(.sdata2)
-		*(.dynamic)
-		CONSTRUCTORS
-	}
-	_edata	=	.;
-	PROVIDE (edata = .);
-
-	. = ALIGN(4);
-	__got_start = .;
-	.got : {
-		*(.got)
-/*		*(.data.rel)
-		*(.data.rel.local)*/
-		. = ALIGN(16);
-	}
-	__got_end = .;
-
-/*	.data.rel : { } */
-
-
-	. = ALIGN(4096);
-	__init_begin = .;
-	.text.init : { *(.text.init) }
-	.data.init : { *(.data.init) }
-	. = ALIGN(4096);
-	__init_end = .;
-
-	__bss_start = .;
-	.bss		:
-	{
-	 *(.sbss) *(.scommon)
-	 *(.dynbss)
-	 *(.bss)
-	 *(COMMON)
-	. = ALIGN(16); /* to speed clearing of bss up */
-	}
-	__bss_end = . ;
-	_end = . ;
-	PROVIDE (end = .);
-
-/* Relocated into main memory */
-
-	/* Start of main memory */
-	/*. = 0x40000000;*/
-
-	.stack (NOLOAD)	: { *(.stack) }
-
-	/* PROM CODE */
-
-	/* global data in RAM passed to kernel after booting */
-
-
-  .stab 0		: { *(.stab) }
-  .stabstr 0		: { *(.stabstr) }
-  .stab.excl 0		: { *(.stab.excl) }
-  .stab.exclstr 0	: { *(.stab.exclstr) }
-  .stab.index 0		: { *(.stab.index) }
-  .stab.indexstr 0	: { *(.stab.indexstr) }
-  .comment 0		: { *(.comment) }
-
-}
diff --git a/board/gaisler/grsim_leon2/u-boot.lds b/board/gaisler/grsim_leon2/u-boot.lds
deleted file mode 100644
index b3462d4..0000000
--- a/board/gaisler/grsim_leon2/u-boot.lds
+++ /dev/null
@@ -1,159 +0,0 @@
-/* Linker script for Gaisler Research AB's GRSIM LEON2 simulator.
- *
- * (C) Copyright 2007
- * Daniel Hellstrom, Gaisler Research, daniel at gaisler.com.
- *
- * 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-sparc", "elf32-sparc", "elf32-sparc")
-OUTPUT_ARCH(sparc)
-ENTRY(_start)
-SECTIONS
-{
-
-/* Read-only sections, merged into text segment: */
-	. = + SIZEOF_HEADERS;
-	.interp : { *(.interp) }
-	.hash          : { *(.hash) }
-	.dynsym        : { *(.dynsym) }
-	.dynstr        : { *(.dynstr) }
-	.rel.text      : { *(.rel.text) }
-	.rela.text     : { *(.rela.text) }
-	.rel.data      : { *(.rel.data) }
-	.rela.data     : { *(.rela.data) }
-	.rel.rodata    : { *(.rel.rodata) }
-	.rela.rodata   : { *(.rela.rodata) }
-	.rel.got       : { *(.rel.got) }
-	.rela.got      : { *(.rela.got) }
-	.rel.ctors     : { *(.rel.ctors) }
-	.rela.ctors    : { *(.rela.ctors) }
-	.rel.dtors     : { *(.rel.dtors) }
-	.rela.dtors    : { *(.rela.dtors) }
-	.rel.bss       : { *(.rel.bss) }
-	.rela.bss      : { *(.rela.bss) }
-	.rel.plt       : { *(.rel.plt) }
-	.rela.plt      : { *(.rela.plt) }
-	.init          : { *(.init) }
-	.plt : { *(.plt) }
-
-	.text : {
-		_load_addr = .;
-		_text = .;
-
-		*(.start)
-		cpu/leon2/start.o (.text)
-/* 8k is the same as the PROM offset from end of main memory, (CONFIG_SYS_PROM_SIZE) */
-		. = ALIGN(8192);
-/* PROM CODE, Will be relocated to the end of memory,
- * no global data accesses please.
- */
-		__prom_start = .;
-		*(.prom.pgt)
-		*(.prom.data)
-		*(.prom.text)
-		. = ALIGN(16);
-		__prom_end = .;
-		*(.text)
-		*(.fixup)
-		*(.gnu.warning)
-/*		*(.got1)*/
-		. = ALIGN(16);
-		*(.rodata)
-		*(.rodata1)
-		*(.rodata.*)
-		*(.eh_frame)
-	}
-	. = ALIGN(4);
-	_etext = .;
-
-	/* CMD Table */
-
-	__u_boot_cmd_start = .;
-	.u_boot_cmd : { *(.u_boot_cmd) }
-	. = ALIGN(4);
-	__u_boot_cmd_end = .;
-
-	.data	:
-	{
-		*(.data)
-		*(.data1)
-		*(.data.rel)
-		*(.data.rel.*)
-		*(.sdata)
-		*(.sdata2)
-		*(.dynamic)
-		CONSTRUCTORS
-	}
-	_edata	=	.;
-	PROVIDE (edata = .);
-
-	. = ALIGN(4);
-	__got_start = .;
-	.got : {
-		*(.got)
-/*		*(.data.rel)
-		*(.data.rel.local)*/
-		. = ALIGN(16);
-	}
-	__got_end = .;
-
-/*	.data.rel : { } */
-
-	. = ALIGN(4096);
-	__init_begin = .;
-	.text.init : { *(.text.init) }
-	.data.init : { *(.data.init) }
-	. = ALIGN(4096);
-	__init_end = .;
-
-	__bss_start = .;
-	.bss	:
-	{
-	 *(.sbss) *(.scommon)
-	 *(.dynbss)
-	 *(.bss)
-	 *(COMMON)
-	. = ALIGN(16); /* to speed clearing of bss up */
-	}
-	__bss_end = . ;
-	_end = . ;
-	PROVIDE (end = .);
-
-/* Relocated into main memory */
-
-	/* Start of main memory */
-	/*. = 0x40000000;*/
-
-	.stack (NOLOAD)	: { *(.stack) }
-
-	/* PROM CODE */
-
-	/* global data in RAM passed to kernel after booting */
-
-	.stab 0		: { *(.stab) }
-	.stabstr 0		: { *(.stabstr) }
-	.stab.excl 0		: { *(.stab.excl) }
-	.stab.exclstr 0	: { *(.stab.exclstr) }
-	.stab.index 0		: { *(.stab.index) }
-	.stab.indexstr 0	: { *(.stab.indexstr) }
-	.comment 0		: { *(.comment) }
-
-}
diff --git a/lib_sparc/Makefile b/lib_sparc/Makefile
index 040ca10..b360241 100644
--- a/lib_sparc/Makefile
+++ b/lib_sparc/Makefile
@@ -32,9 +32,12 @@ COBJS	= board.o cache.o interrupts.o time.o bootm.o
 SRCS	:= $(SOBJS:.o=.S) $(COBJS:.o=.c)
 OBJS	:= $(addprefix $(obj),$(SOBJS) $(COBJS))
 
-$(LIB):	$(obj).depend $(OBJS)
+$(LIB):	$(obj).depend $(OBJS) $(obj)u-boot.lds
 	$(AR) $(ARFLAGS) $@ $(OBJS)
 
+$(obj)u-boot.lds: u-boot.lds.S
+	$(CPP) $(CPPFLAGS) -D__ASSEMBLY__ -P $^ > $@
+
 #########################################################################
 
 # defines $(obj).depend target
diff --git a/board/gaisler/grsim/u-boot.lds b/lib_sparc/u-boot.lds.S
similarity index 73%
rename from board/gaisler/grsim/u-boot.lds
rename to lib_sparc/u-boot.lds.S
index a9cc7ca..5bec850 100644
--- a/board/gaisler/grsim/u-boot.lds
+++ b/lib_sparc/u-boot.lds.S
@@ -23,6 +23,8 @@
  *
  */
 
+#include <config.h>
+
 OUTPUT_FORMAT("elf32-sparc", "elf32-sparc", "elf32-sparc")
 OUTPUT_ARCH(sparc)
 ENTRY(_start)
@@ -31,28 +33,28 @@ SECTIONS
 
 /* Read-only sections, merged into text segment: */
 	. = + SIZEOF_HEADERS;
-	.interp : { *(.interp) }
-	.hash          : { *(.hash) }
-	.dynsym        : { *(.dynsym) }
-	.dynstr        : { *(.dynstr) }
-	.rel.text      : { *(.rel.text) }
-	.rela.text     : { *(.rela.text) }
-	.rel.data      : { *(.rel.data) }
-	.rela.data     : { *(.rela.data) }
-	.rel.rodata    : { *(.rel.rodata) }
-	.rela.rodata   : { *(.rela.rodata) }
-	.rel.got       : { *(.rel.got) }
-	.rela.got      : { *(.rela.got) }
-	.rel.ctors     : { *(.rel.ctors) }
-	.rela.ctors    : { *(.rela.ctors) }
-	.rel.dtors     : { *(.rel.dtors) }
-	.rela.dtors    : { *(.rela.dtors) }
-	.rel.bss       : { *(.rel.bss) }
-	.rela.bss      : { *(.rela.bss) }
-	.rel.plt       : { *(.rel.plt) }
-	.rela.plt      : { *(.rela.plt) }
-	.init          : { *(.init) }
-	.plt : { *(.plt) }
+	.interp		: { *(.interp) }
+	.hash		: { *(.hash) }
+	.dynsym		: { *(.dynsym) }
+	.dynstr		: { *(.dynstr) }
+	.rel.text	: { *(.rel.text) }
+	.rela.text	: { *(.rela.text) }
+	.rel.data	: { *(.rel.data) }
+	.rela.data	: { *(.rela.data) }
+	.rel.rodata	: { *(.rel.rodata) }
+	.rela.rodata	: { *(.rela.rodata) }
+	.rel.got	: { *(.rel.got) }
+	.rela.got	: { *(.rela.got) }
+	.rel.ctors	: { *(.rel.ctors) }
+	.rela.ctors	: { *(.rela.ctors) }
+	.rel.dtors	: { *(.rel.dtors) }
+	.rela.dtors	: { *(.rela.dtors) }
+	.rel.bss	: { *(.rel.bss) }
+	.rela.bss	: { *(.rela.bss) }
+	.rel.plt	: { *(.rel.plt) }
+	.rela.plt	: { *(.rela.plt) }
+	.init		: { *(.init) }
+	.plt		: { *(.plt) }
 
 	.text : {
 		_load_addr = .;
@@ -91,7 +93,7 @@ SECTIONS
 	. = ALIGN(4);
 	__u_boot_cmd_end = .;
 
-	.data	:
+	.data :
 	{
 		*(.data)
 		*(.data1)
@@ -102,7 +104,7 @@ SECTIONS
 		*(.dynamic)
 		CONSTRUCTORS
 	}
-	_edata	=	.;
+	_edata	= .;
 	PROVIDE (edata = .);
 
 	. = ALIGN(4);
@@ -117,7 +119,6 @@ SECTIONS
 
 /*	.data.rel : { } */
 
-
 	. = ALIGN(4096);
 	__init_begin = .;
 	.text.init : { *(.text.init) }
@@ -126,13 +127,14 @@ SECTIONS
 	__init_end = .;
 
 	__bss_start = .;
-	.bss	:
+	.bss :
 	{
-	 *(.sbss) *(.scommon)
-	 *(.dynbss)
-	 *(.bss)
-	 *(COMMON)
-	. = ALIGN(16); /* to speed clearing of bss up */
+		*(.sbss)
+		*(.scommon)
+		*(.dynbss)
+		*(.bss)
+		*(COMMON)
+		. = ALIGN(16); /* to speed clearing of bss up */
 	}
 	__bss_end = . ;
 	_end = . ;
@@ -149,13 +151,11 @@ SECTIONS
 
 	/* global data in RAM passed to kernel after booting */
 
-
-	.stab 0		: { *(.stab) }
+	.stab 0			: { *(.stab) }
 	.stabstr 0		: { *(.stabstr) }
 	.stab.excl 0		: { *(.stab.excl) }
-	.stab.exclstr 0	: { *(.stab.exclstr) }
+	.stab.exclstr 0		: { *(.stab.exclstr) }
 	.stab.index 0		: { *(.stab.index) }
 	.stab.indexstr 0	: { *(.stab.indexstr) }
 	.comment 0		: { *(.comment) }
-
 }
diff --git a/sparc_config.mk b/sparc_config.mk
index 87f745f..f6aa00d 100644
--- a/sparc_config.mk
+++ b/sparc_config.mk
@@ -22,3 +22,4 @@
 #
 
 PLATFORM_CPPFLAGS += -DCONFIG_SPARC -D__sparc__
+LDSCRIPT := $(OBJTREE)/lib_$(ARCH)/u-boot.lds
-- 
1.5.6.5



More information about the U-Boot mailing list