Hello developers,
I am developing an RTOS on MPC4857G e200 from NXP, the compiler used is a GCC gnu compiler.
I am using the __attribute__ keyword to affect a buffer to the interrupt_ram.
This is the line code:
static TpfnDCore_eHandler interruptBuffer[754] __attribute__ ((section ("interrupts_ram")));
and the interrupts_ram in the linker file is :
.interrupts_ram : ALIGN(4096)
{
__VECTOR_RAM = .;
*(.m_interrupts_ram)
. += __RAM_VECTOR_TABLE_SIZE;
} > m_data
the size is: __RAM_VECTOR_TABLE_SIZE = 0xC00;
my buffer has all the 754 inteterrupt adresses elments of void(*str)(void).
When I compile the code I got an error message:
Description Resource Path Location Type
Ld error: section interrupts_ram LMA [01006550,01007117] overlaps section .sdata LMA RTOS_Z4_0 C/C++ Problem
The size of the ram is 0xc00 is it a 0xc00 bites or words(32)?
I think the memory is not sufficient to store my buffer in that section, how I could add more space to the ram interrupt section?
Thank you in advance,