You are viewing documentation for version:
GBL Format#
Modules#
GblTagHeader_t
GblHeader_t
VersionDependency_t
GblApplication_t
GblBootloader_t
GblTagDelta_t
GblSeUpgrade_t
GblMetadata_t
GblProg_t
GblEnd_t
GblEncryptionInitAesCcm_t
GblEncryptionData_t
GblCertificateEcdsaP256_t
GblSignatureEcdsaP256_t
Macros#
#define
GBL_IMAGE_MAGIC_WORD 0xE35050E3UL
Magic word indicating GBL image.
#define
GBL_COMPATIBILITY_MAJOR_VERSION 0x03000000UL
Major version of the GBL spec.
#define
GBL_TAG_ID_HEADER_V3 0x03A617EBUL
Tag ID for the GBL header tag.
#define
GBL_TAG_ID_BOOTLOADER 0xF50909F5UL
Tag ID for the GBL bootloader tag.
#define
GBL_TAG_ID_APPLICATION 0xF40A0AF4UL
Tag ID for the GBL application info tag.
#define
GBL_TAG_ID_METADATA 0xF60808F6UL
Tag ID for the GBL metadata tag.
#define
GBL_TAG_ID_PROG 0xFE0101FEUL
Tag ID for the GBL flash program tag.
#define
GBL_TAG_ID_PROG_LZ4 0xFD0505FDUL
Tag ID for the GBL flash program tag (LZ4)
#define
GBL_TAG_ID_PROG_LZMA 0xFD0707FDUL
Tag ID for the GBL flash program tag (LZMA)
#define
GBL_TAG_ID_ERASEPROG 0xFD0303FDUL
Tag ID for the GBL flash erase&program tag.
#define
GBL_TAG_ID_DELTA 0xF80A0AF8UL
Tag ID for the GBL delta dfu tag.
#define
GBL_TAG_ID_DELTA_LZ4 0xF80B0BF8UL
Tag ID for the GBL delta dfu tag (LZ4)
#define
GBL_TAG_ID_DELTA_LZMA 0xF80C0CF8UL
Tag ID for the GBL delta dfu tag (LZMA)
#define
GBL_TAG_ID_END 0xFC0404FCUL
Tag ID for the GBL end tag.
#define
GBL_TAG_ID_SE_UPGRADE 0x5EA617EBUL
Tag ID for the SE upgrade tag.
#define
GBL_TAG_ID_VERSION_DEPENDENCY 0x76A617EBUL
Tag ID for the version dependency tag.
#define
GBL_TAG_ID_ENC_HEADER 0xFB0505FBUL
Tag ID for the GBL encryption header tag.
#define
GBL_TAG_ID_ENC_INIT 0xFA0606FAUL
Tag ID for the GBL encryption init tag.
#define
GBL_TAG_ID_ENC_GBL_DATA 0xF90707F9UL
Tag ID for the GBL encryption data tag.
#define
GBL_TAG_ID_SIGNATURE_ECDSA_P256 0xF70A0AF7UL
Tag ID for the GBL ECDSA secp256r1 signature tag.
#define
GBL_TAG_ID_CERTIFICATE_ECDSA_P256 0xF30B0BF3UL
Tag ID for the GBL ECDSA certfificate tag.
#define
GBL_TYPE_NONE 0x00000000UL
#define
GBL_TYPE_ENCRYPTION_AESCCM 0x00000001UL
GBL type: AES-CCM encrypted GBL.
#define
GBL_TYPE_SIGNATURE_ECDSA 0x00000100UL
GBL type: ECDSA P256-signed GBL.
#define
GBL_VERSION_DEPENDENCY_TYPE_APPLICATION 0x01U
Image Type : Application Image.
#define
GBL_VERSION_DEPENDENCY_TYPE_BOOTLOADER 0x02U
Image Type : Bootloader Image.
#define
GBL_VERSION_DEPENDENCY_TYPE_SE 0x03U
Image Type : Secure Engine Image.
#define
GBL_VERSION_DEPENDENCY_OPERATOR_MASK 0x0FU
Operator encoding : Operator Mask.
#define
GBL_VERSION_DEPENDENCY_OPERATOR_SHIFT 0x00U
Operator encoding : Operator Shift.
#define
GBL_VERSION_DEPENDENCY_OPERATOR_TYPE_MASK 0x0EU
Operator encoding : Operator Type Mask.
#define
GBL_VERSION_DEPENDENCY_OPERATOR_NEGATOR_BIT_MASK 0x01U
Operator encoding : Negator Bit mask.
#define
GBL_VERSION_DEPENDENCY_OPERATOR_LT 0x00U
GBL Version Dependency Operator LT.
#define
GBL_VERSION_DEPENDENCY_OPERATOR_LEQ 0x02U
GBL Version Dependency Operator LEQ.
#define
GBL_VERSION_DEPENDENCY_OPERATOR_EQ 0x04U
GBL Version Dependency Operator EQ.
#define
GBL_VERSION_DEPENDENCY_OPERATOR_GEQ 0x06U
GBL Version Dependency Operator GEQ.
#define
GBL_VERSION_DEPENDENCY_OPERATOR_GT 0x08U
GBL Version Dependency Operator GT.
#define
GBL_VERSION_DEPENDENCY_CONNECTIVE_MASK 0xF0U
Connective encoding : Connective Encoding Mask.
#define
GBL_VERSION_DEPENDENCY_CONNECTIVE_SHIFT 0x04U
Connective encoding : Encoding Shift.
#define
GBL_VERSION_DEPENDENCY_CONNECTIVE_TYPE_MASK 0x0EU
Connective encoding : Encoding Type Mask.
#define
GBL_VERSION_DEPENDENCY_CONNECTIVE_NEGATOR_BIT_MASK 0x01U
Connective encoding : Negator Bit Mask.
#define
GBL_VERSION_DEPENDENCY_CONNECTIVE_AND 0x00U
#define
GBL_VERSION_DEPENDENCY_CONNECTIVE_OR 0x02U
#define
GBL_VERSION_DEPENDENCY_SE_VERSION_MASK 0x00FFFFFFUL
SE version mask for ignoring the compatibility byte when comparing versions.
#define
GBL_TAG_ORDER_HEADER_V3 1U
#define
GBL_TAG_ORDER_VERSION_DEPENDENCY 2U
GBL Tag Order Version Dependency.
#define
GBL_TAG_ORDER_ENC_INIT 4U
GBL Tag Order encoding Init.
#define
GBL_TAG_ORDER_APPLICATION 5U
GBL Tag Order Application.
#define
GBL_TAG_ORDER_SE_UPGRADE 6U
GBL Tag Order SE Upgarde.
#define
GBL_TAG_ORDER_BOOTLOADER 7U
GBL Tag Order Bootloader.
#define
GBL_TAG_ORDER_PROG_AND_METADATA 8U
The Programming and Metadata tags share the same order.
#define
GBL_TAG_ORDER_ENC_GBL_DATA 9U
GBL Tag Order Enc GBL Data.
#define
GBL_TAG_ORDER_CERTIFICATE 10U
GBL Tag Order Certificate.
#define
GBL_TAG_ORDER_SIGNATURE 11U
#define
GBL_TAG_ORDER_END 12U
GBL_TAG_ORDER_END must always be strictly greater than any other tag order.
#define
GBL_TAG_FLAG_SINGLE_OCCURRENCE_ONLY (1UL << 0)
#define
GBL_TAG_FLAG_ALWAYS_UNENCRYPTED (1UL << 1)