blob: 6b82f7360f43756eed87d7b8c1f3a1bc04a9adeb (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
|
#include "stdio.h"
#include "internal.h"
static enter_crit st_enter_critical = NULL;
static exit_crit st_exit_critical = NULL;
int st_register_crit_func(enter_crit ent, exit_crit exit)
{
if(ent == NULL || ent == NULL)
{
printf("parameter error\n");
return -1;
}
st_enter_critical = ent;
st_exit_critical = exit;
return 0;
}
uint32_t st_enter_crit_func()
{
if(st_enter_critical)
{
return st_enter_critical();
}
else
{
return -1;
}
}
void st_exit_crit_func(uint32_t flags)
{
if(st_exit_critical)
{
st_exit_critical(flags);
}
}
|