/*
 * eps_fw_update.h
 *
 *  Created on: Aug 21, 2023
 *      Author: Invcuser_75
 */

#ifndef EXO_SERVICES_EPS_CTRLR_INC_EPS_FW_UPDATE_H_
#define EXO_SERVICES_EPS_CTRLR_INC_EPS_FW_UPDATE_H_


/*
 * @brief Structure of EPS FW information
 */
typedef struct eps_fw_data
{
    uint8_t fw_status;
    uint32_t fw_size;
    uint32_t fw_crc;
}__attribute__((__packed__))eps_fw_data_s;

/*
 * @brief Enumeration of EPS FW status
 */
typedef enum
{
	NO_FIRMWARE,
	FIRMWARE_AVAILABLE,
	FIRMWARE_UPDATE_IN_PROGRESS,
	FIRMWARE_UPDATE_PASS,
	FIRMWARE_UPDATE_FAIL,
	BCKUP_FIRMWARE_UPDATE_PASS,
	BCKUP_FIRMWARE_UPDATE_FAIL,
	BCKUP_FIRMWARE_INTR_PASS,
	BCKUP_FIRMWARE_INTR_FAIL,
	BCKUP_FIRMWARE_CPY_FAIL

}firmware_status;


#endif /* EXO_SERVICES_EPS_CTRLR_INC_EPS_FW_UPDATE_H_ */
