DFU types

nRF5 SDK v12.2.0

Data Structures

struct nrf_dfu_bank_t
Description of a single bank. More...
struct dfu_progress_t
DFU progress. More...
struct nrf_dfu_settings_t
DFU settings for application and bank data. More...

Macros

#define INIT_COMMAND_MAX_SIZE 256
#define CODE_PAGE_SIZE ( PAGE_SIZE_IN_WORDS *sizeof(uint32_t))
Size of a flash codepage. This value is used for calculating the size of the reserved flash space in the bootloader region. It is checked against NRF_UICR->CODEPAGESIZE at run time to ensure that the region is correct.
#define DATA_OBJECT_MAX_SIZE ( CODE_PAGE_SIZE * 4)
Maximum size of a data object.
#define BOOTLOADER_SETTINGS_ADDRESS (0x0003FC00UL)
Page location of the bootloader settings address.
#define DFU_APP_DATA_RESERVED CODE_PAGE_SIZE * 3
Size of the flash space reserved for application data.
#define DFU_REGION_TOTAL_SIZE ((* (uint32_t *) NRF_UICR_BOOTLOADER_START_ADDRESS ) - CODE_REGION_1_START )
Total size of the region between the SoftDevice and the bootloader.
#define SOFTDEVICE_REGION_START MBR_SIZE
Start address of the SoftDevice (excluding the area for the MBR).
#define CODE_REGION_1_START SD_SIZE_GET ( MBR_SIZE )
Size of the Code Region 0, found in the UICR.CLEN0 register. More...
#define NRF_DFU_CURRENT_BANK_0 0x00
#define NRF_DFU_CURRENT_BANK_1 0x01
#define NRF_DFU_BANK_LAYOUT_DUAL 0x00
#define NRF_DFU_BANK_LAYOUT_SINGLE 0x01
#define NRF_DFU_BANK_INVALID 0x00
DFU bank state codes. More...
#define NRF_DFU_BANK_VALID_APP 0x01
#define NRF_DFU_BANK_VALID_SD 0xA5
#define NRF_DFU_BANK_VALID_BL 0xAA
#define NRF_DFU_BANK_VALID_SD_BL 0xAC

Detailed Description

Macro Definition Documentation

#define CODE_REGION_1_START SD_SIZE_GET ( MBR_SIZE )

Size of the Code Region 0, found in the UICR.CLEN0 register.

This value is identical to the start of Code Region 1. This value is used for compilation safety, because the linker will fail if the application expands into the bootloader. At run time, the bootloader uses the value found in UICR.CLEN0.

#define INIT_COMMAND_MAX_SIZE   256

Maximum size of the init command stored in dfu_settings.

#define NRF_DFU_BANK_INVALID   0x00

DFU bank state codes.

The DFU bank state indicates the content of a bank: A valid image of a certain type or an invalid image.Invalid image.

#define NRF_DFU_BANK_VALID_APP   0x01

Valid application.

#define NRF_DFU_BANK_VALID_BL   0xAA

Valid bootloader.

#define NRF_DFU_BANK_VALID_SD   0xA5

Valid SoftDevice.

#define NRF_DFU_BANK_VALID_SD_BL   0xAC

Valid SoftDevice and bootloader.