aboutsummaryrefslogtreecommitdiff
path: root/tests/rp/src/bin/pio_multi_load.rs
diff options
context:
space:
mode:
authorDario Nieuwenhuis <[email protected]>2025-02-10 00:03:49 +0100
committerDario Nieuwenhuis <[email protected]>2025-02-18 18:14:57 +0100
commit52dfefb63242ad49fd126470042411f464fe624d (patch)
tree69c559a4b4ecbab92e8b2963d8331546862d7de4 /tests/rp/src/bin/pio_multi_load.rs
parentdcf0868dd017c6df0c82e504864956374019f484 (diff)
rp/pio: update pio-rs crate, reexport it so users don't get version mismatches.
Diffstat (limited to 'tests/rp/src/bin/pio_multi_load.rs')
-rw-r--r--tests/rp/src/bin/pio_multi_load.rs16
1 files changed, 8 insertions, 8 deletions
diff --git a/tests/rp/src/bin/pio_multi_load.rs b/tests/rp/src/bin/pio_multi_load.rs
index cd28f99b6..71321015b 100644
--- a/tests/rp/src/bin/pio_multi_load.rs
+++ b/tests/rp/src/bin/pio_multi_load.rs
@@ -6,6 +6,7 @@ use defmt::info;
6use embassy_executor::Spawner; 6use embassy_executor::Spawner;
7use embassy_rp::bind_interrupts; 7use embassy_rp::bind_interrupts;
8use embassy_rp::peripherals::PIO0; 8use embassy_rp::peripherals::PIO0;
9use embassy_rp::pio::program::pio_asm;
9use embassy_rp::pio::{Config, InterruptHandler, LoadError, Pio}; 10use embassy_rp::pio::{Config, InterruptHandler, LoadError, Pio};
10use {defmt_rtt as _, panic_probe as _}; 11use {defmt_rtt as _, panic_probe as _};
11 12
@@ -27,7 +28,7 @@ async fn main(_spawner: Spawner) {
27 } = Pio::new(pio, Irqs); 28 } = Pio::new(pio, Irqs);
28 29
29 // load with explicit origin works 30 // load with explicit origin works
30 let prg1 = pio_proc::pio_asm!( 31 let prg1 = pio_asm!(
31 ".origin 4" 32 ".origin 4"
32 "nop", 33 "nop",
33 "nop", 34 "nop",
@@ -46,15 +47,14 @@ async fn main(_spawner: Spawner) {
46 assert_eq!(loaded1.wrap.target, 4); 47 assert_eq!(loaded1.wrap.target, 4);
47 48
48 // load without origin chooses a free space 49 // load without origin chooses a free space
49 let prg2 = pio_proc::pio_asm!("nop", "nop", "nop", "nop", "nop", "nop", "nop", "irq 1", "nop", "nop",); 50 let prg2 = pio_asm!("nop", "nop", "nop", "nop", "nop", "nop", "nop", "irq 1", "nop", "nop",);
50 let loaded2 = common.load_program(&prg2.program); 51 let loaded2 = common.load_program(&prg2.program);
51 assert_eq!(loaded2.origin, 14); 52 assert_eq!(loaded2.origin, 14);
52 assert_eq!(loaded2.wrap.source, 23); 53 assert_eq!(loaded2.wrap.source, 23);
53 assert_eq!(loaded2.wrap.target, 14); 54 assert_eq!(loaded2.wrap.target, 14);
54 55
55 // wrapping around the end of program space automatically works 56 // wrapping around the end of program space automatically works
56 let prg3 = 57 let prg3 = pio_asm!("nop", "nop", "nop", "nop", "nop", "nop", "nop", "nop", "nop", "nop", "nop", "irq 2",);
57 pio_proc::pio_asm!("nop", "nop", "nop", "nop", "nop", "nop", "nop", "nop", "nop", "nop", "nop", "irq 2",);
58 let loaded3 = common.load_program(&prg3.program); 58 let loaded3 = common.load_program(&prg3.program);
59 assert_eq!(loaded3.origin, 24); 59 assert_eq!(loaded3.origin, 24);
60 assert_eq!(loaded3.wrap.source, 3); 60 assert_eq!(loaded3.wrap.source, 3);
@@ -88,13 +88,13 @@ async fn main(_spawner: Spawner) {
88 88
89 // instruction memory is full now. all loads should fail. 89 // instruction memory is full now. all loads should fail.
90 { 90 {
91 let prg = pio_proc::pio_asm!(".origin 0", "nop"); 91 let prg = pio_asm!(".origin 0", "nop");
92 match common.try_load_program(&prg.program) { 92 match common.try_load_program(&prg.program) {
93 Err(LoadError::AddressInUse(0)) => (), 93 Err(LoadError::AddressInUse(0)) => (),
94 _ => panic!("program loaded when it shouldn't"), 94 _ => panic!("program loaded when it shouldn't"),
95 }; 95 };
96 96
97 let prg = pio_proc::pio_asm!("nop"); 97 let prg = pio_asm!("nop");
98 match common.try_load_program(&prg.program) { 98 match common.try_load_program(&prg.program) {
99 Err(LoadError::InsufficientSpace) => (), 99 Err(LoadError::InsufficientSpace) => (),
100 _ => panic!("program loaded when it shouldn't"), 100 _ => panic!("program loaded when it shouldn't"),
@@ -106,13 +106,13 @@ async fn main(_spawner: Spawner) {
106 common.free_instr(loaded3.used_memory); 106 common.free_instr(loaded3.used_memory);
107 } 107 }
108 { 108 {
109 let prg = pio_proc::pio_asm!(".origin 0", "nop"); 109 let prg = pio_asm!(".origin 0", "nop");
110 match common.try_load_program(&prg.program) { 110 match common.try_load_program(&prg.program) {
111 Ok(_) => (), 111 Ok(_) => (),
112 _ => panic!("program didn't loaded when it shouldn"), 112 _ => panic!("program didn't loaded when it shouldn"),
113 }; 113 };
114 114
115 let prg = pio_proc::pio_asm!("nop"); 115 let prg = pio_asm!("nop");
116 match common.try_load_program(&prg.program) { 116 match common.try_load_program(&prg.program) {
117 Ok(_) => (), 117 Ok(_) => (),
118 _ => panic!("program didn't loaded when it shouldn"), 118 _ => panic!("program didn't loaded when it shouldn"),