When I create a project of RA2E1 or RA2L1 and proceed, an error (x) is displayed in the fsp.ld file.
It seems that there is no effect on the build or debug, but is there a solution to the error(x) display?
/* If a flat (secure) project has DEFINED RAM_NS_BUFFER_LENGTH, then emit IDAU symbols to allocate non-secure RAM. */__RESERVE_NS_RAM = !DEFINED(PROJECT_NONSECURE) && DEFINED(RAM_NS_BUFFER_LENGTH);
RAM_NS_BUFFER_BLOCK_LENGTH = DEFINED(RAM_NS_BUFFER_LENGTH) ? ALIGN(RAM_NS_BUFFER_LENGTH, 8192) : 0;RAM_NS_BUFFER_LENGTH = DEFINED(RAM_NS_BUFFER_LENGTH) ? RAM_NS_BUFFER_LENGTH : 0;RAM_NS_BUFFER_START = RAM_START + RAM_LENGTH - RAM_NS_BUFFER_LENGTH;RAM_NS_BUFFER_BLOCK_START = RAM_START + RAM_LENGTH - RAM_NS_BUFFER_BLOCK_LENGTH;
OPTION_SETTING_START_NS = 0x0100A180;
PROJECT_SECURE_OR_FLAT = !DEFINED(PROJECT_NONSECURE) && OPTION_SETTING_LENGTH;
I added this two lines into memory_regions.ld
PROJECT_NONSECURE = 1;RAM_NS_BUFFER_LENGTH = 0;
and in fsp.ld, I change every
!DEFINED(PROJECT_NONSECURE) to (PROJECT_NONSECURE==0)
This is caused by the CODAN (static code analysis/indexer) in e2studio not understanidng the syntax used in the linker script, the tools development team are aware of the issue and are investigating.
The error can be safely ignored, as the compiler/linker builds the project sucessfully.
An easy fix is to replace all "!DEFINED" with "! DEFINED" in the file. The parser just needs a space between ! and DEFINED.