Zephyr Project API 3.7.0
A Scalable Open Source RTOS
Loading...
Searching...
No Matches
MCUmgr img_mgmt_client API

MCUmgr Image management client API. More...

Data Structures

struct  mcumgr_image_list_flags
 Image list flags. More...
 
struct  mcumgr_image_data
 Image list data. More...
 
struct  mcumgr_image_state
 MCUmgr Image list response. More...
 
struct  mcumgr_image_upload
 MCUmgr Image upload response. More...
 
struct  img_gr_upload
 IMG mgmt client upload structure. More...
 
struct  img_mgmt_client
 IMG mgmt client object. More...
 

Functions

void img_mgmt_client_init (struct img_mgmt_client *client, struct smp_client_object *smp_client, int image_list_size, struct mcumgr_image_data *image_list)
 Inilialize image group client.
 
int img_mgmt_client_upload_init (struct img_mgmt_client *client, size_t image_size, uint32_t image_num, const char *image_hash)
 Initialize image upload.
 
int img_mgmt_client_upload (struct img_mgmt_client *client, const uint8_t *data, size_t length, struct mcumgr_image_upload *res_buf)
 Upload part of image.
 
int img_mgmt_client_state_write (struct img_mgmt_client *client, char *hash, bool confirm, struct mcumgr_image_state *res_buf)
 Write image state.
 
int img_mgmt_client_state_read (struct img_mgmt_client *client, struct mcumgr_image_state *res_buf)
 Read image state.
 
int img_mgmt_client_erase (struct img_mgmt_client *client, uint32_t slot)
 Erase selected Image Slot.
 

Detailed Description

MCUmgr Image management client API.

Function Documentation

◆ img_mgmt_client_erase()

int img_mgmt_client_erase ( struct img_mgmt_client client,
uint32_t  slot 
)

#include <include/zephyr/mgmt/mcumgr/grp/img_mgmt/img_mgmt_client.h>

Erase selected Image Slot.

Parameters
clientIMG mgmt client object
slotSlot number
Returns
0 on success.
mcumgr_err_t code on failure.

◆ img_mgmt_client_init()

void img_mgmt_client_init ( struct img_mgmt_client client,
struct smp_client_object smp_client,
int  image_list_size,
struct mcumgr_image_data image_list 
)

#include <include/zephyr/mgmt/mcumgr/grp/img_mgmt/img_mgmt_client.h>

Inilialize image group client.

Function initializes image group client for given SMP client using supplied image data.

Parameters
clientIMG mgmt client object
smp_clientSMP client object
image_list_sizeLength of image_list buffer.
image_listImage list buffer pointer.

◆ img_mgmt_client_state_read()

int img_mgmt_client_state_read ( struct img_mgmt_client client,
struct mcumgr_image_state res_buf 
)

#include <include/zephyr/mgmt/mcumgr/grp/img_mgmt/img_mgmt_client.h>

Read image state.

Parameters
clientIMG mgmt client object
res_bufPointer for command response structure.
Returns
0 on success.
mcumgr_err_t code on failure.

◆ img_mgmt_client_state_write()

int img_mgmt_client_state_write ( struct img_mgmt_client client,
char *  hash,
bool  confirm,
struct mcumgr_image_state res_buf 
)

#include <include/zephyr/mgmt/mcumgr/grp/img_mgmt/img_mgmt_client.h>

Write image state.

Parameters
clientIMG mgmt client object
hashPointer to Hash (Needed for test).
confirmSet false for test and true for confirmation.
res_bufPointer for command response structure.
Returns
0 on success.
mcumgr_err_t code on failure.

◆ img_mgmt_client_upload()

int img_mgmt_client_upload ( struct img_mgmt_client client,
const uint8_t data,
size_t  length,
struct mcumgr_image_upload res_buf 
)

#include <include/zephyr/mgmt/mcumgr/grp/img_mgmt/img_mgmt_client.h>

Upload part of image.

Parameters
clientIMG mgmt client object
dataPointer to data.
lengthLength of data
res_bufPointer for command response structure.
Returns
0 on success.
mcumgr_err_t code on failure.

◆ img_mgmt_client_upload_init()

int img_mgmt_client_upload_init ( struct img_mgmt_client client,
size_t  image_size,
uint32_t  image_num,
const char *  image_hash 
)

#include <include/zephyr/mgmt/mcumgr/grp/img_mgmt/img_mgmt_client.h>

Initialize image upload.

Parameters
clientIMG mgmt client object
image_sizeSize of image in bytes.
image_numImage slot Num.
image_hashPointer to HASH for image must be SHA256 hash of entire upload if present (32 bytes). Use NULL when HASH from image is not available.
Returns
0 on success.
mcumgr_err_t code on failure.