From e7f7c3d15c2eccdc77d866fce6d4fe918567cac1 Mon Sep 17 00:00:00 2001 From: Tomasz Malesinski Date: Sun, 12 Feb 2006 23:16:05 +0000 Subject: 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 --- apps/plugins/plugin.lds | 2 +- firmware/app.lds | 2 +- firmware/crt0.S | 26 +++++++++++++++++++++++++- firmware/export/gdb_api.h | 2 +- gdb/linker.cfg | 4 ++-- 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) #define IRAMORIG 0x4000c000 #define IRAMSIZE 0xc000 #elif CONFIG_CPU == PNX0101 -#define DRAMORIG 0x24000000 +#define DRAMORIG 0xc00000 + STUBOFFSET #define IRAMORIG 0x408000 #define IRAMSIZE 0x8000 #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; #define IRAMORIG 0x40000000 #define IRAMSIZE 0xc000 #elif CONFIG_CPU==PNX0101 -#define DRAMORIG 0x24000000 + STUBOFFSET +#define DRAMORIG 0xc00000 + STUBOFFSET #define IRAMORIG 0x400000 #define IRAMSIZE 0x8000 #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: mov pc, r0 L_post_remap: .word remap_end remap_end: -#endif /* PP specific */ + +#elif CONFIG_CPU == PNX0101 + +#ifndef DEBUG + ldr r0, =0x80105000 + mov r1, #1 + str r1, [r0, #4] + mov r1, #0 + str r1, [r0, #4] +1: ldr r1, [r0] + cmp r1, #0 + bne 1b + mov r1, #0x74 + str r1, [r0, #8] + mov r1, #2 + str r1, [r0, #0x18] + mov r1, #0x120 + str r1, [r0, #0x30] + mov r1, #6 + str r1, [r0, #4] + ldr r0, =1f + mov r15, r0 +1: +#endif /* !DEBUG */ +#endif /* chipset specific */ #ifndef DEBUG /* 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 @@ #define GDB_API_MAGIC 0x6db570b #ifdef IRIVER_IFP7XX_SERIES -#define GDB_API_ADDRESS 0x24006000 +#define GDB_API_ADDRESS 0xc06000 #endif struct 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) MEMORY { IRAM : ORIGIN = 0, LENGTH = 0x10000 - DRAM : ORIGIN = 0x24000000, LENGTH = 0x6000 - DRAM_API : ORIGIN = 0x24006000, LENGTH = 0x100 + DRAM : ORIGIN = 0xc00000, LENGTH = 0x6000 + DRAM_API : ORIGIN = 0xc06000, LENGTH = 0x100 } SECTIONS -- cgit v1.2.3