TI-OpenThread  1.08.02.01
Data Structures | Macros | Typedefs | Variables
CC1352P_4_LAUNCHXL/thread/doorlock_oad_secure/oad_image_header.h File Reference
#include <stddef.h>
#include <stdint.h>
+ Include dependency graph for CC1352P_4_LAUNCHXL/thread/doorlock_oad_secure/oad_image_header.h:
+ This graph shows which files directly or indirectly include this file:

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
 

Macro Definition Documentation

§ OAD_SINGLE_APP

#define OAD_SINGLE_APP   1

§ OAD_IMG_TYPE_PERSISTENT_APP

#define OAD_IMG_TYPE_PERSISTENT_APP   0

§ OAD_IMG_TYPE_APP

#define OAD_IMG_TYPE_APP   1 /* <-- Thread Application uses this */

§ OAD_IMG_TYPE_STACK

#define OAD_IMG_TYPE_STACK   2

§ OAD_IMG_TYPE_APP_STACK

#define OAD_IMG_TYPE_APP_STACK   3

§ OAD_IMG_TYPE_NP

#define OAD_IMG_TYPE_NP   4

§ OAD_IMG_TYPE_FACTORY

#define OAD_IMG_TYPE_FACTORY   5

§ OAD_IMG_TYPE_BIM

#define OAD_IMG_TYPE_BIM   6

§ OAD_IMG_TYPE_APPSTACKLIB

#define OAD_IMG_TYPE_APPSTACKLIB   7

§ OAD_IMG_TYPE_USR_BEGIN

#define OAD_IMG_TYPE_USR_BEGIN   16

§ OAD_IMG_TYPE_USR_END

#define OAD_IMG_TYPE_USR_END   31

§ OAD_IMG_TYPE_HOST_BEGIN

#define OAD_IMG_TYPE_HOST_BEGIN   32

§ OAD_IMG_TYPE_HOST_END

#define OAD_IMG_TYPE_HOST_END   63

§ OAD_IMG_TYPE_RSVD_BEGIN

#define OAD_IMG_TYPE_RSVD_BEGIN   64

§ OAD_IMG_TYPE_RSVD_END

#define OAD_IMG_TYPE_RSVD_END   255

Segment types.

§ OAD_SEG_BOUNDARY

#define OAD_SEG_BOUNDARY   0x00

§ OAD_SEG_CONTIGUOUS

#define OAD_SEG_CONTIGUOUS   0x01

§ OAD_SEG_NON_CONTIGUOUS

#define OAD_SEG_NON_CONTIGUOUS   0x02

§ OAD_SEG_RSVD

#define OAD_SEG_RSVD   0xFF

Wireless Technology Types.

§ OAD_WIRELESS_TECH_BLE

#define OAD_WIRELESS_TECH_BLE   0xFFFE

§ OAD_WIRELESS_TECH_TIMAC_SUBG

#define OAD_WIRELESS_TECH_TIMAC_SUBG   0xFFFD

§ OAD_WIRELESS_TECH_TIMAC_2_4G

#define OAD_WIRELESS_TECH_TIMAC_2_4G   0xFFFB

§ OAD_WIRELESS_TECH_ZIGBEE

#define OAD_WIRELESS_TECH_ZIGBEE   0xFFF7

§ OAD_WIRELESS_TECH_RF4CE

#define OAD_WIRELESS_TECH_RF4CE   0xFFEF

§ OAD_WIRELESS_TECH_THREAD

#define OAD_WIRELESS_TECH_THREAD   0xFFDF /* <-- Thread applications use this */

§ OAD_WIRELESS_TECH_EASYLINK

#define OAD_WIRELESS_TECH_EASYLINK   0xFFBF

§ OAD_IMG_ID_VAL

#define OAD_IMG_ID_VAL   {'C', 'C', '2', '6', 'x', '2', 'R', '1'}

§ OAD_EXTFL_ID_VAL

#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

Note
This is only used by off-chip OAD

§ SOFTWARE_VER

#define SOFTWARE_VER   {'0', '0', '0', '1'}

§ MAX_ONCHIP_FLASH_PAGES

#define MAX_ONCHIP_FLASH_PAGES   44

§ IMG_DATA_OFFSET

#define IMG_DATA_OFFSET   12 /* Start of data after CRC bytes */

§ OAD_IMG_HDR_LEN

#define OAD_IMG_HDR_LEN   44 /* The length of just the OAD Header */

§ OAD_IMG_ID_LEN

#define OAD_IMG_ID_LEN   8 /* OAD image identification bytes length */

§ OAD_SW_VER_LEN

#define OAD_SW_VER_LEN   4 /* OAD software version length in bytes */

§ CRC_OFFSET

#define CRC_OFFSET   offsetof(img_common_header_t, crc32) /* Supported metadata version */

§ BIM_VER_OFFSET

#define BIM_VER_OFFSET   offsetof(img_common_header_t, bimVer) /* BIM metadata version offset */

§ IMG_INFO_OFFSET

#define IMG_INFO_OFFSET   offsetof(img_common_header_t, imgCpStat) /* ImageInfo Bytes offset */

§ IMG_COPY_STAT_OFFSET

#define IMG_COPY_STAT_OFFSET   offsetof(img_common_header_t, imgCpStat) /* Image copy status */

§ CRC_STAT_OFFSET

#define CRC_STAT_OFFSET   offsetof(img_common_header_t, crcStat) /* Offset to CRC status byte */

§ IMG_TYPE_OFFSET

#define IMG_TYPE_OFFSET   offsetof(img_common_header_t, imgType) /* Offset to CRC status byte */

§ SEG_LEN_OFFSET

#define SEG_LEN_OFFSET   4 /* Offset from seg header to seg len */

§ SEG_HDR_LEN

#define SEG_HDR_LEN   12 /* Length of the segment header bytes */

§ IMG_PAYLOAD_SEG_ID

#define IMG_PAYLOAD_SEG_ID   1 /* Id of the image payload segment */

§ IMG_BOUNDARY_SEG_ID

#define IMG_BOUNDARY_SEG_ID   0 /* Id of RAM/stack boundary segment */

§ IMG_NONCOUNT_SEG_ID

#define IMG_NONCOUNT_SEG_ID   2 /* Id of non contigouous image segment */

§ IMG_SECURITY_SEG_ID

#define IMG_SECURITY_SEG_ID   3 /* Id of security segment */

§ BIM_V1_VER

#define BIM_V1_VER   0x1 /* Supported BIM version */

§ BIM_V2_VER

#define BIM_V2_VER   0x2 /* Supported BIM version */

§ BIM_V3_VER

#define BIM_V3_VER   0x3 /* Supported BIM version */

§ META_VER

#define META_VER   0x1 /* Supported metadata version */

§ SECURITY_VER

#define SECURITY_VER   0x1

§ DEFAULT_STATE

#define DEFAULT_STATE   0xFF /* default status */

§ CRC_VALID

#define CRC_VALID   0xFE

§ CRC_INVALID

#define CRC_INVALID   0xFC

§ NEED_COPY

#define NEED_COPY   0xFE /* Image to be copied on on-chip flash at location indicated in the image */

§ COPY_DONE

#define COPY_DONE   0xFC /* Image already copied */

§ INVALID_ADDR

#define INVALID_ADDR   0xFFFFFFFF

§ _imgHdr

#define _imgHdr   oad_image_header

Typedef Documentation

§ img_common_header_t

§ imgHdr_t

typedef struct imgHdr imgHdr_t

§ imgFixedHdr_t

Variable Documentation

§ oad_image_header

const struct img_header_single_app oad_image_header
© Copyright 1995-2020, Texas Instruments Incorporated. All rights reserved.
Trademarks | Privacy policy | Terms of use | Terms of sale