ota_update.h 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. #ifndef _OTA_UPDATE_H
  2. #define _OTA_UPDATE_H
  3. #include "board.h"
  4. #include "sysinfo.h"
  5. typedef enum {
  6. UPFILE_TYPE_LDR,
  7. UPFILE_TYPE_APP,
  8. UPFILE_TYPE_ANIMATION,
  9. UPFILE_TYPE_ROM,
  10. UPFILE_TYPE_MCU_IMAGE,
  11. UPFILE_TYPE_MCU_FB,
  12. UPFILE_TYPE_NUM,
  13. } eUpfileType;
  14. extern const char *g_upfilename[UPFILE_TYPE_NUM];
  15. #define SF_MOUNT_PATH "/sf"
  16. #define SDMMC_MOUNT_PATH "/emmc"
  17. #if DEVICE_TYPE_SELECT == EMMC_FLASH
  18. #define OTA_MOUNT_PATH SDMMC_MOUNT_PATH
  19. #else
  20. #define OTA_MOUNT_PATH SF_MOUNT_PATH
  21. #endif
  22. #if DEVICE_TYPE_SELECT == SPI_NAND_FLASH
  23. #define OTA_RW_SIZE 0x20000
  24. #else
  25. #define OTA_RW_SIZE 0x10000
  26. #endif
  27. #define UPFILE_APP_MAGIC 0xe59ff030
  28. #define APPLDR_CHECKSUM_OFFSET 20
  29. #define MKTAG(a,b,c,d) ((a) | ((b) << 8) | ((c) << 16) | ((unsigned)(d) << 24))
  30. void empty_chip_update_demo(void);
  31. uint8_t get_update_status(void);
  32. int check_upfile_and_save(int filetype, size_t filesize, size_t fileoffset);
  33. int update_from_media(char *mpath, int filetype);
  34. uint32_t get_upfile_checksum(int filetype, size_t filesize, int checkmode);
  35. unsigned int get_upfile_maxsize(int filetype);
  36. unsigned int get_upfile_offset(int filetype, int toburn);
  37. unsigned int get_upfile_size(int filetype);
  38. #endif