2018-01-26 08:43:22 +00:00
|
|
|
#ifndef _KERNEL_KE_SPIN_LOCK_H_
|
|
|
|
#define _KERNEL_KE_SPIN_LOCK_H_
|
2017-02-01 03:26:08 +00:00
|
|
|
|
2018-01-26 08:43:22 +00:00
|
|
|
#include "type.h"
|
|
|
|
#include "kernel/ke/intr.h"
|
2017-02-01 03:26:08 +00:00
|
|
|
|
|
|
|
typedef struct
|
|
|
|
{
|
|
|
|
int32_t val;
|
|
|
|
} k_spin_lock_t;
|
|
|
|
|
|
|
|
void KABI ke_spin_lock_init(k_spin_lock_t *lock);
|
|
|
|
|
|
|
|
void KABI ke_spin_lock(k_spin_lock_t *lock);
|
|
|
|
|
|
|
|
void KABI ke_spin_unlock(k_spin_lock_t *lock);
|
|
|
|
|
|
|
|
irql_t KABI ke_spin_lock_raise_irql(k_spin_lock_t *lock, irql_t irql);
|
|
|
|
|
|
|
|
void KABI ke_spin_unlock_lower_irql(k_spin_lock_t *lock, irql_t irql);
|
|
|
|
|
|
|
|
#endif
|