net: openthread: Remove OpenThread module API from net header
Use OpenThread module header instead of redefining its API. Signed-off-by: Adrian Gielniewski <adrian.gielniewski@nordicsemi.no>
This commit is contained in:
parent
201d92884f
commit
47f39a1323
1 changed files with 1 additions and 140 deletions
|
@ -24,8 +24,7 @@
|
|||
#include <zephyr/net/net_if.h>
|
||||
#include <zephyr/kernel/thread.h>
|
||||
|
||||
#include <openthread/instance.h>
|
||||
#include <openthread/message.h>
|
||||
#include <openthread.h>
|
||||
|
||||
#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.
|
||||
*
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue