External ELF file symbols

group group_dfu_globals_external_elf_symbols

CyMCUElfTools adds these symbols to a generated ELF file.

Their values are either defined in the linker script (GCC, IAR) or in the assembly code (ARM): (see section Linker scripts). They may be used by CyMCUElfTool as parameters for generating a .cyacd2 file. Also, use the DFU SDK APIs to refer link-time known values to the compile time.


uint8_t __cy_boot_metadata_addr

Metadata address.

DFU uses this symbol to access metadata.

uint8_t __cy_boot_metadata_length

Metadata row size.

The DFU uses this symbol to access metadata.

uint8_t __cy_product_id

Product ID.

CyMCUElfTool uses this value to place in the .cyacd2 header. The DFU uses this value to verify if an image is compatible with the device.

uint8_t __cy_checksum_type

Checksum Algorithm of the DFU Host Command/Response Protocol packet.

Possible values

  • 0 For the Basic Summation algorithm

  • 1 For the CRC-16 algorithm


    Must be aligned with CY_DFU_OPT_PACKET_CRC

uint8_t __cy_app_id

Current application number.

uint8_t __cy_app_core1_start_addr

CPU1 vector table address, if present.