12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788 |
- /* SPDX-License-Identifier: GPL-2.0+ */
- /*
- * Copyright (C) 2016 Vladimir Zapolskiy <vz@mleia.com>
- * Copyright (C) 2008-2009 Yoshihiro Shimoda <shimoda.yoshihiro@renesas.com>
- * Copyright (C) 2008 Mark Jonas <mark.jonas@de.bosch.com>
- * Copyright (C) 2007 Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
- */
- #include "config.h"
- #ifdef CONFIG_SYS_BIG_ENDIAN
- OUTPUT_FORMAT("elf32-shbig-linux", "elf32-shbig-linux", "elf32-sh-linux")
- #else
- OUTPUT_FORMAT("elf32-sh-linux", "elf32-sh-linux", "elf32-sh-linux")
- #endif
- OUTPUT_ARCH(sh)
- MEMORY
- {
- ram : ORIGIN = CONFIG_SYS_SDRAM_BASE, LENGTH = CONFIG_SYS_SDRAM_SIZE
- }
- ENTRY(_start)
- SECTIONS
- {
- reloc_dst = .;
- PROVIDE (_ftext = .);
- PROVIDE (_fcode = .);
- PROVIDE (_start = .);
- .text :
- {
- KEEP(*/start.o (.text))
- KEEP(CONFIG_BOARDDIR/lowlevel_init.o (.text .spiboot1.text))
- KEEP(*(.spiboot2.text))
- . = ALIGN(8192);
- #ifdef CONFIG_ENV_IS_IN_FLASH
- env/embedded.o (.doesnotexist)
- . = ALIGN(8192);
- #endif
- *(.text)
- . = ALIGN(4);
- } >ram =0xFF
- PROVIDE (_ecode = .);
- .rodata :
- {
- *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
- . = ALIGN(4);
- } >ram
- PROVIDE (_etext = .);
- PROVIDE (_fdata = .);
- .data :
- {
- *(.data)
- . = ALIGN(4);
- } >ram
- PROVIDE (_edata = .);
- PROVIDE (_fgot = .);
- .got :
- {
- *(.got.plt) *(.got)
- . = ALIGN(4);
- } >ram
- PROVIDE (_egot = .);
- .u_boot_list : {
- KEEP(*(SORT(.u_boot_list*)));
- } >ram
- PROVIDE (__init_end = .);
- PROVIDE (reloc_dst_end = .);
- PROVIDE (bss_start = .);
- PROVIDE (__bss_start = .);
- .bss :
- {
- *(.bss)
- . = ALIGN(4);
- } >ram
- PROVIDE (bss_end = .);
- PROVIDE (__bss_end = .);
- }
|