1234567891011121314151617181920212223242526272829303132333435363738394041424344 |
- /*
- * Copyright (c) 2019 Actions Semiconductor Co., Ltd
- *
- * SPDX-License-Identifier: Apache-2.0
- */
- /**
- * @file
- * @brief OTA firmware image interface
- */
- #ifndef __OTA_IMAGE_H__
- #define __OTA_IMAGE_H__
- struct ota_image;
- struct ota_backend;
- struct ota_image *ota_image_init(void);
- void ota_image_exit(struct ota_image *img);
- int ota_image_bind(struct ota_image *img, struct ota_backend *backend);
- int ota_image_unbind(struct ota_image *img, struct ota_backend *backend);
- struct ota_backend *ota_image_get_backend(struct ota_image *img);
- uint32_t ota_image_get_checksum(struct ota_image *img);
- uint32_t ota_image_get_datasize(struct ota_image *img);
- int ota_image_open(struct ota_image *img);
- int ota_image_close(struct ota_image *img);
- int ota_image_check_data(struct ota_image *img);
- int ota_image_read_prepare(struct ota_image *img, int offset, uint8_t *buf, int size);
- int ota_image_read_complete(struct ota_image *img, int offset, uint8_t *buf, int size);
- int ota_image_read(struct ota_image *img, int offset, uint8_t *buf, int size);
- int ota_image_ioctl(struct ota_image *img, int cmd, unsigned int param);
- int ota_image_get_file_length(struct ota_image *img, const char *filename);
- int ota_image_get_file_offset(struct ota_image *img, const char *filename);
- int ota_image_check_file(struct ota_image *img, const char *filename, const uint8_t *buf, int size);
- int ota_image_report_progress(struct ota_image *img, uint32_t pre_xfer_size, bool is_final);
- int ota_image_progress_on(struct ota_image *img, uint32_t total_size, uint32_t start_offset);
- int ota_image_progress_reset(struct ota_image *img);
- #endif /* __OTA_IMAGE_H__ */
|