mirror of
https://github.com/trezor/trezor-firmware.git
synced 2024-11-26 17:38:39 +00:00
be64864efc
Two variables of the bootloader are persistent: - __stack_chk_guard is used by interrupt handlers - system_millis is used by timer interrupt and service routines Note that currently __stack_chk_guard is shared between unprivileged firmware and bootloader. If we get more variables later it may make sense to make a section for this.
26 lines
551 B
Plaintext
26 lines
551 B
Plaintext
/* STM32F205RE - 512K Flash, 128K RAM */
|
|
/* program starts at 0x08010000 */
|
|
MEMORY
|
|
{
|
|
rom (rx) : ORIGIN = 0x08010000, LENGTH = 512K - 64K
|
|
ram (rwx) : ORIGIN = 0x20000000, LENGTH = 128K
|
|
}
|
|
|
|
SECTIONS
|
|
{
|
|
.confidential (NOLOAD) : {
|
|
*(confidential)
|
|
ASSERT ((SIZEOF(.confidential) <= 33K), "Error: Confidential section too big!");
|
|
} >ram
|
|
}
|
|
|
|
INCLUDE libopencm3_stm32f2.ld
|
|
|
|
_ram_start = ORIGIN(ram);
|
|
_ram_end = ORIGIN(ram) + LENGTH(ram);
|
|
_stack = _ram_end - 8;
|
|
__stack_chk_guard = _ram_end - 8;
|
|
system_millis = _ram_end - 4;
|
|
|
|
_data_size = SIZEOF(.data);
|