nRF52840 only: USB Audio class internals. More...
Data Structures | |
struct | app_usbd_audio_subclass_desc_t |
Audio subclass descriptor. More... | |
struct | app_usbd_audio_inst_t |
Audio class part of class instance data. More... | |
struct | app_usbd_audio_req_t |
Audio class specific request handled via control endpoint. More... | |
struct | app_usbd_audio_ctx_t |
Audio class context. More... | |
Macros | |
#define | APP_USBD_AUDIO_CONFIG(iface_control, iface_stream) |
Audio class configuration macro. More... | |
#define | APP_USBD_AUDIO_CONFIG_IN(iface_control, iface_stream_in) ((iface_control), (iface_stream_in, NRF_DRV_USBD_EPIN8)) |
Only IN audio stream configuration. More... | |
#define | APP_USBD_AUDIO_CONFIG_OUT(iface_control, iface_stream_out) ((iface_control), (iface_stream_out, NRF_DRV_USBD_EPOUT8)) |
Only OUT audio stream configuration. More... | |
#define | APP_USBD_AUDIO_INSTANCE_SPECIFIC_DEC app_usbd_audio_inst_t inst; |
Specific class constant data for audio class. More... | |
#define | APP_USBD_AUDIO_INST_CONFIG(user_event_handler,format_descriptor,input_descriptor,output_descriptor,feature_descriptor,dlay,frmat,ep_siz,type_str,terminal) |
Configures audio class instance. More... | |
#define | APP_USBD_AUDIO_DATA_SPECIFIC_DEC app_usbd_audio_ctx_t ctx; |
Specific class data for audio class. More... | |
#define | APP_USBD_AUDIO_DSC_CONFIG(interface_number,...) |
Audio class descriptors config macro. More... | |
#define | APP_USBD_AUDIO_GLOBAL_DEF_INTERNAL(instance_name,interfaces_configs,user_ev_handler,format_descriptor,input_descriptor,output_descriptor,feature_descriptor,delay,format,ep_size,type_str,terminal_link) |
Global definition of app_usbd_audio_t class. More... | |
Typedefs | |
typedef void(* | app_usbd_audio_user_ev_handler_t )(app_usbd_class_inst_t const *p_inst, enum app_usbd_audio_user_event_e event) |
User event handler. More... | |
Enumerations | |
enum | app_usbd_audio_class_req_target_t { APP_USBD_AUDIO_CLASS_REQ_IN, APP_USBD_AUDIO_CLASS_REQ_OUT, APP_USBD_AUDIO_EP_REQ_IN, APP_USBD_AUDIO_EP_REQ_OUT } |
Audio class request target. More... | |
Functions | |
APP_USBD_CLASS_FORWARD (app_usbd_audio) | |
Forward declaration of type defined by APP_USBD_CLASS_TYPEDEF in audio class. | |
Variables | |
const app_usbd_class_methods_t | app_usbd_audio_class_methods |
Public audio class interface. | |
nRF52840 only: USB Audio class internals.
#define APP_USBD_AUDIO_CONFIG | ( | iface_control, | |
iface_stream | |||
) |
Audio class configuration macro.
Used by APP_USBD_AUDIO_GLOBAL_DEF
iface_control | Interface number of audio control. |
iface_stream | Interface number of audio stream. |
#define APP_USBD_AUDIO_CONFIG_IN | ( | iface_control, | |
iface_stream_in | |||
) | ((iface_control), (iface_stream_in, NRF_DRV_USBD_EPIN8)) |
Only IN audio stream configuration.
iface_control | Interface number of audio control. |
iface_stream_in | Interface number of audio stream on IN endpoint. |
#define APP_USBD_AUDIO_CONFIG_OUT | ( | iface_control, | |
iface_stream_out | |||
) | ((iface_control), (iface_stream_out, NRF_DRV_USBD_EPOUT8)) |
Only OUT audio stream configuration.
iface_control | Interface number of audio control. |
iface_stream_out | Interface number of audio stream on OUT endpoint. |
#define APP_USBD_AUDIO_DATA_SPECIFIC_DEC app_usbd_audio_ctx_t ctx; |
Specific class data for audio class.
#define APP_USBD_AUDIO_DSC_CONFIG | ( | interface_number, | |
... | |||
) |
Audio class descriptors config macro.
interface_number | Interface number. |
... | Extracted endpoint list. |
#define APP_USBD_AUDIO_GLOBAL_DEF_INTERNAL | ( | instance_name, | |
interfaces_configs, | |||
user_ev_handler, | |||
format_descriptor, | |||
input_descriptor, | |||
output_descriptor, | |||
feature_descriptor, | |||
delay, | |||
format, | |||
ep_size, | |||
type_str, | |||
terminal_link | |||
) |
Global definition of app_usbd_audio_t class.
#define APP_USBD_AUDIO_INST_CONFIG | ( | user_event_handler, | |
format_descriptor, | |||
input_descriptor, | |||
output_descriptor, | |||
feature_descriptor, | |||
dlay, | |||
frmat, | |||
ep_siz, | |||
type_str, | |||
terminal | |||
) |
Configures audio class instance.
user_event_handler | User event handler. |
format_descriptor | Audio class Format descriptor. |
input_descriptor | Audio class Input Terminal descriptor. |
output_descriptor | Audio class Output Terminal descriptor. |
feature_descriptor | Audio class Feature Unit descriptor. |
dlay | Streaming delay. |
frmat | FormatTag (app_usbd_audio_as_iface_format_tag_t). |
ep_siz | Endpoint size. |
type_str | Streaming type MIDISTREAMING/AUDIOSTREAMING. |
terminal | Terminal link in AS Interface Descriptor. |
#define APP_USBD_AUDIO_INSTANCE_SPECIFIC_DEC app_usbd_audio_inst_t inst; |
Specific class constant data for audio class.
typedef void(* app_usbd_audio_user_ev_handler_t)(app_usbd_class_inst_t const *p_inst, enum app_usbd_audio_user_event_e event) |
User event handler.
[in] | p_inst | Class instance. |
[in] | event | User event. |