USB Nordic DFU Trigger internals

nRF5 SDK v15.0.0

nRF52840 only: Internals of the USB Nordic DFU Trigger class. More...

Data Structures

struct app_usbd_nrf_dfu_trigger_inst_t
Nordic DFU Trigger part of class instance data. More...
struct app_usbd_nrf_dfu_trigger_ctx_t
Nordic DFU Trigger context. More...

Macros

#define APP_USBD_NRF_DFU_TRIGGER_CONFIG (iface)   (iface)
Nordic DFU Trigger configuration macro. More...
#define APP_USBD_NRF_DFU_TRIGGER_INSTANCE_SPECIFIC_DEC app_usbd_nrf_dfu_trigger_inst_t inst;
Specific class constant data for Nordic DFU Trigger. More...
#define APP_USBD_NRF_DFU_TRIGGER_INST_CONFIG (user_event_handler,p_nordic_dfu,sem_ver_str,timeout,size,bcd)
Configures Nordic DFU Trigger instance. More...
#define APP_USBD_NRF_DFU_TRIGGER_DATA_SPECIFIC_DEC app_usbd_nrf_dfu_trigger_ctx_t ctx;
Specific class data for Nordic DFU Trigger. More...
#define APP_USBD_NRF_DFU_TRIGGER_GLOBAL_DEF_INTERNAL (instance_name,interface_number,detach_timeout,transfer_size,p_nordic_dfu,sem_ver_str,user_ev_handler)
Global definition of Nordic DFU Trigger instance. More...

Functions

APP_USBD_CLASS_FORWARD (app_usbd_nrf_dfu_trigger)
Forward declaration of Nordic DFU Trigger Class type.

Variables

const app_usbd_class_methods_t app_usbd_nrf_dfu_trigger_class_methods
Public Nordic DFU Trigger class interface.

Detailed Description

nRF52840 only: Internals of the USB Nordic DFU Trigger class.

Macro Definition Documentation

#define APP_USBD_NRF_DFU_TRIGGER_CONFIG ( iface ) (iface)

Nordic DFU Trigger configuration macro.

Used by APP_USBD_NRF_DFU_TRIGGER_GLOBAL_DEF

Parameters
iface Interface number
#define APP_USBD_NRF_DFU_TRIGGER_DATA_SPECIFIC_DEC app_usbd_nrf_dfu_trigger_ctx_t ctx;

Specific class data for Nordic DFU Trigger.

app_usbd_nrf_dfu_trigger_ctx_t

#define APP_USBD_NRF_DFU_TRIGGER_GLOBAL_DEF_INTERNAL ( instance_name,
interface_number,
detach_timeout,
transfer_size,
p_nordic_dfu,
sem_ver_str,
user_ev_handler
)
Value:
instance_name, \
app_usbd_nrf_dfu_trigger, \
APP_USBD_NRF_DFU_TRIGGER_CONFIG ((interface_number)), \
p_nordic_dfu, \
sem_ver_str, \
detach_timeout, \
transfer_size, \
0x0110)) \
)

Global definition of Nordic DFU Trigger instance.

#define APP_USBD_NRF_DFU_TRIGGER_INST_CONFIG ( user_event_handler,
p_nordic_dfu,
sem_ver_str,
timeout,
size,
bcd
)
Value:
.inst = { \
.user_ev_handler = user_event_handler, \
.p_dfu_info = p_nordic_dfu, \
.p_sem_ver = sem_ver_str, \
.sem_ver_size = sizeof (sem_ver_str), \
.transfer_size = size, \
.detach_timeout = timeout, \
.bcd_dfu = bcd, \
}

Configures Nordic DFU Trigger instance.

Parameters
user_event_handler User event handler
p_nordic_dfu Pointer to app_usbd_nrf_dfu_trigger_nordic_info_t structure
sem_ver_str Semantic version string
timeout Detach timeout in ms - left for compatibility with USB DFU spec.
size Transfer size in bytes - left for compatibility with USB DFU spec.
bcd USB DFU specification version.
#define APP_USBD_NRF_DFU_TRIGGER_INSTANCE_SPECIFIC_DEC app_usbd_nrf_dfu_trigger_inst_t inst;

Specific class constant data for Nordic DFU Trigger.

app_usbd_nrf_dfu_trigger_inst_t

Typedef Documentation

typedef void(* app_usbd_nrf_dfu_trigger_user_ev_handler_t)( app_usbd_class_inst_t const *p_inst, enum app_usbd_nrf_dfu_trigger_user_event_e event)

User event handler.

Parameters
[in] p_inst Class instance
[in] event User event

Enumeration Type Documentation

Internal module state.

Note
For future compatibility with DFU class.
Enumerator
APP_USBD_NRF_DFU_TRIGGER_STATE_IDLE

Internal module state IDLE

APP_USBD_NRF_DFU_TRIGGER_STATE_DETACH

Internal module state DETACH