Skip to content

Commit 83c2615

Browse files
benmaasi345
authored andcommitted
optiga: implement critical section
To disable interrupts when processing Optiga commands.
1 parent c38fa41 commit 83c2615

File tree

1 file changed

+6
-2
lines changed

1 file changed

+6
-2
lines changed

src/optiga/pal/pal_os_lock.c

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,8 @@
3737

3838
#include "pal_os_lock.h"
3939

40+
#include <hal_atomic.h>
41+
4042
void pal_os_lock_create(pal_os_lock_t* p_lock, uint8_t lock_type)
4143
{
4244
p_lock->type = lock_type;
@@ -73,14 +75,16 @@ void pal_os_lock_release(pal_os_lock_t* p_lock)
7375
}
7476
}
7577

78+
static volatile hal_atomic_t _atomic;
79+
7680
void pal_os_lock_enter_critical_section(void)
7781
{
78-
// For safety critical systems it is recommended to implement a critical section entry
82+
atomic_enter_critical(&_atomic);
7983
}
8084

8185
void pal_os_lock_exit_critical_section(void)
8286
{
83-
// For safety critical systems it is recommended to implement a critical section exit
87+
atomic_leave_critical(&_atomic);
8488
}
8589

8690
/**

0 commit comments

Comments
 (0)