From 744274220833e017f3cc3f1b61abd0fc7c3885ec Mon Sep 17 00:00:00 2001 From: Cástor Muñoz Date: Fri, 13 Jan 2017 20:51:07 +0100 Subject: iPod Classic: disable IRAM1 On Classic, IRAM1 (second 128Kb of a total of 256KB available IRAM) is slower than DRAM. Codecs that actually are using regions of IRAM1 runs faster when DRAM is used, so IRAM1 is disabled and only IRAM0 remains enabled: 48KB for core and 80KB for codecs/plugins. The next test_codec results shows how decode time is decreased: file boosted unboosted *.ra ~1.5% ~0.5% *.mpc ~21% ~4.5% *.ogg ~0.5% ~0% nero_he*.m4a ~8% ~1% nero*.m4a ~25% ~7% wmapro*.wma ~4.5% ~0% wma*.wma ~25% ~7% In addition there is a small power save when IRAM1 HW is disabled. Change-Id: I102adee11458e82037f23076d5d5956e23235de8 --- apps/plugins/plugin.lds | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'apps') diff --git a/apps/plugins/plugin.lds b/apps/plugins/plugin.lds index aea44e7d40..7037496be4 100644 --- a/apps/plugins/plugin.lds +++ b/apps/plugins/plugin.lds @@ -159,9 +159,10 @@ OUTPUT_FORMAT(elf32-littlemips) #elif CONFIG_CPU==S5L8702 /* S5L8702 have 256KB of IRAM */ +/* IRAM1 (2nd 128KB block) is not used because it is slower than DRAM */ #define DRAMORIG 0x08000000 -#define IRAMORIG (0x00000000 + (56*1024)) -#define IRAMSIZE (200*1024) +#define IRAMORIG (0x00000000 + (48*1024)) +#define IRAMSIZE (80*1024) #elif CONFIG_CPU == JZ4732 || CONFIG_CPU == JZ4760B #undef STUBOFFSET -- cgit v1.2.3