Мне надо расположить прошивку в нижней и верхней части флеша, с пустым местом посередине.
Оптимально - чтобы было занято нижние 4к и столько, сколько нужно - сверху.
Но в принципе пойдет и указать размер верхнего сегмента руками.
Пробовал так:
Код
MEMORY
{
ram (rwx) : ORIGIN = 0x20000000, LENGTH = 0x0000C000
rom1 (rx) : ORIGIN = 0x08000000, LENGTH = 0x00001000
rom2 (rx) : ORIGIN = 0x08000000 + 0x00040000 - 0x0001000, LENGTH = 0x00001000
}
SECTIONS
{
.text :
{
KEEP(*(.vectors))
*(.text .text.*)
*(.rodata)
} > rom1
.text2 :
{
*(.text .text.*)
*(.rodata)
} > rom2
...
}
Ругается section `.text' will not fit in region `rom1'.
Понятно, что можно руками распихать разные файлы по разным секциям, но нет ли способа сделать это автоматически?