I'm trying to get warm with the FreeRTOS sdk and the locating of user library code. I try at the moment to store some functions in the ROM instead of the RAM by modifying the eagle.pro.v7.common.ld like this:
Code: Select all
diff --git a/ld/eagle.pro.v7.common.ld b/ld/eagle.pro.v7.common.ld index 9206889..da636b7 100644 --- a/ld/eagle.pro.v7.common.ld +++ b/ld/eagle.pro.v7.common.ld @@ -168,6 +168,7 @@ SECTIONS *libphy.a:(.literal .text .literal.* .text.*) *libc.a:(.literal .text .literal.* .text.*) *libm.a:(.literal .text .literal.* .text.*) + *libmyfunctions.a:(.literal .text .literal.* .text.*) *(.literal.* .text.*) _irom0_text_end = ABSOLUTE(.); } >irom0_0_seg :irom0_0_phdr
I would expect that there is some issue with code referring between RAM and ROM as I notice that this exception indicates some kind of memory violation error.Fatal exception (28):
Now my question would be how do you currently handle library code which is to big to fit into the RAM? I would expect that locating them in the ROM is the standard way of doing it.