This MCU is having 3 RAM sections:
RAM : 640KB,
RAM2: 64KB,
RAM3: 384KB
I have modified my linker script(attached here) but don't know why the framebuffer is stored in RAM as well RAM3 section as per below snap?
Linker script: STM32L4R9AIIX_FLASH.zip
Following is the part of touchfgx generated code to store the framebuffer at the TouchGFX_Framebuffer location.
namespace
{
// Use the section "TouchGFX_Framebuffer" in the linker script to specify the placement of the buffer
LOCATION_PRAGMA_NOLOAD("TouchGFX_Framebuffer")
uint32_t frameBuf[(480 * 272 * 3 + 3) / 4] LOCATION_ATTRIBUTE_NOLOAD("TouchGFX_Framebuffer");
static volatile bool refreshRequested = false;
static uint16_t lcd_int_active_line;
static uint16_t lcd_int_porch_line;
}
Please help me to store the frame buffer in section RAM3 only as I want to use RAM/RAM2 for other operations.