| /* 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 = CFG_SYS_SDRAM_BASE, LENGTH = CFG_SYS_SDRAM_SIZE | |
| } | |
| ENTRY(_start) | |
| SECTIONS | |
| { | |
| . = CONFIG_TEXT_BASE; | |
| reloc_dst = .; | |
| PROVIDE (_ftext = .); | |
| PROVIDE (_fcode = .); | |
| PROVIDE (_start = .); | |
| .text : | |
| { | |
| KEEP(*/start.o (.text)) | |
| KEEP(CFG_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 (_end = .); | |
| PROVIDE (bss_start = .); | |
| PROVIDE (__bss_start = .); | |
| .bss : | |
| { | |
| *(.bss) | |
| . = ALIGN(4); | |
| } >ram | |
| PROVIDE (bss_end = .); | |
| PROVIDE (__bss_end = .); | |
| } |