summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTomasz Malesinski <tomal@rockbox.org>2006-02-12 23:16:05 +0000
committerTomasz Malesinski <tomal@rockbox.org>2006-02-12 23:16:05 +0000
commite7f7c3d15c2eccdc77d866fce6d4fe918567cac1 (patch)
treef24e2ec28ee4c64bb143c4ae165f5d296a202370
parent6ffd3cfca4d350457ba4e0591e2731f104c35082 (diff)
downloadrockbox-e7f7c3d15c2eccdc77d866fce6d4fe918567cac1.tar.gz
rockbox-e7f7c3d15c2eccdc77d866fce6d4fe918567cac1.zip
Mapped iFP DRAM to 0xc00000 and enabled caching in this area.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8668 a1c6a512-1295-4272-9138-f99709370657
-rw-r--r--apps/plugins/plugin.lds2
-rw-r--r--firmware/app.lds2
-rw-r--r--firmware/crt0.S26
-rw-r--r--firmware/export/gdb_api.h2
-rw-r--r--gdb/linker.cfg4
5 files changed, 30 insertions, 6 deletions
diff --git a/apps/plugins/plugin.lds b/apps/plugins/plugin.lds
index 0e1657c559..f9c2406893 100644
--- a/apps/plugins/plugin.lds
+++ b/apps/plugins/plugin.lds
@@ -33,7 +33,7 @@ OUTPUT_FORMAT(elf32-sh)
33#define IRAMORIG 0x4000c000 33#define IRAMORIG 0x4000c000
34#define IRAMSIZE 0xc000 34#define IRAMSIZE 0xc000
35#elif CONFIG_CPU == PNX0101 35#elif CONFIG_CPU == PNX0101
36#define DRAMORIG 0x24000000 36#define DRAMORIG 0xc00000 + STUBOFFSET
37#define IRAMORIG 0x408000 37#define IRAMORIG 0x408000
38#define IRAMSIZE 0x8000 38#define IRAMSIZE 0x8000
39#else 39#else
diff --git a/firmware/app.lds b/firmware/app.lds
index e796f4a05b..74cca5a96a 100644
--- a/firmware/app.lds
+++ b/firmware/app.lds
@@ -127,7 +127,7 @@ _pluginbuf = 0;
127#define IRAMORIG 0x40000000 127#define IRAMORIG 0x40000000
128#define IRAMSIZE 0xc000 128#define IRAMSIZE 0xc000
129#elif CONFIG_CPU==PNX0101 129#elif CONFIG_CPU==PNX0101
130#define DRAMORIG 0x24000000 + STUBOFFSET 130#define DRAMORIG 0xc00000 + STUBOFFSET
131#define IRAMORIG 0x400000 131#define IRAMORIG 0x400000
132#define IRAMSIZE 0x8000 132#define IRAMSIZE 0x8000
133#else 133#else
diff --git a/firmware/crt0.S b/firmware/crt0.S
index 264b9c9fe7..a207006c32 100644
--- a/firmware/crt0.S
+++ b/firmware/crt0.S
@@ -80,7 +80,31 @@ remap_start:
80 mov pc, r0 80 mov pc, r0
81L_post_remap: .word remap_end 81L_post_remap: .word remap_end
82remap_end: 82remap_end:
83#endif /* PP specific */ 83
84#elif CONFIG_CPU == PNX0101
85
86#ifndef DEBUG
87 ldr r0, =0x80105000
88 mov r1, #1
89 str r1, [r0, #4]
90 mov r1, #0
91 str r1, [r0, #4]
921: ldr r1, [r0]
93 cmp r1, #0
94 bne 1b
95 mov r1, #0x74
96 str r1, [r0, #8]
97 mov r1, #2
98 str r1, [r0, #0x18]
99 mov r1, #0x120
100 str r1, [r0, #0x30]
101 mov r1, #6
102 str r1, [r0, #4]
103 ldr r0, =1f
104 mov r15, r0
1051:
106#endif /* !DEBUG */
107#endif /* chipset specific */
84 108
85#ifndef DEBUG 109#ifndef DEBUG
86 /* Copy exception handler code to address 0 */ 110 /* Copy exception handler code to address 0 */
diff --git a/firmware/export/gdb_api.h b/firmware/export/gdb_api.h
index 896c8d399d..a395baabec 100644
--- a/firmware/export/gdb_api.h
+++ b/firmware/export/gdb_api.h
@@ -24,7 +24,7 @@
24 24
25#define GDB_API_MAGIC 0x6db570b 25#define GDB_API_MAGIC 0x6db570b
26#ifdef IRIVER_IFP7XX_SERIES 26#ifdef IRIVER_IFP7XX_SERIES
27#define GDB_API_ADDRESS 0x24006000 27#define GDB_API_ADDRESS 0xc06000
28#endif 28#endif
29 29
30struct gdb_api 30struct gdb_api
diff --git a/gdb/linker.cfg b/gdb/linker.cfg
index 46ec779817..af604e0379 100644
--- a/gdb/linker.cfg
+++ b/gdb/linker.cfg
@@ -13,8 +13,8 @@ OUTPUT_FORMAT(elf32-sh)
13MEMORY 13MEMORY
14{ 14{
15 IRAM : ORIGIN = 0, LENGTH = 0x10000 15 IRAM : ORIGIN = 0, LENGTH = 0x10000
16 DRAM : ORIGIN = 0x24000000, LENGTH = 0x6000 16 DRAM : ORIGIN = 0xc00000, LENGTH = 0x6000
17 DRAM_API : ORIGIN = 0x24006000, LENGTH = 0x100 17 DRAM_API : ORIGIN = 0xc06000, LENGTH = 0x100
18} 18}
19 19
20SECTIONS 20SECTIONS