nRF5 SDK v17.1.0
Data Structures | Macros | Typedefs | Enumerations | Functions | Variables
USB Nordic DFU Trigger internals

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...
 

Typedefs

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. More...
 

Enumerations

enum  app_usbd_nrf_dfu_trigger_state_t {
  APP_USBD_NRF_DFU_TRIGGER_STATE_IDLE,
  APP_USBD_NRF_DFU_TRIGGER_STATE_DETACH
}
 Internal module state. 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
ifaceInterface 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_handlerUser event handler.
p_nordic_dfuPointer to app_usbd_nrf_dfu_trigger_nordic_info_t structure.
sem_ver_strSemantic version string.
timeoutDetach timeout in ms - left for compatibility with USB DFU spec.
sizeTransfer size in bytes - left for compatibility with USB DFU spec.
bcdUSB 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_instClass instance.
[in]eventUser 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


Documentation feedback | Developer Zone | Subscribe | Updated