blob: bfaea7f0e297061af2140fc1551738e1a1ca3aa7 [file] [log] [blame]
/*
* Copyright (c) 2022 Raspberry Pi (Trading) Ltd.
*
* SPDX-License-Identifier: BSD-3-Clause
*/
#ifndef _PICO_CYW43_ARCH_ARCH_POLL_H
#define _PICO_CYW43_ARCH_ARCH_POLL_H
#include "pico/cyw43_arch/arch_common.h"
#include <assert.h>
#ifdef __cplusplus
extern "C" {
#endif
#define CYW43_THREAD_ENTER
#define CYW43_THREAD_EXIT
#ifndef NDEBUG
void cyw43_thread_check(void);
#define cyw43_arch_lwip_check() cyw43_thread_check()
#define CYW43_THREAD_LOCK_CHECK cyw43_arch_lwip_check();
#else
#define cyw43_arch_lwip_check() ((void)0)
#define CYW43_THREAD_LOCK_CHECK
#endif
#define CYW43_SDPCM_SEND_COMMON_WAIT cyw43_poll_required = true;
#define CYW43_DO_IOCTL_WAIT cyw43_poll_required = true;
#define cyw43_delay_ms sleep_ms
#define cyw43_delay_us sleep_us
void cyw43_schedule_internal_poll_dispatch(void (*func)(void));
void cyw43_post_poll_hook(void);
extern bool cyw43_poll_required;
#define CYW43_POST_POLL_HOOK cyw43_post_poll_hook();
#endif
#ifndef DOXYGEN_GENERATION // multiple definitions in separate headers seems to confused doxygen
#define cyw43_arch_lwip_begin() ((void)0)
#define cyw43_arch_lwip_end() ((void)0)
static inline int cyw43_arch_lwip_protect(int (*func)(void *param), void *param) {
return func(param);
}
#ifdef __cplusplus
}
#endif
#endif