aboutsummaryrefslogtreecommitdiff
path: root/embassy-rp/src/lib.rs
diff options
context:
space:
mode:
authorCaleb Jamison <[email protected]>2024-08-27 13:19:07 -0400
committerCaleb Jamison <[email protected]>2024-08-29 10:47:03 -0400
commit372270a9b962196ede9c60a705cc3138ba592fec (patch)
tree575ac05a27915fc3165f51adf281b177cddca541 /embassy-rp/src/lib.rs
parent0a33edc9976caddcdebe0943cce78376f9c49789 (diff)
rp235x flash support.
The 2350 doesn't have a boot2 like the 2040, but it does have the concept of a xip setup function that could be customized. By default the bootrom searches for the attached flash chip and provides an xip setup func at the base of the bootram. That bootram is not executable, so it still needs to be copied to ram like boot2 would be. Currently does not use inline assembly. Also switch to picotool, as elf2uf2 has not been patched to support the 2350.
Diffstat (limited to 'embassy-rp/src/lib.rs')
-rw-r--r--embassy-rp/src/lib.rs4
1 files changed, 2 insertions, 2 deletions
diff --git a/embassy-rp/src/lib.rs b/embassy-rp/src/lib.rs
index c2c57eaa0..f8fcfe52b 100644
--- a/embassy-rp/src/lib.rs
+++ b/embassy-rp/src/lib.rs
@@ -402,7 +402,7 @@ embassy_hal_internal::peripherals! {
402 BOOTSEL, 402 BOOTSEL,
403} 403}
404 404
405#[cfg(not(feature = "boot2-none"))] 405#[cfg(all(not(feature = "boot2-none"), feature = "rp2040"))]
406macro_rules! select_bootloader { 406macro_rules! select_bootloader {
407 ( $( $feature:literal => $loader:ident, )+ default => $default:ident ) => { 407 ( $( $feature:literal => $loader:ident, )+ default => $default:ident ) => {
408 $( 408 $(
@@ -419,7 +419,7 @@ macro_rules! select_bootloader {
419 } 419 }
420} 420}
421 421
422#[cfg(not(feature = "boot2-none"))] 422#[cfg(all(not(feature = "boot2-none"), feature = "rp2040"))]
423select_bootloader! { 423select_bootloader! {
424 "boot2-at25sf128a" => BOOT_LOADER_AT25SF128A, 424 "boot2-at25sf128a" => BOOT_LOADER_AT25SF128A,
425 "boot2-gd25q64cs" => BOOT_LOADER_GD25Q64CS, 425 "boot2-gd25q64cs" => BOOT_LOADER_GD25Q64CS,