![]() |
![]() |
TI-OpenThread
1.08.02.01
|
#include <stddef.h>
#include <stdint.h>
Go to the source code of this file.
Data Structures | |
struct | eccSignature_t |
struct | img_common_header |
struct | img_header_single_app |
union | img_seg_any |
struct | img_seg_boundary |
struct | img_seg_last |
struct | img_seg_payload |
struct | img_seg_signature |
struct | imgHdr |
struct | oad_image_boundary |
struct | securityHdr_t |
struct | signPld_ECDSA_P256_t |
Macros | |
#define | _imgHdr oad_image_header |
#define | BIM_V1_VER 0x1 /* Supported BIM version */ |
#define | BIM_V2_VER 0x2 /* Supported BIM version */ |
#define | BIM_V3_VER 0x3 /* Supported BIM version */ |
#define | BIM_VER_OFFSET offsetof(img_common_header_t, bimVer) /* BIM metadata version offset */ |
#define | COPY_DONE 0xFC /* Image already copied */ |
#define | CRC_INVALID 0xFC |
#define | CRC_OFFSET offsetof(img_common_header_t, crc32) /* Supported metadata version */ |
#define | CRC_STAT_OFFSET offsetof(img_common_header_t, crcStat) /* Offset to CRC status byte */ |
#define | CRC_VALID 0xFE |
#define | DEFAULT_STATE 0xFF /* default status */ |
#define | IMG_BOUNDARY_SEG_ID 0 /* Id of RAM/stack boundary segment */ |
#define | IMG_COPY_STAT_OFFSET offsetof(img_common_header_t, imgCpStat) /* Image copy status */ |
#define | IMG_DATA_OFFSET 12 /* Start of data after CRC bytes */ |
#define | IMG_INFO_OFFSET offsetof(img_common_header_t, imgCpStat) /* ImageInfo Bytes offset */ |
#define | IMG_NONCOUNT_SEG_ID 2 /* Id of non contigouous image segment */ |
#define | IMG_PAYLOAD_SEG_ID 1 /* Id of the image payload segment */ |
#define | IMG_SECURITY_SEG_ID 3 /* Id of security segment */ |
#define | IMG_TYPE_OFFSET offsetof(img_common_header_t, imgType) /* Offset to CRC status byte */ |
#define | INVALID_ADDR 0xFFFFFFFF |
#define | MAX_ONCHIP_FLASH_PAGES 44 |
#define | META_VER 0x1 /* Supported metadata version */ |
#define | NEED_COPY 0xFE /* Image to be copied on on-chip flash at location indicated in the image */ |
#define | OAD_EXTFL_ID_VAL {'O', 'A', 'D', ' ', 'N', 'V', 'M', '1'} |
#define | OAD_IMG_HDR_LEN 44 /* The length of just the OAD Header */ |
#define | OAD_IMG_ID_LEN 8 /* OAD image identification bytes length */ |
#define | OAD_IMG_ID_VAL {'C', 'C', '2', '6', 'x', '2', 'R', '1'} |
#define | OAD_IMG_TYPE_APP 1 /* <-- Thread Application uses this */ |
#define | OAD_IMG_TYPE_APP_STACK 3 |
#define | OAD_IMG_TYPE_APPSTACKLIB 7 |
#define | OAD_IMG_TYPE_BIM 6 |
#define | OAD_IMG_TYPE_FACTORY 5 |
#define | OAD_IMG_TYPE_HOST_BEGIN 32 |
#define | OAD_IMG_TYPE_HOST_END 63 |
#define | OAD_IMG_TYPE_NP 4 |
#define | OAD_IMG_TYPE_PERSISTENT_APP 0 |
#define | OAD_IMG_TYPE_RSVD_BEGIN 64 |
#define | OAD_IMG_TYPE_RSVD_END 255 |
Segment types. More... | |
#define | OAD_IMG_TYPE_STACK 2 |
#define | OAD_IMG_TYPE_USR_BEGIN 16 |
#define | OAD_IMG_TYPE_USR_END 31 |
#define | OAD_SEG_BOUNDARY 0x00 |
#define | OAD_SEG_CONTIGUOUS 0x01 |
#define | OAD_SEG_NON_CONTIGUOUS 0x02 |
#define | OAD_SEG_RSVD 0xFF |
Wireless Technology Types. More... | |
#define | OAD_SINGLE_APP 1 |
#define | OAD_SW_VER_LEN 4 /* OAD software version length in bytes */ |
#define | OAD_WIRELESS_TECH_BLE 0xFFFE |
#define | OAD_WIRELESS_TECH_EASYLINK 0xFFBF |
#define | OAD_WIRELESS_TECH_RF4CE 0xFFEF |
#define | OAD_WIRELESS_TECH_THREAD 0xFFDF /* <-- Thread applications use this */ |
#define | OAD_WIRELESS_TECH_TIMAC_2_4G 0xFFFB |
#define | OAD_WIRELESS_TECH_TIMAC_SUBG 0xFFFD |
#define | OAD_WIRELESS_TECH_ZIGBEE 0xFFF7 |
#define | SECURITY_VER 0x1 |
#define | SEG_HDR_LEN 12 /* Length of the segment header bytes */ |
#define | SEG_LEN_OFFSET 4 /* Offset from seg header to seg len */ |
#define | SOFTWARE_VER {'0', '0', '0', '1'} |
Typedefs | |
typedef struct img_common_header | img_common_header_t |
typedef struct img_common_header | imgFixedHdr_t |
typedef struct imgHdr | imgHdr_t |
Variables | |
const struct img_header_single_app | oad_image_header |
#define OAD_SINGLE_APP 1 |
#define OAD_IMG_TYPE_PERSISTENT_APP 0 |
#define OAD_IMG_TYPE_APP 1 /* <-- Thread Application uses this */ |
#define OAD_IMG_TYPE_STACK 2 |
#define OAD_IMG_TYPE_APP_STACK 3 |
#define OAD_IMG_TYPE_NP 4 |
#define OAD_IMG_TYPE_FACTORY 5 |
#define OAD_IMG_TYPE_BIM 6 |
#define OAD_IMG_TYPE_APPSTACKLIB 7 |
#define OAD_IMG_TYPE_USR_BEGIN 16 |
#define OAD_IMG_TYPE_USR_END 31 |
#define OAD_IMG_TYPE_HOST_BEGIN 32 |
#define OAD_IMG_TYPE_HOST_END 63 |
#define OAD_IMG_TYPE_RSVD_BEGIN 64 |
#define OAD_IMG_TYPE_RSVD_END 255 |
Segment types.
#define OAD_SEG_BOUNDARY 0x00 |
#define OAD_SEG_CONTIGUOUS 0x01 |
#define OAD_SEG_NON_CONTIGUOUS 0x02 |
#define OAD_SEG_RSVD 0xFF |
Wireless Technology Types.
#define OAD_WIRELESS_TECH_BLE 0xFFFE |
#define OAD_WIRELESS_TECH_TIMAC_SUBG 0xFFFD |
#define OAD_WIRELESS_TECH_TIMAC_2_4G 0xFFFB |
#define OAD_WIRELESS_TECH_ZIGBEE 0xFFF7 |
#define OAD_WIRELESS_TECH_RF4CE 0xFFEF |
#define OAD_WIRELESS_TECH_THREAD 0xFFDF /* <-- Thread applications use this */ |
#define OAD_WIRELESS_TECH_EASYLINK 0xFFBF |
#define OAD_IMG_ID_VAL {'C', 'C', '2', '6', 'x', '2', 'R', '1'} |
#define OAD_EXTFL_ID_VAL {'O', 'A', 'D', ' ', 'N', 'V', 'M', '1'} |
Magic number used by entries in the image header table at the beginning of external flash. Note this is different from OAD_IMG_ID_VAL so that the application can determine the difference between an entry in the header table and the start of an OAD image
#define SOFTWARE_VER {'0', '0', '0', '1'} |
#define MAX_ONCHIP_FLASH_PAGES 44 |
#define IMG_DATA_OFFSET 12 /* Start of data after CRC bytes */ |
#define OAD_IMG_HDR_LEN 44 /* The length of just the OAD Header */ |
#define OAD_IMG_ID_LEN 8 /* OAD image identification bytes length */ |
#define OAD_SW_VER_LEN 4 /* OAD software version length in bytes */ |
#define CRC_OFFSET offsetof(img_common_header_t, crc32) /* Supported metadata version */ |
#define BIM_VER_OFFSET offsetof(img_common_header_t, bimVer) /* BIM metadata version offset */ |
#define IMG_INFO_OFFSET offsetof(img_common_header_t, imgCpStat) /* ImageInfo Bytes offset */ |
#define IMG_COPY_STAT_OFFSET offsetof(img_common_header_t, imgCpStat) /* Image copy status */ |
#define CRC_STAT_OFFSET offsetof(img_common_header_t, crcStat) /* Offset to CRC status byte */ |
#define IMG_TYPE_OFFSET offsetof(img_common_header_t, imgType) /* Offset to CRC status byte */ |
#define SEG_LEN_OFFSET 4 /* Offset from seg header to seg len */ |
#define SEG_HDR_LEN 12 /* Length of the segment header bytes */ |
#define IMG_PAYLOAD_SEG_ID 1 /* Id of the image payload segment */ |
#define IMG_BOUNDARY_SEG_ID 0 /* Id of RAM/stack boundary segment */ |
#define IMG_NONCOUNT_SEG_ID 2 /* Id of non contigouous image segment */ |
#define IMG_SECURITY_SEG_ID 3 /* Id of security segment */ |
#define BIM_V1_VER 0x1 /* Supported BIM version */ |
#define BIM_V2_VER 0x2 /* Supported BIM version */ |
#define BIM_V3_VER 0x3 /* Supported BIM version */ |
#define META_VER 0x1 /* Supported metadata version */ |
#define SECURITY_VER 0x1 |
#define DEFAULT_STATE 0xFF /* default status */ |
#define CRC_VALID 0xFE |
#define CRC_INVALID 0xFC |
#define NEED_COPY 0xFE /* Image to be copied on on-chip flash at location indicated in the image */ |
#define COPY_DONE 0xFC /* Image already copied */ |
#define INVALID_ADDR 0xFFFFFFFF |
#define _imgHdr oad_image_header |
typedef struct img_common_header img_common_header_t |
typedef struct img_common_header imgFixedHdr_t |
const struct img_header_single_app oad_image_header |