62typedef enum : uint8_t {
71typedef enum : uint8_t {
85typedef enum : uint16_t {
99typedef enum : uint8_t {
115typedef enum : uint8_t {
135typedef enum : uint8_t {
Error Code Definitions for ra8-firmware.
ra8_err_codes_t ra8_err_t
Canonical error-return type used by every ra8-firmware API.
Native USB controller driver public API (device + host modes).
ra8_usb_speed_t
Selects which controller instance the call targets.
ra8_err_t ra8_usb_paud_recv_frame(uint8_t *buf, uint16_t max_len, uint16_t *got_len)
Drain a playback audio frame from the iso-OUT endpoint.
ra8_usb_paud_class_t
Class / subclass / protocol triplet that identifies the local Audio function in the configuration des...
@ k_ra8_paud_class_audio
Audio interface class.
@ k_ra8_paud_protocol_none
No protocol (UAC1).
@ k_ra8_paud_subclass_control
AudioControl Subclass.
@ k_ra8_paud_subclass_streaming
AudioStreaming Subclass.
ra8_err_t ra8_usb_paud_attach_setup_handler(ra8_usb_paud_setup_fn_t setup_fn, void *ctx)
Register the application's audio class-setup handler.
ra8_err_t ra8_usb_paud_set_volume(int16_t volume_q8_8)
Apply a SET_CUR(volume) shadow update on the feature unit.
ra8_err_t ra8_usb_paud_set_descriptors(const uint8_t *desc, uint16_t desc_len)
Install the caller-supplied audio descriptor blob.
ra8_usb_paud_ep_t
USB endpoint addresses used by the device-Audio function.
@ k_ra8_paud_ep_iso_in_addr
EP1 IN address.
@ k_ra8_paud_ep_iso_out_addr
EP2 OUT address.
ra8_err_t ra8_usb_paud_set_format(ra8_usb_paud_format_t format)
Apply a SET_CUR(sampling-frequency) shadow update.
ra8_usb_paud_request_t
Audio class-specific request codes the host issues to the device.
@ k_ra8_paud_req_get_cur
GET_CUR.
@ k_ra8_paud_req_get_stat
GET_STAT.
@ k_ra8_paud_req_get_max
GET_MAX.
@ k_ra8_paud_req_set_res
SET_RES.
@ k_ra8_paud_req_set_cur
SET_CUR.
@ k_ra8_paud_req_set_max
SET_MAX.
@ k_ra8_paud_req_get_res
GET_RES.
@ k_ra8_paud_req_get_min
GET_MIN.
@ k_ra8_paud_req_set_min
SET_MIN.
ra8_usb_paud_control_sel_t
Feature-unit / endpoint control selectors carried in the high byte of wValue.
@ k_ra8_paud_ctl_sample_rate
Sampling Frequency Control.
@ k_ra8_paud_ctl_mute
Mute Control.
@ k_ra8_paud_ctl_volume
Volume Control.
ra8_err_t ra8_usb_paud_get_format(ra8_usb_paud_format_t *out_format)
Read the current iso stream format.
ra8_err_t ra8_usb_paud_close(void)
Tear down the device-Audio function and release the controller.
ra8_err_t ra8_usb_paud_send_frame(const uint8_t *frame, uint16_t len)
Push a captured audio frame on the iso-IN endpoint.
ra8_err_t ra8_usb_paud_handle_setup(const ra8_usb_setup_t *setup)
Process a class-specific SETUP packet on EP0.
ra8_usb_paud_packet_t
Packet sizing for the iso endpoints.
@ k_ra8_paud_iso_max_packet_fs
FS iso ceiling.
@ k_ra8_paud_iso_max_packet_fs_default
48 kHz stereo 16-bit.
@ k_ra8_paud_iso_max_packet_hs
HS iso ceiling.
ra8_err_t ra8_usb_paud_get_volume(int16_t *out_volume)
Read the current feature-unit volume.
ra8_err_t(* ra8_usb_paud_setup_fn_t)(void *ctx, const ra8_usb_setup_t *setup)
Caller-supplied audio class-setup handler signature.
ra8_err_t ra8_usb_paud_init(ra8_usb_speed_t speed)
Bring up the device-Audio function on a chosen USB controller.
ra8_usb_paud_pipe_t
PIPE numbers used by the device-Audio function for the local isochronous endpoints.
@ k_ra8_paud_pipe_iso_out
PIPE2 -> EP2 OUT (playback).
@ k_ra8_paud_pipe_iso_in
PIPE1 -> EP1 IN (capture).
Decoded 8-byte USB SETUP packet.