diff --git a/core/embed/sys/linker/stm32f4/boardloader.ld b/core/embed/sys/linker/stm32f4/boardloader.ld index 8804627057..776a18fdd1 100644 --- a/core/embed/sys/linker/stm32f4/boardloader.ld +++ b/core/embed/sys/linker/stm32f4/boardloader.ld @@ -33,24 +33,6 @@ _accessible_ram_1_end = MCU_SRAM + MCU_SRAM_SIZE; _bootargs_ram_start = BOOTARGS_START; _bootargs_ram_end = BOOTARGS_START + BOOTARGS_SIZE; -/* used by the startup code to wipe memory */ -_startup_clear_ram_0_start = MCU_CCMRAM; -_startup_clear_ram_0_end = MCU_CCMRAM + MCU_CCMRAM_SIZE; -_startup_clear_ram_1_start = MCU_SRAM; -_startup_clear_ram_1_end = MCU_SRAM + MCU_SRAM_SIZE; - -/* used by the startup/jump code to wipe memory */ -_handoff_clear_ram_0_start = MCU_CCMRAM; -_handoff_clear_ram_0_end = MCU_CCMRAM + MCU_CCMRAM_SIZE; -_handoff_clear_ram_1_start = MCU_SRAM; -_handoff_clear_ram_1_end = MCU_SRAM + MCU_SRAM_SIZE; - -/* used by the shutdown code to wipe memory */ -_shutdown_clear_ram_0_start = MCU_CCMRAM; -_shutdown_clear_ram_0_end = MCU_CCMRAM + MCU_CCMRAM_SIZE; -_shutdown_clear_ram_1_start = MCU_SRAM; -_shutdown_clear_ram_1_end = MCU_SRAM + MCU_SRAM_SIZE; - SECTIONS { .vector_table : ALIGN(CODE_ALIGNMENT) { KEEP(*(.vector_table)); diff --git a/core/embed/sys/linker/stm32f4/bootloader.ld b/core/embed/sys/linker/stm32f4/bootloader.ld index fdd3937051..a207b32d68 100644 --- a/core/embed/sys/linker/stm32f4/bootloader.ld +++ b/core/embed/sys/linker/stm32f4/bootloader.ld @@ -33,28 +33,6 @@ _accessible_ram_1_end = MCU_SRAM + MCU_SRAM_SIZE; _bootargs_ram_start = BOOTARGS_START; _bootargs_ram_end = BOOTARGS_START + BOOTARGS_SIZE; -/* used by the startup code to wipe memory */ -_startup_clear_ram_0_start = MCU_CCMRAM; -_startup_clear_ram_0_end = MCU_CCMRAM + MCU_CCMRAM_SIZE - BOOTARGS_SIZE; -_startup_clear_ram_1_start = MCU_SRAM; -_startup_clear_ram_1_end = MCU_SRAM + MCU_SRAM_SIZE; - -/* used by the jump code to wipe memory */ -_handoff_clear_ram_0_start = MCU_CCMRAM; -_handoff_clear_ram_0_end = MCU_CCMRAM + MCU_CCMRAM_SIZE; -_handoff_clear_ram_1_start = MCU_SRAM; -_handoff_clear_ram_1_end = MCU_SRAM + MCU_SRAM_SIZE; - -/* used by the shutdown code to wipe memory */ -_shutdown_clear_ram_0_start = MCU_CCMRAM; -_shutdown_clear_ram_0_end = MCU_CCMRAM + MCU_CCMRAM_SIZE; -_shutdown_clear_ram_1_start = MCU_SRAM; -_shutdown_clear_ram_1_end = MCU_SRAM + MCU_SRAM_SIZE; - -/* reserve 256 bytes for bootloader arguments */ -boot_args_start = ORIGIN(BOOT_ARGS); -boot_args_end = ORIGIN(BOOT_ARGS) + LENGTH(BOOT_ARGS); - _codelen = SIZEOF(.flash) + SIZEOF(.data); SECTIONS { diff --git a/core/embed/sys/linker/stm32f4/kernel.ld b/core/embed/sys/linker/stm32f4/kernel.ld index 64c6bbef2b..8ce21d3a7d 100644 --- a/core/embed/sys/linker/stm32f4/kernel.ld +++ b/core/embed/sys/linker/stm32f4/kernel.ld @@ -33,24 +33,6 @@ _accessible_ram_1_end = MCU_SRAM + MCU_SRAM_SIZE; _bootargs_ram_start = BOOTARGS_START; _bootargs_ram_end = BOOTARGS_START + BOOTARGS_SIZE; -/* used by the startup code to wipe memory */ -_startup_clear_ram_0_start = MCU_CCMRAM; -_startup_clear_ram_0_end = MCU_CCMRAM + MCU_CCMRAM_SIZE; -_startup_clear_ram_1_start = MCU_SRAM; -_startup_clear_ram_1_end = MCU_SRAM + MCU_SRAM_SIZE; - -/* used by the jump code to wipe memory */ -_handoff_clear_ram_0_start = MCU_CCMRAM; -_handoff_clear_ram_0_end = MCU_CCMRAM + MCU_CCMRAM_SIZE - BOOTARGS_SIZE; -_handoff_clear_ram_1_start = MCU_SRAM; -_handoff_clear_ram_1_end = MCU_SRAM + MCU_SRAM_SIZE; - -/* used by the shutdown code to wipe memory */ -_shutdown_clear_ram_0_start = MCU_CCMRAM; -_shutdown_clear_ram_0_end = MCU_CCMRAM + MCU_CCMRAM_SIZE; -_shutdown_clear_ram_1_start = MCU_SRAM; -_shutdown_clear_ram_1_end = MCU_SRAM + MCU_SRAM_SIZE; - _codelen = SIZEOF(.vendorheader) + SIZEOF(.header) + SIZEOF(.flash) + SIZEOF(.data) ; SECTIONS { diff --git a/core/embed/sys/linker/stm32f4/prodtest.ld b/core/embed/sys/linker/stm32f4/prodtest.ld index ed42acc779..dd2e6b3b6b 100644 --- a/core/embed/sys/linker/stm32f4/prodtest.ld +++ b/core/embed/sys/linker/stm32f4/prodtest.ld @@ -33,28 +33,6 @@ _accessible_ram_1_end = MCU_SRAM + MCU_SRAM_SIZE; _bootargs_ram_start = BOOTARGS_START; _bootargs_ram_end = BOOTARGS_START + BOOTARGS_SIZE; -/* used by the startup code to wipe memory */ -_startup_clear_ram_0_start = MCU_CCMRAM; -_startup_clear_ram_0_end = MCU_CCMRAM + MCU_CCMRAM_SIZE; -_startup_clear_ram_1_start = MCU_SRAM; -_startup_clear_ram_1_end = MCU_SRAM + MCU_SRAM_SIZE; - -/* used by the startup/jump code to wipe memory */ -_handoff_clear_ram_0_start = MCU_CCMRAM; -_handoff_clear_ram_0_end = MCU_CCMRAM + MCU_CCMRAM_SIZE - BOOTARGS_SIZE; -_handoff_clear_ram_1_start = MCU_SRAM; -_handoff_clear_ram_1_end = MCU_SRAM + MCU_SRAM_SIZE; - -/* used by the shutdown code to wipe memory */ -_shutdown_clear_ram_0_start = MCU_CCMRAM; -_shutdown_clear_ram_0_end = MCU_CCMRAM + MCU_CCMRAM_SIZE; -_shutdown_clear_ram_1_start = MCU_SRAM; -_shutdown_clear_ram_1_end = MCU_SRAM + MCU_SRAM_SIZE; - -/* reserve 256 bytes for bootloader arguments */ -boot_args_start = ORIGIN(BOOT_ARGS); -boot_args_end = ORIGIN(BOOT_ARGS) + LENGTH(BOOT_ARGS); - _codelen = SIZEOF(.flash) + SIZEOF(.data); _flash_start = ORIGIN(FLASH); _flash_end = ORIGIN(FLASH) + LENGTH(FLASH); diff --git a/core/embed/sys/linker/stm32u58/boardloader.ld b/core/embed/sys/linker/stm32u58/boardloader.ld index a9aa021346..d900b1399c 100644 --- a/core/embed/sys/linker/stm32u58/boardloader.ld +++ b/core/embed/sys/linker/stm32u58/boardloader.ld @@ -36,32 +36,6 @@ _accessible_ram_1_end = MCU_SRAM4 + MCU_SRAM4_SIZE; _bootargs_ram_start = BOOTARGS_START; _bootargs_ram_end = BOOTARGS_START + BOOTARGS_SIZE; -/* used by the startup code to wipe memory */ -_startup_clear_ram_0_start = MCU_SRAM1; -_startup_clear_ram_0_end = MCU_SRAM1 + MCU_SRAM1_SIZE - BOOTARGS_SIZE; -_startup_clear_ram_1_start = MCU_SRAM2; -_startup_clear_ram_1_end = MCU_SRAM3 + MCU_SRAM3_SIZE; -_startup_clear_ram_2_start = MCU_SRAM4; -_startup_clear_ram_2_end = MCU_SRAM4 + MCU_SRAM4_SIZE; - -/* used by the jump code to wipe memory */ -_handoff_clear_ram_0_start = MCU_SRAM1; -_handoff_clear_ram_0_end = MCU_SRAM1 + MCU_SRAM1_SIZE - BOOTARGS_SIZE; -_handoff_clear_ram_1_start = MCU_SRAM2; -_handoff_clear_ram_1_end = MCU_SRAM3 + MCU_SRAM3_SIZE; -_handoff_clear_ram_2_start = MCU_SRAM4; -_handoff_clear_ram_2_end = MCU_SRAM4 + MCU_SRAM4_SIZE; - -/* used by the shutdown code to wipe memory */ -_shutdown_clear_ram_0_start = MCU_SRAM1; -_shutdown_clear_ram_0_end = MCU_SRAM3 + MCU_SRAM3_SIZE; -_shutdown_clear_ram_1_start = MCU_SRAM4; -_shutdown_clear_ram_1_end = MCU_SRAM4 + MCU_SRAM4_SIZE; -_shutdown_clear_ram_2_start = 0; -_shutdown_clear_ram_2_end = 0; -_shutdown_clear_ram_3_start = 0; -_shutdown_clear_ram_3_end = 0; - SECTIONS { .vector_table : ALIGN(CODE_ALIGNMENT) { KEEP(*(.vector_table)); diff --git a/core/embed/sys/linker/stm32u58/bootloader.ld b/core/embed/sys/linker/stm32u58/bootloader.ld index 3e4fea9637..692c19a394 100644 --- a/core/embed/sys/linker/stm32u58/bootloader.ld +++ b/core/embed/sys/linker/stm32u58/bootloader.ld @@ -35,32 +35,6 @@ _accessible_ram_1_end = MCU_SRAM4 + MCU_SRAM4_SIZE; _bootargs_ram_start = BOOTARGS_START; _bootargs_ram_end = BOOTARGS_START + BOOTARGS_SIZE; -/* used by the startup code to wipe memory */ -_startup_clear_ram_0_start = MCU_SRAM1; -_startup_clear_ram_0_end = MCU_SRAM1 + MCU_SRAM1_SIZE - BOOTARGS_SIZE; -_startup_clear_ram_1_start = MCU_SRAM2; -_startup_clear_ram_1_end = MCU_SRAM3 + MCU_SRAM3_SIZE; -_startup_clear_ram_2_start = MCU_SRAM4; -_startup_clear_ram_2_end = MCU_SRAM4 + MCU_SRAM4_SIZE; - -/* used by the jump code to wipe memory */ -_handoff_clear_ram_0_start = MCU_SRAM1; -_handoff_clear_ram_0_end = MCU_SRAM1 + MCU_SRAM1_SIZE; -_handoff_clear_ram_1_start = MCU_SRAM2; -_handoff_clear_ram_1_end = MCU_SRAM3 + MCU_SRAM3_SIZE; -_handoff_clear_ram_2_start = MCU_SRAM4; -_handoff_clear_ram_2_end = MCU_SRAM4 + MCU_SRAM4_SIZE; - -/* used by the shutdown code to wipe memory */ -_shutdown_clear_ram_0_start = MCU_SRAM1; -_shutdown_clear_ram_0_end = MCU_SRAM3 + MCU_SRAM3_SIZE; -_shutdown_clear_ram_1_start = MCU_SRAM4; -_shutdown_clear_ram_1_end = MCU_SRAM4 + MCU_SRAM4_SIZE; -_shutdown_clear_ram_2_start = 0; -_shutdown_clear_ram_2_end = 0; -_shutdown_clear_ram_3_start = 0; -_shutdown_clear_ram_3_end = 0; - _codelen = SIZEOF(.flash) + SIZEOF(.data) + SIZEOF(.confidential); SECTIONS { diff --git a/core/embed/sys/linker/stm32u58/kernel.ld b/core/embed/sys/linker/stm32u58/kernel.ld index b8e8f5694b..21213c2408 100644 --- a/core/embed/sys/linker/stm32u58/kernel.ld +++ b/core/embed/sys/linker/stm32u58/kernel.ld @@ -38,32 +38,6 @@ _accessible_ram_1_end = MCU_SRAM4 + MCU_SRAM4_SIZE; _bootargs_ram_start = BOOTARGS_START; _bootargs_ram_end = BOOTARGS_START + BOOTARGS_SIZE; -/* used by the startup code to wipe memory */ -_startup_clear_ram_0_start = MCU_SRAM1; -_startup_clear_ram_0_end = MCU_SRAM1 + MCU_SRAM1_SIZE; -_startup_clear_ram_1_start = MCU_SRAM2; -_startup_clear_ram_1_end = MCU_SRAM3 + MCU_SRAM3_SIZE; -_startup_clear_ram_2_start = MCU_SRAM4; -_startup_clear_ram_2_end = MCU_SRAM4 + MCU_SRAM4_SIZE; - -/* used by the jump code to wipe memory */ -_handoff_clear_ram_0_start = MCU_SRAM1; -_handoff_clear_ram_0_end = MCU_SRAM1 + MCU_SRAM1_SIZE - 512; -_handoff_clear_ram_1_start = MCU_SRAM2; -_handoff_clear_ram_1_end = MCU_SRAM3 + MCU_SRAM3_SIZE; -_handoff_clear_ram_2_start = MCU_SRAM4; -_handoff_clear_ram_2_end = MCU_SRAM4 + MCU_SRAM4_SIZE; - -/* used by the shutdown code to wipe memory */ -_shutdown_clear_ram_0_start = MCU_SRAM1; -_shutdown_clear_ram_0_end = MCU_SRAM3 + MCU_SRAM3_SIZE; -_shutdown_clear_ram_1_start = MCU_SRAM4; -_shutdown_clear_ram_1_end = MCU_SRAM4 + MCU_SRAM4_SIZE; -_shutdown_clear_ram_2_start = 0; -_shutdown_clear_ram_2_end = 0; -_shutdown_clear_ram_3_start = 0; -_shutdown_clear_ram_3_end = 0; - _codelen = SIZEOF(.vendorheader) + SIZEOF(.header) + SIZEOF(.flash) + SIZEOF(.uflash) + SIZEOF(.data) + SIZEOF(.confidential); _flash_start = ORIGIN(FLASH); _flash_end = ORIGIN(FLASH) + LENGTH(FLASH); diff --git a/core/embed/sys/linker/stm32u58/prodtest.ld b/core/embed/sys/linker/stm32u58/prodtest.ld index 7e1310c89d..5af5eaa071 100644 --- a/core/embed/sys/linker/stm32u58/prodtest.ld +++ b/core/embed/sys/linker/stm32u58/prodtest.ld @@ -35,32 +35,6 @@ _accessible_ram_1_end = MCU_SRAM4 + MCU_SRAM4_SIZE; _bootargs_ram_start = BOOTARGS_START; _bootargs_ram_end = BOOTARGS_START + BOOTARGS_SIZE; -/* used by the startup code to wipe memory */ -_startup_clear_ram_0_start = MCU_SRAM1; -_startup_clear_ram_0_end = MCU_SRAM1 + MCU_SRAM1_SIZE; -_startup_clear_ram_1_start = MCU_SRAM2; -_startup_clear_ram_1_end = MCU_SRAM3 + MCU_SRAM3_SIZE; -_startup_clear_ram_2_start = MCU_SRAM4; -_startup_clear_ram_2_end = MCU_SRAM4 + MCU_SRAM4_SIZE; - -/* used by the jump code to wipe memory */ -_handoff_clear_ram_0_start = MCU_SRAM1; -_handoff_clear_ram_0_end = MCU_SRAM1 + MCU_SRAM1_SIZE - BOOTARGS_SIZE; -_handoff_clear_ram_1_start = MCU_SRAM2; -_handoff_clear_ram_1_end = MCU_SRAM3 + MCU_SRAM3_SIZE; -_handoff_clear_ram_2_start = MCU_SRAM4; -_handoff_clear_ram_2_end = MCU_SRAM4 + MCU_SRAM4_SIZE; - -/* used by the shutdown code to wipe memory */ -_shutdown_clear_ram_0_start = MCU_SRAM1; -_shutdown_clear_ram_0_end = MCU_SRAM3 + MCU_SRAM3_SIZE; -_shutdown_clear_ram_1_start = MCU_SRAM4; -_shutdown_clear_ram_1_end = MCU_SRAM4 + MCU_SRAM4_SIZE; -_shutdown_clear_ram_2_start = 0; -_shutdown_clear_ram_2_end = 0; -_shutdown_clear_ram_3_start = 0; -_shutdown_clear_ram_3_end = 0; - _codelen = SIZEOF(.flash) + SIZEOF(.data) + SIZEOF(.confidential); _flash_start = ORIGIN(FLASH); _flash_end = ORIGIN(FLASH) + LENGTH(FLASH); diff --git a/core/embed/sys/linker/stm32u5g/boardloader.ld b/core/embed/sys/linker/stm32u5g/boardloader.ld index fb52947012..df63d1203b 100644 --- a/core/embed/sys/linker/stm32u5g/boardloader.ld +++ b/core/embed/sys/linker/stm32u5g/boardloader.ld @@ -36,31 +36,6 @@ _accessible_ram_1_end = MCU_SRAM4 + MCU_SRAM4_SIZE; _bootargs_ram_start = BOOTARGS_START; _bootargs_ram_end = BOOTARGS_START + BOOTARGS_SIZE; -/* used by the startup code to wipe memory */ -_startup_clear_ram_0_start = MCU_SRAM1 + BOOTARGS_SIZE; -_startup_clear_ram_0_end = MCU_SRAM1 + MCU_SRAM1_SIZE; -_startup_clear_ram_1_start = MCU_SRAM2; -_startup_clear_ram_1_end = MCU_SRAM6 + MCU_SRAM6_SIZE; -_startup_clear_ram_2_start = MCU_SRAM4; -_startup_clear_ram_2_end = MCU_SRAM4 + MCU_SRAM4_SIZE; - -/* used by the jump code to wipe memory */ -_handoff_clear_ram_0_start = MCU_SRAM1 + BOOTARGS_SIZE; -_handoff_clear_ram_0_end = MCU_SRAM1 + MCU_SRAM1_SIZE; -_handoff_clear_ram_1_start = MCU_SRAM2; -_handoff_clear_ram_1_end = MCU_SRAM6 + MCU_SRAM6_SIZE; -_handoff_clear_ram_2_start = MCU_SRAM4; -_handoff_clear_ram_2_end = MCU_SRAM4 + MCU_SRAM4_SIZE; - -/* used by the shutdown code to wipe memory */ -_shutdown_clear_ram_0_start = MCU_SRAM1; -_shutdown_clear_ram_0_end = ADDR(.fb1); -_shutdown_clear_ram_1_start = ADDR(.fb1) + SIZEOF(.fb1); -_shutdown_clear_ram_1_end = ADDR(.fb2); -_shutdown_clear_ram_2_start = ADDR(.fb2) + SIZEOF(.fb2); -_shutdown_clear_ram_2_end = MCU_SRAM6 + MCU_SRAM6_SIZE; -_shutdown_clear_ram_3_start = MCU_SRAM4; -_shutdown_clear_ram_3_end = MCU_SRAM4 + MCU_SRAM4_SIZE; SECTIONS { .vector_table : ALIGN(CODE_ALIGNMENT) { diff --git a/core/embed/sys/linker/stm32u5g/bootloader.ld b/core/embed/sys/linker/stm32u5g/bootloader.ld index 324660af06..ce1557ce7e 100644 --- a/core/embed/sys/linker/stm32u5g/bootloader.ld +++ b/core/embed/sys/linker/stm32u5g/bootloader.ld @@ -35,32 +35,6 @@ _accessible_ram_1_end = MCU_SRAM4 + MCU_SRAM4_SIZE; _bootargs_ram_start = BOOTARGS_START; _bootargs_ram_end = BOOTARGS_START + BOOTARGS_SIZE; -/* used by the startup code to wipe memory */ -_startup_clear_ram_0_start = MCU_SRAM1 + BOOTARGS_SIZE; -_startup_clear_ram_0_end = MCU_SRAM1 + MCU_SRAM1_SIZE; -_startup_clear_ram_1_start = MCU_SRAM2; -_startup_clear_ram_1_end = MCU_SRAM6 + MCU_SRAM6_SIZE; -_startup_clear_ram_2_start = MCU_SRAM4; -_startup_clear_ram_2_end = MCU_SRAM4 + MCU_SRAM4_SIZE; - -/* used by the jump code to wipe memory */ -_handoff_clear_ram_0_start = MCU_SRAM1; -_handoff_clear_ram_0_end = MCU_SRAM1 + MCU_SRAM1_SIZE; -_handoff_clear_ram_1_start = MCU_SRAM2; -_handoff_clear_ram_1_end = MCU_SRAM6 + MCU_SRAM6_SIZE; -_handoff_clear_ram_2_start = MCU_SRAM4; -_handoff_clear_ram_2_end = MCU_SRAM4 + MCU_SRAM4_SIZE; - -/* used by the shutdown code to wipe memory */ -_shutdown_clear_ram_0_start = MCU_SRAM1; -_shutdown_clear_ram_0_end = ADDR(.fb1); -_shutdown_clear_ram_1_start = ADDR(.fb1) + SIZEOF(.fb1); -_shutdown_clear_ram_1_end = ADDR(.fb2); -_shutdown_clear_ram_2_start = ADDR(.fb2) + SIZEOF(.fb2); -_shutdown_clear_ram_2_end = MCU_SRAM6 + MCU_SRAM6_SIZE; -_shutdown_clear_ram_3_start = MCU_SRAM4; -_shutdown_clear_ram_3_end = MCU_SRAM4 + MCU_SRAM4_SIZE; - _codelen = SIZEOF(.padding) + SIZEOF(.flash) + SIZEOF(.data) + SIZEOF(.confidential); SECTIONS { diff --git a/core/embed/sys/linker/stm32u5g/kernel.ld b/core/embed/sys/linker/stm32u5g/kernel.ld index ff8a6c7775..9ae4b177dc 100644 --- a/core/embed/sys/linker/stm32u5g/kernel.ld +++ b/core/embed/sys/linker/stm32u5g/kernel.ld @@ -39,32 +39,6 @@ _accessible_ram_1_end = MCU_SRAM4 + MCU_SRAM4_SIZE; _bootargs_ram_start = BOOTARGS_START; _bootargs_ram_end = BOOTARGS_START + BOOTARGS_SIZE; -/* used by the startup code to wipe memory */ -_startup_clear_ram_0_start = MCU_SRAM1; -_startup_clear_ram_0_end = MCU_SRAM1 + MCU_SRAM1_SIZE; -_startup_clear_ram_1_start = MCU_SRAM2; -_startup_clear_ram_1_end = MCU_SRAM6 + MCU_SRAM6_SIZE; -_startup_clear_ram_2_start = MCU_SRAM4; -_startup_clear_ram_2_end = MCU_SRAM4 + MCU_SRAM4_SIZE; - -/* used by the jump code to wipe memory */ -_handoff_clear_ram_0_start = MCU_SRAM1 + BOOTARGS_SIZE; -_handoff_clear_ram_0_end = MCU_SRAM1 + MCU_SRAM1_SIZE; -_handoff_clear_ram_1_start = MCU_SRAM2; -_handoff_clear_ram_1_end = MCU_SRAM6 + MCU_SRAM6_SIZE; -_handoff_clear_ram_2_start = MCU_SRAM4; -_handoff_clear_ram_2_end = MCU_SRAM4 + MCU_SRAM4_SIZE; - -/* used by the shutdown code to wipe memory */ -_shutdown_clear_ram_0_start = MCU_SRAM1; -_shutdown_clear_ram_0_end = ADDR(.fb1); -_shutdown_clear_ram_1_start = ADDR(.fb1) + SIZEOF(.fb1); -_shutdown_clear_ram_1_end = ADDR(.fb2); -_shutdown_clear_ram_2_start = ADDR(.fb2) + SIZEOF(.fb2); -_shutdown_clear_ram_2_end = MCU_SRAM6 + MCU_SRAM6_SIZE; -_shutdown_clear_ram_3_start = MCU_SRAM4; -_shutdown_clear_ram_3_end = MCU_SRAM4 + MCU_SRAM4_SIZE; - _codelen = SIZEOF(.vendorheader) + SIZEOF(.header) + SIZEOF(.flash) + SIZEOF(.uflash) + SIZEOF(.data) + SIZEOF(.confidential); _flash_start = ORIGIN(FLASH); _flash_end = ORIGIN(FLASH) + LENGTH(FLASH); diff --git a/core/embed/sys/linker/stm32u5g/prodtest.ld b/core/embed/sys/linker/stm32u5g/prodtest.ld index dc767cb5b9..141b11ee45 100644 --- a/core/embed/sys/linker/stm32u5g/prodtest.ld +++ b/core/embed/sys/linker/stm32u5g/prodtest.ld @@ -35,34 +35,8 @@ _accessible_ram_1_end = MCU_SRAM4 + MCU_SRAM4_SIZE; _bootargs_ram_start = BOOTARGS_START; _bootargs_ram_end = BOOTARGS_START + BOOTARGS_SIZE; -/* used by the startup code to wipe memory */ -_startup_clear_ram_0_start = MCU_SRAM1; -_startup_clear_ram_0_end = MCU_SRAM1 + MCU_SRAM1_SIZE; -_startup_clear_ram_1_start = MCU_SRAM2; -_startup_clear_ram_1_end = MCU_SRAM6 + MCU_SRAM6_SIZE; -_startup_clear_ram_2_start = MCU_SRAM4; -_startup_clear_ram_2_end = MCU_SRAM4 + MCU_SRAM4_SIZE; - -/* used by the jump code to wipe memory */ -_handoff_clear_ram_0_start = MCU_SRAM1 + BOOTARGS_SIZE; -_handoff_clear_ram_0_end = MCU_SRAM1 + MCU_SRAM1_SIZE; -_handoff_clear_ram_1_start = MCU_SRAM2; -_handoff_clear_ram_1_end = MCU_SRAM6 + MCU_SRAM6_SIZE; -_handoff_clear_ram_2_start = MCU_SRAM4; -_handoff_clear_ram_2_end = MCU_SRAM4 + MCU_SRAM4_SIZE; - -/* used by the shutdown code to wipe memory */ -_shutdown_clear_ram_0_start = MCU_SRAM1; -_shutdown_clear_ram_0_end = ADDR(.fb1); -_shutdown_clear_ram_1_start = ADDR(.fb1) + SIZEOF(.fb1); -_shutdown_clear_ram_1_end = ADDR(.fb2); -_shutdown_clear_ram_2_start = ADDR(.fb2) + SIZEOF(.fb2); -_shutdown_clear_ram_2_end = MCU_SRAM6 + MCU_SRAM6_SIZE; -_shutdown_clear_ram_3_start = MCU_SRAM4; -_shutdown_clear_ram_3_end = MCU_SRAM4 + MCU_SRAM4_SIZE; - - _codelen = SIZEOF(.padding) + SIZEOF(.flash) + SIZEOF(.data) + SIZEOF(.confidential); + _flash_start = ORIGIN(FLASH); _flash_end = ORIGIN(FLASH) + LENGTH(FLASH);