Skip to content

Commit 6bfb83e

Browse files
sfe-SparkFrodpgeorge
authored andcommitted
rp2: Make FLASH LENGTH match PICO_FLASH_SIZE_BYTES in .ld files.
With a fallback to default sizes if `PICO_FLASH_SIZE_BYTES` is not defined. Signed-off-by: Dryw Wade <[email protected]>
1 parent 2dada06 commit 6bfb83e

File tree

3 files changed

+16
-2
lines changed

3 files changed

+16
-2
lines changed

ports/rp2/CMakeLists.txt

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -528,6 +528,20 @@ target_link_options(${MICROPY_TARGET} PRIVATE
528528
-Wl,--wrap=runtime_init_clocks
529529
)
530530

531+
if(PICO_FLASH_SIZE_BYTES GREATER 0)
532+
target_link_options(${MICROPY_TARGET} PRIVATE
533+
-Wl,--defsym=__micropy_flash_size__=${PICO_FLASH_SIZE_BYTES}
534+
)
535+
elseif(PICO_RP2040)
536+
target_link_options(${MICROPY_TARGET} PRIVATE
537+
-Wl,--defsym=__micropy_flash_size__=2048k # Default to 2MB
538+
)
539+
elseif(PICO_RP2350)
540+
target_link_options(${MICROPY_TARGET} PRIVATE
541+
-Wl,--defsym=__micropy_flash_size__=4096k # Default to 4MB
542+
)
543+
endif()
544+
531545
if(PICO_RP2350)
532546
target_link_options(${MICROPY_TARGET} PRIVATE
533547
-Wl,--defsym=__micropy_extra_stack__=4096

ports/rp2/memmap_mp_rp2040.ld

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@
2323

2424
MEMORY
2525
{
26-
FLASH(rx) : ORIGIN = 0x10000000, LENGTH = 2048k
26+
FLASH(rx) : ORIGIN = 0x10000000, LENGTH = __micropy_flash_size__
2727
RAM(rwx) : ORIGIN = 0x20000000, LENGTH = 256k
2828
SCRATCH_X(rwx) : ORIGIN = 0x20040000, LENGTH = 4k
2929
SCRATCH_Y(rwx) : ORIGIN = 0x20041000, LENGTH = 4k

ports/rp2/memmap_mp_rp2350.ld

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@
2323

2424
MEMORY
2525
{
26-
FLASH(rx) : ORIGIN = 0x10000000, LENGTH = 4096k
26+
FLASH(rx) : ORIGIN = 0x10000000, LENGTH = __micropy_flash_size__
2727
RAM(rwx) : ORIGIN = 0x20000000, LENGTH = 512k
2828
SCRATCH_X(rwx) : ORIGIN = 0x20080000, LENGTH = 4k
2929
SCRATCH_Y(rwx) : ORIGIN = 0x20081000, LENGTH = 4k

0 commit comments

Comments
 (0)