aboutsummaryrefslogtreecommitdiff
path: root/examples/boot/application/nrf/src
diff options
context:
space:
mode:
authorUlf Lilleengen <[email protected]>2025-12-08 11:28:54 +0100
committerUlf Lilleengen <[email protected]>2025-12-08 11:30:42 +0100
commit31543f38ec05965b0903c7da0854b375ac6a3d1c (patch)
treebece0a63ecef580e184def47b904b1bf157e0033 /examples/boot/application/nrf/src
parent2a54a3b93f38569a0a7aa585e75d6939a1726cce (diff)
feat: add support for nrf54 to embassy-boot examples
Diffstat (limited to 'examples/boot/application/nrf/src')
-rw-r--r--examples/boot/application/nrf/src/bin/a.rs13
-rw-r--r--examples/boot/application/nrf/src/bin/b.rs2
2 files changed, 12 insertions, 3 deletions
diff --git a/examples/boot/application/nrf/src/bin/a.rs b/examples/boot/application/nrf/src/bin/a.rs
index 2c1d1a7bb..f317414fc 100644
--- a/examples/boot/application/nrf/src/bin/a.rs
+++ b/examples/boot/application/nrf/src/bin/a.rs
@@ -27,6 +27,11 @@ async fn main(_spawner: Spawner) {
27 let mut led = Output::new(p.P0_13, Level::Low, OutputDrive::Standard); 27 let mut led = Output::new(p.P0_13, Level::Low, OutputDrive::Standard);
28 let mut led_reverted = Output::new(p.P0_14, Level::High, OutputDrive::Standard); 28 let mut led_reverted = Output::new(p.P0_14, Level::High, OutputDrive::Standard);
29 29
30 // nRF54 DK
31 // let mut button = Input::new(p.P1_13, Pull::Up);
32 // let mut led = Output::new(p.P1_14, Level::Low, OutputDrive::Standard);
33 // let mut led_reverted = Output::new(p.P2_09, Level::High, OutputDrive::Standard);
34
30 //let mut led = Output::new(p.P1_10, Level::Low, OutputDrive::Standard); 35 //let mut led = Output::new(p.P1_10, Level::Low, OutputDrive::Standard);
31 //let mut button = Input::new(p.P1_02, Pull::Up); 36 //let mut button = Input::new(p.P1_02, Pull::Up);
32 37
@@ -40,8 +45,8 @@ async fn main(_spawner: Spawner) {
40 // the watchdog will cause the device to reset as per its configured timeout in the bootloader. 45 // the watchdog will cause the device to reset as per its configured timeout in the bootloader.
41 // This helps is avoid a situation where new firmware might be bad and block our executor. 46 // This helps is avoid a situation where new firmware might be bad and block our executor.
42 // If firmware is bad in this way then the bootloader will revert to any previous version. 47 // If firmware is bad in this way then the bootloader will revert to any previous version.
43 let wdt_config = wdt::Config::try_new(&p.WDT).unwrap(); 48 let wdt_config = wdt::Config::try_new(&p.WDT0).unwrap();
44 let (_wdt, [_wdt_handle]) = match Watchdog::try_new(p.WDT, wdt_config) { 49 let (_wdt, [_wdt_handle]) = match Watchdog::try_new(p.WDT0, wdt_config) {
45 Ok(x) => x, 50 Ok(x) => x,
46 Err(_) => { 51 Err(_) => {
47 // Watchdog already active with the wrong number of handles, waiting for it to timeout... 52 // Watchdog already active with the wrong number of handles, waiting for it to timeout...
@@ -51,11 +56,13 @@ async fn main(_spawner: Spawner) {
51 } 56 }
52 }; 57 };
53 58
59 // RRAMC for nRF54
60 // let nvmc = Nvmc::new(p.RRAMC);
54 let nvmc = Nvmc::new(p.NVMC); 61 let nvmc = Nvmc::new(p.NVMC);
55 let nvmc = Mutex::new(BlockingAsync::new(nvmc)); 62 let nvmc = Mutex::new(BlockingAsync::new(nvmc));
56 63
57 let config = FirmwareUpdaterConfig::from_linkerfile(&nvmc, &nvmc); 64 let config = FirmwareUpdaterConfig::from_linkerfile(&nvmc, &nvmc);
58 let mut magic = [0; 4]; 65 let mut magic = [0; 16];
59 let mut updater = FirmwareUpdater::new(config, &mut magic); 66 let mut updater = FirmwareUpdater::new(config, &mut magic);
60 let state = updater.get_state().await.unwrap(); 67 let state = updater.get_state().await.unwrap();
61 if state == State::Revert { 68 if state == State::Revert {
diff --git a/examples/boot/application/nrf/src/bin/b.rs b/examples/boot/application/nrf/src/bin/b.rs
index de97b6a22..7ed78ea85 100644
--- a/examples/boot/application/nrf/src/bin/b.rs
+++ b/examples/boot/application/nrf/src/bin/b.rs
@@ -15,6 +15,8 @@ async fn main(_spawner: Spawner) {
15 15
16 // nRF91 DK 16 // nRF91 DK
17 // let mut led = Output::new(p.P0_02, Level::Low, OutputDrive::Standard); 17 // let mut led = Output::new(p.P0_02, Level::Low, OutputDrive::Standard);
18 // nrf54l15 dk
19 // let mut led = Output::new(p.P1_10, Level::Low, OutputDrive::Standard);
18 20
19 loop { 21 loop {
20 led.set_high(); 22 led.set_high();