#ifndef CODE_SWAP_HSI_H #define CODE_SWAP_HSI_H #define SWIM_STACK_SIZE 10 typedef enum swim_id { SWIM_NONE = 0, SWIM_ID1 = 1, SWIM_ID2 = 2, SWIM_ID3 = 3, SWIM_ID4 = 4, SWIM_ID5 = 5, SWIM_ID6 = 6, SWIM_ID7 = 7, SWIM_ID8 = 8, SWIM_MAX }swim_id_t; // Single image descriptor, populated in BC1, and is used for loading the images typedef struct swim_img_info { u32 nvm_offset; u32 image_size; u32 stat_times_loaded; u32 stat_times_load_not_required; u32 stat_times_load_failed; u32 stored_gp_val; }swim_img_info_t; // The meta data on the swappable images typedef struct swim_stack { u32_t img_stack[SWIM_STACK_SIZE]; u32_t cur_img_stack_id; }swim_stack_t; typedef struct swim_meta { swim_img_info_t info[SWIM_MAX]; // Image Stack u32_t swim_group; #define SWIM_GROUP_A 1 #define SWIM_GROUP_B 2 #define SWIM_GROUP_INVALID 0 u32_t cur_loaded_swim; }swim_meta_t; #endif /* CODE_SWAP_HSI_H */