Supervisor call interface

nRF5 SDK v14.0.0

The Supervisor call interface is a thread-safe method to call into the current application or into an external application using a Supervisor instruction. More...

Data Structures

struct nrf_dfu_peer_data_t
struct nrf_dfu_adv_name_t

Enumerations

enum nrf_dfu_svci_numbers {
NRF_DFU_SVCI_EXECUTE_COMMAND_INIT ,
NRF_DFU_SVCI_EXECUTE_DATA_INIT ,
NRF_DFU_SVCI_SET_PEER_DATA ,
NRF_DFU_SVCI_SET_ADV_NAME
}
enum nrf_dfu_peer_data_state_t {
DFU_PEER_DATA_STATE_INVALID = 0,
DFU_PEER_DATA_STATE_INITIALIZED = 1,
DFU_PEER_DATA_STATE_WRITE_REQUESTED = 2,
DFU_PEER_DATA_STATE_WRITE_FINISHED = 3,
DFU_PEER_DATA_STATE_WRITE_FAILED = 4
}
enum nrf_dfu_set_adv_name_state_t {
DFU_ADV_NAME_STATE_INVALID = 0,
DFU_ADV_NAME_STATE_INITIALIZED = 1,
DFU_ADV_NAME_STATE_WRITE_REQUESTED = 2,
DFU_ADV_NAME_STATE_WRITE_FINISHED = 3,
DFU_ADV_NAME_STATE_WRITE_FAILED = 4
}

Functions

NRF_SVCI_ASYNC_FUNC_DECLARE (NRF_DFU_SVCI_SET_PEER_DATA, nrf_dfu_set_peer_data, nrf_dfu_peer_data_t , nrf_dfu_peer_data_state_t)
Sets up the async SVCI interface for exchanging peer data like bonding and the system attribute table. More...
NRF_SVCI_ASYNC_FUNC_DECLARE (NRF_DFU_SVCI_SET_ADV_NAME, nrf_dfu_set_adv_name, nrf_dfu_adv_name_t , nrf_dfu_set_adv_name_state_t)
Sets up the async SVCI interface for exchanging advertisement name to use when entering DFU mode. More...

Detailed Description

The Supervisor call interface is a thread-safe method to call into the current application or into an external application using a Supervisor instruction.

Macro Definition Documentation

#define SYSTEM_SERVICE_ATT_SIZE   8

Size of the system service attribute length including CRC-16 at the end.

Function Documentation

NRF_SVCI_ASYNC_FUNC_DECLARE ( NRF_DFU_SVCI_SET_PEER_DATA ,
nrf_dfu_set_peer_data ,
nrf_dfu_peer_data_t ,
nrf_dfu_peer_data_state_t
)

Sets up the async SVCI interface for exchanging peer data like bonding and the system attribute table.

The peer data will be stored in flash by the bootloader. This requires memory management and handling forwarding of system events and state from the main application to the bootloader.

Note
This is only available in the buttonless DFU that supports bond sharing.
NRF_SVCI_ASYNC_FUNC_DECLARE ( NRF_DFU_SVCI_SET_ADV_NAME ,
nrf_dfu_set_adv_name ,
nrf_dfu_adv_name_t ,
nrf_dfu_set_adv_name_state_t
)

Sets up the async SVCI interface for exchanging advertisement name to use when entering DFU mode.

The advertisement name will be stored in flash by the bootloader. This requires memory management and handling forwarding of system events and state from the main application to the bootloader.

Note
This is only available in the buttonless DFU that does not support bond sharing.