Added bare_metal::CriticalSection to init::Context

This commit is contained in:
Emil Fresk 2020-10-01 20:01:25 +02:00
parent 4d61437bb4
commit fb61a78cdd
3 changed files with 10 additions and 0 deletions

View file

@ -60,6 +60,7 @@ cortex-m-rtic-macros = { path = "macros", version = "0.5.2" }
rtic-core = "0.3.0" rtic-core = "0.3.0"
cortex-m-rt = "0.6.9" cortex-m-rt = "0.6.9"
heapless = "0.5.0" heapless = "0.5.0"
bare-metal = "1.0.0"
[build-dependencies] [build-dependencies]
version_check = "0.9" version_check = "0.9"

View file

@ -47,6 +47,14 @@ pub fn codegen(ctxt: Context, resources_tick: bool, app: &App, extra: &Extra) ->
values.push(quote!(device: #device::Peripherals::steal())); values.push(quote!(device: #device::Peripherals::steal()));
} }
lt = Some(quote!('a));
fields.push(quote!(
/// Critical section token for init
pub cs: rtic::export::CriticalSection<#lt>
));
values.push(quote!(cs: rtic::export::CriticalSection::new()));
values.push(quote!(core)); values.push(quote!(core));
} }

View file

@ -4,6 +4,7 @@ use core::{
}; };
pub use crate::tq::{NotReady, TimerQueue}; pub use crate::tq::{NotReady, TimerQueue};
pub use bare_metal::CriticalSection;
#[cfg(armv7m)] #[cfg(armv7m)]
pub use cortex_m::register::basepri; pub use cortex_m::register::basepri;
pub use cortex_m::{ pub use cortex_m::{