sh: unify sh2/sh3/sh4 linker scripts
The linker scripts of sh2/sh3/sh4 are almost the same. The difference among them is essentially only one line. They can be consolidated into a single file, arch/sh/cpu/u-boot.lds by re-writing the diffrent line as follows: KEEP(*/start.o (.text)) Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com> Cc: Nobuhiro Iwamatsu <nobuhiro.iwamatsu.yj@renesas.com> Signed-off-by: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
This commit is contained in:
parent
fbe79a17fd
commit
afc3929fac
|
|
@ -1,76 +0,0 @@
|
||||||
/*
|
|
||||||
* Copyright (C) 2008 Nobuhiro Iwamatsu
|
|
||||||
* Copyright (C) 2008 Renesas Solutions Corp.
|
|
||||||
*
|
|
||||||
* SPDX-License-Identifier: GPL-2.0+
|
|
||||||
*/
|
|
||||||
|
|
||||||
OUTPUT_FORMAT("elf32-sh-linux", "elf32-sh-linux", "elf32-sh-linux")
|
|
||||||
OUTPUT_ARCH(sh)
|
|
||||||
ENTRY(_start)
|
|
||||||
|
|
||||||
SECTIONS
|
|
||||||
{
|
|
||||||
/*
|
|
||||||
* entry and reloct_dst will be provided via ldflags
|
|
||||||
*/
|
|
||||||
. = .;
|
|
||||||
|
|
||||||
PROVIDE (_ftext = .);
|
|
||||||
PROVIDE (_fcode = .);
|
|
||||||
PROVIDE (_start = .);
|
|
||||||
|
|
||||||
.text :
|
|
||||||
{
|
|
||||||
KEEP(arch/sh/cpu/sh2/start.o (.text))
|
|
||||||
. = ALIGN(8192);
|
|
||||||
common/env_embedded.o (.ppcenv)
|
|
||||||
. = ALIGN(8192);
|
|
||||||
common/env_embedded.o (.ppcenvr)
|
|
||||||
. = ALIGN(8192);
|
|
||||||
*(.text)
|
|
||||||
. = ALIGN(4);
|
|
||||||
} =0xFF
|
|
||||||
PROVIDE (_ecode = .);
|
|
||||||
.rodata :
|
|
||||||
{
|
|
||||||
*(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
|
|
||||||
. = ALIGN(4);
|
|
||||||
}
|
|
||||||
PROVIDE (_etext = .);
|
|
||||||
|
|
||||||
|
|
||||||
PROVIDE (_fdata = .);
|
|
||||||
.data :
|
|
||||||
{
|
|
||||||
*(.data)
|
|
||||||
. = ALIGN(4);
|
|
||||||
}
|
|
||||||
PROVIDE (_edata = .);
|
|
||||||
|
|
||||||
PROVIDE (_fgot = .);
|
|
||||||
.got :
|
|
||||||
{
|
|
||||||
*(.got)
|
|
||||||
. = ALIGN(4);
|
|
||||||
}
|
|
||||||
PROVIDE (_egot = .);
|
|
||||||
|
|
||||||
|
|
||||||
.u_boot_list : {
|
|
||||||
KEEP(*(SORT(.u_boot_list*)));
|
|
||||||
}
|
|
||||||
|
|
||||||
PROVIDE (reloc_dst_end = .);
|
|
||||||
|
|
||||||
PROVIDE (bss_start = .);
|
|
||||||
PROVIDE (__bss_start = .);
|
|
||||||
.bss :
|
|
||||||
{
|
|
||||||
*(.bss)
|
|
||||||
. = ALIGN(4);
|
|
||||||
}
|
|
||||||
PROVIDE (bss_end = .);
|
|
||||||
|
|
||||||
PROVIDE (__bss_end = .);
|
|
||||||
}
|
|
||||||
|
|
@ -1,80 +0,0 @@
|
||||||
/*
|
|
||||||
* Copyright (C) 2007
|
|
||||||
* Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
|
|
||||||
*
|
|
||||||
* Copyright (C) 2008-2009
|
|
||||||
* Yoshihiro Shimoda <shimoda.yoshihiro@renesas.com>
|
|
||||||
*
|
|
||||||
* SPDX-License-Identifier: GPL-2.0+
|
|
||||||
*/
|
|
||||||
|
|
||||||
OUTPUT_FORMAT("elf32-sh-linux", "elf32-sh-linux", "elf32-sh-linux")
|
|
||||||
OUTPUT_ARCH(sh)
|
|
||||||
ENTRY(_start)
|
|
||||||
|
|
||||||
SECTIONS
|
|
||||||
{
|
|
||||||
/*
|
|
||||||
* entry and reloct_dst will be provided via ldflags
|
|
||||||
*/
|
|
||||||
. = .;
|
|
||||||
|
|
||||||
PROVIDE (_ftext = .);
|
|
||||||
PROVIDE (_fcode = .);
|
|
||||||
PROVIDE (_start = .);
|
|
||||||
|
|
||||||
.text :
|
|
||||||
{
|
|
||||||
KEEP(arch/sh/cpu/sh4/start.o (.text))
|
|
||||||
. = ALIGN(8192);
|
|
||||||
common/env_embedded.o (.ppcenv)
|
|
||||||
. = ALIGN(8192);
|
|
||||||
common/env_embedded.o (.ppcenvr)
|
|
||||||
. = ALIGN(8192);
|
|
||||||
*(.text)
|
|
||||||
. = ALIGN(4);
|
|
||||||
} =0xFF
|
|
||||||
PROVIDE (_ecode = .);
|
|
||||||
.rodata :
|
|
||||||
{
|
|
||||||
*(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
|
|
||||||
. = ALIGN(4);
|
|
||||||
}
|
|
||||||
PROVIDE (_etext = .);
|
|
||||||
|
|
||||||
|
|
||||||
PROVIDE (_fdata = .);
|
|
||||||
.data :
|
|
||||||
{
|
|
||||||
*(.data)
|
|
||||||
. = ALIGN(4);
|
|
||||||
}
|
|
||||||
PROVIDE (_edata = .);
|
|
||||||
|
|
||||||
PROVIDE (_fgot = .);
|
|
||||||
.got :
|
|
||||||
{
|
|
||||||
*(.got)
|
|
||||||
. = ALIGN(4);
|
|
||||||
}
|
|
||||||
PROVIDE (_egot = .);
|
|
||||||
|
|
||||||
|
|
||||||
.u_boot_list : {
|
|
||||||
KEEP(*(SORT(.u_boot_list*)));
|
|
||||||
}
|
|
||||||
|
|
||||||
PROVIDE (reloc_dst_end = .);
|
|
||||||
/* _reloc_dst_end = .; */
|
|
||||||
|
|
||||||
PROVIDE (bss_start = .);
|
|
||||||
PROVIDE (__bss_start = .);
|
|
||||||
.bss (NOLOAD) :
|
|
||||||
{
|
|
||||||
*(.bss)
|
|
||||||
. = ALIGN(4);
|
|
||||||
}
|
|
||||||
PROVIDE (bss_end = .);
|
|
||||||
|
|
||||||
PROVIDE (__bss_end = .);
|
|
||||||
}
|
|
||||||
|
|
@ -1,10 +1,10 @@
|
||||||
/*
|
/*
|
||||||
* Copyright (C) 2007
|
|
||||||
* Yoshihiro Shimoda <shimoda.yoshihiro@renesas.com>
|
|
||||||
*
|
|
||||||
* Copyright (C) 2007
|
* Copyright (C) 2007
|
||||||
* Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
|
* Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
|
||||||
*
|
*
|
||||||
|
* Copyright (C) 2008-2009
|
||||||
|
* Yoshihiro Shimoda <shimoda.yoshihiro@renesas.com>
|
||||||
|
*
|
||||||
* Copyright (C) 2008
|
* Copyright (C) 2008
|
||||||
* Mark Jonas <mark.jonas@de.bosch.com>
|
* Mark Jonas <mark.jonas@de.bosch.com>
|
||||||
*
|
*
|
||||||
|
|
@ -28,7 +28,7 @@ SECTIONS
|
||||||
|
|
||||||
.text :
|
.text :
|
||||||
{
|
{
|
||||||
KEEP(arch/sh/cpu/sh3/start.o (.text))
|
KEEP(*/start.o (.text))
|
||||||
. = ALIGN(8192);
|
. = ALIGN(8192);
|
||||||
common/env_embedded.o (.ppcenv)
|
common/env_embedded.o (.ppcenv)
|
||||||
. = ALIGN(8192);
|
. = ALIGN(8192);
|
||||||
Loading…
Reference in New Issue