Using more than 200k of flash, and put rodata in flash
Posted: Tue Dec 23, 2014 4:33 am
In the linker script section .rodata is mapped into RAM:
This is eating a precious 6k of RAM. In all my ARM linker scripts .rodata goes into .text and thus in Flash. Does anyone know why this is, and can it be changed? I've tried to move it but of course it then fails to boot.
And my second question:
The linker script only uses 232k of the flash. I think it has 512k, is it possible to use the remaining space for code? I don't use the cloud update feature.
Code: Select all
.rodata : ALIGN(4)
{
_rodata_start = ABSOLUTE(.);
*(.rodata.*)
*(.rodata)
*(.gnu.linkonce.r.*)
...
} >dram0_0_seg :dram0_0_phdr
This is eating a precious 6k of RAM. In all my ARM linker scripts .rodata goes into .text and thus in Flash. Does anyone know why this is, and can it be changed? I've tried to move it but of course it then fails to boot.
And my second question:
Code: Select all
iram1_0_seg : org = 0x40100000, len = 0x8000
irom0_0_seg : org = 0x40240000, len = 0x32000
The linker script only uses 232k of the flash. I think it has 512k, is it possible to use the remaining space for code? I don't use the cloud update feature.