29#define NRF_RPC_OS_WAIT_FOREVER -1
30#define NRF_RPC_OS_NO_WAIT 0
33struct nrf_rpc_os_event;
36struct nrf_rpc_os_mutex;
156 const uint8_t **data,
size_t *len);
void nrf_rpc_os_thread_pool_send(const uint8_t *data, size_t len)
Send work to a thread pool.
void(* nrf_rpc_os_work_t)(const uint8_t *data, size_t len)
Work callback that will be called from thread pool.
Definition nrf_rpc_os_tmpl.h:46
int nrf_rpc_os_event_init(struct nrf_rpc_os_event *event)
Initialize event passing structure.
void nrf_rpc_os_mutex_lock(struct nrf_rpc_os_mutex *mutex)
Lock mutex.
int nrf_rpc_os_event_wait(struct nrf_rpc_os_event *event, int32_t timeout)
Wait for an event.
void nrf_rpc_os_tls_set(void *data)
Set TLS (Thread Local Storage) for nRF RPC.
void * nrf_rpc_os_tls_get(void)
Get TLS (Thread Local Storage) for nRF RPC.
int nrf_rpc_os_msg_init(struct nrf_rpc_os_msg *msg)
Initialize message passing structure.
uint64_t nrf_rpc_os_timestamp_get_now(void)
Get the current timestamp value.
void nrf_rpc_os_ctx_pool_release(uint32_t index)
Release context from context pool.
int nrf_rpc_os_mutex_init(struct nrf_rpc_os_mutex *mutex)
Initialize mutex structure.
void nrf_rpc_os_event_set(struct nrf_rpc_os_event *event)
Set an event.
void nrf_rpc_os_mutex_unlock(struct nrf_rpc_os_mutex *mutex)
Unlock mutex.
uint32_t nrf_rpc_os_ctx_pool_reserve()
Reserve one context from command context pool.
void nrf_rpc_os_msg_set(struct nrf_rpc_os_msg *msg, const uint8_t *data, size_t len)
Pass a message to a different therad.
void nrf_rpc_os_msg_get(struct nrf_rpc_os_msg *msg, struct nrf_rpc_os_mutex *mutex, const uint8_t **data, size_t *len)
Get a message.
int nrf_rpc_os_init(nrf_rpc_os_work_t callback)
nRF RPC OS-dependent initialization.