minor reformat code

This commit is contained in:
hathach
2025-07-08 11:05:16 +07:00
parent a56f55c10b
commit 2908995c4c
4 changed files with 41 additions and 61 deletions

View File

@@ -522,7 +522,9 @@ bool tud_audio_n_clear_ep_out_ff(uint8_t func_id) {
} }
tu_fifo_t *tud_audio_n_get_ep_out_ff(uint8_t func_id) { tu_fifo_t *tud_audio_n_get_ep_out_ff(uint8_t func_id) {
if (func_id < CFG_TUD_AUDIO && _audiod_fct[func_id].p_desc != NULL) return &_audiod_fct[func_id].ep_out_ff; if (func_id < CFG_TUD_AUDIO && _audiod_fct[func_id].p_desc != NULL) {
return &_audiod_fct[func_id].ep_out_ff;
}
return NULL; return NULL;
} }
@@ -569,14 +571,15 @@ uint16_t tud_audio_n_write(uint8_t func_id, const void *data, uint16_t len) {
return tu_fifo_write_n(&_audiod_fct[func_id].ep_in_ff, data, len); return tu_fifo_write_n(&_audiod_fct[func_id].ep_in_ff, data, len);
} }
bool tud_audio_n_clear_ep_in_ff(uint8_t func_id)// Delete all content in the EP IN FIFO bool tud_audio_n_clear_ep_in_ff(uint8_t func_id) {
{
TU_VERIFY(func_id < CFG_TUD_AUDIO && _audiod_fct[func_id].p_desc != NULL); TU_VERIFY(func_id < CFG_TUD_AUDIO && _audiod_fct[func_id].p_desc != NULL);
return tu_fifo_clear(&_audiod_fct[func_id].ep_in_ff); return tu_fifo_clear(&_audiod_fct[func_id].ep_in_ff);
} }
tu_fifo_t *tud_audio_n_get_ep_in_ff(uint8_t func_id) { tu_fifo_t *tud_audio_n_get_ep_in_ff(uint8_t func_id) {
if (func_id < CFG_TUD_AUDIO && _audiod_fct[func_id].p_desc != NULL) return &_audiod_fct[func_id].ep_in_ff; if (func_id < CFG_TUD_AUDIO && _audiod_fct[func_id].p_desc != NULL) {
return &_audiod_fct[func_id].ep_in_ff;
}
return NULL; return NULL;
} }
@@ -588,7 +591,7 @@ static bool audiod_tx_xfer_isr(uint8_t rhport, audiod_function_t * audio, uint16
TU_VERIFY(audiod_get_AS_interface_index(audio->ep_in_as_intf_num, audio, &idxItf, &dummy2)); TU_VERIFY(audiod_get_AS_interface_index(audio->ep_in_as_intf_num, audio, &idxItf, &dummy2));
// Only send something if current alternate interface is not 0 as in this case nothing is to be sent due to UAC2 specifications // Only send something if current alternate interface is not 0 as in this case nothing is to be sent due to UAC2 specifications
if (audio->alt_setting[idxItf] == 0) return false; if (audio->alt_setting[idxItf] == 0) { return false; }
// Send everything in ISO EP FIFO // Send everything in ISO EP FIFO
uint16_t n_bytes_tx; uint16_t n_bytes_tx;
@@ -1459,8 +1462,7 @@ bool audiod_xfer_cb(uint8_t rhport, uint8_t ep_addr, xfer_result_t result, uint3
return false; return false;
} }
bool audiod_xfer_isr(uint8_t rhport, uint8_t ep_addr, xfer_result_t result, uint32_t xferred_bytes) bool audiod_xfer_isr(uint8_t rhport, uint8_t ep_addr, xfer_result_t result, uint32_t xferred_bytes) {
{
(void) result; (void) result;
(void) xferred_bytes; (void) xferred_bytes;

View File

@@ -26,8 +26,8 @@
* This file is part of the TinyUSB stack. * This file is part of the TinyUSB stack.
*/ */
#ifndef _TUSB_AUDIO_DEVICE_H_ #ifndef TUSB_AUDIO_DEVICE_H_
#define _TUSB_AUDIO_DEVICE_H_ #define TUSB_AUDIO_DEVICE_H_
#include "audio.h" #include "audio.h"
@@ -219,19 +219,19 @@ extern "C" {
// Application API (Multiple Interfaces) // Application API (Multiple Interfaces)
// CFG_TUD_AUDIO > 1 // CFG_TUD_AUDIO > 1
//--------------------------------------------------------------------+ //--------------------------------------------------------------------+
bool tud_audio_n_mounted (uint8_t func_id); bool tud_audio_n_mounted(uint8_t func_id);
#if CFG_TUD_AUDIO_ENABLE_EP_OUT #if CFG_TUD_AUDIO_ENABLE_EP_OUT
uint16_t tud_audio_n_available (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); 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); // Delete all content in the EP OUT FIFO bool tud_audio_n_clear_ep_out_ff (uint8_t func_id);
tu_fifo_t* tud_audio_n_get_ep_out_ff (uint8_t func_id); tu_fifo_t* tud_audio_n_get_ep_out_ff (uint8_t func_id);
#endif #endif
#if CFG_TUD_AUDIO_ENABLE_EP_IN #if CFG_TUD_AUDIO_ENABLE_EP_IN
uint16_t tud_audio_n_write (uint8_t func_id, const void * data, uint16_t len); uint16_t tud_audio_n_write (uint8_t func_id, const void * data, uint16_t len);
bool tud_audio_n_clear_ep_in_ff (uint8_t func_id); // Delete all content in the EP IN FIFO bool tud_audio_n_clear_ep_in_ff (uint8_t func_id);
tu_fifo_t* tud_audio_n_get_ep_in_ff (uint8_t func_id); tu_fifo_t* tud_audio_n_get_ep_in_ff (uint8_t func_id);
#endif #endif
#if CFG_TUD_AUDIO_ENABLE_INTERRUPT_EP #if CFG_TUD_AUDIO_ENABLE_INTERRUPT_EP
@@ -241,24 +241,19 @@ bool tud_audio_int_n_write (uint8_t func_id, const audio_
//--------------------------------------------------------------------+ //--------------------------------------------------------------------+
// Application API (Interface0) // Application API (Interface0)
//--------------------------------------------------------------------+ //--------------------------------------------------------------------+
static inline bool tud_audio_mounted (void); static inline bool tud_audio_mounted (void);
// RX API
#if CFG_TUD_AUDIO_ENABLE_EP_OUT #if CFG_TUD_AUDIO_ENABLE_EP_OUT
static inline uint16_t tud_audio_available (void); static inline uint16_t tud_audio_available (void);
static inline bool tud_audio_clear_ep_out_ff (void); // Delete all content in the EP OUT FIFO static inline bool tud_audio_clear_ep_out_ff (void);
static inline uint16_t tud_audio_read (void* buffer, uint16_t bufsize); static inline uint16_t tud_audio_read (void* buffer, uint16_t bufsize);
static inline tu_fifo_t* tud_audio_get_ep_out_ff (void); static inline tu_fifo_t* tud_audio_get_ep_out_ff (void);
#endif #endif
// TX API
#if CFG_TUD_AUDIO_ENABLE_EP_IN #if CFG_TUD_AUDIO_ENABLE_EP_IN
static inline uint16_t tud_audio_write (const void * data, uint16_t len); static inline uint16_t tud_audio_write (const void * data, uint16_t len);
static inline bool tud_audio_clear_ep_in_ff (void); static inline bool tud_audio_clear_ep_in_ff (void);
static inline tu_fifo_t* tud_audio_get_ep_in_ff (void); static inline tu_fifo_t* tud_audio_get_ep_in_ff (void);
#endif #endif
// INT CTR API // INT CTR API
@@ -280,13 +275,13 @@ bool tud_audio_buffer_and_schedule_control_xfer(uint8_t rhport, tusb_control_req
//--------------------------------------------------------------------+ //--------------------------------------------------------------------+
#if CFG_TUD_AUDIO_ENABLE_EP_IN #if CFG_TUD_AUDIO_ENABLE_EP_IN
// Callback in ISR context, this function is called once a transmit of an audio packet was successfully completed. // Invoked in ISR context once an audio packet was sent successfully.
// Normally this function is not needed, since the data transfer should be driven by audio clock (i.e. I2S clock), call tud_audio_write() in I2S receive callback. // Normally this function is not needed, since the data transfer should be driven by audio clock (i.e. I2S clock), call tud_audio_write() in I2S receive callback.
bool tud_audio_tx_done_isr(uint8_t rhport, uint16_t n_bytes_sent, uint8_t func_id, uint8_t ep_in, uint8_t cur_alt_setting); bool tud_audio_tx_done_isr(uint8_t rhport, uint16_t n_bytes_sent, uint8_t func_id, uint8_t ep_in, uint8_t cur_alt_setting);
#endif #endif
#if CFG_TUD_AUDIO_ENABLE_EP_OUT #if CFG_TUD_AUDIO_ENABLE_EP_OUT
// Callback in ISR context, this function is called once a receive of an audio packet was successfully completed. // Invoked in ISR context once an audio packet was received successfully.
// Normally this function is not needed, since the data transfer should be driven by audio clock (i.e. I2S clock), call tud_audio_read() in I2S transmit callback. // Normally this function is not needed, since the data transfer should be driven by audio clock (i.e. I2S clock), call tud_audio_read() in I2S transmit callback.
bool tud_audio_rx_done_isr(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_isr(uint8_t rhport, uint16_t n_bytes_received, uint8_t func_id, uint8_t ep_out, uint8_t cur_alt_setting);
#endif #endif
@@ -410,72 +405,56 @@ bool tud_audio_get_req_entity_cb(uint8_t rhport, tusb_control_request_t const *
// Inline Functions // Inline Functions
//--------------------------------------------------------------------+ //--------------------------------------------------------------------+
static inline bool tud_audio_mounted(void) TU_ATTR_ALWAYS_INLINE static inline bool tud_audio_mounted(void) {
{
return tud_audio_n_mounted(0); return tud_audio_n_mounted(0);
} }
// RX API
#if CFG_TUD_AUDIO_ENABLE_EP_OUT #if CFG_TUD_AUDIO_ENABLE_EP_OUT
static inline uint16_t tud_audio_available(void) TU_ATTR_ALWAYS_INLINE static inline uint16_t tud_audio_available(void) {
{
return tud_audio_n_available(0); return tud_audio_n_available(0);
} }
static inline uint16_t tud_audio_read(void* buffer, uint16_t bufsize) TU_ATTR_ALWAYS_INLINE static inline uint16_t tud_audio_read(void* buffer, uint16_t bufsize) {
{
return tud_audio_n_read(0, buffer, bufsize); return tud_audio_n_read(0, buffer, bufsize);
} }
static inline bool tud_audio_clear_ep_out_ff(void) TU_ATTR_ALWAYS_INLINE static inline bool tud_audio_clear_ep_out_ff(void) {
{
return tud_audio_n_clear_ep_out_ff(0); return tud_audio_n_clear_ep_out_ff(0);
} }
static inline tu_fifo_t* tud_audio_get_ep_out_ff(void) TU_ATTR_ALWAYS_INLINE static inline tu_fifo_t* tud_audio_get_ep_out_ff(void) {
{
return tud_audio_n_get_ep_out_ff(0); return tud_audio_n_get_ep_out_ff(0);
} }
#endif #endif
// TX API
#if CFG_TUD_AUDIO_ENABLE_EP_IN #if CFG_TUD_AUDIO_ENABLE_EP_IN
static inline uint16_t tud_audio_write(const void * data, uint16_t len) TU_ATTR_ALWAYS_INLINE static inline uint16_t tud_audio_write(const void * data, uint16_t len) {
{
return tud_audio_n_write(0, data, len); return tud_audio_n_write(0, data, len);
} }
static inline bool tud_audio_clear_ep_in_ff(void) TU_ATTR_ALWAYS_INLINE static inline bool tud_audio_clear_ep_in_ff(void) {
{
return tud_audio_n_clear_ep_in_ff(0); return tud_audio_n_clear_ep_in_ff(0);
} }
static inline tu_fifo_t* tud_audio_get_ep_in_ff(void) TU_ATTR_ALWAYS_INLINE static inline tu_fifo_t* tud_audio_get_ep_in_ff(void) {
{
return tud_audio_n_get_ep_in_ff(0); return tud_audio_n_get_ep_in_ff(0);
} }
#endif #endif
#if CFG_TUD_AUDIO_ENABLE_INTERRUPT_EP #if CFG_TUD_AUDIO_ENABLE_INTERRUPT_EP
static inline bool tud_audio_int_write(const audio_interrupt_data_t * data) TU_ATTR_ALWAYS_INLINE static inline bool tud_audio_int_write(const audio_interrupt_data_t * data) {
{
return tud_audio_int_n_write(0, data); return tud_audio_int_n_write(0, data);
} }
#endif #endif
#if CFG_TUD_AUDIO_ENABLE_EP_OUT && CFG_TUD_AUDIO_ENABLE_FEEDBACK_EP #if CFG_TUD_AUDIO_ENABLE_EP_OUT && CFG_TUD_AUDIO_ENABLE_FEEDBACK_EP
TU_ATTR_ALWAYS_INLINE static inline bool tud_audio_fb_set(uint32_t feedback) {
static inline bool tud_audio_fb_set(uint32_t feedback)
{
return tud_audio_n_fb_set(0, feedback); return tud_audio_n_fb_set(0, feedback);
} }
#endif #endif
//--------------------------------------------------------------------+ //--------------------------------------------------------------------+

View File

@@ -1260,14 +1260,13 @@ TU_ATTR_FAST_FUNC void dcd_event_handler(dcd_event_t const* event, bool in_isr)
send = true; send = true;
break; break;
case DCD_EVENT_XFER_COMPLETE: case DCD_EVENT_XFER_COMPLETE: {
{
send = true;
// Invoke the class callback associated with the endpoint address // Invoke the class callback associated with the endpoint address
uint8_t const ep_addr = event->xfer_complete.ep_addr; uint8_t const ep_addr = event->xfer_complete.ep_addr;
uint8_t const epnum = tu_edpt_number(ep_addr); uint8_t const epnum = tu_edpt_number(ep_addr);
uint8_t const ep_dir = tu_edpt_dir(ep_addr); uint8_t const ep_dir = tu_edpt_dir(ep_addr);
send = true;
if(epnum > 0) { if(epnum > 0) {
usbd_class_driver_t const* driver = get_driver(_usbd_dev.ep2drv[epnum][ep_dir]); usbd_class_driver_t const* driver = get_driver(_usbd_dev.ep2drv[epnum][ep_dir]);

View File

@@ -57,7 +57,7 @@ typedef struct {
uint16_t (* open ) (uint8_t rhport, tusb_desc_interface_t const * desc_intf, uint16_t max_len); uint16_t (* open ) (uint8_t rhport, tusb_desc_interface_t const * desc_intf, uint16_t max_len);
bool (* control_xfer_cb ) (uint8_t rhport, uint8_t stage, tusb_control_request_t const * request); bool (* control_xfer_cb ) (uint8_t rhport, uint8_t stage, tusb_control_request_t const * request);
bool (* xfer_cb ) (uint8_t rhport, uint8_t ep_addr, xfer_result_t result, uint32_t xferred_bytes); bool (* xfer_cb ) (uint8_t rhport, uint8_t ep_addr, xfer_result_t result, uint32_t xferred_bytes);
bool (* xfer_isr ) (uint8_t rhport, uint8_t ep_addr, xfer_result_t result, uint32_t xferred_bytes); // optional bool (* xfer_isr ) (uint8_t rhport, uint8_t ep_addr, xfer_result_t result, uint32_t xferred_bytes); // optional, return false to defer to xfer_cb()
void (* sof ) (uint8_t rhport, uint32_t frame_count); // optional void (* sof ) (uint8_t rhport, uint32_t frame_count); // optional
} usbd_class_driver_t; } usbd_class_driver_t;