summaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-at91/arm926ejs
diff options
context:
space:
mode:
authorBo Shen <voice.shen@atmel.com>2015-03-27 14:23:34 +0800
committerAndreas Bießmann <andreas.devel@googlemail.com>2015-04-01 01:04:30 +0200
commit41d41a93fb5600b0cbfdbfae88b0d8403bd650b7 (patch)
tree5dc3c6730d76e8c656d848b2063df2f00751f69e /arch/arm/mach-at91/arm926ejs
parent72cb3b6b54e99959f84456e448aa3db9f776f8a5 (diff)
downloadtalos-obmc-uboot-41d41a93fb5600b0cbfdbfae88b0d8403bd650b7.tar.gz
talos-obmc-uboot-41d41a93fb5600b0cbfdbfae88b0d8403bd650b7.zip
ARM: atmel: at91sam9m10g45ek: enable spl support
Supports boot up from NAND flash with software ECC eanbled. And supports boot up from SD/MMC card with FAT file system. As the boot from SD/MMC card with FAT file system, the BSS segment is too big to fit into SRAM, so, use the lds to put it into SDRAM. Signed-off-by: Bo Shen <voice.shen@atmel.com>
Diffstat (limited to 'arch/arm/mach-at91/arm926ejs')
-rw-r--r--arch/arm/mach-at91/arm926ejs/u-boot-spl.lds48
1 files changed, 48 insertions, 0 deletions
diff --git a/arch/arm/mach-at91/arm926ejs/u-boot-spl.lds b/arch/arm/mach-at91/arm926ejs/u-boot-spl.lds
new file mode 100644
index 0000000000..acadd1d4c4
--- /dev/null
+++ b/arch/arm/mach-at91/arm926ejs/u-boot-spl.lds
@@ -0,0 +1,48 @@
+/*
+ * Copyright (C) 2015 Atmel Corporation
+ * Bo Shen <voice.shen@atmel.com>
+ *
+ * SPDX-License-Identifier: GPL-2.0+
+ */
+
+MEMORY { .sram : ORIGIN = CONFIG_SPL_TEXT_BASE, \
+ LENGTH = CONFIG_SPL_MAX_SIZE }
+MEMORY { .sdram : ORIGIN = CONFIG_SPL_BSS_START_ADDR, \
+ LENGTH = CONFIG_SPL_BSS_MAX_SIZE }
+
+OUTPUT_FORMAT("elf32-littlearm", "elf32-littlearm", "elf32-littlearm")
+OUTPUT_ARCH(arm)
+ENTRY(_start)
+SECTIONS
+{
+ .text :
+ {
+ __start = .;
+ *(.vectors)
+ arch/arm/cpu/arm926ejs/start.o (.text*)
+ *(.text*)
+ } >.sram
+
+ . = ALIGN(4);
+ .rodata : { *(SORT_BY_ALIGNMENT(.rodata*)) } >.sram
+
+ . = ALIGN(4);
+ .data : { *(SORT_BY_ALIGNMENT(.data*)) } >.sram
+
+ . = ALIGN(4);
+ __image_copy_end = .;
+
+ .end :
+ {
+ *(.__end)
+ } >.sram
+
+ .bss :
+ {
+ . = ALIGN(4);
+ __bss_start = .;
+ *(.bss*)
+ . = ALIGN(4);
+ __bss_end = .;
+ } >.sdram
+}
OpenPOWER on IntegriCloud