Merge pull request #14439 from debdeep-arm/reset-mac-wisun-stats

[feature-wisun] Added API to reset MAC and Wi-SUN statistics.
pull/14586/head
Arto Kinnunen 2021-04-13 15:32:55 +03:00 committed by GitHub
commit 72c3981318
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 40 additions and 0 deletions

View File

@ -559,6 +559,16 @@ public:
* */
mesh_error_t enable_statistics(void);
/**
* \brief Reset Wi-SUN statistics
*
* Resets MAC statistics and Wi-SUN statistics.
*
* \return MESH_ERROR_NONE on success.
* \return MESH_ERROR_UNKNOWN on error
* */
mesh_error_t reset_statistics(void);
/**
* \brief Reads Wi-SUN network statistics
*

View File

@ -603,6 +603,16 @@ mesh_error_t WisunInterface::enable_statistics(void)
return ret_val;
}
mesh_error_t WisunInterface::reset_statistics(void)
{
mesh_error_t ret_val = MESH_ERROR_NONE;
int status = wisun_tasklet_statistics_reset();
if (status < 0) {
ret_val = MESH_ERROR_UNKNOWN;
}
return ret_val;
}
mesh_error_t WisunInterface::read_nw_statistics(mesh_nw_statistics_t *statistics)
{
mesh_error_t ret_val = MESH_ERROR_NONE;

View File

@ -125,6 +125,14 @@ int wisun_tasklet_remove_trusted_certificates(void);
*/
int wisun_tasklet_statistics_start(void);
/*
* \brief Reset Wi-SUN statistics
*
* \return 0 Statistics start successful
* \return < 0 in case of errors
*/
int wisun_tasklet_statistics_reset(void);
/*
* \brief Reads Wi-SUN network statistics
*

View File

@ -624,6 +624,18 @@ int wisun_tasklet_statistics_start(void)
return 0;
}
int wisun_tasklet_statistics_reset(void)
{
if (!statistics) {
return -1;
}
memset(&statistics->mac_statistics, 0, sizeof(mac_statistics_t));
memset(&statistics->ws_statistics, 0, sizeof(ws_statistics_t));
return 0;
}
static void wisun_tasklet_statistics_do_start(void)
{
if (!wisun_tasklet_data_ptr || wisun_tasklet_data_ptr->network_interface_id < 0 || !mac_api) {