DLN_BOOT_WRITE_FLASH Command and Response

The DLN_BOOT_WRITE_FLASH command is used to write new firmware into the device internal memory.

DLN_BOOT_WRITE_FLASH Command

Go to response

Syntax

C/C++
typedef struct
 {
    DLN_MSG_HEADER header;
    uint32_t address;
    uint16_t size;
    uint8_t buffer[256];
 } __PACKED_ATTR DLN_BOOT_WRITE_FLASH_CMD;
     

Parameters:

header

Defines the DLN message header DLN_MSG_HEADER. The header contains several predefined fields and is used to identify and route messages. You must fill the following fields before sending the command:

Field Description
size The size of the message. Must be equal to the size of the DLN_BOOT_WRITE_FLASH_CMD structure.
msgId Identifies the message. For the DLN_BOOT_WRITE_FLASH command it must be set to 0x0904. You can use the DLN_MSG_ID_BOOT_WRITE_FLASH constant.
echoCounter Can be used to link a command to a response. The response will have the same echoCounter value. This field can be any numerical value from 0 to 0xFFFF (65536).
handle A handle to the DLN-series adapter.
address
The address to start writing from.
size
The size of the firmware.
buffer
A 256-element array. Each of the elements is an 8-bit value.

DLN_BOOT_WRITE_FLASH Response

Go to command

The adapter sends the DLN_BOOT_WRITE_FLASH response after the DLN_BOOT_WRITE_FLASH command execution. The result field informs a user if the firmware has been successfully written.

Syntax

C/C++
 typedef struct
 {
    DLN_MSG_HEADER header;
    DLN_RESULT result;
 } __PACKED_ATTR DLN_BOOT_WRITE_FLASH_RSP;
     

Parameters:

header

Defines the DLN message header DLN_MSG_HEADER. The response header contains the following fields:

Field Description
size The size of the message. It is equal to the size of the DLN_BOOT_WRITE_FLASH_RSP structure.
msgId Contains the message id. For the DLN_BOOT_WRITE_FLASH response it is set to 0x0904. The DLN_MSG_ID_BOOT_WRITE_FLASH constant can be used to check the message ID.
echoCounter Links a command to a response. The echoCounter value is copied from the respective command header.
handle A handle to the DLN-series adapter. You can use the handle field to determine the adapter that have sent the response.
result

Contains the result of the command execution. For DLN_BOOT_WRITE_FLASH command DLN-series adapter can return the following result values:

Return Code Description
DLN_RES_SUCCESS Firmware has been successfully written.