88 lines
2.8 KiB
C
88 lines
2.8 KiB
C
/****************************************************************************
|
|
|
|
Copyright(c) 2019 by Aerospace C.Power (Chongqing) Microelectronics. ALL RIGHTS RESERVED.
|
|
|
|
This Information is proprietary to Aerospace C.Power (Chongqing) Microelectronics and MAY NOT
|
|
be copied by any method or incorporated into another program without
|
|
the express written consent of Aerospace C.Power. This Information or any portion
|
|
thereof remains the property of Aerospace C.Power. The Information contained herein
|
|
is believed to be accurate and Aerospace C.Power assumes no responsibility or
|
|
liability for its use in any way and conveys no license or title under
|
|
any patent or copyright and makes no representation or warranty that this
|
|
Information is free from patent or copyright infringement.
|
|
|
|
****************************************************************************/
|
|
#ifndef IOT_BRM_TSFM_H
|
|
#define IOT_BRM_TSFM_H
|
|
|
|
/* os shim includes */
|
|
#include "os_types_api.h"
|
|
|
|
/* iot common includes */
|
|
#include "iot_task_api.h"
|
|
#include "iot_rtc_api.h"
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
#if (IOT_BRM_ENABLE)
|
|
|
|
/* A single station area identification result message can only carry the
|
|
* maximum number of site addresses
|
|
*/
|
|
#define IOT_BRM_TSFM_FRAME_ENTRY_MAX 49
|
|
|
|
/**
|
|
* @brief iot_brm_same_tsfm_info_collect_handle() - handle hardware zone
|
|
* identification notification message.
|
|
* @param data: data in frame, the format is proto_conn_less_tsfm_info_rpt_t.
|
|
* @param len: data length.
|
|
* @param pkt: the complete data package, the pkt will be free if exist.
|
|
*/
|
|
void iot_brm_same_tsfm_info_collect_handle( uint8_t *data, uint16_t len,
|
|
iot_pkt_t *pkt);
|
|
|
|
/**
|
|
* @brief iot_brm_same_tsfm_collect_trigger() - trigger collect the hardware
|
|
* zone identification notification message.
|
|
* @param cco_addr: the cco address.
|
|
* @retval: ERR_OK - for successfully, ERR_NOMEM - malloc fail
|
|
*/
|
|
uint32_t iot_brm_same_tsfm_collect_trigger(uint8_t *cco_addr);
|
|
|
|
/**
|
|
* @brief iot_brm_same_tsfm_collect_timeout() - call periodically to
|
|
* determine whether it has timed out, please call it every second.
|
|
* @param cur_ts: current time.
|
|
*/
|
|
void iot_brm_same_tsfm_collect_timeout(void);
|
|
|
|
/**
|
|
* @brief iot_brm_same_tsfm_fill_node_info() - copy the collected sta address
|
|
* information.
|
|
* @param resp[out]: sta address information out, see
|
|
* iot_sg_ext_cus_same_tsfm_node_resp_t.
|
|
* @retval: ERR_OK - for successfully, ERR_FAIL - for failure
|
|
*/
|
|
uint32_t iot_brm_same_tsfm_fill_node_info(
|
|
iot_sg_ext_cus_same_tsfm_node_resp_t *resp);
|
|
|
|
/**
|
|
* @brief iot_brm_tsfm_init() - tsfm initialize
|
|
*/
|
|
uint32_t iot_brm_tsfm_init(void);
|
|
|
|
/**
|
|
* @brief iot_brm_tsfm_deinit() - tsfm deinitialize
|
|
*/
|
|
void iot_brm_tsfm_deinit(void);
|
|
|
|
#endif /* IOT_BRM_ENABLE */
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
#endif
|
|
|