summaryrefslogtreecommitdiff
path: root/cesar/ecos/packages
diff options
context:
space:
mode:
Diffstat (limited to 'cesar/ecos/packages')
-rw-r--r--cesar/ecos/packages/hal/sparc/arch/current/src/sparc.ld10
-rw-r--r--cesar/ecos/packages/hal/sparc/leon/current/include/pkgconf/mlt_sparc_leon_ram.h11
-rw-r--r--cesar/ecos/packages/hal/sparc/leon/current/include/pkgconf/mlt_sparc_leon_ram.ldi6
3 files changed, 25 insertions, 2 deletions
diff --git a/cesar/ecos/packages/hal/sparc/arch/current/src/sparc.ld b/cesar/ecos/packages/hal/sparc/arch/current/src/sparc.ld
index 1f2f32dd06..c136ffd6af 100644
--- a/cesar/ecos/packages/hal/sparc/arch/current/src/sparc.ld
+++ b/cesar/ecos/packages/hal/sparc/arch/current/src/sparc.ld
@@ -55,6 +55,16 @@ GROUP(libtarget.a libgcc.a)
#define SECTIONS_BEGIN
+#define SECTION_ilram(_region_, _vma_, _lma_) \
+ .ilram _vma_ : _lma_ \
+ { FORCE_OUTPUT; KEEP (*(.ilram)) } \
+ > _region_
+
+#define SECTION_dlram(_region_, _vma_, _lma_) \
+ .dlram _vma_ : _lma_ \
+ { FORCE_OUTPUT; KEEP (*(.dlram)) } \
+ > _region_
+
#define SECTION_rom_vectors(_region_, _vma_, _lma_) \
.rom_vectors _vma_ : _lma_ \
{ FORCE_OUTPUT; KEEP (*(.vectors)) } \
diff --git a/cesar/ecos/packages/hal/sparc/leon/current/include/pkgconf/mlt_sparc_leon_ram.h b/cesar/ecos/packages/hal/sparc/leon/current/include/pkgconf/mlt_sparc_leon_ram.h
index fc963335f4..a50ee7922e 100644
--- a/cesar/ecos/packages/hal/sparc/leon/current/include/pkgconf/mlt_sparc_leon_ram.h
+++ b/cesar/ecos/packages/hal/sparc/leon/current/include/pkgconf/mlt_sparc_leon_ram.h
@@ -8,8 +8,17 @@
#endif
#define CYGMEM_REGION_ram (0x00000000)
-#define CYGMEM_REGION_ram_SIZE (0x4000000)
+#define CYGMEM_REGION_ram_SIZE (0x04000000)
#define CYGMEM_REGION_ram_ATTR (CYGMEM_REGION_ATTR_R | CYGMEM_REGION_ATTR_W)
+#define CYGMEM_REGION_ram_nocache (0x40000000)
+#define CYGMEM_REGION_ram_nocache_SIZE (0x04000000)
+#define CYGMEM_REGION_ram_nocache_ATTR (CYGMEM_REGION_ATTR_R | CYGMEM_REGION_ATTR_W)
+#define CYGMEM_REGION_ilram (0x70000000)
+#define CYGMEM_REGION_ilram_SIZE (0x10000)
+#define CYGMEM_REGION_ilram_ATTR (CYGMEM_REGION_ATTR_R | CYGMEM_REGION_ATTR_W)
+#define CYGMEM_REGION_dlram (0x71000000)
+#define CYGMEM_REGION_dlram_SIZE (0x10000)
+#define CYGMEM_REGION_dlram_ATTR (CYGMEM_REGION_ATTR_R | CYGMEM_REGION_ATTR_W)
#ifndef __ASSEMBLER__
extern char CYG_LABEL_NAME (__heap1) [];
#endif
diff --git a/cesar/ecos/packages/hal/sparc/leon/current/include/pkgconf/mlt_sparc_leon_ram.ldi b/cesar/ecos/packages/hal/sparc/leon/current/include/pkgconf/mlt_sparc_leon_ram.ldi
index d1b75501e5..03722a4ad8 100644
--- a/cesar/ecos/packages/hal/sparc/leon/current/include/pkgconf/mlt_sparc_leon_ram.ldi
+++ b/cesar/ecos/packages/hal/sparc/leon/current/include/pkgconf/mlt_sparc_leon_ram.ldi
@@ -6,12 +6,16 @@
MEMORY
{
- ram : ORIGIN = 0x00000000, LENGTH = 0x4000000
+ ram : ORIGIN = 0x00000000, LENGTH = 0x4000000
+ tclri : ORIGIN = 0x70000000, LENGTH = 0x10000
+ tclrd : ORIGIN = 0x71000000, LENGTH = 0x10000
}
SECTIONS
{
SECTIONS_BEGIN
+ SECTION_ilram (tclri, 0x70000000, LMA_EQ_VMA)
+ SECTION_dlram (tclrd, 0x71000000, LMA_EQ_VMA)
SECTION_rom_vectors (ram, 0x00000000, LMA_EQ_VMA)
SECTION_text (ram, ALIGN (0x1), LMA_EQ_VMA)
SECTION_fini (ram, ALIGN (0x1), LMA_EQ_VMA)