Zephyr Project API  3.4.0
A Scalable Open Source RTOS
smp.h File Reference
#include <zephyr/kernel.h>

Go to the source code of this file.

Data Structures

struct  smp_transport_api_t
 Function pointers of SMP transport functions, if a handler is NULL then it is not supported/implemented. More...
 
struct  smp_transport
 SMP transport object for sending SMP responses. More...
 

Typedefs

typedef int(* smp_transport_out_fn) (struct net_buf *nb)
 SMP transmit callback for transport. More...
 
typedef uint16_t(* smp_transport_get_mtu_fn) (const struct net_buf *nb)
 SMP MTU query callback for transport. More...
 
typedef int(* smp_transport_ud_copy_fn) (struct net_buf *dst, const struct net_buf *src)
 SMP copy user_data callback. More...
 
typedef void(* smp_transport_ud_free_fn) (void *ud)
 SMP free user_data callback. More...
 
typedef bool(* smp_transport_query_valid_check_fn) (struct net_buf *nb, void *arg)
 Function for checking if queued data is still valid. More...
 

Functions

int smp_transport_init (struct smp_transport *smpt)
 Initializes a Zephyr SMP transport object. More...
 
void smp_rx_remove_invalid (struct smp_transport *zst, void *arg)
 Used to remove queued requests for an SMP transport that are no longer valid. A smp_transport_query_valid_check_fn() function must be registered for this to function. If the smp_transport_query_valid_check_fn() function returns false during a callback, the queried command will classed as invalid and dropped. More...
 
void smp_rx_clear (struct smp_transport *zst)
 Used to clear pending queued requests for an SMP transport. More...