forked from len0rd/rockbox
FS#10114 - Sansa AMS : use IRAM for codecs on >2MB targets Rafaël Carré
Activates IRAM for AMS Sansas to be used by codecs and core. Fixes Reboot-on-mp3 and gives speed up on codecs using IRAM in general. I've made a change: the core/codec ratio is 0x20000/0x30000 instead of 0x10000/0x40000, 0x30000 is way more than codecs currently use (0x14000 at max) and the core might need more than 0x10000. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20678 a1c6a512-1295-4272-9138-f99709370657
This commit is contained in:
parent
0eb9288056
commit
bac611868e
3 changed files with 7 additions and 8 deletions
|
@ -100,8 +100,8 @@ OUTPUT_FORMAT(elf32-littlemips)
|
||||||
#define CODEC_ORIGIN (0x50000 - CODEC_SIZE)
|
#define CODEC_ORIGIN (0x50000 - CODEC_SIZE)
|
||||||
#define PLUGIN_ORIGIN (DRAMORIG + DRAMSIZE)
|
#define PLUGIN_ORIGIN (DRAMORIG + DRAMSIZE)
|
||||||
#else
|
#else
|
||||||
#define IRAMORIG 0x0
|
#define IRAMORIG 0x20000
|
||||||
#define IRAMSIZE 0x50000
|
#define IRAMSIZE 0x30000
|
||||||
#endif
|
#endif
|
||||||
#define DRAMORIG 0x30000000
|
#define DRAMORIG 0x30000000
|
||||||
|
|
||||||
|
|
|
@ -625,6 +625,7 @@ Lyre prototype 1*/
|
||||||
(((CONFIG_CPU == SH7034) && !defined(PLUGIN)) || /* SH1 archos: core only */ \
|
(((CONFIG_CPU == SH7034) && !defined(PLUGIN)) || /* SH1 archos: core only */ \
|
||||||
defined(CPU_COLDFIRE) || /* Coldfire: core, plugins, codecs */ \
|
defined(CPU_COLDFIRE) || /* Coldfire: core, plugins, codecs */ \
|
||||||
defined(CPU_PP) || /* PortalPlayer: core, plugins, codecs */ \
|
defined(CPU_PP) || /* PortalPlayer: core, plugins, codecs */ \
|
||||||
|
(CONFIG_CPU == AS3525 && MEMORYSIZE > 2) || \
|
||||||
(CONFIG_CPU == PNX0101) || \
|
(CONFIG_CPU == PNX0101) || \
|
||||||
(CONFIG_CPU == S5L8700)) /* Samsung S5L8700: core, plugins, codecs */
|
(CONFIG_CPU == S5L8700)) /* Samsung S5L8700: core, plugins, codecs */
|
||||||
#define ICODE_ATTR __attribute__ ((section(".icode")))
|
#define ICODE_ATTR __attribute__ ((section(".icode")))
|
||||||
|
|
|
@ -22,14 +22,14 @@ STARTUP(target/arm/crt0.o)
|
||||||
|
|
||||||
#include "cpu.h"
|
#include "cpu.h"
|
||||||
|
|
||||||
#define IRAMSIZE 0x50000
|
|
||||||
|
|
||||||
#ifdef LOWMEM
|
#ifdef LOWMEM
|
||||||
#define DRAMSIZE (MEMORYSIZE * 0x100000) - STUBOFFSET - PLUGINSIZE
|
#define DRAMSIZE (MEMORYSIZE * 0x100000) - STUBOFFSET - PLUGINSIZE
|
||||||
#define CODECORIG (IRAMORIG + IRAMSIZE - CODEC_SIZE)
|
#define CODECORIG (IRAMORIG + 0x50000 - CODEC_SIZE)
|
||||||
|
#define IRAMSIZE (0x50000 - CODEC_SIZE)
|
||||||
#else
|
#else
|
||||||
#define DRAMSIZE (MEMORYSIZE * 0x100000) - STUBOFFSET - PLUGINSIZE - CODECSIZE
|
#define DRAMSIZE (MEMORYSIZE * 0x100000) - STUBOFFSET - PLUGINSIZE - CODECSIZE
|
||||||
#define CODECORIG (ENDAUDIOADDR)
|
#define CODECORIG (ENDAUDIOADDR)
|
||||||
|
#define IRAMSIZE (0x20000)
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#define IRAMORIG 0x0
|
#define IRAMORIG 0x0
|
||||||
|
@ -48,11 +48,9 @@ STARTUP(target/arm/crt0.o)
|
||||||
MEMORY
|
MEMORY
|
||||||
{
|
{
|
||||||
#ifdef LOWMEM
|
#ifdef LOWMEM
|
||||||
IRAM : ORIGIN = IRAMORIG, LENGTH = (IRAMSIZE - CODEC_SIZE)
|
|
||||||
CODEC_IRAM : ORIGIN = CODECORIG, LENGTH = CODEC_SIZE
|
CODEC_IRAM : ORIGIN = CODECORIG, LENGTH = CODEC_SIZE
|
||||||
#else
|
|
||||||
IRAM : ORIGIN = IRAMORIG, LENGTH = IRAMSIZE
|
|
||||||
#endif
|
#endif
|
||||||
|
IRAM : ORIGIN = IRAMORIG, LENGTH = IRAMSIZE
|
||||||
DRAM : ORIGIN = DRAMORIG, LENGTH = DRAMSIZE
|
DRAM : ORIGIN = DRAMORIG, LENGTH = DRAMSIZE
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue