1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
//! ARM Cortex-M implementation of [`ISync`].

use crate::sync::ISync;
use crate::cortex_m::Arch;

impl ISync for Arch {
    #[allow(unused_variables)]
    fn disable_interrupts(priority: usize) {
        // todo: only mask interrupts up to a certain priority
        cortex_m::interrupt::disable();
    }

    fn enable_interrupts() {
        unsafe { cortex_m::interrupt::enable(); }
    }
}