b.liu | ced8dd0 | 2024-06-28 13:28:29 +0800 | [diff] [blame] | 1 | #ifndef JACANA_PVT_H |
| 2 | #define JACANA_PVT_H |
| 3 | |
| 4 | #ifdef __cplusplus |
| 5 | extern "C" { |
| 6 | #endif |
| 7 | |
| 8 | #include "jacana_firmware.h" |
| 9 | #include "sparse_file.h" |
| 10 | |
| 11 | /*---------------------------------------------------------------------------*/ |
| 12 | typedef struct { |
| 13 | sparse_file_t sparse_file; |
| 14 | size_t max_download_size; |
| 15 | size_t offset; |
| 16 | int state; |
| 17 | } pvt_info_t; |
| 18 | /*---------------------------------------------------------------------------*/ |
| 19 | /* portable layer api */ |
| 20 | void *jacana_pvt_raw_open(void); |
| 21 | size_t jacana_pvt_raw_get_total_size(void *priv); |
| 22 | int jacana_pvt_raw_read(void *priv, size_t start, |
| 23 | uint8_t *data, size_t size); |
| 24 | void jacana_pvt_raw_close(void *priv); |
| 25 | /*---------------------------------------------------------------------------*/ |
| 26 | int jacana_pvt_open(firmware_handle_t *firmware, void *priv); |
| 27 | int jacana_pvt_read_line(firmware_handle_t *firmware, char *line); |
| 28 | int jacana_pvt_read_data(firmware_handle_t *firmware, |
| 29 | uint8_t *data, size_t size); |
| 30 | void jacana_pvt_close(firmware_handle_t *firmware); |
| 31 | /*---------------------------------------------------------------------------*/ |
| 32 | |
| 33 | #ifdef __cplusplus |
| 34 | } /* extern "C" */ |
| 35 | #endif |
| 36 | |
| 37 | #endif /* JACANA_PVT_H */ |