7#ifndef FW_INFO_BARE_H__
8#define FW_INFO_BARE_H__
21#define MAGIC_LEN_WORDS (CONFIG_FW_INFO_MAGIC_LEN / sizeof(uint32_t))
24#define FW_INFO_OFFSET0 0x0
25#define FW_INFO_OFFSET1 0x200
26#define FW_INFO_OFFSET2 0x400
27#define FW_INFO_OFFSET3 0x600
28#define FW_INFO_OFFSET4 0x800
29#define FW_INFO_OFFSET5 0xe00
30#define FW_INFO_OFFSET6 0x1000
31#define FW_INFO_OFFSET_COUNT 7
70 uint32_t ext_api_addr)
73 const uint32_t ext_api_magic[] = {EXT_API_MAGIC};
76 if (memcmp(ext_api->
magic, ext_api_magic, CONFIG_FW_INFO_MAGIC_LEN)
154 uint32_t reserved[4];
178 const uint32_t fw_info_magic[] = {FIRMWARE_INFO_MAGIC};
180 finfo = (
const struct fw_info *)(fw_info_addr);
181 if (memcmp(finfo->
magic, fw_info_magic, CONFIG_FW_INFO_MAGIC_LEN)
191#define FW_INFO_CURRENT_OFFSET (CONFIG_FW_INFO_OFFSET + FW_INFO_VECTOR_OFFSET)
#define MAGIC_LEN_WORDS
Definition fw_info_bare.h:21
#define FW_INFO_OFFSET2
Definition fw_info_bare.h:26
static const uint32_t fw_info_allowed_offsets[]
Definition fw_info_bare.h:194
#define FW_INFO_OFFSET0
Definition fw_info_bare.h:24
bool(* fw_info_ext_api_provide_t)(const struct fw_info *fwinfo, bool provide)
Definition fw_info_bare.h:222
#define FW_INFO_OFFSET6
Definition fw_info_bare.h:30
#define FW_INFO_OFFSET1
Definition fw_info_bare.h:25
static const struct fw_info_ext_api * fw_info_ext_api_check(uint32_t ext_api_addr)
Definition fw_info_bare.h:69
#define FW_INFO_OFFSET3
Definition fw_info_bare.h:27
#define FW_INFO_OFFSET4
Definition fw_info_bare.h:28
static const struct fw_info * fw_info_find(uint32_t firmware_address)
Definition fw_info_bare.h:208
#define FW_INFO_OFFSET5
Definition fw_info_bare.h:29
#define FW_INFO_OFFSET_COUNT
Definition fw_info_bare.h:31
static const struct fw_info * fw_info_check(uint32_t fw_info_addr)
Definition fw_info_bare.h:175
fw_info_ext_api_provide_t ext_api_provide
Definition fw_info_bare.h:229
Structure describing the EXT_API_PROVIDE EXT_API.
Definition fw_info_bare.h:228
uint32_t required
Definition fw_info_bare.h:112
uint32_t ext_api_max_version
Definition fw_info_bare.h:107
const struct fw_info_ext_api ** ext_api
Definition fw_info_bare.h:115
Definition fw_info_bare.h:100
uint32_t ext_api_version
Definition fw_info_bare.h:62
uint32_t magic[(CONFIG_FW_INFO_MAGIC_LEN/sizeof(uint32_t))]
Definition fw_info_bare.h:48
uint32_t ext_api_id
Definition fw_info_bare.h:56
uint32_t ext_api_flags
Definition fw_info_bare.h:59
uint32_t ext_api_len
Definition fw_info_bare.h:53
Definition fw_info_bare.h:44
uint32_t valid
Definition fw_info_bare.h:151
uint32_t ext_api_num
Definition fw_info_bare.h:157
uint32_t magic[(CONFIG_FW_INFO_MAGIC_LEN/sizeof(uint32_t))]
Definition fw_info_bare.h:131
uint32_t version
Definition fw_info_bare.h:140
uint32_t boot_address
Definition fw_info_bare.h:146
uint32_t size
Definition fw_info_bare.h:137
uint32_t total_size
Definition fw_info_bare.h:134
uint32_t ext_api_request_num
Definition fw_info_bare.h:160
uint32_t address
Definition fw_info_bare.h:143
Definition fw_info_bare.h:127