diff options
-rw-r--r-- | apps/plugins/plugin.lds | 2 | ||||
-rw-r--r-- | firmware/app.lds | 2 | ||||
-rw-r--r-- | firmware/drivers/lcd-16bit.c | 2 | ||||
-rw-r--r-- | firmware/export/config-iaudiox5.h | 2 | ||||
-rw-r--r-- | firmware/export/config.h | 5 |
5 files changed, 10 insertions, 3 deletions
diff --git a/apps/plugins/plugin.lds b/apps/plugins/plugin.lds index 010a75ed13..eb21dd6eec 100644 --- a/apps/plugins/plugin.lds +++ b/apps/plugins/plugin.lds @@ -30,7 +30,7 @@ OUTPUT_FORMAT(elf32-sh) #define IRAMSIZE 0xc000 #elif defined(IAUDIO_X5) #define DRAMORIG 0x31000000 -#define IRAMORIG 0x1000c000 +#define IRAMORIG 0x10014000 #define IRAMSIZE 0xc000 #elif defined(ARCH_IPOD) #define DRAMORIG 0x00000000 diff --git a/firmware/app.lds b/firmware/app.lds index 0d7c191660..3416f5c6b6 100644 --- a/firmware/app.lds +++ b/firmware/app.lds @@ -125,7 +125,7 @@ _pluginbuf = 0; #elif defined(IAUDIO_X5) #define DRAMORIG 0x31000000 + STUBOFFSET #define IRAMORIG 0x10000000 -#define IRAMSIZE 0xc000 +#define IRAMSIZE 0x14000 #elif (CONFIG_CPU==PP5002) || (CONFIG_CPU==PP5020) #define DRAMORIG 0x00000000 + STUBOFFSET #define IRAMORIG 0x40000000 diff --git a/firmware/drivers/lcd-16bit.c b/firmware/drivers/lcd-16bit.c index e98403aa1b..d337ea95a4 100644 --- a/firmware/drivers/lcd-16bit.c +++ b/firmware/drivers/lcd-16bit.c @@ -43,7 +43,7 @@ enum fill_opt { }; /*** globals ***/ -fb_data lcd_framebuffer[LCD_HEIGHT][LCD_WIDTH] __attribute__ ((aligned (16))); +fb_data lcd_framebuffer[LCD_HEIGHT][LCD_WIDTH] IRAM_LCDFRAMEBUFFER __attribute__ ((aligned (16))); static fb_data* lcd_backdrop = NULL; static long lcd_backdrop_offset IDATA_ATTR = 0; diff --git a/firmware/export/config-iaudiox5.h b/firmware/export/config-iaudiox5.h index 746ca26e31..b33bae913b 100644 --- a/firmware/export/config-iaudiox5.h +++ b/firmware/export/config-iaudiox5.h @@ -23,6 +23,8 @@ #define LCD_DEPTH 16 /* pseudo 262.144 colors */ #define LCD_PIXELFORMAT RGB565 /* rgb565 */ +#define IRAM_LCDFRAMEBUFFER IDATA_ATTR /* put the lcd frame buffer in IRAM */ + /* remote LCD */ #define LCD_REMOTE_WIDTH 128 #define LCD_REMOTE_HEIGHT 64 diff --git a/firmware/export/config.h b/firmware/export/config.h index 5420cb37f4..d919b8b4f6 100644 --- a/firmware/export/config.h +++ b/firmware/export/config.h @@ -229,4 +229,9 @@ #define IBSS_ATTR #endif +#ifndef IRAM_LCDFRAMEBUFFER +/* if the LCD framebuffer has not been moved to IRAM, define it empty here */ +#define IRAM_LCDFRAMEBUFFER +#endif + #endif |