/*============================================================================================ Copyright(c) 2018 Quectel Wierless Solution,Co.,Ltd. All Rights Reserved. Quectel Wireless Solution Proprietary and Confidential. ============================================================================*/ #ifndef _QUEC_HX_GNSS_UPDATE_H_ #define _QUEC_HX_GNSS_UPDATE_H_ #ifdef __cplusplus extern "C" { #endif #define HX_L26_INIT_NO_ERROR 0 #define HX_L26_INIT_RESET_ERROR 1 #define HX_L26_INIT_OPEN_UART_ERROR 2 #define HX_L26_INIT_CHECKSUM_ERROR 3 #define HX_L26_INIT_DOWNLOAD_BOOT_ERROR 4 #define HX_L26_INIT_DOWNLOAD_FIRMWARE_ERROR 5 #define HX_L26_INIT_DOWNLOAD_APFLSH_ERROR 6 #define HX_L26_INIT_UNKNOW_ERROR 7 typedef struct { unsigned int ih_magic; unsigned int ih_checksum; unsigned int ih_time; unsigned int ih_size; unsigned int ih_reserved; unsigned int pkg_flash_addr; unsigned int pkg_run_addr; unsigned int ih_hcrc; } uc_image_header_t; typedef struct icoe_image_header_s { unsigned int magic; // Image Header Magic Number 0xA0A1A2A3 unsigned int load_addr; // load addr unsigned int run_addr; // run addr unsigned int ih_size; // Image Data Size unsigned int ih_time; // YYMMDDHH unsigned int cfg; // reserved unsigned int ih_checksum; //image vertical summation sum ; unsigned short int ih_hcrc; // Image Header CRC16 checksum unsigned short int project_name; // n2,f2 } icoe_image_header_t; int hx_gnss_open(void); int hx_gnss_close(void); unsigned short crc16_ccitt(const char *buf, int len); #ifdef __cplusplus } /*"C" */ #endif #endif