summaryrefslogtreecommitdiff
path: root/lib_blackfin/u-boot.lds.S
diff options
context:
space:
mode:
authorMike Frysinger <vapier@gentoo.org>2009-11-09 19:38:23 -0500
committerMike Frysinger <vapier@gentoo.org>2010-01-17 09:17:26 -0500
commit7527feef06b13e9fd5b6d10a4bfc81b59ee56f27 (patch)
tree59b7eb57888f4c26f68e9430346650de19f002d7 /lib_blackfin/u-boot.lds.S
parentdbda2c65e5fec92d0791367b53042983746ce95b (diff)
downloadu-boot-imx-7527feef06b13e9fd5b6d10a4bfc81b59ee56f27.zip
u-boot-imx-7527feef06b13e9fd5b6d10a4bfc81b59ee56f27.tar.gz
u-boot-imx-7527feef06b13e9fd5b6d10a4bfc81b59ee56f27.tar.bz2
Blackfin: support boards with no external memory
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Diffstat (limited to 'lib_blackfin/u-boot.lds.S')
-rw-r--r--lib_blackfin/u-boot.lds.S21
1 files changed, 14 insertions, 7 deletions
diff --git a/lib_blackfin/u-boot.lds.S b/lib_blackfin/u-boot.lds.S
index 8a9e8b1..deb94c9 100644
--- a/lib_blackfin/u-boot.lds.S
+++ b/lib_blackfin/u-boot.lds.S
@@ -57,7 +57,14 @@ OUTPUT_ARCH(bfin)
MEMORY
{
+#if CONFIG_MEM_SIZE
ram : ORIGIN = CONFIG_SYS_MONITOR_BASE, LENGTH = CONFIG_SYS_MONITOR_LEN
+# define ram_code ram
+# define ram_data ram
+#else
+# define ram_code l1_code
+# define ram_data l1_data
+#endif
l1_code : ORIGIN = L1_CODE_ORIGIN, LENGTH = L1_INST_SRAM_SIZE
l1_data : ORIGIN = L1_DATA_B_SRAM, LENGTH = L1_DATA_B_SRAM_SIZE
}
@@ -82,7 +89,7 @@ SECTIONS
.text :
{
*(.text .text.*)
- } >ram
+ } >ram_code
.rodata :
{
@@ -91,7 +98,7 @@ SECTIONS
*(.rodata1)
*(.eh_frame)
. = ALIGN(4);
- } >ram
+ } >ram_data
.data :
{
@@ -102,14 +109,14 @@ SECTIONS
*(.sdata2)
*(.dynamic)
CONSTRUCTORS
- } >ram
+ } >ram_data
.u_boot_cmd :
{
___u_boot_cmd_start = .;
*(.u_boot_cmd)
___u_boot_cmd_end = .;
- } >ram
+ } >ram_data
.text_l1 :
{
@@ -118,7 +125,7 @@ SECTIONS
*(.l1.text)
. = ALIGN(4);
__etext_l1 = .;
- } >l1_code AT>ram
+ } >l1_code AT>ram_code
__text_l1_lma = LOADADDR(.text_l1);
__text_l1_len = SIZEOF(.text_l1);
ASSERT (__text_l1_len <= L1_INST_SRAM_SIZE, "L1 text overflow!")
@@ -131,7 +138,7 @@ SECTIONS
*(.l1.bss)
. = ALIGN(4);
__edata_l1 = .;
- } >l1_data AT>ram
+ } >l1_data AT>ram_data
__data_l1_lma = LOADADDR(.data_l1);
__data_l1_len = SIZEOF(.data_l1);
ASSERT (__data_l1_len <= L1_DATA_B_SRAM_SIZE, "L1 data B overflow!")
@@ -143,7 +150,7 @@ SECTIONS
*(.dynbss)
*(.bss .bss.*)
*(COMMON)
- } >ram
+ } >ram_data
__bss_vma = ADDR(.bss);
__bss_len = SIZEOF(.bss);
}