Functions | |
uint32_t | nrf_dfu_continue (uint32_t *p_enter_dfu_mode) |
Function for continuing an ongoing DFU operation. More... | |
bool | nrf_dfu_app_is_valid (void) |
Function for checking if the main application is valid. More... | |
uint32_t | nrf_dfu_find_cache (uint32_t size_req, bool dual_bank_only, uint32_t *p_address) |
Function for finding a cache write location for the DFU process. More... | |
bool nrf_dfu_app_is_valid | ( | void | ) |
Function for checking if the main application is valid.
This function checks if there is a valid application located at Bank 0.
true | If a valid application has been detected. |
false | If there is no valid application. |
uint32_t nrf_dfu_continue | ( | uint32_t * | p_enter_dfu_mode | ) |
Function for continuing an ongoing DFU operation.
This function initiates or continues the DFU copy-back routines. These routines are fail-safe operations to activate either a new SoftDevice, Bootloader, combination of SoftDevice and Bootloader, or a new application.
This function relies on accessing MBR commands through supervisor calls. It does not rely on the SoftDevice for flash operations.
[in,out] | p_enter_dfu_mode | True if the continuation failed or the update requires DFU mode. |
NRF_SUCCESS | If the DFU operation was continued successfully. Any other error code indicates that the DFU operation could not be continued. |
uint32_t nrf_dfu_find_cache | ( | uint32_t | size_req, |
bool | dual_bank_only, | ||
uint32_t * | p_address | ||
) |
Function for finding a cache write location for the DFU process.
This function checks the size requirements and selects a location for placing the cache of the DFU images. The function tries to find enough space in Bank 1. If there is not enough space, the present application is erased.
[in] | size_req | Requirements for the size of the new image. |
[in] | dual_bank_only | True to enforce dual-bank updates. In this case, if there is not enough space for caching the DFU image, the existing application is retained and the function returns an error. |
[out] | p_address | Updated to the cache address if a cache location is found. |
NRF_SUCCESS | If a cache location was found for the DFU process. |
NRF_ERROR_NO_MEM | If there is no space available on the device to continue the DFU process. |