Open FFBoard
Open source force feedback firmware
Device

Classes

struct  audio_feedback_params_t
 

Enumerations

enum  {
  AUDIO_FEEDBACK_METHOD_DISABLED , AUDIO_FEEDBACK_METHOD_FREQUENCY_FIXED , AUDIO_FEEDBACK_METHOD_FREQUENCY_FLOAT , AUDIO_FEEDBACK_METHOD_FREQUENCY_POWER_OF_2 ,
  AUDIO_FEEDBACK_METHOD_FIFO_COUNT
}
 

Functions

bool tud_audio_n_mounted (uint8_t func_id)
 
uint16_t tud_audio_n_available (uint8_t func_id)
 
uint16_t tud_audio_n_read (uint8_t func_id, void *buffer, uint16_t bufsize)
 
bool tud_audio_n_clear_ep_out_ff (uint8_t func_id)
 
tu_fifo_ttud_audio_n_get_ep_out_ff (uint8_t func_id)
 
bool tud_audio_n_clear_rx_support_ff (uint8_t func_id, uint8_t ff_idx)
 
uint16_t tud_audio_n_available_support_ff (uint8_t func_id, uint8_t ff_idx)
 
uint16_t tud_audio_n_read_support_ff (uint8_t func_id, uint8_t ff_idx, void *buffer, uint16_t bufsize)
 
tu_fifo_ttud_audio_n_get_rx_support_ff (uint8_t func_id, uint8_t ff_idx)
 
uint16_t tud_audio_n_write (uint8_t func_id, const void *data, uint16_t len)
 Write data to EP in buffer. More...
 
bool tud_audio_n_clear_ep_in_ff (uint8_t func_id)
 
tu_fifo_ttud_audio_n_get_ep_in_ff (uint8_t func_id)
 
uint16_t tud_audio_n_flush_tx_support_ff (uint8_t func_id)
 
bool tud_audio_n_clear_tx_support_ff (uint8_t func_id, uint8_t ff_idx)
 
uint16_t tud_audio_n_write_support_ff (uint8_t func_id, uint8_t ff_idx, const void *data, uint16_t len)
 
tu_fifo_ttud_audio_n_get_tx_support_ff (uint8_t func_id, uint8_t ff_idx)
 
bool tud_audio_int_n_write (uint8_t func_id, const audio_interrupt_data_t *data)
 
static bool tud_audio_mounted (void)
 
static uint16_t tud_audio_available (void)
 
static bool tud_audio_clear_ep_out_ff (void)
 
static uint16_t tud_audio_read (void *buffer, uint16_t bufsize)
 
static tu_fifo_ttud_audio_get_ep_out_ff (void)
 
static bool tud_audio_clear_rx_support_ff (uint8_t ff_idx)
 
static uint16_t tud_audio_available_support_ff (uint8_t ff_idx)
 
static uint16_t tud_audio_read_support_ff (uint8_t ff_idx, void *buffer, uint16_t bufsize)
 
static tu_fifo_ttud_audio_get_rx_support_ff (uint8_t ff_idx)
 
static uint16_t tud_audio_write (const void *data, uint16_t len)
 
static bool tud_audio_clear_ep_in_ff (void)
 
static tu_fifo_ttud_audio_get_ep_in_ff (void)
 
static uint16_t tud_audio_flush_tx_support_ff (void)
 
static uint16_t tud_audio_clear_tx_support_ff (uint8_t ff_idx)
 
static uint16_t tud_audio_write_support_ff (uint8_t ff_idx, const void *data, uint16_t len)
 
static tu_fifo_ttud_audio_get_tx_support_ff (uint8_t ff_idx)
 
static bool tud_audio_int_write (const audio_interrupt_data_t *data)
 
bool tud_audio_buffer_and_schedule_control_xfer (uint8_t rhport, tusb_control_request_t const *p_request, void *data, uint16_t len)
 
bool tud_audio_tx_done_pre_load_cb (uint8_t rhport, uint8_t func_id, uint8_t ep_in, uint8_t cur_alt_setting)
 
bool tud_audio_tx_done_post_load_cb (uint8_t rhport, uint16_t n_bytes_copied, uint8_t func_id, uint8_t ep_in, uint8_t cur_alt_setting)
 
bool tud_audio_rx_done_pre_read_cb (uint8_t rhport, uint16_t n_bytes_received, uint8_t func_id, uint8_t ep_out, uint8_t cur_alt_setting)
 
bool tud_audio_rx_done_post_read_cb (uint8_t rhport, uint16_t n_bytes_received, uint8_t func_id, uint8_t ep_out, uint8_t cur_alt_setting)
 
void tud_audio_fb_done_cb (uint8_t func_id)
 
bool tud_audio_n_fb_set (uint8_t func_id, uint32_t feedback)
 
uint32_t tud_audio_feedback_update (uint8_t func_id, uint32_t cycles)
 
void tud_audio_feedback_params_cb (uint8_t func_id, uint8_t alt_itf, audio_feedback_params_t *feedback_param)
 
TU_ATTR_FAST_FUNC void tud_audio_feedback_interval_isr (uint8_t func_id, uint32_t frame_number, uint8_t interval_shift)
 
bool tud_audio_feedback_format_correction_cb (uint8_t func_id)
 
void tud_audio_int_done_cb (uint8_t rhport)
 
bool tud_audio_set_itf_cb (uint8_t rhport, tusb_control_request_t const *p_request)
 
bool tud_audio_set_itf_close_EP_cb (uint8_t rhport, tusb_control_request_t const *p_request)
 
bool tud_audio_set_req_ep_cb (uint8_t rhport, tusb_control_request_t const *p_request, uint8_t *pBuff)
 
bool tud_audio_set_req_itf_cb (uint8_t rhport, tusb_control_request_t const *p_request, uint8_t *pBuff)
 
bool tud_audio_set_req_entity_cb (uint8_t rhport, tusb_control_request_t const *p_request, uint8_t *pBuff)
 
bool tud_audio_get_req_ep_cb (uint8_t rhport, tusb_control_request_t const *p_request)
 
bool tud_audio_get_req_itf_cb (uint8_t rhport, tusb_control_request_t const *p_request)
 
bool tud_audio_get_req_entity_cb (uint8_t rhport, tusb_control_request_t const *p_request)
 
static bool tud_audio_fb_set (uint32_t feedback)
 
void audiod_init (void)
 
bool audiod_deinit (void)
 
void audiod_reset (uint8_t rhport)
 
uint16_t audiod_open (uint8_t rhport, tusb_desc_interface_t const *itf_desc, uint16_t max_len)
 
bool audiod_control_xfer_cb (uint8_t rhport, uint8_t stage, tusb_control_request_t const *request)
 
bool audiod_xfer_cb (uint8_t rhport, uint8_t edpt_addr, xfer_result_t result, uint32_t xferred_bytes)
 
void audiod_sof_isr (uint8_t rhport, uint32_t frame_count)
 

Detailed Description

Enumeration Type Documentation

◆ anonymous enum

anonymous enum
Enumerator
AUDIO_FEEDBACK_METHOD_DISABLED 
AUDIO_FEEDBACK_METHOD_FREQUENCY_FIXED 
AUDIO_FEEDBACK_METHOD_FREQUENCY_FLOAT 
AUDIO_FEEDBACK_METHOD_FREQUENCY_POWER_OF_2 
AUDIO_FEEDBACK_METHOD_FIFO_COUNT 

Definition at line 520 of file audio_device.h.

Function Documentation

◆ audiod_control_xfer_cb()

bool audiod_control_xfer_cb ( uint8_t  rhport,
uint8_t  stage,
tusb_control_request_t const *  request 
)

Definition at line 2273 of file audio_device.c.

◆ audiod_deinit()

bool audiod_deinit ( void  )

Definition at line 1569 of file audio_device.c.

◆ audiod_init()

void audiod_init ( void  )

Definition at line 1256 of file audio_device.c.

◆ audiod_open()

uint16_t audiod_open ( uint8_t  rhport,
tusb_desc_interface_t const *  itf_desc,
uint16_t  max_len 
)

Definition at line 1606 of file audio_device.c.

◆ audiod_reset()

void audiod_reset ( uint8_t  rhport)

Definition at line 1573 of file audio_device.c.

◆ audiod_sof_isr()

void audiod_sof_isr ( uint8_t  rhport,
uint32_t  frame_count 
)

Definition at line 2487 of file audio_device.c.

◆ audiod_xfer_cb()

bool audiod_xfer_cb ( uint8_t  rhport,
uint8_t  edpt_addr,
xfer_result_t  result,
uint32_t  xferred_bytes 
)

Definition at line 2287 of file audio_device.c.

◆ tud_audio_available()

static uint16_t tud_audio_available ( void  )
inlinestatic

Definition at line 595 of file audio_device.h.

◆ tud_audio_available_support_ff()

static uint16_t tud_audio_available_support_ff ( uint8_t  ff_idx)
inlinestatic

Definition at line 624 of file audio_device.h.

◆ tud_audio_buffer_and_schedule_control_xfer()

bool tud_audio_buffer_and_schedule_control_xfer ( uint8_t  rhport,
tusb_control_request_t const *  p_request,
void *  data,
uint16_t  len 
)

Definition at line 2518 of file audio_device.c.

◆ tud_audio_clear_ep_in_ff()

static bool tud_audio_clear_ep_in_ff ( void  )
inlinestatic

Definition at line 650 of file audio_device.h.

◆ tud_audio_clear_ep_out_ff()

static bool tud_audio_clear_ep_out_ff ( void  )
inlinestatic

Definition at line 605 of file audio_device.h.

◆ tud_audio_clear_rx_support_ff()

static bool tud_audio_clear_rx_support_ff ( uint8_t  ff_idx)
inlinestatic

Definition at line 619 of file audio_device.h.

◆ tud_audio_clear_tx_support_ff()

static uint16_t tud_audio_clear_tx_support_ff ( uint8_t  ff_idx)
inlinestatic

Definition at line 669 of file audio_device.h.

◆ tud_audio_fb_done_cb()

void tud_audio_fb_done_cb ( uint8_t  func_id)

Definition at line 479 of file audio_device.c.

◆ tud_audio_fb_set()

static bool tud_audio_fb_set ( uint32_t  feedback)
inlinestatic

Definition at line 695 of file audio_device.h.

◆ tud_audio_feedback_format_correction_cb()

bool tud_audio_feedback_format_correction_cb ( uint8_t  func_id)

Definition at line 489 of file audio_device.c.

◆ tud_audio_feedback_interval_isr()

TU_ATTR_FAST_FUNC void tud_audio_feedback_interval_isr ( uint8_t  func_id,
uint32_t  frame_number,
uint8_t  interval_shift 
)

Definition at line 495 of file audio_device.c.

◆ tud_audio_feedback_params_cb()

void tud_audio_feedback_params_cb ( uint8_t  func_id,
uint8_t  alt_itf,
audio_feedback_params_t feedback_param 
)

Definition at line 483 of file audio_device.c.

◆ tud_audio_feedback_update()

uint32_t tud_audio_feedback_update ( uint8_t  func_id,
uint32_t  cycles 
)

Definition at line 2434 of file audio_device.c.

◆ tud_audio_flush_tx_support_ff()

static uint16_t tud_audio_flush_tx_support_ff ( void  )
inlinestatic

Definition at line 664 of file audio_device.h.

◆ tud_audio_get_ep_in_ff()

static tu_fifo_t * tud_audio_get_ep_in_ff ( void  )
inlinestatic

Definition at line 655 of file audio_device.h.

◆ tud_audio_get_ep_out_ff()

static tu_fifo_t * tud_audio_get_ep_out_ff ( void  )
inlinestatic

Definition at line 610 of file audio_device.h.

◆ tud_audio_get_req_entity_cb()

bool tud_audio_get_req_entity_cb ( uint8_t  rhport,
tusb_control_request_t const *  p_request 
)

Definition at line 565 of file audio_device.c.

◆ tud_audio_get_req_ep_cb()

bool tud_audio_get_req_ep_cb ( uint8_t  rhport,
tusb_control_request_t const *  p_request 
)

Definition at line 549 of file audio_device.c.

◆ tud_audio_get_req_itf_cb()

bool tud_audio_get_req_itf_cb ( uint8_t  rhport,
tusb_control_request_t const *  p_request 
)

Definition at line 557 of file audio_device.c.

◆ tud_audio_get_rx_support_ff()

static tu_fifo_t * tud_audio_get_rx_support_ff ( uint8_t  ff_idx)
inlinestatic

Definition at line 634 of file audio_device.h.

◆ tud_audio_get_tx_support_ff()

static tu_fifo_t * tud_audio_get_tx_support_ff ( uint8_t  ff_idx)
inlinestatic

Definition at line 679 of file audio_device.h.

◆ tud_audio_int_done_cb()

void tud_audio_int_done_cb ( uint8_t  rhport)

Definition at line 502 of file audio_device.c.

◆ tud_audio_int_n_write()

bool tud_audio_int_n_write ( uint8_t  func_id,
const audio_interrupt_data_t data 
)

Definition at line 957 of file audio_device.c.

◆ tud_audio_int_write()

static bool tud_audio_int_write ( const audio_interrupt_data_t data)
inlinestatic

Definition at line 687 of file audio_device.h.

◆ tud_audio_mounted()

static bool tud_audio_mounted ( void  )
inlinestatic

Definition at line 586 of file audio_device.h.

◆ tud_audio_n_available()

uint16_t tud_audio_n_available ( uint8_t  func_id)

Definition at line 636 of file audio_device.c.

◆ tud_audio_n_available_support_ff()

uint16_t tud_audio_n_available_support_ff ( uint8_t  func_id,
uint8_t  ff_idx 
)

Definition at line 670 of file audio_device.c.

◆ tud_audio_n_clear_ep_in_ff()

bool tud_audio_n_clear_ep_in_ff ( uint8_t  func_id)

Definition at line 903 of file audio_device.c.

◆ tud_audio_n_clear_ep_out_ff()

bool tud_audio_n_clear_ep_out_ff ( uint8_t  func_id)

Definition at line 648 of file audio_device.c.

◆ tud_audio_n_clear_rx_support_ff()

bool tud_audio_n_clear_rx_support_ff ( uint8_t  func_id,
uint8_t  ff_idx 
)

Definition at line 664 of file audio_device.c.

◆ tud_audio_n_clear_tx_support_ff()

bool tud_audio_n_clear_tx_support_ff ( uint8_t  func_id,
uint8_t  ff_idx 
)

Definition at line 934 of file audio_device.c.

◆ tud_audio_n_fb_set()

bool tud_audio_n_fb_set ( uint8_t  func_id,
uint32_t  feedback 
)

Definition at line 2471 of file audio_device.c.

◆ tud_audio_n_flush_tx_support_ff()

uint16_t tud_audio_n_flush_tx_support_ff ( uint8_t  func_id)

Definition at line 919 of file audio_device.c.

◆ tud_audio_n_get_ep_in_ff()

tu_fifo_t * tud_audio_n_get_ep_in_ff ( uint8_t  func_id)

Definition at line 909 of file audio_device.c.

◆ tud_audio_n_get_ep_out_ff()

tu_fifo_t * tud_audio_n_get_ep_out_ff ( uint8_t  func_id)

Definition at line 654 of file audio_device.c.

◆ tud_audio_n_get_rx_support_ff()

tu_fifo_t * tud_audio_n_get_rx_support_ff ( uint8_t  func_id,
uint8_t  ff_idx 
)

Definition at line 682 of file audio_device.c.

◆ tud_audio_n_get_tx_support_ff()

tu_fifo_t * tud_audio_n_get_tx_support_ff ( uint8_t  func_id,
uint8_t  ff_idx 
)

Definition at line 946 of file audio_device.c.

◆ tud_audio_n_mounted()

bool tud_audio_n_mounted ( uint8_t  func_id)

Definition at line 622 of file audio_device.c.

◆ tud_audio_n_read()

uint16_t tud_audio_n_read ( uint8_t  func_id,
void *  buffer,
uint16_t  bufsize 
)

Definition at line 642 of file audio_device.c.

◆ tud_audio_n_read_support_ff()

uint16_t tud_audio_n_read_support_ff ( uint8_t  func_id,
uint8_t  ff_idx,
void *  buffer,
uint16_t  bufsize 
)

Definition at line 676 of file audio_device.c.

◆ tud_audio_n_write()

uint16_t tud_audio_n_write ( uint8_t  func_id,
const void *  data,
uint16_t  len 
)

Write data to EP in buffer.

Write data to buffer. If it is full, new data can be inserted once a transmit was scheduled. See audiod_tx_done_cb(). If TX FIFOs are used, this function is not available in order to not let the user mess up the encoding process.

Parameters
[in]func_idIndex of audio function interface
[in]dataPointer to data array to be copied from
[in]len# of array elements to copy
Returns
Number of bytes actually written

Definition at line 897 of file audio_device.c.

◆ tud_audio_n_write_support_ff()

uint16_t tud_audio_n_write_support_ff ( uint8_t  func_id,
uint8_t  ff_idx,
const void *  data,
uint16_t  len 
)

Definition at line 940 of file audio_device.c.

◆ tud_audio_read()

static uint16_t tud_audio_read ( void *  buffer,
uint16_t  bufsize 
)
inlinestatic

Definition at line 600 of file audio_device.h.

◆ tud_audio_read_support_ff()

static uint16_t tud_audio_read_support_ff ( uint8_t  ff_idx,
void *  buffer,
uint16_t  bufsize 
)
inlinestatic

Definition at line 629 of file audio_device.h.

◆ tud_audio_rx_done_post_read_cb()

bool tud_audio_rx_done_post_read_cb ( uint8_t  rhport,
uint16_t  n_bytes_received,
uint8_t  func_id,
uint8_t  ep_out,
uint8_t  cur_alt_setting 
)

Definition at line 468 of file audio_device.c.

◆ tud_audio_rx_done_pre_read_cb()

bool tud_audio_rx_done_pre_read_cb ( uint8_t  rhport,
uint16_t  n_bytes_received,
uint8_t  func_id,
uint8_t  ep_out,
uint8_t  cur_alt_setting 
)

Definition at line 459 of file audio_device.c.

◆ tud_audio_set_itf_cb()

bool tud_audio_set_itf_cb ( uint8_t  rhport,
tusb_control_request_t const *  p_request 
)

Definition at line 508 of file audio_device.c.

◆ tud_audio_set_itf_close_EP_cb()

bool tud_audio_set_itf_close_EP_cb ( uint8_t  rhport,
tusb_control_request_t const *  p_request 
)

Definition at line 515 of file audio_device.c.

◆ tud_audio_set_req_entity_cb()

bool tud_audio_set_req_entity_cb ( uint8_t  rhport,
tusb_control_request_t const *  p_request,
uint8_t *  pBuff 
)

Definition at line 540 of file audio_device.c.

◆ tud_audio_set_req_ep_cb()

bool tud_audio_set_req_ep_cb ( uint8_t  rhport,
tusb_control_request_t const *  p_request,
uint8_t *  pBuff 
)

Definition at line 522 of file audio_device.c.

◆ tud_audio_set_req_itf_cb()

bool tud_audio_set_req_itf_cb ( uint8_t  rhport,
tusb_control_request_t const *  p_request,
uint8_t *  pBuff 
)

Definition at line 531 of file audio_device.c.

◆ tud_audio_tx_done_post_load_cb()

bool tud_audio_tx_done_post_load_cb ( uint8_t  rhport,
uint16_t  n_bytes_copied,
uint8_t  func_id,
uint8_t  ep_in,
uint8_t  cur_alt_setting 
)

Definition at line 448 of file audio_device.c.

◆ tud_audio_tx_done_pre_load_cb()

bool tud_audio_tx_done_pre_load_cb ( uint8_t  rhport,
uint8_t  func_id,
uint8_t  ep_in,
uint8_t  cur_alt_setting 
)

Definition at line 440 of file audio_device.c.

◆ tud_audio_write()

static uint16_t tud_audio_write ( const void *  data,
uint16_t  len 
)
inlinestatic

Definition at line 645 of file audio_device.h.

◆ tud_audio_write_support_ff()

static uint16_t tud_audio_write_support_ff ( uint8_t  ff_idx,
const void *  data,
uint16_t  len 
)
inlinestatic

Definition at line 674 of file audio_device.h.