OS abstraction layer. More...
OS abstraction layer.
Definition in file sys_arch.h.
#include <stdbool.h>#include <stdint.h>#include "cib.h"#include "sched.h"#include "mbox.h"#include "mutex.h"#include "random.h"#include "sema.h"
Include dependency graph for sys_arch.h:Go to the source code of this file.
Data Structures | |
| struct | sys_mbox_t |
| Platform specific mailbox type. More... | |
Macros | |
| #define | LWIP_COMPAT_MUTEX (0) |
| System configuration. | |
Typedefs | |
| typedef kernel_pid_t | sys_thread_t |
| Platform specific thread type. | |
Variables | |
| kernel_pid_t | lwip_tcpip_thread |
| PID of the lwIP TCP/IP thread. | |
Critical sections protection definitions | |
| #define | SYS_ARCH_PROTECT(x) mutex_lock(&x) |
| #define | SYS_ARCH_UNPROTECT(x) mutex_unlock(&x) |
| #define | SYS_ARCH_DECL_PROTECT(x) mutex_t x = MUTEX_INIT |
Semaphores definitions | |
| #define | sys_sem_valid(sem) (sys_sem_valid(sem)) |
| #define | sys_sem_set_invalid(sem) |
| typedef sema_t | sys_sem_t |
| Platform specific semaphore type. | |
| static bool | sys_sem_valid (sys_sem_t *sem) |
Mutexes definitions | |
| #define | sys_mutex_valid(mutex) (sys_mutex_valid(mutex)) |
| #define | sys_mutex_set_invalid(mutex) |
| typedef mutex_t | sys_mutex_t |
| Platform specific mutex type. | |
| static bool | sys_mutex_valid (sys_mutex_t *mutex) |
Mailboxes OS abstraction layer definitions | |
| #define | SYS_MBOX_SIZE (8) |
| #define | sys_mbox_valid(mbox) (sys_mbox_valid(mbox)) |
| #define | sys_mbox_set_invalid(mbox) (sys_mbox_set_invalid(mbox)) |
| static bool | sys_mbox_valid (sys_mbox_t *mbox) |
| static void | sys_mbox_set_invalid (sys_mbox_t *mbox) |
Functions for locking/unlocking core to assure thread safety. | |
| #define | LOCK_TCPIP_CORE() sys_lock_tcpip_core() |
| #define | UNLOCK_TCPIP_CORE() sys_unlock_tcpip_core() |
| void | sys_lock_tcpip_core (void) |
| void | sys_unlock_tcpip_core (void) |