firmware for my Touchscreen E-Paper Input Module for Framework Laptop 16
1use crate::critical_section::CsSyscall;
2use crate::syscall;
3use crate::syscall::SyscallNumber;
4
5struct EepyCs;
6critical_section::set_impl!(EepyCs);
7
8unsafe impl critical_section::Impl for EepyCs {
9 unsafe fn acquire() -> bool {
10 let mut state: usize;
11 syscall!(
12 SyscallNumber::CriticalSection,
13 out state in CsSyscall::Acquire,
14 );
15 state != 0
16 }
17
18 unsafe fn release(state: bool) {
19 syscall!(
20 SyscallNumber::CriticalSection,
21 in CsSyscall::Release,
22 in state,
23 );
24 }
25}