This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

linking error

Hello everyone,

I am using STM32F4xx controller for my project . I want to take the following array at fixed address as shown below:
unsigned char buffer[2][770] __attribute__((at(0x20010000)));

but i am getting following error at linking:

.\Output\sample_code.axf: Error: L6220E: Execution region RW_IRAM1 size (194056 bytes) exceeds limit (131072 bytes). Region contains 65536 bytes of padding and 0 bytes of veneers (total 65536 bytes of linker generated content).

The address 0x20010000 falls in the RAM range that i selected (0x20000000 to 0x2001FFFF) for my project.

What's the reason for that?

Thanks and Regards,
R Kumar.

  • Well looking at the error message it suggests your hard placement is interfering with where other variables are being placed.

    Does the size of the other variables exceed the size of the bisected memory region. ie >64KB and thus it can't fit it anywhere. Review the .MAP file. Reconsider the arbitrary placement of the buffer.