From 47f39a1323e9c654af70a6c24f9e82891c2923fa Mon Sep 17 00:00:00 2001 From: Adrian Gielniewski Date: Mon, 26 May 2025 11:13:02 +0200 Subject: [PATCH] net: openthread: Remove OpenThread module API from net header Use OpenThread module header instead of redefining its API. Signed-off-by: Adrian Gielniewski --- include/zephyr/net/openthread.h | 141 +------------------------------- 1 file changed, 1 insertion(+), 140 deletions(-) diff --git a/include/zephyr/net/openthread.h b/include/zephyr/net/openthread.h index 673a7331d84..0fc6c937d0f 100644 --- a/include/zephyr/net/openthread.h +++ b/include/zephyr/net/openthread.h @@ -24,8 +24,7 @@ #include #include -#include -#include +#include #ifdef __cplusplus extern "C" { @@ -89,47 +88,8 @@ struct openthread_context { * INTERNAL_HIDDEN @endcond */ -/** - * @brief The common callback type for receiving IPv4 (translated by NAT64) and IPv6 datagrams. - * - * This callback is called when a datagram is received. - * - * @param message The message to receive. - * @param context The context to pass to the callback. - */ -typedef void (*openthread_receive_cb)(otMessage *message, void *context); - /** OpenThread state change callback */ -/** - * @brief OpenThread state change callback structure - * - * Used to register a callback in the callback list. As many - * callbacks as needed can be added as long as each of them - * are unique pointers of struct openthread_state_changed_cb. - * - * @note You may destroy the object only after it is unregistered from the callback list. - */ -struct openthread_state_changed_callback { - /** - * @brief Callback for notifying configuration or state changes. - * - * @param otCallback OpenThread callback to register. - * See https://openthread.io/reference/group/api-instance#otstatechangedcallback for - * details. - */ - otStateChangedCallback otCallback; - - /** User data if required */ - void *user_data; - - /** - * Internally used field for list handling - * - user must not directly modify - */ - sys_snode_t node; -}; - /** * @deprecated use @ref openthread_state_changed_callback instead. * @@ -162,21 +122,6 @@ struct openthread_state_changed_cb { sys_snode_t node; }; -/** - * @brief Register callbacks that will be called when a certain configuration - * or state changes occur within OpenThread. - * - * @param cb Callback struct to register. - */ -int openthread_state_changed_callback_register(struct openthread_state_changed_callback *cb); - -/** - * @brief Unregister OpenThread configuration or state changed callbacks. - * - * @param cb Callback struct to unregister. - */ -int openthread_state_changed_callback_unregister(struct openthread_state_changed_callback *cb); - /** * @deprecated use @ref openthread_state_changed_callback_register instead. * @@ -200,11 +145,6 @@ __deprecated int openthread_state_changed_cb_register(struct openthread_context __deprecated int openthread_state_changed_cb_unregister(struct openthread_context *ot_context, struct openthread_state_changed_cb *cb); -/** - * @brief Get OpenThread thread identification. - */ -k_tid_t openthread_thread_id_get(void); - /** * @brief Get pointer to default OpenThread context. * @@ -213,50 +153,6 @@ k_tid_t openthread_thread_id_get(void); */ struct openthread_context *openthread_get_default_context(void); -/** - * @brief Get pointer to default OpenThread instance. - * - * @retval !NULL On success. - * @retval NULL On failure. - */ -struct otInstance *openthread_get_default_instance(void); - -/** - * @brief Initialize the OpenThread module. - * - * This function: - * - Initializes the OpenThread module. - * - Creates an OpenThread single instance. - * - Starts the shell. - * - Enables the UART and NCP HDLC for coprocessor purposes. - * - Initializes the NAT64 translator. - * - Creates a work queue for the OpenThread module. - * - * @note This function is automatically called by Zephyr's networking layer. - * If you want to initialize the OpenThread independently, call this function - * in your application init code. - * - * @retval 0 On success. - * @retval -EIO On failure. - */ -int openthread_init(void); - -/** - * @brief Run the OpenThread network. - * - * @details Prepares the OpenThread network and enables it. - * Depends on active settings: it uses the stored network configuration, - * starts the joining procedure or uses the default network configuration. - * Additionally, when the device is MTD, it sets the SED mode to properly - * attach the network. - */ -int openthread_run(void); - -/** - * @brief Disable the OpenThread network. - */ -int openthread_stop(void); - /** * @deprecated use @ref openthread_run instead. * @@ -270,41 +166,6 @@ int openthread_stop(void); */ __deprecated int openthread_start(struct openthread_context *ot_context); -/** - * @brief Set the additional callback for receiving packets. - * - * @details This callback is called once a packet is received and can be - * used to inject packets into the Zephyr networking stack. - * Setting this callback is optional. - * - * @param cb Callback to set. - * @param context Context to pass to the callback. - */ -void openthread_set_receive_cb(openthread_receive_cb cb, void *context); - -/** - * @brief Lock internal mutex before accessing OpenThread API. - * - * @details OpenThread API is not thread-safe. Therefore, before accessing any - * API function, you need to lock the internal mutex, to prevent the - * OpenThread thread from pre-empting the API call. - */ -void openthread_mutex_lock(void); - -/** - * @brief Try to lock internal mutex before accessing OpenThread API. - * - * @details This function behaves like openthread_mutex_lock(), provided that - * the internal mutex is unlocked. Otherwise, it returns a negative value without - * waiting. - */ -int openthread_mutex_try_lock(void); - -/** - * @brief Unlock internal mutex after accessing OpenThread API. - */ -void openthread_mutex_unlock(void); - /** * @deprecated use @ref openthread_mutex_lock. *