summaryrefslogtreecommitdiff
path: root/src/class/audio/audio.h
AgeCommit message (Collapse)Author
12 daysFix audio terminal type typosHiFiPHile
13 daysUAC2: Add more terminal typesJerzy Kasenberg
This adds more standard terminal types that can be used in descriptors to improve end user experience when operating system can present more acurate image for audio device terminal. Signed-off-by: Jerzy Kasenberg <[email protected]>
2026-07-02license: use SPDX identifiers for src/ headers (#3749)Ha Thach
* license: use SPDX identifiers for src/ headers Replace the full ~20-line MIT license boilerplate on every src/ file with a two-line SPDX tag (SPDX-FileCopyrightText + SPDX-License-Identifier), following the REUSE convention used by CircuitPython and the Linux kernel. Removes ~3500 lines of duplicated boilerplate.
2026-06-18class/audio: remove unused audio20_control_request_thathach
After the UAC2 examples switched to tusb_control_request_t with TU_U16_HIGH/LOW() extraction, audio20_control_request_t is no longer referenced anywhere in the tree. It is a byte-overlay of the setup packet whose bChannelNumber/bControlSelector/bInterface/bEntityID sub-byte fields silently misread on big-endian once wValue/wIndex are converted to host order (tu_le16toh in dcd.h), so leaving it in the public header is a latent BE trap; the BE bitfield guard previously added to its bmRequestType_bit only masked that by guarding byte 0. Drop the struct entirely. Callers should use tusb_control_request_t and TU_U16_LOW/HIGH(wValue|wIndex), matching audio_device.c and the examples. Co-Authored-By: Claude Opus 4.8 (1M context) <[email protected]>
2026-04-25fix: add BE bitfield guards for audio and fix UAC2 example endian-safe field ↵copilot-swe-agent[bot]
extraction - Add TU_BITFIELD_ORDER guards for audio10_desc_as_iso_data_ep_t.bmAttributes in audio.h - Add TU_BITFIELD_ORDER guards for audio20_control_request_t.bmRequestType_bit in audio.h - Fix cdc_uac2/src/uac2_app.c: replace alias cast with TU_U16_LOW/HIGH field extraction - Fix uac2_headset/src/main.c: replace alias cast with TU_U16_LOW/HIGH field extraction - Fix uac2_speaker_fb/src/main.c: replace alias cast with TU_U16_LOW/HIGH field extraction Addresses review comment: https://github.com/hathach/tinyusb/pull/3597#issuecomment-4320042007 Agent-Logs-Url: https://github.com/hathach/tinyusb/sessions/8b695271-74b3-4a26-b3d8-c48ecdf2e481 Co-authored-by: HiFiPhile <[email protected]>
2025-11-03fixing alert by scanning toolhathach
2025-11-03fix alert using input in gh action. fix some conversion inthathach
2025-10-30Merge branch 'master' into uac1HiFiPhile
Signed-off-by: HiFiPhile <[email protected]>
2025-10-28fix Identifiers that start with '__' or '_[A-Z]' are reserved.hathach
fix compiling with nuc family
2025-10-01better EP type detectionHiFiPhile
Signed-off-by: HiFiPhile <[email protected]>
2025-09-30Add basic UAC1 supportHiFiPhile
Signed-off-by: HiFiPhile <[email protected]>
2025-09-30More descriptors workingHiFiPhile
Signed-off-by: HiFiPhile <[email protected]>
2025-09-29Update UAC2 namingHiFiPhile
Signed-off-by: HiFiPhile <[email protected]>
2025-02-24add tuh_midi_descriptor_cb()hathach
2024-07-05add u for unsignedhathach
2024-07-05Revert "audio.h: fix error ISO C restricts enumerator values to range of 'int'"Ha Thach
2024-06-28audio.h: fix error ISO C restricts enumerator values to range of 'int'Davide Gerhard
fix error ~/dsp/libs/tinyusb/src/class/audio/audio.h:643:53: error: ISO C restricts enumerator values to range of 'int' before C23 [-Werror=pedantic] 643 | AUDIO_CHANNEL_CONFIG_RAW_DATA = 0x80000000, // TODO | ^~~~~~~~~~ compilation terminated due to -Wfatal-errors. Closes: https://github.com/hathach/tinyusb/issues/2690
2024-04-01UAC2: refactor interrupt endpoint support.HiFiPhile
2023-03-17fix trailing space and new linehathach
temporarily disable codespell
2023-01-03Fix typo in audio.h. Specifiy _ctrl_xfer struct in CFG_TUSB_MEM_SECTIONpete-pjb
Add NULL check to loop in list_remove_qhd_by_addr() function in ehci.c
2021-09-29moved ISO attributes from audio to commonkkitayam
2021-07-04Move audio_control_request_t to audio.hMasterPhi
2021-07-04more uac fixes,MasterPhi
2021-04-06code formathathach
2021-04-03Generalize audio driver for 3 audio functions plus a lot more.Reinhard Panhuber
- Audio format and parameters are parsed from descriptors thus user no longer needs to give them explicitely - Tested for 4 channel software type I PCM encoding with 16 bit with 1 channel per FIFO and 2 channels per FIFO (this is I2S specific)
2021-02-12FormatingReinhard 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-28audio: Update ISO endpoint attributesJerzy Kasenberg
Explicit feedback attribute was missing. No synchronization now also has definition.
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-07-25Fix structure definition audio_control_range_X_n_tReinhard Panhuber
2020-07-25Get and set requests workReinhard 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.