hilink_open_ota_adapter.c 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889
  1. /*
  2. * Copyright (c) Huawei Technologies Co., Ltd. 2019-2021. All rights reserved.
  3. * Description: OTA适配实现 (需设备厂商实现)
  4. */
  5. #include "hilink_open_ota_adapter.h"
  6. #include "hilink_typedef.h"
  7. /*
  8. * Flash初始化
  9. * 返回值是true时,表示初始化正常
  10. * 返回值是false时,表示初始化异常
  11. */
  12. bool HILINK_OtaAdapterFlashInit(void)
  13. {
  14. return true;
  15. }
  16. /*
  17. * 判断需要升级的分区
  18. * 返回值是UPGRADE_FW_BIN1时,表示升级固件到分区1
  19. * 返回值是UPGRADE_FW_BIN2时,表示升级固件到分区2
  20. */
  21. unsigned int HILINK_OtaAdapterGetUpdateIndex(void)
  22. {
  23. return UPGRADE_FW_BIN1;
  24. }
  25. /*
  26. * 擦除需要升级的分区
  27. * size表示需要擦除的分区大小
  28. * 返回值是ILINK_OK时,表示擦除成功
  29. * 返回值是HILINK_ERROR时,表示擦除失败
  30. */
  31. int HILINK_OtaAdapterFlashErase(unsigned int size)
  32. {
  33. return 0;
  34. }
  35. /*
  36. * 升级数据写入升级的分区
  37. * buf表示待写入数据
  38. * bufLen表示待写入数据的长度
  39. * 返回值是HILINK_OK时,表示写入成功
  40. * 返回值是HILINK_ERROR时,表示写入失败
  41. */
  42. int HILINK_OtaAdapterFlashWrite(const unsigned char *buf, unsigned int bufLen)
  43. {
  44. return 0;
  45. }
  46. /*
  47. * 读取升级分区数据
  48. * offset表示读写偏移
  49. * buf表示输出数据的内存地址
  50. * bufLen表示输出数据的内存长度
  51. * 返回值是HILINK_OK时,表示读取成功
  52. * 返回值是HILINK_ERROR时,表示读取失败
  53. */
  54. int HILINK_OtaAdapterFlashRead(unsigned int offset, unsigned char *buf, unsigned int bufLen)
  55. {
  56. return 0;
  57. }
  58. /*
  59. * 分区升级结束
  60. * 返回值是true时,表示结束正常
  61. * 返回值是false时,表示结束异常
  62. */
  63. bool HILINK_OtaAdapterFlashFinish(void)
  64. {
  65. return true;
  66. }
  67. /* 获取升级区间最大长度 */
  68. unsigned int HILINK_OtaAdapterFlashMaxSize(void)
  69. {
  70. return 0;
  71. }
  72. /*
  73. * 根据标志重启模组
  74. * flag表示重启标志
  75. * 当flag是RESTART_FLAG_NOW时,表示只有MCU升级时立即重启
  76. * 当flag是RESTART_FLAG_LATER时,表示有模组时切换分区后再重启
  77. */
  78. void HILINK_OtaAdapterRestart(int flag)
  79. {
  80. return;
  81. }