X-Git-Url: http://git.linex4red.de/pub/USBasp.git/blobdiff_plain/de0df8b16259458c78c742b5dbedd4ac90856285..77c0786f90ce57651d9039b9dedde0e9a3c9da9d:/LUFA/Drivers/USB/Class/Common/AudioClassCommon.h?ds=sidebyside diff --git a/LUFA/Drivers/USB/Class/Common/AudioClassCommon.h b/LUFA/Drivers/USB/Class/Common/AudioClassCommon.h index 4ce585eb7..b545dc499 100644 --- a/LUFA/Drivers/USB/Class/Common/AudioClassCommon.h +++ b/LUFA/Drivers/USB/Class/Common/AudioClassCommon.h @@ -1,13 +1,13 @@ /* LUFA Library - Copyright (C) Dean Camera, 2013. + Copyright (C) Dean Camera, 2019. dean [at] fourwalledcubicle [dot] com www.lufa-lib.org */ /* - Copyright 2013 Dean Camera (dean [at] fourwalledcubicle [dot] com) + Copyright 2019 Dean Camera (dean [at] fourwalledcubicle [dot] com) Permission to use, copy, modify, distribute, and sell this software and its documentation for any purpose is hereby granted @@ -40,7 +40,7 @@ /** \ingroup Group_USBClassAudio * \defgroup Group_USBClassAudioCommon Common Class Definitions * - * \section Sec_ModDescription Module Description + * \section Sec_USBClassAudioCommon_ModDescription Module Description * Constants, Types and Enum definitions that are common to both Device and Host modes for the USB * Audio 1.0 Class. * @@ -65,7 +65,7 @@ /* Macros: */ /** \name Audio Channel Masks */ - //@{ + /**@{*/ /** Supported channel mask for an Audio class terminal descriptor. See the Audio class specification for more details. */ #define AUDIO_CHANNEL_LEFT_FRONT (1 << 0) @@ -101,10 +101,10 @@ /** Supported channel mask for an Audio class terminal descriptor. See the Audio class specification for more details. */ #define AUDIO_CHANNEL_TOP (1 << 11) - //@} + /**@}*/ /** \name Audio Feature Masks */ - //@{ + /**@{*/ /** Supported feature mask for an Audio class feature unit descriptor. See the Audio class specification for more details. */ #define AUDIO_FEATURE_MUTE (1 << 0) @@ -134,10 +134,10 @@ /** Supported feature mask for an Audio class feature unit descriptor. See the Audio class specification for more details. */ #define AUDIO_FEATURE_BASS_LOUDNESS (1 << 9) - //@} + /**@}*/ /** \name Audio Terminal Types */ - //@{ + /**@{*/ /** Terminal type constant for an Audio class terminal descriptor. See the Audio class specification for more details. */ #define AUDIO_TERMINAL_UNDEFINED 0x0100 @@ -191,7 +191,7 @@ /** Terminal type constant for an Audio class terminal descriptor. See the Audio class specification for more details. */ #define AUDIO_TERMINAL_OUT_LOWFREQ 0x0307 - //@} + /**@}*/ /** Convenience macro to fill a 24-bit \ref USB_Audio_SampleFreq_t structure with the given sample rate as a 24-bit number. * @@ -245,6 +245,13 @@ */ }; + /** Enum for the Audio class specific descriptor types. */ + enum AUDIO_DescriptorTypes_t + { + AUDIO_DTYPE_CSInterface = 0x24, /**< Audio class specific Interface functional descriptor. */ + AUDIO_DTYPE_CSEndpoint = 0x25, /**< Audio class specific Endpoint functional descriptor. */ + }; + /** Audio class specific interface description subtypes, for the Audio Control interface. */ enum Audio_CSInterface_AC_SubTypes_t { @@ -435,7 +442,10 @@ * a value from the \ref Audio_CSInterface_AS_SubTypes_t enum. */ - uint16_t ACSpecification; /**< Binary coded decimal value, indicating the supported Audio Class specification version. */ + uint16_t ACSpecification; /**< Binary Coded Decimal value, indicating the supported Audio Class specification version. + * + * \see \ref VERSION_BCD() utility macro. + */ uint16_t TotalLength; /**< Total length of the Audio class-specific descriptors, including this descriptor. */ uint8_t InCollection; /**< Total number of Audio Streaming interfaces linked to this Audio Control interface (must be 1). */ @@ -464,7 +474,10 @@ * a value from the \ref Audio_CSInterface_AS_SubTypes_t enum. */ - uint16_t bcdADC; /**< Binary coded decimal value, indicating the supported Audio Class specification version. */ + uint16_t bcdADC; /**< Binary coded decimal value, indicating the supported Audio Class specification version. + * + * \see \ref VERSION_BCD() utility macro. + */ uint16_t wTotalLength; /**< Total length of the Audio class-specific descriptors, including this descriptor. */ uint8_t bInCollection; /**< Total number of Audio Streaming interfaces linked to this Audio Control interface (must be 1). */ @@ -612,7 +625,7 @@ /** \brief 24-Bit Audio Frequency Structure. * - * Type define for a 24bit audio sample frequency structure. As GCC does not contain a built in 24-bit datatype, + * Type define for a 24-bit audio sample frequency structure. As GCC does not contain a built in 24-bit datatype, * this this structure is used to build up the value instead. Fill this structure with the \ref AUDIO_SAMPLE_FREQ() macro. * * \note Regardless of CPU architecture, these values should be stored as little endian.