nRF Connect SDK API 3.3.99
Loading...
Searching...
No Matches
mpsl_work.h
Go to the documentation of this file.
1/*
2 * Copyright (c) 2021 Nordic Semiconductor ASA
3 *
4 * SPDX-License-Identifier: LicenseRef-Nordic-5-Clause
5 */
6
16#ifndef MPSL_WORK__
17#define MPSL_WORK__
18
19#ifdef __cplusplus
20extern "C" {
21#endif
22
23#include <zephyr/kernel.h>
24
25extern struct k_work_q mpsl_work_q;
26
44static inline void mpsl_work_submit(struct k_work *work)
45{
46 if (k_work_submit_to_queue(&mpsl_work_q, work) < 0) {
47 __ASSERT(false, "k_work_submit_to_queue() failed.");
48 }
49}
50
68static inline void mpsl_work_schedule(struct k_work_delayable *dwork, k_timeout_t delay)
69{
70 if (k_work_schedule_for_queue(&mpsl_work_q, dwork, delay) < 0) {
71 __ASSERT(false, "k_work_schedule_for_queue() failed.");
72 }
73}
74
92static inline void mpsl_work_reschedule(struct k_work_delayable *dwork, k_timeout_t delay)
93{
94 if (k_work_reschedule_for_queue(&mpsl_work_q, dwork, delay) < 0) {
95 __ASSERT(false, "k_work_reschedule_for_queue() failed.");
96 }
97}
98
99#ifdef __cplusplus
100}
101#endif
102
103#endif /* MPSL_WORK__ */
104
static void mpsl_work_schedule(struct k_work_delayable *dwork, k_timeout_t delay)
Submit an idle work item to the MPSL work queue after a delay.
Definition mpsl_work.h:68
struct k_work_q mpsl_work_q
static void mpsl_work_submit(struct k_work *work)
Submit a work item to the MPSL work queue.
Definition mpsl_work.h:44
static void mpsl_work_reschedule(struct k_work_delayable *dwork, k_timeout_t delay)
Reschedule a work item to the MPSL work queue after a delay.
Definition mpsl_work.h:92