Sonochan II 0.1

- Main Page
- Related Pages
- Modules
- Data Structures
- Files

- File List
- Globals

All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Variables
uac2_usb_descriptors.h File Reference
`#include "conf_usb.h"`
`#include "usb_descriptors.h"`
`#include "usb_standard_request.h"`
`#include "usb_task.h"`

Go to the source code of this file.

## Data Structures
struct | S_usb_user_configuration_descriptor
| Usb Class-Specific AS Isochronous Feedback Endpoint Descriptors pp 4.10.2.2 (none) More...

## Macros
#define | NB_INTERFACE 4
#define | CONF_NB 1
#define | CONF_INDEX 0
#define | CONF_ATTRIBUTES USB_CONFIG_SELFPOWERED
#define | MAX_POWER 200
#define | FIRST_INTERFACE1 1
#define | INTERFACE_COUNT1 3
#define | FUNCTION_CLASS AUDIO_CLASS
#define | FUNCTION_SUB_CLASS 0
#define | FUNCTION_PROTOCOL IP_VERSION_02_00
#define | FUNCTION_INDEX 0
#define | INTERFACE_NB0 0
#define | ALTERNATE_NB0 0
#define | NB_ENDPOINT0 0
#define | INTERFACE_CLASS0 NO_CLASS
#define | INTERFACE_SUB_CLASS0 NO_SUBCLASS
#define | INTERFACE_PROTOCOL0 NO_PROTOCOL
#define | INTERFACE_INDEX0 0
#define | DSC_INTERFACE_DG8SAQ INTERFACE_NB0
#define | INTERFACE_NB1 1
#define | ALTERNATE_NB1 0
#define | NB_ENDPOINT1 0
#define | INTERFACE_CLASS1 AUDIO_CLASS
#define | INTERFACE_SUB_CLASS1 AUDIO_INTERFACE_SUBCLASS_AUDIOCONTROL
#define | INTERFACE_PROTOCOL1 IP_VERSION_02_00
#define | INTERFACE_INDEX1 WL_INDEX
#define | DSC_INTERFACE_AUDIO INTERFACE_NB1
#define | ENDPOINT_NB_1 ( UAC2_EP_AUDIO_IN | MSK_EP_DIR )
#define | EP_ATTRIBUTES_1 0b00100101
#define | EP_IN_LENGTH_1_FS 294
#define | EP_IN_LENGTH_1_HS 294
#define | EP_SIZE_1_FS EP_IN_LENGTH_1_FS
#define | EP_SIZE_1_HS EP_IN_LENGTH_1_HS
#define | EP_INTERVAL_1_FS 0x01
#define | EP_INTERVAL_1_HS 0x02
#define | ENDPOINT_NB_2 ( UAC2_EP_AUDIO_OUT )
#define | EP_ATTRIBUTES_2 0b00000101
#define | EP_OUT_LENGTH_2_HS 294
#define | EP_OUT_LENGTH_2_FS 294
#define | EP_SIZE_2_FS EP_OUT_LENGTH_2_FS
#define | EP_SIZE_2_HS EP_OUT_LENGTH_2_HS
#define | EP_INTERVAL_2_FS 0x01
#define | EP_INTERVAL_2_HS 0x02
#define | ENDPOINT_NB_3 ( UAC2_EP_AUDIO_OUT_FB | MSK_EP_DIR )
#define | EP_ATTRIBUTES_3 0b00010001
#define | EP_IN_LENGTH_3_FS 64
#define | EP_IN_LENGTH_3_HS 64
#define | EP_SIZE_3_FS EP_IN_LENGTH_3_FS
#define | EP_SIZE_3_HS EP_IN_LENGTH_3_HS
#define | EP_INTERVAL_3_FS 0x01
#define | EP_INTERVAL_3_HS 0x04
#define | EP_REFRESH_3_FS 0x05
#define | EP_REFRESH_3_HS 0x08
#define | AUDIO_CLASS_REVISION_2 0x0200
#define | MIC_CATEGORY AUDIO_FUNCTION_SUBCLASS_MICROPHONE
#define | HEADSET_CATEGORY 0x04
#define | MIC_LATENCY_CONTROL 0b00000000
#define | CSD_ID_1 0x04
#define | CSD_ID_1_TYPE 0b00000001
#define | CSD_ID_1_CONTROL 0b00000111
#define | CSD_ID_2 0x05
#define | CSD_ID_2_TYPE 0b00000001
#define | CSD_ID_2_CONTROL 0b00000111
#define | CSX_ID 0x06
#define | CSX_INPUT_PINS 0x02
#define | CSX_SOURCE_1 CSD_ID_1
#define | CSX_SOURCE_2 CSD_ID_2
#define | CSX_CONTROL 0b00000011
#define | INPUT_TERMINAL_ID 0x01
#define | INPUT_TERMINAL_TYPE 0x0201
#define | INPUT_TERMINAL_ASSOCIATION 0x00
#define | INPUT_TERMINAL_NB_CHANNELS 0x02
#define | INPUT_TERMINAL_CHANNEL_CONF 0x00000003
#define | INPUT_TERMINAL_CONTROLS 0x0000
#define | INPUT_TERMINAL_CH_NAME_ID 0x00
#define | INPUT_TERMINAL_STRING_DESC 0x00
#define | OUTPUT_TERMINAL_ID 0x03
#define | OUTPUT_TERMINAL_TYPE 0x0101
#define | OUTPUT_TERMINAL_ASSOCIATION 0x00
#define | OUTPUT_TERMINAL_SOURCE_ID MIC_FEATURE_UNIT_ID
#define | OUTPUT_TERMINAL_CONTROLS 0x0000
#define | MIC_FEATURE_UNIT_ID 0x02
#define | MIC_FEATURE_UNIT_SOURCE_ID INPUT_TERMINAL_ID
#define | MIC_BMA_CONTROLS 0x00000003
#define | MIC_BMA_CONTROLS_CH_1 0x00000003
#define | MIC_BMA_CONTROLS_CH_2 0x00000003
#define | SPK_INPUT_TERMINAL_ID 0x11
#define | SPK_INPUT_TERMINAL_TYPE 0x0101
#define | SPK_INPUT_TERMINAL_ASSOCIATION 0x00
#define | SPK_INPUT_TERMINAL_NB_CHANNELS 0x02
#define | SPK_INPUT_TERMINAL_CHANNEL_CONF 0x0003
#define | SPK_INPUT_TERMINAL_CH_NAME_ID 0x00
#define | SPK_FEATURE_UNIT_ID 0x12
#define | SPK_FEATURE_UNIT_SOURCE_ID SPK_INPUT_TERMINAL_ID
#define | SPK_BMA_CONTROLS 0x00000003
#define | SPK_BMA_CONTROLS_CH_1 0x00000003
#define | SPK_BMA_CONTROLS_CH_2 0x00000003
#define | SPK_OUTPUT_TERMINAL_ID 0x13
#define | SPK_OUTPUT_TERMINAL_TYPE 0x0302
#define | SPK_OUTPUT_TERMINAL_ASSOCIATION 0x00
#define | SPK_OUTPUT_TERMINAL_SOURCE_ID SPK_FEATURE_UNIT_ID
#define | SPK_OUTPUT_TERMINAL_CONTROLS 0x0000
#define | STD_AS_INTERFACE_IN 0x02
#define | STD_AS_INTERFACE_OUT 0x03
#define | DSC_INTERFACE_AS STD_AS_INTERFACE_IN
#define | DSC_INTERFACE_AS_OUT STD_AS_INTERFACE_OUT
#define | ALT0_AS_INTERFACE_INDEX 0x00
#define | ALT0_AS_NB_ENDPOINT 0x00
#define | ALT0_AS_INTERFACE_CLASS 0x01
#define | ALT0_AS_INTERFACE_SUB_CLASS 0x02
#define | ALT0_AS_INTERFACE_PROTOCOL IP_VERSION_02_00
#define | ALT1_AS_INTERFACE_INDEX 0x01
#define | ALT1_AS_NB_ENDPOINT 0x01
#define | ALT1_AS_INTERFACE_CLASS 0x01
#define | ALT1_AS_INTERFACE_SUB_CLASS 0x02
#define | ALT1_AS_INTERFACE_PROTOCOL IP_VERSION_02_00
#define | ALT2_AS_INTERFACE_INDEX 0x02
#define | ALT2_AS_NB_ENDPOINT 0x01
#define | ALT2_AS_INTERFACE_CLASS 0x01
#define | ALT2_AS_INTERFACE_SUB_CLASS 0x02
#define | ALT2_AS_INTERFACE_PROTOCOL IP_VERSION_02_00
#define | AS_TERMINAL_LINK OUTPUT_TERMINAL_ID
#define | AS_DELAY 0x01
#define | AS_FORMAT_TYPE 0x01
#define | AS_FORMATS 0x00000001
#define | AS_CONTROLS 0b00000111
#define | AS_NB_CHANNELS 0x02
#define | AS_CHAN_CONFIG 0x00000003
#define | FORMAT_TYPE_1 0x01
#define | FORMAT_SUBSLOT_SIZE_1 0x03
#define | FORMAT_BIT_RESOLUTION_1 0x18
#define | AUDIO_EP_ATRIBUTES 0b00000000
#define | AUDIO_EP_CONTROLS 0b00000000
#define | AUDIO_EP_DELAY_UNIT 0x00
#define | AUDIO_EP_LOCK_DELAY 0x0000
#define | ALT1_AS_NB_ENDPOINT_OUT 0x02
#define | AS_TERMINAL_LINK_OUT SPK_INPUT_TERMINAL_ID

## Variables
const S_usb_device_descriptor | uac2_dg8saq_usb_dev_desc
const S_usb_device_descriptor | uac2_audio_usb_dev_desc
const S_usb_user_configuration_descriptor | uac2_usb_conf_desc_fs
const S_usb_user_configuration_descriptor | uac2_usb_conf_desc_hs
const S_usb_device_qualifier_descriptor | uac2_usb_qualifier_desc

## Macro Definition Documentation

#define ALT0_AS_INTERFACE_CLASS 0x01

#define ALT0_AS_INTERFACE_INDEX 0x00

#define ALT0_AS_INTERFACE_PROTOCOL IP_VERSION_02_00

#define ALT0_AS_INTERFACE_SUB_CLASS 0x02

#define ALT0_AS_NB_ENDPOINT 0x00

#define ALT1_AS_INTERFACE_CLASS 0x01

#define ALT1_AS_INTERFACE_INDEX 0x01

#define ALT1_AS_INTERFACE_PROTOCOL IP_VERSION_02_00

#define ALT1_AS_INTERFACE_SUB_CLASS 0x02

#define ALT1_AS_NB_ENDPOINT 0x01

#define ALT1_AS_NB_ENDPOINT_OUT 0x02

#define ALT2_AS_INTERFACE_CLASS 0x01

#define ALT2_AS_INTERFACE_INDEX 0x02

#define ALT2_AS_INTERFACE_PROTOCOL IP_VERSION_02_00

#define ALT2_AS_INTERFACE_SUB_CLASS 0x02

#define ALT2_AS_NB_ENDPOINT 0x01

#define ALTERNATE_NB0 0

#define ALTERNATE_NB1 0

#define AS_CHAN_CONFIG 0x00000003

#define AS_CONTROLS 0b00000111

#define AS_DELAY 0x01

#define AS_FORMAT_TYPE 0x01

#define AS_FORMATS 0x00000001

#define AS_NB_CHANNELS 0x02

#define AS_TERMINAL_LINK OUTPUT_TERMINAL_ID

#define AS_TERMINAL_LINK_OUT SPK_INPUT_TERMINAL_ID

#define AUDIO_CLASS_REVISION_2 0x0200

#define AUDIO_EP_ATRIBUTES 0b00000000

#define AUDIO_EP_CONTROLS 0b00000000

#define AUDIO_EP_DELAY_UNIT 0x00

#define AUDIO_EP_LOCK_DELAY 0x0000

#define CONF_ATTRIBUTES USB_CONFIG_SELFPOWERED

#define CONF_INDEX 0

#define CONF_NB 1

#define CSD_ID_1 0x04

#define CSD_ID_1_CONTROL 0b00000111

#define CSD_ID_1_TYPE 0b00000001

#define CSD_ID_2 0x05

#define CSD_ID_2_CONTROL 0b00000111

#define CSD_ID_2_TYPE 0b00000001

#define CSX_CONTROL 0b00000011

#define CSX_ID 0x06

#define CSX_INPUT_PINS 0x02

#define CSX_SOURCE_1 CSD_ID_1

#define CSX_SOURCE_2 CSD_ID_2

#define DSC_INTERFACE_AS STD_AS_INTERFACE_IN

#define DSC_INTERFACE_AS_OUT STD_AS_INTERFACE_OUT

#define DSC_INTERFACE_AUDIO INTERFACE_NB1

#define DSC_INTERFACE_DG8SAQ INTERFACE_NB0

#define ENDPOINT_NB_1 ( UAC2_EP_AUDIO_IN | MSK_EP_DIR )

#define ENDPOINT_NB_2 ( UAC2_EP_AUDIO_OUT )

#define ENDPOINT_NB_3 ( UAC2_EP_AUDIO_OUT_FB | MSK_EP_DIR )

#define EP_ATTRIBUTES_1 0b00100101

#define EP_ATTRIBUTES_2 0b00000101

#define EP_ATTRIBUTES_3 0b00010001

#define EP_IN_LENGTH_1_FS 294

#define EP_IN_LENGTH_1_HS 294

#define EP_IN_LENGTH_3_FS 64

#define EP_IN_LENGTH_3_HS 64

#define EP_INTERVAL_1_FS 0x01

#define EP_INTERVAL_1_HS 0x02

#define EP_INTERVAL_2_FS 0x01

#define EP_INTERVAL_2_HS 0x02

#define EP_INTERVAL_3_FS 0x01

#define EP_INTERVAL_3_HS 0x04

#define EP_OUT_LENGTH_2_FS 294

#define EP_OUT_LENGTH_2_HS 294

#define EP_REFRESH_3_FS 0x05

#define EP_REFRESH_3_HS 0x08

#define EP_SIZE_1_FS EP_IN_LENGTH_1_FS

#define EP_SIZE_1_HS EP_IN_LENGTH_1_HS

#define EP_SIZE_2_FS EP_OUT_LENGTH_2_FS

#define EP_SIZE_2_HS EP_OUT_LENGTH_2_HS

#define EP_SIZE_3_FS EP_IN_LENGTH_3_FS

#define EP_SIZE_3_HS EP_IN_LENGTH_3_HS

#define FIRST_INTERFACE1 1

#define FORMAT_BIT_RESOLUTION_1 0x18

#define FORMAT_SUBSLOT_SIZE_1 0x03

#define FORMAT_TYPE_1 0x01

#define FUNCTION_CLASS AUDIO_CLASS

#define FUNCTION_INDEX 0

#define FUNCTION_PROTOCOL IP_VERSION_02_00

#define FUNCTION_SUB_CLASS 0

#define HEADSET_CATEGORY 0x04

#define INPUT_TERMINAL_ASSOCIATION 0x00

#define INPUT_TERMINAL_CH_NAME_ID 0x00

#define INPUT_TERMINAL_CHANNEL_CONF 0x00000003

#define INPUT_TERMINAL_CONTROLS 0x0000

#define INPUT_TERMINAL_ID 0x01

#define INPUT_TERMINAL_NB_CHANNELS 0x02

#define INPUT_TERMINAL_STRING_DESC 0x00

#define INPUT_TERMINAL_TYPE 0x0201

#define INTERFACE_CLASS0 NO_CLASS

#define INTERFACE_CLASS1 AUDIO_CLASS

#define INTERFACE_COUNT1 3

#define INTERFACE_INDEX0 0

#define INTERFACE_INDEX1 WL_INDEX

#define INTERFACE_NB0 0

#define INTERFACE_NB1 1

#define INTERFACE_PROTOCOL0 NO_PROTOCOL

#define INTERFACE_PROTOCOL1 IP_VERSION_02_00

#define INTERFACE_SUB_CLASS0 NO_SUBCLASS

#define INTERFACE_SUB_CLASS1 AUDIO_INTERFACE_SUBCLASS_AUDIOCONTROL

#define MAX_POWER 200

#define MIC_BMA_CONTROLS 0x00000003

#define MIC_BMA_CONTROLS_CH_1 0x00000003

#define MIC_BMA_CONTROLS_CH_2 0x00000003

#define MIC_CATEGORY AUDIO_FUNCTION_SUBCLASS_MICROPHONE

#define MIC_FEATURE_UNIT_ID 0x02

#define MIC_FEATURE_UNIT_SOURCE_ID INPUT_TERMINAL_ID

#define MIC_LATENCY_CONTROL 0b00000000

#define NB_ENDPOINT0 0

#define NB_ENDPOINT1 0

#define NB_INTERFACE 4

#define OUTPUT_TERMINAL_ASSOCIATION 0x00

#define OUTPUT_TERMINAL_CONTROLS 0x0000

#define OUTPUT_TERMINAL_ID 0x03

#define OUTPUT_TERMINAL_SOURCE_ID MIC_FEATURE_UNIT_ID

#define OUTPUT_TERMINAL_TYPE 0x0101

#define SPK_BMA_CONTROLS 0x00000003

#define SPK_BMA_CONTROLS_CH_1 0x00000003

#define SPK_BMA_CONTROLS_CH_2 0x00000003

#define SPK_FEATURE_UNIT_ID 0x12

#define SPK_FEATURE_UNIT_SOURCE_ID SPK_INPUT_TERMINAL_ID

#define SPK_INPUT_TERMINAL_ASSOCIATION 0x00

#define SPK_INPUT_TERMINAL_CH_NAME_ID 0x00

#define SPK_INPUT_TERMINAL_CHANNEL_CONF 0x0003

#define SPK_INPUT_TERMINAL_ID 0x11

#define SPK_INPUT_TERMINAL_NB_CHANNELS 0x02

#define SPK_INPUT_TERMINAL_TYPE 0x0101

#define SPK_OUTPUT_TERMINAL_ASSOCIATION 0x00

#define SPK_OUTPUT_TERMINAL_CONTROLS 0x0000

#define SPK_OUTPUT_TERMINAL_ID 0x13

#define SPK_OUTPUT_TERMINAL_SOURCE_ID SPK_FEATURE_UNIT_ID

#define SPK_OUTPUT_TERMINAL_TYPE 0x0302

#define STD_AS_INTERFACE_IN 0x02

#define STD_AS_INTERFACE_OUT 0x03

## Variable Documentation

const S_usb_device_descriptor uac2_audio_usb_dev_desc

const S_usb_device_descriptor uac2_dg8saq_usb_dev_desc

const S_usb_user_configuration_descriptor uac2_usb_conf_desc_fs

const S_usb_user_configuration_descriptor uac2_usb_conf_desc_hs

const S_usb_device_qualifier_descriptor uac2_usb_qualifier_desc