summaryrefslogtreecommitdiff
path: root/src/class/audio
AgeCommit message (Collapse)Author
2020-10-09Revert dcd_alloc_mem_for_conf() but keep changes from @kasjer for ISO EPReinhard Panhuber
Add tud_audio_set_itf_close_EP_cb()
2020-10-07Remove CFG_TUD_AUDIO_TX_DMA_RINGBUFFER_SIZE which is not needed any moreReinhard Panhuber
2020-10-07fix audio_test buildhathach
2020-10-03Revert #define CFG_TUSB_DEBUG 2 to #define CFG_TUSB_DEBUG 0Reinhard Panhuber
Change 1 << 31 to 0x100000000 in audio.h
2020-09-28Cleanup for PR.Reinhard Panhuber
2020-09-28audio_device: Update explicit feedback supportJerzy Kasenberg
Feedback can be specified by the user code and will be sent at feedback endpoint specified interval.
2020-09-28audio_device: Allow one FIFO for N channelsJerzy Kasenberg
This allow to build with single FIFO for devices with multiple channels. Having just one FIFO greatly reduces time needed to feed endpoint. This change also allows to have one FIFO with 24 bit samples that is not rounded up to 32 bit elements. CFG_TUD_AUDIO_RX_ITEMSIZE and CFG_TUD_AUDIO_TX_ITEMSIZE can be manually defined. This allows to use FIFO more efficiently when 24 bits samples are already using 3 bytes, in this case there is no need to put them into FIFO one by one. For 8, 16, 32 bits samples size efficient FIFO access is always used when single FIFO is selected. This also changes FIFO element size to 1, FIFO usage was confusing in some place it treated content as byte base in other it looked like ITEM size is to be used. Also bufsize that in most (maybe all) cases was really meaning item count. bufsize now mean buffer size in bytes so there is no confusion.
2020-09-28audio_device: Fix tud_audio_n_read_flush TU_VERIFY usageJerzy Kasenberg
void function used TU_VERIFY in a way that returned bool value. It would not compile.
2020-09-28audio_device: Fix audio_rx_done_type_I_pcm_ff_cb bufor size checkJerzy Kasenberg
Function was not checking buffer size correctly due missing parenthesis.
2020-09-28audio_device: Fix audio_rx_done_type_I_pcm_ff_cb prototypeJerzy Kasenberg
Function prototype did not have return type specified by mistake.
2020-09-28audio_device: Store rhport in interface dataJerzy Kasenberg
Some API uses interface number as argument, some wants to have rhport. To accommodate need of rhport for functions that don't have it rhport can be extracted from interface data.
2020-09-28audio: Update ISO endpoint attributesJerzy Kasenberg
Explicit feedback attribute was missing. No synchronization now also has definition.
2020-09-28audio_device: Fix inline function specifiersJerzy Kasenberg
Having just inline keyword for function specified in header may not be enough to generate code for function. Adding static solves this problem. static inline is used in all other inline functions in TinyUSB.
2020-09-06Start of sampling works.Reinhard Panhuber
2020-09-03Remove tud_audio_n_write_ep_in_buffer() as long as ISO EPs are not RBs.Reinhard Panhuber
2020-09-01Allow epin_buf to be written directly into in case no TX FIFOs are used.Reinhard Panhuber
This is helpful if you have already encoded audio data and want an efficient way to send it. However, this approach is NOT THREADSAFE so far and works realiably ONLY IF tud_audio_n_write_ep_in_buffer() is NOT called form an interrupt!
2020-08-29Fix comment.Reinhard Panhuber
2020-08-29Fix CFG_TUD_AUDIO_RX_FIFO_SIZE defines.Reinhard Panhuber
2020-08-29Change min to tu_min16.Reinhard Panhuber
2020-08-25audio_device: Change CFG_TUD_AUDIO_TX_BUFSIZE to CFG_TUD_AUDIO_TX_FIFO_SIZEJerzy Kasenberg
CFG_TUD_AUDIO_TX_BUFSIZE seems to be used only in 3 preprocessor condition while in other places CFG_TUD_AUDIO_TX_FIFO_SIZE is used.
2020-08-25audio_device: Fix NULL pointer access in audiod_xfer_cbJerzy Kasenberg
b_bytes_copied was pointer with NULL value instead of plain variable. NULL pointer was passed to audio_tx_done_cb() and dereference as well. Now variable is not a pointer.
2020-08-25audio_device: Fix FIFO element size discrepanciesJerzy Kasenberg
Buffer for TX and RX FIFO was not taking into account size of element leading to out of bound access. audio_tx_done_type_I_pcm_ff_cb() reported copied bytes was not returning correct value number if channels was omitted in computation. Transfer size calculation uses simpler arithmetic.
2020-08-24audio_device: Fix descriptor limit calculationJerzy Kasenberg
In several place p_desc_end calculation was not taking into account that starting pointer (_audiod_itf[idxDriver].p_desc) was pointing past interface association descriptor. It would result in accessing random memory.
2020-08-20Fix formatting, get rid of all tabs.Reinhard Panhuber
2020-08-19Commit before sharing.Reinhard Panhuber
Setup a test example - UNTESTED! Missing: Start transmitting audio data in set_interface.
2020-08-16Add EP close. Fix bug in set_interface within audio.Reinhard Panhuber
2020-07-25Fix structure definition audio_control_range_X_n_tReinhard Panhuber
2020-07-25Get and set requests workReinhard Panhuber
2020-07-20Make definition of CFG_TUD_AUDIO_CTRL_BUF_SIZE mandatoryReinhard Panhuber
2020-07-20Implement control EP0 buffer and get rid of CFG_TUD_AUDIO_USE_TX_FIFOReinhard Panhuber
2020-07-19Implement all missing A.17 control selectorsReinhard Panhuber
2020-07-18Add A.17.4 - Terminal Control SelectorsReinhard Panhuber
2020-07-17Intermediate commit.Reinhard Panhuber
2020-06-13Fix mic audio descriptor, fix too strict check on IAD desc. in usbd.cReinhard Panhuber
2020-05-22Add basic UAC2 structure - untestedReinhard Panhuber
2020-01-15Normalize line endingsNathan Conrad
2019-07-01fix compilinghathach
2019-07-01improving midi support, adding midi exmaplehathach
rename TUSB_DESC_CLASS_SPECIFIC to TUSB_DESC_CS_INTERFACE
2019-05-14update license year to 2019hathach
2019-03-20migrate license from BSD 3 clause to MIThathach
2019-01-04Add USB Midi support.Scott Shawcroft
It also introduces a txbuffer which copies data into it but passes the buffer straight to the USB rather than another copy.