aboutsummaryrefslogtreecommitdiff
path: root/embassy-macros
diff options
context:
space:
mode:
authorDario Nieuwenhuis <[email protected]>2022-01-05 13:30:46 +0100
committerDario Nieuwenhuis <[email protected]>2022-01-05 13:30:46 +0100
commitcaf48d8a9593cfd408a230600173e510e397c7dd (patch)
tree3ea96ba6790b7793e96ca1e7c285de917fe30f64 /embassy-macros
parent58e9dfbc00c0fed1400ecf8c3827f476a25b7c11 (diff)
macros: initialize chip before executor.
The executor will call into the chip's time-driver, which may need the chip to be initialized.
Diffstat (limited to 'embassy-macros')
-rw-r--r--embassy-macros/src/lib.rs6
1 files changed, 2 insertions, 4 deletions
diff --git a/embassy-macros/src/lib.rs b/embassy-macros/src/lib.rs
index cdbc25179..44a8d3b93 100644
--- a/embassy-macros/src/lib.rs
+++ b/embassy-macros/src/lib.rs
@@ -370,16 +370,14 @@ pub fn main(args: TokenStream, item: TokenStream) -> TokenStream {
370 ::core::mem::transmute(t) 370 ::core::mem::transmute(t)
371 } 371 }
372 372
373 let mut executor = #embassy_path::executor::Executor::new(); 373 #chip_setup
374 374
375 let mut executor = #embassy_path::executor::Executor::new();
375 let executor = unsafe { make_static(&mut executor) }; 376 let executor = unsafe { make_static(&mut executor) };
376 377
377 #chip_setup
378
379 executor.run(|spawner| { 378 executor.run(|spawner| {
380 spawner.must_spawn(__embassy_main(spawner, p)); 379 spawner.must_spawn(__embassy_main(spawner, p));
381 }) 380 })
382
383 } 381 }
384 }; 382 };
385 result.into() 383 result.into()