AC695N-SoundBox-SDK/apps/common/third_party_profile/interface/app_protocol_ota.h
2026-08-09 00:00:00 +00:00

29 lines
912 B
C

#ifndef __APP_PROTOCOL_OTA_H__
#define __APP_PROTOCOL_OTA_H__
#include "typedef.h"
#define NO_SUPPORT_OTA 0xff
#define INITIATIVE_OTA 0x01
#define PASSIVE_OTA 0x02
typedef struct app_protocol_ota_type_map_t {
u32 protocol_id;
u8 ota_type;
} app_protocol_ota_type_map;
typedef struct app_protocol_ota_api_t {
u32(*ota_request_data)(void *priv, u32 offset, u16 len);
u32(*ota_report_result)(u8 result);
void (*ota_notify_file_size)(u32 file_size);
void (*ota_crc_init_hdl)(void);
u16(*ota_crc_calc_hdl)(u16 init_crc, u8 *data, u32 len);
} app_protocol_ota_api;
int app_protocol_ota_message_handler(int id, int opcode, u8 *data, u32 len);
void app_protocol_ota_init(app_protocol_ota_api *api, u8 need_wait_app_reboot);
int app_protocol_ota_interrupt_by_disconnect(int id);
int app_protocol_update_success_flag(void);
#endif //__APP_PROTOCOL_OTA_H__