machine/rp2350: add flash support for rp2350 (#4803)

* machine/rp2350: add flash support for rp2350
* combine duplicate files
* clean things up and group by source file
* add stubbed out xip cache clean func if needed in the future
* update flash_enable_xip_via_boot2
* remove unused macros and fix inconsistent formatting
* make flash size configurable like rp2040
* add missing flash size configs
* retain big Go CGo compatibility per #4103
* clarify CS0_SIZE source and remove single-use typedef
This commit is contained in:
Michael Smith
2025-03-16 04:45:53 -04:00
committed by GitHub
parent 4f7c64cb24
commit 4768c7d431
9 changed files with 427 additions and 12 deletions
+4 -1
View File
@@ -1,4 +1,7 @@
{
"inherits": ["rp2350b"],
"build-tags": ["pga2350"]
"build-tags": ["pga2350"],
"ldflags": [
"--defsym=__flash_size=16M"
]
}
+4 -1
View File
@@ -4,5 +4,8 @@
],
"build-tags": ["pico2"],
"serial-port": ["2e8a:000A"],
"default-stack-size": 8192
"default-stack-size": 8192,
"ldflags": [
"--defsym=__flash_size=4M"
]
}
+3
View File
@@ -12,6 +12,9 @@
"src/device/rp/rp2350.s",
"targets/rp2350_embedded_block.s"
],
"ldflags": [
"--defsym=__flash_size=2M"
],
"linkerscript": "targets/rp2350.ld",
"openocd-interface": "picoprobe",
"openocd-transport": "swd",
+2 -2
View File
@@ -2,7 +2,7 @@
MEMORY
{
/* 2MiB safe default. */
FLASH : ORIGIN = 0x10000000, LENGTH = 2048k
FLASH : ORIGIN = 0x10000000, LENGTH = __flash_size
/* RAM consists of 8 banks, SRAM0..SRAM7 with striped mapping. */
SRAM : ORIGIN = 0x20000000, LENGTH = 512k
/* Banks 8 and 9 use direct mapping which can be
@@ -10,7 +10,7 @@ MEMORY
i.e: Separate stacks for core0 and core1. */
SRAM4 : ORIGIN = 0x20080000, LENGTH = 4k
SRAM5 : ORIGIN = 0x20081000, LENGTH = 4k
FLASH_TEXT (rx) : ORIGIN = 0x10000000, LENGTH = 2048k
FLASH_TEXT (rx) : ORIGIN = 0x10000000, LENGTH = __flash_size
RAM (rwx) : ORIGIN = 0x20000000, LENGTH = 512k
}
+3
View File
@@ -3,5 +3,8 @@
"rp2350"
],
"build-tags": ["tiny2350"],
"ldflags": [
"--defsym=__flash_size=4M"
],
"serial-port": ["2e8a:000f"]
}