ARM GAS /tmp/ccdtFdaF.s page 1 1 .cpu cortex-m4 2 .arch armv7e-m 3 .fpu fpv4-sp-d16 4 .eabi_attribute 27, 1 5 .eabi_attribute 28, 1 6 .eabi_attribute 20, 1 7 .eabi_attribute 21, 1 8 .eabi_attribute 23, 3 9 .eabi_attribute 24, 1 10 .eabi_attribute 25, 1 11 .eabi_attribute 26, 1 12 .eabi_attribute 30, 1 13 .eabi_attribute 34, 1 14 .eabi_attribute 18, 4 15 .file "usbd_audio.c" 16 .text 17 .Ltext0: 18 .cfi_sections .debug_frame 19 .file 1 "Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c" 20 .section .text.USBD_AUDIO_GetCfgDesc,"ax",%progbits 21 .align 1 22 .syntax unified 23 .thumb 24 .thumb_func 26 USBD_AUDIO_GetCfgDesc: 27 .LVL0: 28 .LFB336: 1:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** /** 2:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** ****************************************************************************** 3:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * @file usbd_audio.c 4:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * @author MCD Application Team 5:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * @brief This file provides the Audio core functions. 6:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * 7:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * @verbatim 8:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * 9:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * =================================================================== 10:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * AUDIO Class Description 11:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * =================================================================== 12:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * This driver manages the Audio Class 1.0 following the "USB Device Class Definition fo 13:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * Audio Devices V1.0 Mar 18, 98". 14:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * This driver implements the following aspects of the specification: 15:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * - Device descriptor management 16:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * - Configuration descriptor management 17:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * - Standard AC Interface Descriptor management 18:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * - 1 Audio Streaming Interface (with single channel, PCM, Stereo mode) 19:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * - 1 Audio Streaming Endpoint 20:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * - 1 Audio Terminal Input (1 channel) 21:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * - Audio Class-Specific AC Interfaces 22:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * - Audio Class-Specific AS Interfaces 23:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * - AudioControl Requests: only SET_CUR and GET_CUR requests are supported (for Mute) 24:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * - Audio Feature Unit (limited to Mute control) 25:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * - Audio Synchronization type: Asynchronous 26:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * - Single fixed audio sampling rate (configurable in usbd_conf.h file) 27:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * The current audio class version supports the following audio features: 28:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * - Pulse Coded Modulation (PCM) format 29:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * - sampling rate: 48KHz. 30:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * - Bit resolution: 16 ARM GAS /tmp/ccdtFdaF.s page 2 31:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * - Number of channels: 2 32:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * - No volume control 33:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * - Mute/Unmute capability 34:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * - Asynchronous Endpoints 35:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * 36:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * @note In HS mode and when the DMA is used, all variables and data structures 37:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * dealing with the DMA during the transaction process should be 32-bit aligned. 38:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * 39:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * 40:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * @endverbatim 41:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * 42:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** ****************************************************************************** 43:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * @attention 44:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * 45:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** *

© Copyright (c) 2015 STMicroelectronics. 46:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * All rights reserved.

47:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * 48:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * This software component is licensed by ST under Ultimate Liberty license 49:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * SLA0044, the "License"; You may not use this file except in compliance with 50:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * the License. You may obtain a copy of the License at: 51:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * www.st.com/SLA0044 52:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * 53:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** ****************************************************************************** 54:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** */ 55:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 56:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** /* BSPDependencies 57:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** - "stm32xxxxx_{eval}{discovery}.c" 58:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** - "stm32xxxxx_{eval}{discovery}_io.c" 59:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** - "stm32xxxxx_{eval}{discovery}_audio.c" 60:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** EndBSPDependencies */ 61:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 62:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** /* Includes ------------------------------------------------------------------*/ 63:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** #include "usbd_audio.h" 64:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** #include "usbd_ctlreq.h" 65:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 66:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 67:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** /** @addtogroup STM32_USB_DEVICE_LIBRARY 68:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * @{ 69:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** */ 70:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 71:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 72:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** /** @defgroup USBD_AUDIO 73:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * @brief usbd core module 74:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * @{ 75:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** */ 76:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 77:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** /** @defgroup USBD_AUDIO_Private_TypesDefinitions 78:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * @{ 79:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** */ 80:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** /** 81:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * @} 82:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** */ 83:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 84:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 85:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** /** @defgroup USBD_AUDIO_Private_Defines 86:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * @{ 87:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** */ ARM GAS /tmp/ccdtFdaF.s page 3 88:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** /** 89:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * @} 90:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** */ 91:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 92:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 93:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** /** @defgroup USBD_AUDIO_Private_Macros 94:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * @{ 95:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** */ 96:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** #define AUDIO_SAMPLE_FREQ(frq) (uint8_t)(frq), (uint8_t)((frq >> 8)), (uint8_t)((frq >> 16) 97:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 98:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** #define AUDIO_PACKET_SZE(frq) (uint8_t)(((frq * 2U * 2U)/1000U) & 0xFFU), \ 99:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** (uint8_t)((((frq * 2U * 2U)/1000U) >> 8) & 0xFFU) 100:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 101:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** /** 102:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * @} 103:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** */ 104:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 105:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 106:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** /** @defgroup USBD_AUDIO_Private_FunctionPrototypes 107:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * @{ 108:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** */ 109:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** static uint8_t USBD_AUDIO_Init(USBD_HandleTypeDef *pdev, uint8_t cfgidx); 110:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** static uint8_t USBD_AUDIO_DeInit(USBD_HandleTypeDef *pdev, uint8_t cfgidx); 111:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 112:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** static uint8_t USBD_AUDIO_Setup(USBD_HandleTypeDef *pdev, 113:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** USBD_SetupReqTypedef *req); 114:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 115:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** static uint8_t *USBD_AUDIO_GetCfgDesc(uint16_t *length); 116:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** static uint8_t *USBD_AUDIO_GetDeviceQualifierDesc(uint16_t *length); 117:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** static uint8_t USBD_AUDIO_DataIn(USBD_HandleTypeDef *pdev, uint8_t epnum); 118:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** static uint8_t USBD_AUDIO_DataOut(USBD_HandleTypeDef *pdev, uint8_t epnum); 119:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** static uint8_t USBD_AUDIO_EP0_RxReady(USBD_HandleTypeDef *pdev); 120:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** static uint8_t USBD_AUDIO_EP0_TxReady(USBD_HandleTypeDef *pdev); 121:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** static uint8_t USBD_AUDIO_SOF(USBD_HandleTypeDef *pdev); 122:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 123:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** static uint8_t USBD_AUDIO_IsoINIncomplete(USBD_HandleTypeDef *pdev, uint8_t epnum); 124:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** static uint8_t USBD_AUDIO_IsoOutIncomplete(USBD_HandleTypeDef *pdev, uint8_t epnum); 125:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** static void AUDIO_REQ_GetCurrent(USBD_HandleTypeDef *pdev, USBD_SetupReqTypedef *req); 126:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** static void AUDIO_REQ_SetCurrent(USBD_HandleTypeDef *pdev, USBD_SetupReqTypedef *req); 127:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 128:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** /** 129:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * @} 130:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** */ 131:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 132:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** /** @defgroup USBD_AUDIO_Private_Variables 133:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * @{ 134:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** */ 135:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 136:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** USBD_ClassTypeDef USBD_AUDIO = 137:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 138:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** USBD_AUDIO_Init, 139:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** USBD_AUDIO_DeInit, 140:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** USBD_AUDIO_Setup, 141:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** USBD_AUDIO_EP0_TxReady, 142:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** USBD_AUDIO_EP0_RxReady, 143:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** USBD_AUDIO_DataIn, 144:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** USBD_AUDIO_DataOut, ARM GAS /tmp/ccdtFdaF.s page 4 145:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** USBD_AUDIO_SOF, 146:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** USBD_AUDIO_IsoINIncomplete, 147:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** USBD_AUDIO_IsoOutIncomplete, 148:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** USBD_AUDIO_GetCfgDesc, 149:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** USBD_AUDIO_GetCfgDesc, 150:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** USBD_AUDIO_GetCfgDesc, 151:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** USBD_AUDIO_GetDeviceQualifierDesc, 152:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** }; 153:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 154:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** /* USB AUDIO device Configuration Descriptor */ 155:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** __ALIGN_BEGIN static uint8_t USBD_AUDIO_CfgDesc[USB_AUDIO_CONFIG_DESC_SIZ] __ALIGN_END = 156:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 157:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** /* Configuration 1 */ 158:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 0x09, /* bLength */ 159:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** USB_DESC_TYPE_CONFIGURATION, /* bDescriptorType */ 160:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** LOBYTE(USB_AUDIO_CONFIG_DESC_SIZ), /* wTotalLength 109 bytes*/ 161:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** HIBYTE(USB_AUDIO_CONFIG_DESC_SIZ), 162:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 0x02, /* bNumInterfaces */ 163:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 0x01, /* bConfigurationValue */ 164:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 0x00, /* iConfiguration */ 165:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** #if (USBD_SELF_POWERED == 1U) 166:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 0xC0, /* bmAttributes: Bus Powered according to user configuratio 167:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** #else 168:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 0x80, /* bmAttributes: Bus Powered according to user configuratio 169:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** #endif 170:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** USBD_MAX_POWER, /* bMaxPower = 100 mA */ 171:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** /* 09 byte*/ 172:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 173:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** /* USB Speaker Standard interface descriptor */ 174:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** AUDIO_INTERFACE_DESC_SIZE, /* bLength */ 175:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** USB_DESC_TYPE_INTERFACE, /* bDescriptorType */ 176:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 0x00, /* bInterfaceNumber */ 177:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 0x00, /* bAlternateSetting */ 178:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 0x00, /* bNumEndpoints */ 179:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** USB_DEVICE_CLASS_AUDIO, /* bInterfaceClass */ 180:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** AUDIO_SUBCLASS_AUDIOCONTROL, /* bInterfaceSubClass */ 181:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** AUDIO_PROTOCOL_UNDEFINED, /* bInterfaceProtocol */ 182:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 0x00, /* iInterface */ 183:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** /* 09 byte*/ 184:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 185:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** /* USB Speaker Class-specific AC Interface Descriptor */ 186:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** AUDIO_INTERFACE_DESC_SIZE, /* bLength */ 187:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** AUDIO_INTERFACE_DESCRIPTOR_TYPE, /* bDescriptorType */ 188:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** AUDIO_CONTROL_HEADER, /* bDescriptorSubtype */ 189:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 0x00, /* 1.00 */ /* bcdADC */ 190:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 0x01, 191:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 0x27, /* wTotalLength = 39*/ 192:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 0x00, 193:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 0x01, /* bInCollection */ 194:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 0x01, /* baInterfaceNr */ 195:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** /* 09 byte*/ 196:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 197:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** /* USB Speaker Input Terminal Descriptor */ 198:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** AUDIO_INPUT_TERMINAL_DESC_SIZE, /* bLength */ 199:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** AUDIO_INTERFACE_DESCRIPTOR_TYPE, /* bDescriptorType */ 200:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** AUDIO_CONTROL_INPUT_TERMINAL, /* bDescriptorSubtype */ 201:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 0x01, /* bTerminalID */ ARM GAS /tmp/ccdtFdaF.s page 5 202:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 0x01, /* wTerminalType AUDIO_TERMINAL_USB_STREAMING 0x0101 */ 203:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 0x01, 204:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 0x00, /* bAssocTerminal */ 205:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 0x01, /* bNrChannels */ 206:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 0x00, /* wChannelConfig 0x0000 Mono */ 207:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 0x00, 208:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 0x00, /* iChannelNames */ 209:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 0x00, /* iTerminal */ 210:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** /* 12 byte*/ 211:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 212:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** /* USB Speaker Audio Feature Unit Descriptor */ 213:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 0x09, /* bLength */ 214:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** AUDIO_INTERFACE_DESCRIPTOR_TYPE, /* bDescriptorType */ 215:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** AUDIO_CONTROL_FEATURE_UNIT, /* bDescriptorSubtype */ 216:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** AUDIO_OUT_STREAMING_CTRL, /* bUnitID */ 217:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 0x01, /* bSourceID */ 218:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 0x01, /* bControlSize */ 219:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** AUDIO_CONTROL_MUTE, /* bmaControls(0) */ 220:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 0, /* bmaControls(1) */ 221:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 0x00, /* iTerminal */ 222:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** /* 09 byte*/ 223:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 224:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** /*USB Speaker Output Terminal Descriptor */ 225:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 0x09, /* bLength */ 226:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** AUDIO_INTERFACE_DESCRIPTOR_TYPE, /* bDescriptorType */ 227:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** AUDIO_CONTROL_OUTPUT_TERMINAL, /* bDescriptorSubtype */ 228:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 0x03, /* bTerminalID */ 229:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 0x01, /* wTerminalType 0x0301*/ 230:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 0x03, 231:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 0x00, /* bAssocTerminal */ 232:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 0x02, /* bSourceID */ 233:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 0x00, /* iTerminal */ 234:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** /* 09 byte*/ 235:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 236:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** /* USB Speaker Standard AS Interface Descriptor - Audio Streaming Zero Bandwidth */ 237:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** /* Interface 1, Alternate Setting 0 */ 238:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** AUDIO_INTERFACE_DESC_SIZE, /* bLength */ 239:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** USB_DESC_TYPE_INTERFACE, /* bDescriptorType */ 240:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 0x01, /* bInterfaceNumber */ 241:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 0x00, /* bAlternateSetting */ 242:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 0x00, /* bNumEndpoints */ 243:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** USB_DEVICE_CLASS_AUDIO, /* bInterfaceClass */ 244:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** AUDIO_SUBCLASS_AUDIOSTREAMING, /* bInterfaceSubClass */ 245:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** AUDIO_PROTOCOL_UNDEFINED, /* bInterfaceProtocol */ 246:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 0x00, /* iInterface */ 247:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** /* 09 byte*/ 248:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 249:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** /* USB Speaker Standard AS Interface Descriptor - Audio Streaming Operational */ 250:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** /* Interface 1, Alternate Setting 1 */ 251:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** AUDIO_INTERFACE_DESC_SIZE, /* bLength */ 252:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** USB_DESC_TYPE_INTERFACE, /* bDescriptorType */ 253:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 0x01, /* bInterfaceNumber */ 254:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 0x01, /* bAlternateSetting */ 255:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 0x01, /* bNumEndpoints */ 256:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** USB_DEVICE_CLASS_AUDIO, /* bInterfaceClass */ 257:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** AUDIO_SUBCLASS_AUDIOSTREAMING, /* bInterfaceSubClass */ 258:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** AUDIO_PROTOCOL_UNDEFINED, /* bInterfaceProtocol */ ARM GAS /tmp/ccdtFdaF.s page 6 259:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 0x00, /* iInterface */ 260:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** /* 09 byte*/ 261:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 262:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** /* USB Speaker Audio Streaming Interface Descriptor */ 263:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** AUDIO_STREAMING_INTERFACE_DESC_SIZE, /* bLength */ 264:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** AUDIO_INTERFACE_DESCRIPTOR_TYPE, /* bDescriptorType */ 265:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** AUDIO_STREAMING_GENERAL, /* bDescriptorSubtype */ 266:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 0x01, /* bTerminalLink */ 267:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 0x01, /* bDelay */ 268:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 0x01, /* wFormatTag AUDIO_FORMAT_PCM 0x0001 */ 269:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 0x00, 270:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** /* 07 byte*/ 271:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 272:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** /* USB Speaker Audio Type III Format Interface Descriptor */ 273:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 0x0B, /* bLength */ 274:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** AUDIO_INTERFACE_DESCRIPTOR_TYPE, /* bDescriptorType */ 275:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** AUDIO_STREAMING_FORMAT_TYPE, /* bDescriptorSubtype */ 276:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** AUDIO_FORMAT_TYPE_I, /* bFormatType */ 277:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 0x02, /* bNrChannels */ 278:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 0x02, /* bSubFrameSize : 2 Bytes per frame (16bits) */ 279:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 16, /* bBitResolution (16-bits per sample) */ 280:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 0x01, /* bSamFreqType only one frequency supported */ 281:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** AUDIO_SAMPLE_FREQ(USBD_AUDIO_FREQ), /* Audio sampling frequency coded on 3 bytes */ 282:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** /* 11 byte*/ 283:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 284:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** /* Endpoint 1 - Standard Descriptor */ 285:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** AUDIO_STANDARD_ENDPOINT_DESC_SIZE, /* bLength */ 286:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** USB_DESC_TYPE_ENDPOINT, /* bDescriptorType */ 287:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** AUDIO_OUT_EP, /* bEndpointAddress 1 out endpoint */ 288:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** USBD_EP_TYPE_ISOC, /* bmAttributes */ 289:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** AUDIO_PACKET_SZE(USBD_AUDIO_FREQ), /* wMaxPacketSize in Bytes (Freq(Samples)*2(Stereo)*2(HalfW 290:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** AUDIO_FS_BINTERVAL, /* bInterval */ 291:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 0x00, /* bRefresh */ 292:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 0x00, /* bSynchAddress */ 293:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** /* 09 byte*/ 294:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 295:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** /* Endpoint - Audio Streaming Descriptor*/ 296:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** AUDIO_STREAMING_ENDPOINT_DESC_SIZE, /* bLength */ 297:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** AUDIO_ENDPOINT_DESCRIPTOR_TYPE, /* bDescriptorType */ 298:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** AUDIO_ENDPOINT_GENERAL, /* bDescriptor */ 299:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 0x00, /* bmAttributes */ 300:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 0x00, /* bLockDelayUnits */ 301:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 0x00, /* wLockDelay */ 302:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 0x00, 303:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** /* 07 byte*/ 304:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } ; 305:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 306:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** /* USB Standard Device Descriptor */ 307:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** __ALIGN_BEGIN static uint8_t USBD_AUDIO_DeviceQualifierDesc[USB_LEN_DEV_QUALIFIER_DESC] __ALIGN_END 308:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 309:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** USB_LEN_DEV_QUALIFIER_DESC, 310:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** USB_DESC_TYPE_DEVICE_QUALIFIER, 311:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 0x00, 312:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 0x02, 313:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 0x00, 314:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 0x00, 315:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 0x00, ARM GAS /tmp/ccdtFdaF.s page 7 316:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 0x40, 317:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 0x01, 318:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 0x00, 319:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** }; 320:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 321:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** /** 322:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * @} 323:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** */ 324:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 325:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** /** @defgroup USBD_AUDIO_Private_Functions 326:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * @{ 327:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** */ 328:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 329:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** /** 330:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * @brief USBD_AUDIO_Init 331:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * Initialize the AUDIO interface 332:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * @param pdev: device instance 333:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * @param cfgidx: Configuration index 334:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * @retval status 335:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** */ 336:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** static uint8_t USBD_AUDIO_Init(USBD_HandleTypeDef *pdev, uint8_t cfgidx) 337:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 338:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** UNUSED(cfgidx); 339:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** USBD_AUDIO_HandleTypeDef *haudio; 340:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 341:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** /* Allocate Audio structure */ 342:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** haudio = USBD_malloc(sizeof(USBD_AUDIO_HandleTypeDef)); 343:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 344:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** if (haudio == NULL) 345:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 346:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** pdev->pClassData = NULL; 347:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** return (uint8_t)USBD_EMEM; 348:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 349:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 350:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** pdev->pClassData = (void *)haudio; 351:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 352:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** if (pdev->dev_speed == USBD_SPEED_HIGH) 353:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 354:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** pdev->ep_out[AUDIO_OUT_EP & 0xFU].bInterval = AUDIO_HS_BINTERVAL; 355:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 356:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** else /* LOW and FULL-speed endpoints */ 357:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 358:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** pdev->ep_out[AUDIO_OUT_EP & 0xFU].bInterval = AUDIO_FS_BINTERVAL; 359:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 360:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 361:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** /* Open EP OUT */ 362:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** (void)USBD_LL_OpenEP(pdev, AUDIO_OUT_EP, USBD_EP_TYPE_ISOC, AUDIO_OUT_PACKET); 363:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** pdev->ep_out[AUDIO_OUT_EP & 0xFU].is_used = 1U; 364:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 365:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** haudio->alt_setting = 0U; 366:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** haudio->offset = AUDIO_OFFSET_UNKNOWN; 367:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** haudio->wr_ptr = 0U; 368:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** haudio->rd_ptr = 0U; 369:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** haudio->rd_enable = 0U; 370:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 371:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** /* Initialize the Audio output Hardware layer */ 372:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** if (((USBD_AUDIO_ItfTypeDef *)pdev->pUserData)->Init(USBD_AUDIO_FREQ, ARM GAS /tmp/ccdtFdaF.s page 8 373:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** AUDIO_DEFAULT_VOLUME, 374:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 0U) != 0U) 375:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 376:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** return (uint8_t)USBD_FAIL; 377:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 378:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 379:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** /* Prepare Out endpoint to receive 1st packet */ 380:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** (void)USBD_LL_PrepareReceive(pdev, AUDIO_OUT_EP, haudio->buffer, 381:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** AUDIO_OUT_PACKET); 382:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 383:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** return (uint8_t)USBD_OK; 384:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 385:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 386:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** /** 387:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * @brief USBD_AUDIO_Init 388:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * DeInitialize the AUDIO layer 389:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * @param pdev: device instance 390:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * @param cfgidx: Configuration index 391:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * @retval status 392:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** */ 393:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** static uint8_t USBD_AUDIO_DeInit(USBD_HandleTypeDef *pdev, uint8_t cfgidx) 394:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 395:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** UNUSED(cfgidx); 396:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 397:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** /* Open EP OUT */ 398:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** (void)USBD_LL_CloseEP(pdev, AUDIO_OUT_EP); 399:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** pdev->ep_out[AUDIO_OUT_EP & 0xFU].is_used = 0U; 400:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** pdev->ep_out[AUDIO_OUT_EP & 0xFU].bInterval = 0U; 401:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 402:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** /* DeInit physical Interface components */ 403:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** if (pdev->pClassData != NULL) 404:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 405:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** ((USBD_AUDIO_ItfTypeDef *)pdev->pUserData)->DeInit(0U); 406:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** (void)USBD_free(pdev->pClassData); 407:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** pdev->pClassData = NULL; 408:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 409:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 410:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** return (uint8_t)USBD_OK; 411:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 412:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 413:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** /** 414:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * @brief USBD_AUDIO_Setup 415:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * Handle the AUDIO specific requests 416:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * @param pdev: instance 417:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * @param req: usb requests 418:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * @retval status 419:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** */ 420:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** static uint8_t USBD_AUDIO_Setup(USBD_HandleTypeDef *pdev, 421:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** USBD_SetupReqTypedef *req) 422:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 423:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** USBD_AUDIO_HandleTypeDef *haudio; 424:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** uint16_t len; 425:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** uint8_t *pbuf; 426:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** uint16_t status_info = 0U; 427:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** USBD_StatusTypeDef ret = USBD_OK; 428:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 429:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** haudio = (USBD_AUDIO_HandleTypeDef *)pdev->pClassData; ARM GAS /tmp/ccdtFdaF.s page 9 430:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 431:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** if (haudio == NULL) 432:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 433:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** return (uint8_t)USBD_FAIL; 434:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 435:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 436:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** switch (req->bmRequest & USB_REQ_TYPE_MASK) 437:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 438:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** case USB_REQ_TYPE_CLASS: 439:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** switch (req->bRequest) 440:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 441:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** case AUDIO_REQ_GET_CUR: 442:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** AUDIO_REQ_GetCurrent(pdev, req); 443:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** break; 444:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 445:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** case AUDIO_REQ_SET_CUR: 446:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** AUDIO_REQ_SetCurrent(pdev, req); 447:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** break; 448:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 449:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** default: 450:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** USBD_CtlError(pdev, req); 451:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** ret = USBD_FAIL; 452:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** break; 453:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 454:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** break; 455:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 456:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** case USB_REQ_TYPE_STANDARD: 457:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** switch (req->bRequest) 458:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 459:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** case USB_REQ_GET_STATUS: 460:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** if (pdev->dev_state == USBD_STATE_CONFIGURED) 461:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 462:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** (void)USBD_CtlSendData(pdev, (uint8_t *)&status_info, 2U); 463:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 464:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** else 465:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 466:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** USBD_CtlError(pdev, req); 467:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** ret = USBD_FAIL; 468:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 469:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** break; 470:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 471:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** case USB_REQ_GET_DESCRIPTOR: 472:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** if ((req->wValue >> 8) == AUDIO_DESCRIPTOR_TYPE) 473:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 474:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** pbuf = USBD_AUDIO_CfgDesc + 18; 475:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** len = MIN(USB_AUDIO_DESC_SIZ, req->wLength); 476:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 477:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** (void)USBD_CtlSendData(pdev, pbuf, len); 478:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 479:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** break; 480:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 481:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** case USB_REQ_GET_INTERFACE: 482:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** if (pdev->dev_state == USBD_STATE_CONFIGURED) 483:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 484:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** (void)USBD_CtlSendData(pdev, (uint8_t *)&haudio->alt_setting, 1U); 485:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 486:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** else ARM GAS /tmp/ccdtFdaF.s page 10 487:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 488:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** USBD_CtlError(pdev, req); 489:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** ret = USBD_FAIL; 490:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 491:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** break; 492:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 493:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** case USB_REQ_SET_INTERFACE: 494:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** if (pdev->dev_state == USBD_STATE_CONFIGURED) 495:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 496:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** if ((uint8_t)(req->wValue) <= USBD_MAX_NUM_INTERFACES) 497:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 498:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** haudio->alt_setting = (uint8_t)(req->wValue); 499:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 500:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** else 501:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 502:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** /* Call the error management function (command will be NAKed */ 503:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** USBD_CtlError(pdev, req); 504:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** ret = USBD_FAIL; 505:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 506:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 507:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** else 508:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 509:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** USBD_CtlError(pdev, req); 510:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** ret = USBD_FAIL; 511:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 512:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** break; 513:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 514:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** case USB_REQ_CLEAR_FEATURE: 515:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** break; 516:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 517:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** default: 518:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** USBD_CtlError(pdev, req); 519:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** ret = USBD_FAIL; 520:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** break; 521:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 522:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** break; 523:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** default: 524:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** USBD_CtlError(pdev, req); 525:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** ret = USBD_FAIL; 526:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** break; 527:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 528:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 529:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** return (uint8_t)ret; 530:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 531:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 532:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 533:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** /** 534:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * @brief USBD_AUDIO_GetCfgDesc 535:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * return configuration descriptor 536:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * @param speed : current device speed 537:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * @param length : pointer data length 538:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * @retval pointer to descriptor buffer 539:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** */ 540:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** static uint8_t *USBD_AUDIO_GetCfgDesc(uint16_t *length) 541:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 29 .loc 1 541 1 view -0 30 .cfi_startproc ARM GAS /tmp/ccdtFdaF.s page 11 31 @ args = 0, pretend = 0, frame = 0 32 @ frame_needed = 0, uses_anonymous_args = 0 33 @ link register save eliminated. 542:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** *length = (uint16_t)sizeof(USBD_AUDIO_CfgDesc); 34 .loc 1 542 3 view .LVU1 35 .loc 1 542 11 is_stmt 0 view .LVU2 36 0000 6D23 movs r3, #109 37 0002 0380 strh r3, [r0] @ movhi 543:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 544:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** return USBD_AUDIO_CfgDesc; 38 .loc 1 544 3 is_stmt 1 view .LVU3 545:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 39 .loc 1 545 1 is_stmt 0 view .LVU4 40 0004 0048 ldr r0, .L2 41 .LVL1: 42 .loc 1 545 1 view .LVU5 43 0006 7047 bx lr 44 .L3: 45 .align 2 46 .L2: 47 0008 00000000 .word USBD_AUDIO_CfgDesc 48 .cfi_endproc 49 .LFE336: 51 .section .text.USBD_AUDIO_DataIn,"ax",%progbits 52 .align 1 53 .syntax unified 54 .thumb 55 .thumb_func 57 USBD_AUDIO_DataIn: 58 .LVL2: 59 .LFB337: 546:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 547:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** /** 548:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * @brief USBD_AUDIO_DataIn 549:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * handle data IN Stage 550:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * @param pdev: device instance 551:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * @param epnum: endpoint index 552:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * @retval status 553:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** */ 554:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** static uint8_t USBD_AUDIO_DataIn(USBD_HandleTypeDef *pdev, uint8_t epnum) 555:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 60 .loc 1 555 1 is_stmt 1 view -0 61 .cfi_startproc 62 @ args = 0, pretend = 0, frame = 0 63 @ frame_needed = 0, uses_anonymous_args = 0 64 @ link register save eliminated. 556:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** UNUSED(pdev); 65 .loc 1 556 3 view .LVU7 557:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** UNUSED(epnum); 66 .loc 1 557 3 view .LVU8 558:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 559:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** /* Only OUT data are processed */ 560:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** return (uint8_t)USBD_OK; 67 .loc 1 560 3 view .LVU9 561:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 68 .loc 1 561 1 is_stmt 0 view .LVU10 69 0000 0020 movs r0, #0 ARM GAS /tmp/ccdtFdaF.s page 12 70 .LVL3: 71 .loc 1 561 1 view .LVU11 72 0002 7047 bx lr 73 .cfi_endproc 74 .LFE337: 76 .section .text.USBD_AUDIO_EP0_RxReady,"ax",%progbits 77 .align 1 78 .syntax unified 79 .thumb 80 .thumb_func 82 USBD_AUDIO_EP0_RxReady: 83 .LVL4: 84 .LFB338: 562:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 563:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** /** 564:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * @brief USBD_AUDIO_EP0_RxReady 565:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * handle EP0 Rx Ready event 566:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * @param pdev: device instance 567:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * @retval status 568:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** */ 569:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** static uint8_t USBD_AUDIO_EP0_RxReady(USBD_HandleTypeDef *pdev) 570:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 85 .loc 1 570 1 is_stmt 1 view -0 86 .cfi_startproc 87 @ args = 0, pretend = 0, frame = 0 88 @ frame_needed = 0, uses_anonymous_args = 0 89 .loc 1 570 1 is_stmt 0 view .LVU13 90 0000 10B5 push {r4, lr} 91 .LCFI0: 92 .cfi_def_cfa_offset 8 93 .cfi_offset 4, -8 94 .cfi_offset 14, -4 571:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** USBD_AUDIO_HandleTypeDef *haudio; 95 .loc 1 571 3 is_stmt 1 view .LVU14 572:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** haudio = (USBD_AUDIO_HandleTypeDef *)pdev->pClassData; 96 .loc 1 572 3 view .LVU15 97 .loc 1 572 10 is_stmt 0 view .LVU16 98 0002 D0F8BC42 ldr r4, [r0, #700] 99 .LVL5: 573:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 574:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** if (haudio == NULL) 100 .loc 1 574 3 is_stmt 1 view .LVU17 101 .loc 1 574 6 is_stmt 0 view .LVU18 102 0006 ECB1 cbz r4, .L7 575:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 576:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** return (uint8_t)USBD_FAIL; 577:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 578:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 579:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** if (haudio->control.cmd == AUDIO_REQ_SET_CUR) 103 .loc 1 579 3 is_stmt 1 view .LVU19 104 .loc 1 579 22 is_stmt 0 view .LVU20 105 0008 04F58052 add r2, r4, #4096 106 000c 92F88A2B ldrb r2, [r2, #2954] @ zero_extendqisi2 107 .loc 1 579 6 view .LVU21 108 0010 012A cmp r2, #1 109 0012 01D0 beq .L11 580:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { ARM GAS /tmp/ccdtFdaF.s page 13 581:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** /* In this driver, to simplify code, only SET_CUR request is managed */ 582:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 583:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** if (haudio->control.unit == AUDIO_OUT_STREAMING_CTRL) 584:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 585:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** ((USBD_AUDIO_ItfTypeDef *)pdev->pUserData)->MuteCtl(haudio->control.data[0]); 586:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** haudio->control.cmd = 0U; 587:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** haudio->control.len = 0U; 588:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 589:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 590:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 591:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** return (uint8_t)USBD_OK; 110 .loc 1 591 10 view .LVU22 111 0014 0020 movs r0, #0 112 .LVL6: 113 .L6: 592:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 114 .loc 1 592 1 view .LVU23 115 0016 10BD pop {r4, pc} 116 .LVL7: 117 .L11: 583:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 118 .loc 1 583 5 is_stmt 1 view .LVU24 583:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 119 .loc 1 583 24 is_stmt 0 view .LVU25 120 0018 04F58052 add r2, r4, #4096 121 001c 92F8CC2B ldrb r2, [r2, #3020] @ zero_extendqisi2 583:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 122 .loc 1 583 8 view .LVU26 123 0020 022A cmp r2, #2 124 0022 01D0 beq .L12 591:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 125 .loc 1 591 10 view .LVU27 126 0024 0020 movs r0, #0 127 .LVL8: 591:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 128 .loc 1 591 10 view .LVU28 129 0026 F6E7 b .L6 130 .LVL9: 131 .L12: 585:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** haudio->control.cmd = 0U; 132 .loc 1 585 7 is_stmt 1 view .LVU29 585:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** haudio->control.cmd = 0U; 133 .loc 1 585 37 is_stmt 0 view .LVU30 134 0028 D0F8C022 ldr r2, [r0, #704] 585:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** haudio->control.cmd = 0U; 135 .loc 1 585 49 view .LVU31 136 002c 1269 ldr r2, [r2, #16] 585:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** haudio->control.cmd = 0U; 137 .loc 1 585 8 view .LVU32 138 002e 04F58054 add r4, r4, #4096 139 .LVL10: 585:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** haudio->control.cmd = 0U; 140 .loc 1 585 8 view .LVU33 141 0032 94F88B0B ldrb r0, [r4, #2955] @ zero_extendqisi2 142 .LVL11: 585:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** haudio->control.cmd = 0U; 143 .loc 1 585 8 view .LVU34 ARM GAS /tmp/ccdtFdaF.s page 14 144 0036 9047 blx r2 145 .LVL12: 586:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** haudio->control.len = 0U; 146 .loc 1 586 7 is_stmt 1 view .LVU35 586:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** haudio->control.len = 0U; 147 .loc 1 586 27 is_stmt 0 view .LVU36 148 0038 0020 movs r0, #0 149 003a 84F88A0B strb r0, [r4, #2954] 587:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 150 .loc 1 587 7 is_stmt 1 view .LVU37 587:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 151 .loc 1 587 27 is_stmt 0 view .LVU38 152 003e 84F8CB0B strb r0, [r4, #3019] 153 0042 E8E7 b .L6 154 .LVL13: 155 .L7: 576:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 156 .loc 1 576 12 view .LVU39 157 0044 0320 movs r0, #3 158 .LVL14: 576:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 159 .loc 1 576 12 view .LVU40 160 0046 E6E7 b .L6 161 .cfi_endproc 162 .LFE338: 164 .section .text.USBD_AUDIO_EP0_TxReady,"ax",%progbits 165 .align 1 166 .syntax unified 167 .thumb 168 .thumb_func 170 USBD_AUDIO_EP0_TxReady: 171 .LVL15: 172 .LFB339: 593:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** /** 594:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * @brief USBD_AUDIO_EP0_TxReady 595:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * handle EP0 TRx Ready event 596:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * @param pdev: device instance 597:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * @retval status 598:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** */ 599:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** static uint8_t USBD_AUDIO_EP0_TxReady(USBD_HandleTypeDef *pdev) 600:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 173 .loc 1 600 1 is_stmt 1 view -0 174 .cfi_startproc 175 @ args = 0, pretend = 0, frame = 0 176 @ frame_needed = 0, uses_anonymous_args = 0 177 @ link register save eliminated. 601:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** UNUSED(pdev); 178 .loc 1 601 3 view .LVU42 602:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 603:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** /* Only OUT control data are processed */ 604:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** return (uint8_t)USBD_OK; 179 .loc 1 604 3 view .LVU43 605:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 180 .loc 1 605 1 is_stmt 0 view .LVU44 181 0000 0020 movs r0, #0 182 .LVL16: 183 .loc 1 605 1 view .LVU45 ARM GAS /tmp/ccdtFdaF.s page 15 184 0002 7047 bx lr 185 .cfi_endproc 186 .LFE339: 188 .section .text.USBD_AUDIO_SOF,"ax",%progbits 189 .align 1 190 .syntax unified 191 .thumb 192 .thumb_func 194 USBD_AUDIO_SOF: 195 .LVL17: 196 .LFB340: 606:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** /** 607:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * @brief USBD_AUDIO_SOF 608:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * handle SOF event 609:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * @param pdev: device instance 610:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * @retval status 611:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** */ 612:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** static uint8_t USBD_AUDIO_SOF(USBD_HandleTypeDef *pdev) 613:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 197 .loc 1 613 1 is_stmt 1 view -0 198 .cfi_startproc 199 @ args = 0, pretend = 0, frame = 0 200 @ frame_needed = 0, uses_anonymous_args = 0 201 @ link register save eliminated. 614:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** UNUSED(pdev); 202 .loc 1 614 3 view .LVU47 615:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 616:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** return (uint8_t)USBD_OK; 203 .loc 1 616 3 view .LVU48 617:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 204 .loc 1 617 1 is_stmt 0 view .LVU49 205 0000 0020 movs r0, #0 206 .LVL18: 207 .loc 1 617 1 view .LVU50 208 0002 7047 bx lr 209 .cfi_endproc 210 .LFE340: 212 .section .text.USBD_AUDIO_IsoINIncomplete,"ax",%progbits 213 .align 1 214 .syntax unified 215 .thumb 216 .thumb_func 218 USBD_AUDIO_IsoINIncomplete: 219 .LVL19: 220 .LFB342: 618:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 619:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** /** 620:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * @brief USBD_AUDIO_SOF 621:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * handle SOF event 622:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * @param pdev: device instance 623:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * @retval status 624:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** */ 625:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** void USBD_AUDIO_Sync(USBD_HandleTypeDef *pdev, AUDIO_OffsetTypeDef offset) 626:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 627:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** USBD_AUDIO_HandleTypeDef *haudio; 628:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** uint32_t BufferSize = AUDIO_TOTAL_BUF_SIZE / 2U; 629:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** ARM GAS /tmp/ccdtFdaF.s page 16 630:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** if (pdev->pClassData == NULL) 631:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 632:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** return; 633:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 634:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 635:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** haudio = (USBD_AUDIO_HandleTypeDef *)pdev->pClassData; 636:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 637:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** haudio->offset = offset; 638:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 639:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** if (haudio->rd_enable == 1U) 640:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 641:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** haudio->rd_ptr += (uint16_t)BufferSize; 642:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 643:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** if (haudio->rd_ptr == AUDIO_TOTAL_BUF_SIZE) 644:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 645:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** /* roll back */ 646:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** haudio->rd_ptr = 0U; 647:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 648:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 649:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 650:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** if (haudio->rd_ptr > haudio->wr_ptr) 651:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 652:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** if ((haudio->rd_ptr - haudio->wr_ptr) < AUDIO_OUT_PACKET) 653:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 654:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** BufferSize += 4U; 655:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 656:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** else 657:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 658:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** if ((haudio->rd_ptr - haudio->wr_ptr) > (AUDIO_TOTAL_BUF_SIZE - AUDIO_OUT_PACKET)) 659:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 660:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** BufferSize -= 4U; 661:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 662:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 663:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 664:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** else 665:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 666:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** if ((haudio->wr_ptr - haudio->rd_ptr) < AUDIO_OUT_PACKET) 667:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 668:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** BufferSize -= 4U; 669:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 670:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** else 671:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 672:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** if ((haudio->wr_ptr - haudio->rd_ptr) > (AUDIO_TOTAL_BUF_SIZE - AUDIO_OUT_PACKET)) 673:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 674:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** BufferSize += 4U; 675:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 676:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 677:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 678:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 679:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** if (haudio->offset == AUDIO_OFFSET_FULL) 680:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 681:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** ((USBD_AUDIO_ItfTypeDef *)pdev->pUserData)->AudioCmd(&haudio->buffer[0], 682:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** BufferSize, AUDIO_CMD_PLAY); 683:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** haudio->offset = AUDIO_OFFSET_NONE; 684:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 685:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 686:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** ARM GAS /tmp/ccdtFdaF.s page 17 687:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** /** 688:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * @brief USBD_AUDIO_IsoINIncomplete 689:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * handle data ISO IN Incomplete event 690:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * @param pdev: device instance 691:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * @param epnum: endpoint index 692:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * @retval status 693:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** */ 694:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** static uint8_t USBD_AUDIO_IsoINIncomplete(USBD_HandleTypeDef *pdev, uint8_t epnum) 695:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 221 .loc 1 695 1 is_stmt 1 view -0 222 .cfi_startproc 223 @ args = 0, pretend = 0, frame = 0 224 @ frame_needed = 0, uses_anonymous_args = 0 225 @ link register save eliminated. 696:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** UNUSED(pdev); 226 .loc 1 696 3 view .LVU52 697:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** UNUSED(epnum); 227 .loc 1 697 3 view .LVU53 698:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 699:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** return (uint8_t)USBD_OK; 228 .loc 1 699 3 view .LVU54 700:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 229 .loc 1 700 1 is_stmt 0 view .LVU55 230 0000 0020 movs r0, #0 231 .LVL20: 232 .loc 1 700 1 view .LVU56 233 0002 7047 bx lr 234 .cfi_endproc 235 .LFE342: 237 .section .text.USBD_AUDIO_IsoOutIncomplete,"ax",%progbits 238 .align 1 239 .syntax unified 240 .thumb 241 .thumb_func 243 USBD_AUDIO_IsoOutIncomplete: 244 .LVL21: 245 .LFB343: 701:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** /** 702:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * @brief USBD_AUDIO_IsoOutIncomplete 703:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * handle data ISO OUT Incomplete event 704:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * @param pdev: device instance 705:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * @param epnum: endpoint index 706:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * @retval status 707:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** */ 708:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** static uint8_t USBD_AUDIO_IsoOutIncomplete(USBD_HandleTypeDef *pdev, uint8_t epnum) 709:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 246 .loc 1 709 1 is_stmt 1 view -0 247 .cfi_startproc 248 @ args = 0, pretend = 0, frame = 0 249 @ frame_needed = 0, uses_anonymous_args = 0 250 @ link register save eliminated. 710:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** UNUSED(pdev); 251 .loc 1 710 3 view .LVU58 711:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** UNUSED(epnum); 252 .loc 1 711 3 view .LVU59 712:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 713:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** return (uint8_t)USBD_OK; ARM GAS /tmp/ccdtFdaF.s page 18 253 .loc 1 713 3 view .LVU60 714:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 254 .loc 1 714 1 is_stmt 0 view .LVU61 255 0000 0020 movs r0, #0 256 .LVL22: 257 .loc 1 714 1 view .LVU62 258 0002 7047 bx lr 259 .cfi_endproc 260 .LFE343: 262 .section .text.USBD_AUDIO_GetDeviceQualifierDesc,"ax",%progbits 263 .align 1 264 .syntax unified 265 .thumb 266 .thumb_func 268 USBD_AUDIO_GetDeviceQualifierDesc: 269 .LVL23: 270 .LFB347: 715:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** /** 716:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * @brief USBD_AUDIO_DataOut 717:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * handle data OUT Stage 718:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * @param pdev: device instance 719:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * @param epnum: endpoint index 720:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * @retval status 721:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** */ 722:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** static uint8_t USBD_AUDIO_DataOut(USBD_HandleTypeDef *pdev, uint8_t epnum) 723:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 724:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** uint16_t PacketSize; 725:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** USBD_AUDIO_HandleTypeDef *haudio; 726:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 727:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** haudio = (USBD_AUDIO_HandleTypeDef *)pdev->pClassData; 728:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 729:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** if (haudio == NULL) 730:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 731:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** return (uint8_t)USBD_FAIL; 732:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 733:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 734:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** if (epnum == AUDIO_OUT_EP) 735:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 736:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** /* Get received data packet length */ 737:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** PacketSize = (uint16_t)USBD_LL_GetRxDataSize(pdev, epnum); 738:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 739:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** /* Packet received Callback */ 740:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** ((USBD_AUDIO_ItfTypeDef *)pdev->pUserData)->PeriodicTC(&haudio->buffer[haudio->wr_ptr], 741:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** PacketSize, AUDIO_OUT_TC); 742:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 743:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** /* Increment the Buffer pointer or roll it back when all buffers are full */ 744:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** haudio->wr_ptr += PacketSize; 745:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 746:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** if (haudio->wr_ptr == AUDIO_TOTAL_BUF_SIZE) 747:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 748:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** /* All buffers are full: roll back */ 749:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** haudio->wr_ptr = 0U; 750:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 751:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** if (haudio->offset == AUDIO_OFFSET_UNKNOWN) 752:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 753:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** ((USBD_AUDIO_ItfTypeDef *)pdev->pUserData)->AudioCmd(&haudio->buffer[0], 754:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** AUDIO_TOTAL_BUF_SIZE / 2U, ARM GAS /tmp/ccdtFdaF.s page 19 755:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** AUDIO_CMD_START); 756:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** haudio->offset = AUDIO_OFFSET_NONE; 757:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 758:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 759:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 760:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** if (haudio->rd_enable == 0U) 761:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 762:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** if (haudio->wr_ptr == (AUDIO_TOTAL_BUF_SIZE / 2U)) 763:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 764:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** haudio->rd_enable = 1U; 765:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 766:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 767:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 768:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** /* Prepare Out endpoint to receive next audio packet */ 769:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** (void)USBD_LL_PrepareReceive(pdev, AUDIO_OUT_EP, 770:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** &haudio->buffer[haudio->wr_ptr], 771:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** AUDIO_OUT_PACKET); 772:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 773:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 774:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** return (uint8_t)USBD_OK; 775:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 776:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 777:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** /** 778:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * @brief AUDIO_Req_GetCurrent 779:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * Handles the GET_CUR Audio control request. 780:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * @param pdev: instance 781:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * @param req: setup class request 782:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * @retval status 783:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** */ 784:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** static void AUDIO_REQ_GetCurrent(USBD_HandleTypeDef *pdev, USBD_SetupReqTypedef *req) 785:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 786:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** USBD_AUDIO_HandleTypeDef *haudio; 787:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** haudio = (USBD_AUDIO_HandleTypeDef *)pdev->pClassData; 788:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 789:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** if (haudio == NULL) 790:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 791:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** return; 792:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 793:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 794:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** (void)USBD_memset(haudio->control.data, 0, 64U); 795:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 796:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** /* Send the current mute state */ 797:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** (void)USBD_CtlSendData(pdev, haudio->control.data, req->wLength); 798:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 799:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 800:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** /** 801:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * @brief AUDIO_Req_SetCurrent 802:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * Handles the SET_CUR Audio control request. 803:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * @param pdev: instance 804:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * @param req: setup class request 805:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * @retval status 806:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** */ 807:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** static void AUDIO_REQ_SetCurrent(USBD_HandleTypeDef *pdev, USBD_SetupReqTypedef *req) 808:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 809:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** USBD_AUDIO_HandleTypeDef *haudio; 810:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** haudio = (USBD_AUDIO_HandleTypeDef *)pdev->pClassData; 811:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** ARM GAS /tmp/ccdtFdaF.s page 20 812:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** if (haudio == NULL) 813:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 814:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** return; 815:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 816:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 817:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** if (req->wLength != 0U) 818:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 819:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** /* Prepare the reception of the buffer over EP0 */ 820:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** (void)USBD_CtlPrepareRx(pdev, haudio->control.data, req->wLength); 821:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 822:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** haudio->control.cmd = AUDIO_REQ_SET_CUR; /* Set the request value */ 823:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** haudio->control.len = (uint8_t)req->wLength; /* Set the request data length */ 824:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** haudio->control.unit = HIBYTE(req->wIndex); /* Set the request target unit */ 825:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 826:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 827:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 828:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 829:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** /** 830:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * @brief DeviceQualifierDescriptor 831:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * return Device Qualifier descriptor 832:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * @param length : pointer data length 833:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * @retval pointer to descriptor buffer 834:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** */ 835:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** static uint8_t *USBD_AUDIO_GetDeviceQualifierDesc(uint16_t *length) 836:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 271 .loc 1 836 1 is_stmt 1 view -0 272 .cfi_startproc 273 @ args = 0, pretend = 0, frame = 0 274 @ frame_needed = 0, uses_anonymous_args = 0 275 @ link register save eliminated. 837:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** *length = (uint16_t)sizeof(USBD_AUDIO_DeviceQualifierDesc); 276 .loc 1 837 3 view .LVU64 277 .loc 1 837 11 is_stmt 0 view .LVU65 278 0000 0A23 movs r3, #10 279 0002 0380 strh r3, [r0] @ movhi 838:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 839:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** return USBD_AUDIO_DeviceQualifierDesc; 280 .loc 1 839 3 is_stmt 1 view .LVU66 840:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 281 .loc 1 840 1 is_stmt 0 view .LVU67 282 0004 0048 ldr r0, .L18 283 .LVL24: 284 .loc 1 840 1 view .LVU68 285 0006 7047 bx lr 286 .L19: 287 .align 2 288 .L18: 289 0008 00000000 .word USBD_AUDIO_DeviceQualifierDesc 290 .cfi_endproc 291 .LFE347: 293 .section .text.USBD_AUDIO_DataOut,"ax",%progbits 294 .align 1 295 .syntax unified 296 .thumb 297 .thumb_func 299 USBD_AUDIO_DataOut: 300 .LVL25: ARM GAS /tmp/ccdtFdaF.s page 21 301 .LFB344: 723:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** uint16_t PacketSize; 302 .loc 1 723 1 is_stmt 1 view -0 303 .cfi_startproc 304 @ args = 0, pretend = 0, frame = 0 305 @ frame_needed = 0, uses_anonymous_args = 0 723:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** uint16_t PacketSize; 306 .loc 1 723 1 is_stmt 0 view .LVU70 307 0000 F8B5 push {r3, r4, r5, r6, r7, lr} 308 .LCFI1: 309 .cfi_def_cfa_offset 24 310 .cfi_offset 3, -24 311 .cfi_offset 4, -20 312 .cfi_offset 5, -16 313 .cfi_offset 6, -12 314 .cfi_offset 7, -8 315 .cfi_offset 14, -4 724:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** USBD_AUDIO_HandleTypeDef *haudio; 316 .loc 1 724 3 is_stmt 1 view .LVU71 725:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 317 .loc 1 725 3 view .LVU72 727:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 318 .loc 1 727 3 view .LVU73 727:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 319 .loc 1 727 10 is_stmt 0 view .LVU74 320 0002 D0F8BC52 ldr r5, [r0, #700] 321 .LVL26: 729:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 322 .loc 1 729 3 is_stmt 1 view .LVU75 729:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 323 .loc 1 729 6 is_stmt 0 view .LVU76 324 0006 002D cmp r5, #0 325 0008 4ED0 beq .L24 326 000a 0446 mov r4, r0 734:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 327 .loc 1 734 3 is_stmt 1 view .LVU77 734:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 328 .loc 1 734 6 is_stmt 0 view .LVU78 329 000c 0129 cmp r1, #1 330 000e 01D0 beq .L27 774:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 331 .loc 1 774 10 view .LVU79 332 0010 0020 movs r0, #0 333 .LVL27: 334 .L21: 775:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 335 .loc 1 775 1 view .LVU80 336 0012 F8BD pop {r3, r4, r5, r6, r7, pc} 337 .LVL28: 338 .L27: 737:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 339 .loc 1 737 5 is_stmt 1 view .LVU81 737:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 340 .loc 1 737 28 is_stmt 0 view .LVU82 341 0014 FFF7FEFF bl USBD_LL_GetRxDataSize 342 .LVL29: 737:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** ARM GAS /tmp/ccdtFdaF.s page 22 343 .loc 1 737 16 view .LVU83 344 0018 86B2 uxth r6, r0 345 .LVL30: 740:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** PacketSize, AUDIO_OUT_TC); 346 .loc 1 740 5 is_stmt 1 view .LVU84 740:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** PacketSize, AUDIO_OUT_TC); 347 .loc 1 740 35 is_stmt 0 view .LVU85 348 001a D4F8C032 ldr r3, [r4, #704] 740:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** PacketSize, AUDIO_OUT_TC); 349 .loc 1 740 47 view .LVU86 350 001e 5B69 ldr r3, [r3, #20] 740:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** PacketSize, AUDIO_OUT_TC); 351 .loc 1 740 82 view .LVU87 352 0020 05F58057 add r7, r5, #4096 353 0024 B7F8880B ldrh r0, [r7, #2952] 740:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** PacketSize, AUDIO_OUT_TC); 354 .loc 1 740 6 view .LVU88 355 0028 2844 add r0, r0, r5 356 002a 0122 movs r2, #1 357 002c 3146 mov r1, r6 358 002e 0430 adds r0, r0, #4 359 0030 9847 blx r3 360 .LVL31: 744:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 361 .loc 1 744 5 is_stmt 1 view .LVU89 744:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 362 .loc 1 744 11 is_stmt 0 view .LVU90 363 0032 B7F8883B ldrh r3, [r7, #2952] 744:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 364 .loc 1 744 20 view .LVU91 365 0036 3344 add r3, r3, r6 366 0038 9BB2 uxth r3, r3 367 003a A7F8883B strh r3, [r7, #2952] @ movhi 746:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 368 .loc 1 746 5 is_stmt 1 view .LVU92 746:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 369 .loc 1 746 8 is_stmt 0 view .LVU93 370 003e B3F5DC5F cmp r3, #7040 371 0042 18D0 beq .L28 372 .L22: 760:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 373 .loc 1 760 5 is_stmt 1 view .LVU94 760:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 374 .loc 1 760 15 is_stmt 0 view .LVU95 375 0044 05F58053 add r3, r5, #4096 376 0048 93F8853B ldrb r3, [r3, #2949] @ zero_extendqisi2 760:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 377 .loc 1 760 8 view .LVU96 378 004c 33B9 cbnz r3, .L23 762:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 379 .loc 1 762 7 is_stmt 1 view .LVU97 762:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 380 .loc 1 762 17 is_stmt 0 view .LVU98 381 004e 05F58053 add r3, r5, #4096 382 0052 B3F8883B ldrh r3, [r3, #2952] 762:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 383 .loc 1 762 10 view .LVU99 ARM GAS /tmp/ccdtFdaF.s page 23 384 0056 B3F55C6F cmp r3, #3520 385 005a 1FD0 beq .L29 386 .L23: 769:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** &haudio->buffer[haudio->wr_ptr], 387 .loc 1 769 5 is_stmt 1 view .LVU100 770:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** AUDIO_OUT_PACKET); 388 .loc 1 770 56 is_stmt 0 view .LVU101 389 005c 05F58053 add r3, r5, #4096 390 0060 B3F8883B ldrh r3, [r3, #2952] 769:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** &haudio->buffer[haudio->wr_ptr], 391 .loc 1 769 11 view .LVU102 392 0064 EA18 adds r2, r5, r3 393 0066 5823 movs r3, #88 394 0068 0432 adds r2, r2, #4 395 006a 0121 movs r1, #1 396 006c 2046 mov r0, r4 397 006e FFF7FEFF bl USBD_LL_PrepareReceive 398 .LVL32: 774:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 399 .loc 1 774 10 view .LVU103 400 0072 0020 movs r0, #0 401 0074 CDE7 b .L21 402 .L28: 749:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 403 .loc 1 749 7 is_stmt 1 view .LVU104 749:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 404 .loc 1 749 22 is_stmt 0 view .LVU105 405 0076 0022 movs r2, #0 406 0078 A7F8882B strh r2, [r7, #2952] @ movhi 751:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 407 .loc 1 751 7 is_stmt 1 view .LVU106 751:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 408 .loc 1 751 17 is_stmt 0 view .LVU107 409 007c 97F8843B ldrb r3, [r7, #2948] @ zero_extendqisi2 751:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 410 .loc 1 751 10 view .LVU108 411 0080 032B cmp r3, #3 412 0082 DFD1 bne .L22 753:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** AUDIO_TOTAL_BUF_SIZE / 2U, 413 .loc 1 753 9 is_stmt 1 view .LVU109 753:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** AUDIO_TOTAL_BUF_SIZE / 2U, 414 .loc 1 753 39 is_stmt 0 view .LVU110 415 0084 D4F8C032 ldr r3, [r4, #704] 753:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** AUDIO_TOTAL_BUF_SIZE / 2U, 416 .loc 1 753 51 view .LVU111 417 0088 9B68 ldr r3, [r3, #8] 753:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** AUDIO_TOTAL_BUF_SIZE / 2U, 418 .loc 1 753 10 view .LVU112 419 008a 0122 movs r2, #1 420 008c 4FF45C61 mov r1, #3520 421 0090 281D adds r0, r5, #4 422 0092 9847 blx r3 423 .LVL33: 756:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 424 .loc 1 756 9 is_stmt 1 view .LVU113 756:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 425 .loc 1 756 24 is_stmt 0 view .LVU114 ARM GAS /tmp/ccdtFdaF.s page 24 426 0094 0022 movs r2, #0 427 0096 87F8842B strb r2, [r7, #2948] 428 009a D3E7 b .L22 429 .L29: 764:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 430 .loc 1 764 9 is_stmt 1 view .LVU115 764:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 431 .loc 1 764 27 is_stmt 0 view .LVU116 432 009c 05F58053 add r3, r5, #4096 433 00a0 0122 movs r2, #1 434 00a2 83F8852B strb r2, [r3, #2949] 435 00a6 D9E7 b .L23 436 .LVL34: 437 .L24: 731:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 438 .loc 1 731 12 view .LVU117 439 00a8 0320 movs r0, #3 440 .LVL35: 731:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 441 .loc 1 731 12 view .LVU118 442 00aa B2E7 b .L21 443 .cfi_endproc 444 .LFE344: 446 .section .text.AUDIO_REQ_GetCurrent,"ax",%progbits 447 .align 1 448 .syntax unified 449 .thumb 450 .thumb_func 452 AUDIO_REQ_GetCurrent: 453 .LVL36: 454 .LFB345: 785:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** USBD_AUDIO_HandleTypeDef *haudio; 455 .loc 1 785 1 is_stmt 1 view -0 456 .cfi_startproc 457 @ args = 0, pretend = 0, frame = 0 458 @ frame_needed = 0, uses_anonymous_args = 0 785:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** USBD_AUDIO_HandleTypeDef *haudio; 459 .loc 1 785 1 is_stmt 0 view .LVU120 460 0000 70B5 push {r4, r5, r6, lr} 461 .LCFI2: 462 .cfi_def_cfa_offset 16 463 .cfi_offset 4, -16 464 .cfi_offset 5, -12 465 .cfi_offset 6, -8 466 .cfi_offset 14, -4 786:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** haudio = (USBD_AUDIO_HandleTypeDef *)pdev->pClassData; 467 .loc 1 786 3 is_stmt 1 view .LVU121 787:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 468 .loc 1 787 3 view .LVU122 787:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 469 .loc 1 787 10 is_stmt 0 view .LVU123 470 0002 D0F8BC42 ldr r4, [r0, #700] 471 .LVL37: 789:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 472 .loc 1 789 3 is_stmt 1 view .LVU124 789:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 473 .loc 1 789 6 is_stmt 0 view .LVU125 ARM GAS /tmp/ccdtFdaF.s page 25 474 0006 74B1 cbz r4, .L30 475 0008 0546 mov r5, r0 476 000a 0E46 mov r6, r1 794:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 477 .loc 1 794 3 is_stmt 1 view .LVU126 794:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 478 .loc 1 794 36 is_stmt 0 view .LVU127 479 000c 04F5DC54 add r4, r4, #7040 480 .LVL38: 794:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 481 .loc 1 794 36 view .LVU128 482 0010 0B34 adds r4, r4, #11 794:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 483 .loc 1 794 9 view .LVU129 484 0012 4022 movs r2, #64 485 0014 0021 movs r1, #0 486 .LVL39: 794:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 487 .loc 1 794 9 view .LVU130 488 0016 2046 mov r0, r4 489 .LVL40: 794:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 490 .loc 1 794 9 view .LVU131 491 0018 FFF7FEFF bl memset 492 .LVL41: 797:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 493 .loc 1 797 3 is_stmt 1 view .LVU132 797:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 494 .loc 1 797 9 is_stmt 0 view .LVU133 495 001c F288 ldrh r2, [r6, #6] 496 001e 2146 mov r1, r4 497 0020 2846 mov r0, r5 498 0022 FFF7FEFF bl USBD_CtlSendData 499 .LVL42: 500 .L30: 798:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 501 .loc 1 798 1 view .LVU134 502 0026 70BD pop {r4, r5, r6, pc} 503 .cfi_endproc 504 .LFE345: 506 .section .text.AUDIO_REQ_SetCurrent,"ax",%progbits 507 .align 1 508 .syntax unified 509 .thumb 510 .thumb_func 512 AUDIO_REQ_SetCurrent: 513 .LVL43: 514 .LFB346: 808:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** USBD_AUDIO_HandleTypeDef *haudio; 515 .loc 1 808 1 is_stmt 1 view -0 516 .cfi_startproc 517 @ args = 0, pretend = 0, frame = 0 518 @ frame_needed = 0, uses_anonymous_args = 0 808:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** USBD_AUDIO_HandleTypeDef *haudio; 519 .loc 1 808 1 is_stmt 0 view .LVU136 520 0000 38B5 push {r3, r4, r5, lr} 521 .LCFI3: ARM GAS /tmp/ccdtFdaF.s page 26 522 .cfi_def_cfa_offset 16 523 .cfi_offset 3, -16 524 .cfi_offset 4, -12 525 .cfi_offset 5, -8 526 .cfi_offset 14, -4 809:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** haudio = (USBD_AUDIO_HandleTypeDef *)pdev->pClassData; 527 .loc 1 809 3 is_stmt 1 view .LVU137 810:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 528 .loc 1 810 3 view .LVU138 810:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 529 .loc 1 810 10 is_stmt 0 view .LVU139 530 0002 D0F8BC52 ldr r5, [r0, #700] 531 .LVL44: 812:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 532 .loc 1 812 3 is_stmt 1 view .LVU140 812:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 533 .loc 1 812 6 is_stmt 0 view .LVU141 534 0006 15B1 cbz r5, .L33 535 0008 0C46 mov r4, r1 817:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 536 .loc 1 817 3 is_stmt 1 view .LVU142 817:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 537 .loc 1 817 10 is_stmt 0 view .LVU143 538 000a CA88 ldrh r2, [r1, #6] 817:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 539 .loc 1 817 6 view .LVU144 540 000c 02B9 cbnz r2, .L36 541 .LVL45: 542 .L33: 826:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 543 .loc 1 826 1 view .LVU145 544 000e 38BD pop {r3, r4, r5, pc} 545 .LVL46: 546 .L36: 820:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 547 .loc 1 820 5 is_stmt 1 view .LVU146 820:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 548 .loc 1 820 11 is_stmt 0 view .LVU147 549 0010 05F5DC51 add r1, r5, #7040 550 .LVL47: 820:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 551 .loc 1 820 11 view .LVU148 552 0014 0B31 adds r1, r1, #11 553 0016 FFF7FEFF bl USBD_CtlPrepareRx 554 .LVL48: 822:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** haudio->control.len = (uint8_t)req->wLength; /* Set the request data length */ 555 .loc 1 822 5 is_stmt 1 view .LVU149 822:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** haudio->control.len = (uint8_t)req->wLength; /* Set the request data length */ 556 .loc 1 822 25 is_stmt 0 view .LVU150 557 001a 05F58055 add r5, r5, #4096 558 .LVL49: 822:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** haudio->control.len = (uint8_t)req->wLength; /* Set the request data length */ 559 .loc 1 822 25 view .LVU151 560 001e 0123 movs r3, #1 561 0020 85F88A3B strb r3, [r5, #2954] 823:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** haudio->control.unit = HIBYTE(req->wIndex); /* Set the request target unit */ 562 .loc 1 823 5 is_stmt 1 view .LVU152 ARM GAS /tmp/ccdtFdaF.s page 27 823:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** haudio->control.unit = HIBYTE(req->wIndex); /* Set the request target unit */ 563 .loc 1 823 27 is_stmt 0 view .LVU153 564 0024 A379 ldrb r3, [r4, #6] @ zero_extendqisi2 823:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** haudio->control.unit = HIBYTE(req->wIndex); /* Set the request target unit */ 565 .loc 1 823 25 view .LVU154 566 0026 85F8CB3B strb r3, [r5, #3019] 824:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 567 .loc 1 824 5 is_stmt 1 view .LVU155 824:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 568 .loc 1 824 28 is_stmt 0 view .LVU156 569 002a A388 ldrh r3, [r4, #4] 570 002c 1B0A lsrs r3, r3, #8 824:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 571 .loc 1 824 26 view .LVU157 572 002e 85F8CC3B strb r3, [r5, #3020] 573 0032 ECE7 b .L33 574 .cfi_endproc 575 .LFE346: 577 .section .text.USBD_AUDIO_Setup,"ax",%progbits 578 .align 1 579 .syntax unified 580 .thumb 581 .thumb_func 583 USBD_AUDIO_Setup: 584 .LVL50: 585 .LFB335: 422:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** USBD_AUDIO_HandleTypeDef *haudio; 586 .loc 1 422 1 is_stmt 1 view -0 587 .cfi_startproc 588 @ args = 0, pretend = 0, frame = 8 589 @ frame_needed = 0, uses_anonymous_args = 0 422:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** USBD_AUDIO_HandleTypeDef *haudio; 590 .loc 1 422 1 is_stmt 0 view .LVU159 591 0000 30B5 push {r4, r5, lr} 592 .LCFI4: 593 .cfi_def_cfa_offset 12 594 .cfi_offset 4, -12 595 .cfi_offset 5, -8 596 .cfi_offset 14, -4 597 0002 83B0 sub sp, sp, #12 598 .LCFI5: 599 .cfi_def_cfa_offset 24 423:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** uint16_t len; 600 .loc 1 423 3 is_stmt 1 view .LVU160 424:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** uint8_t *pbuf; 601 .loc 1 424 3 view .LVU161 425:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** uint16_t status_info = 0U; 602 .loc 1 425 3 view .LVU162 426:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** USBD_StatusTypeDef ret = USBD_OK; 603 .loc 1 426 3 view .LVU163 426:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** USBD_StatusTypeDef ret = USBD_OK; 604 .loc 1 426 12 is_stmt 0 view .LVU164 605 0004 0023 movs r3, #0 606 0006 ADF80630 strh r3, [sp, #6] @ movhi 427:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 607 .loc 1 427 3 is_stmt 1 view .LVU165 608 .LVL51: ARM GAS /tmp/ccdtFdaF.s page 28 429:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 609 .loc 1 429 3 view .LVU166 429:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 610 .loc 1 429 10 is_stmt 0 view .LVU167 611 000a D0F8BC32 ldr r3, [r0, #700] 612 .LVL52: 431:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 613 .loc 1 431 3 is_stmt 1 view .LVU168 431:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 614 .loc 1 431 6 is_stmt 0 view .LVU169 615 000e 002B cmp r3, #0 616 0010 67D0 beq .L53 436:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 617 .loc 1 436 3 is_stmt 1 view .LVU170 436:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 618 .loc 1 436 14 is_stmt 0 view .LVU171 619 0012 0C78 ldrb r4, [r1] @ zero_extendqisi2 436:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 620 .loc 1 436 3 view .LVU172 621 0014 14F06004 ands r4, r4, #96 622 0018 12D0 beq .L39 623 001a 202C cmp r4, #32 624 001c 5BD1 bne .L40 439:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 625 .loc 1 439 7 is_stmt 1 view .LVU173 439:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 626 .loc 1 439 18 is_stmt 0 view .LVU174 627 001e 4B78 ldrb r3, [r1, #1] @ zero_extendqisi2 628 .LVL53: 439:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 629 .loc 1 439 18 view .LVU175 630 0020 012B cmp r3, #1 631 0022 05D0 beq .L41 632 0024 812B cmp r3, #129 633 0026 07D1 bne .L42 442:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** break; 634 .loc 1 442 11 is_stmt 1 view .LVU176 635 0028 FFF7FEFF bl AUDIO_REQ_GetCurrent 636 .LVL54: 443:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 637 .loc 1 443 11 view .LVU177 427:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 638 .loc 1 427 22 is_stmt 0 view .LVU178 639 002c 0024 movs r4, #0 443:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 640 .loc 1 443 11 view .LVU179 641 002e 55E0 b .L38 642 .LVL55: 643 .L41: 446:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** break; 644 .loc 1 446 11 is_stmt 1 view .LVU180 645 0030 FFF7FEFF bl AUDIO_REQ_SetCurrent 646 .LVL56: 447:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 647 .loc 1 447 11 view .LVU181 427:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 648 .loc 1 427 22 is_stmt 0 view .LVU182 ARM GAS /tmp/ccdtFdaF.s page 29 649 0034 0024 movs r4, #0 447:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 650 .loc 1 447 11 view .LVU183 651 0036 51E0 b .L38 652 .LVL57: 653 .L42: 450:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** ret = USBD_FAIL; 654 .loc 1 450 11 is_stmt 1 view .LVU184 655 0038 FFF7FEFF bl USBD_CtlError 656 .LVL58: 451:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** break; 657 .loc 1 451 11 view .LVU185 452:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 658 .loc 1 452 11 view .LVU186 451:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** break; 659 .loc 1 451 15 is_stmt 0 view .LVU187 660 003c 0324 movs r4, #3 452:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 661 .loc 1 452 11 view .LVU188 662 003e 4DE0 b .L38 663 .LVL59: 664 .L39: 457:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 665 .loc 1 457 7 is_stmt 1 view .LVU189 457:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 666 .loc 1 457 18 is_stmt 0 view .LVU190 667 0040 4D78 ldrb r5, [r1, #1] @ zero_extendqisi2 668 0042 0B2D cmp r5, #11 669 0044 43D8 bhi .L43 670 0046 DFE805F0 tbb [pc, r5] 671 .L45: 672 004a 06 .byte (.L48-.L45)/2 673 004b 49 .byte (.L38-.L45)/2 674 004c 42 .byte (.L43-.L45)/2 675 004d 42 .byte (.L43-.L45)/2 676 004e 42 .byte (.L43-.L45)/2 677 004f 42 .byte (.L43-.L45)/2 678 0050 16 .byte (.L47-.L45)/2 679 0051 42 .byte (.L43-.L45)/2 680 0052 42 .byte (.L43-.L45)/2 681 0053 42 .byte (.L43-.L45)/2 682 0054 22 .byte (.L46-.L45)/2 683 0055 30 .byte (.L44-.L45)/2 684 .p2align 1 685 .L48: 460:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 686 .loc 1 460 11 is_stmt 1 view .LVU191 460:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 687 .loc 1 460 19 is_stmt 0 view .LVU192 688 0056 90F89C32 ldrb r3, [r0, #668] @ zero_extendqisi2 689 .LVL60: 460:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 690 .loc 1 460 19 view .LVU193 691 005a DBB2 uxtb r3, r3 460:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 692 .loc 1 460 14 view .LVU194 693 005c 032B cmp r3, #3 ARM GAS /tmp/ccdtFdaF.s page 30 694 005e 03D0 beq .L56 466:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** ret = USBD_FAIL; 695 .loc 1 466 13 is_stmt 1 view .LVU195 696 0060 FFF7FEFF bl USBD_CtlError 697 .LVL61: 467:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 698 .loc 1 467 13 view .LVU196 467:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 699 .loc 1 467 17 is_stmt 0 view .LVU197 700 0064 0324 movs r4, #3 701 0066 39E0 b .L38 702 .LVL62: 703 .L56: 462:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 704 .loc 1 462 13 is_stmt 1 view .LVU198 462:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 705 .loc 1 462 19 is_stmt 0 view .LVU199 706 0068 0222 movs r2, #2 707 006a 0DF10601 add r1, sp, #6 708 .LVL63: 462:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 709 .loc 1 462 19 view .LVU200 710 006e FFF7FEFF bl USBD_CtlSendData 711 .LVL64: 427:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 712 .loc 1 427 22 view .LVU201 713 0072 2C46 mov r4, r5 714 0074 32E0 b .L38 715 .LVL65: 716 .L47: 472:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 717 .loc 1 472 11 is_stmt 1 view .LVU202 472:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 718 .loc 1 472 19 is_stmt 0 view .LVU203 719 0076 4B88 ldrh r3, [r1, #2] 720 .LVL66: 472:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 721 .loc 1 472 34 view .LVU204 722 0078 1B0A lsrs r3, r3, #8 472:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 723 .loc 1 472 14 view .LVU205 724 007a 212B cmp r3, #33 725 007c 2ED1 bne .L38 474:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** len = MIN(USB_AUDIO_DESC_SIZ, req->wLength); 726 .loc 1 474 13 is_stmt 1 view .LVU206 727 .LVL67: 475:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 728 .loc 1 475 13 view .LVU207 475:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 729 .loc 1 475 19 is_stmt 0 view .LVU208 730 007e CA88 ldrh r2, [r1, #6] 731 .LVL68: 477:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 732 .loc 1 477 13 is_stmt 1 view .LVU209 477:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 733 .loc 1 477 19 is_stmt 0 view .LVU210 734 0080 092A cmp r2, #9 ARM GAS /tmp/ccdtFdaF.s page 31 735 0082 28BF it cs 736 0084 0922 movcs r2, #9 737 .LVL69: 477:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 738 .loc 1 477 19 view .LVU211 739 0086 1849 ldr r1, .L58 740 .LVL70: 477:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 741 .loc 1 477 19 view .LVU212 742 0088 FFF7FEFF bl USBD_CtlSendData 743 .LVL71: 477:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 744 .loc 1 477 19 view .LVU213 745 008c 26E0 b .L38 746 .LVL72: 747 .L46: 482:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 748 .loc 1 482 11 is_stmt 1 view .LVU214 482:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 749 .loc 1 482 19 is_stmt 0 view .LVU215 750 008e 90F89C22 ldrb r2, [r0, #668] @ zero_extendqisi2 751 0092 D2B2 uxtb r2, r2 482:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 752 .loc 1 482 14 view .LVU216 753 0094 032A cmp r2, #3 754 0096 03D0 beq .L57 488:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** ret = USBD_FAIL; 755 .loc 1 488 13 is_stmt 1 view .LVU217 756 0098 FFF7FEFF bl USBD_CtlError 757 .LVL73: 489:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 758 .loc 1 489 13 view .LVU218 489:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 759 .loc 1 489 17 is_stmt 0 view .LVU219 760 009c 0324 movs r4, #3 761 009e 1DE0 b .L38 762 .LVL74: 763 .L57: 484:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 764 .loc 1 484 13 is_stmt 1 view .LVU220 484:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 765 .loc 1 484 19 is_stmt 0 view .LVU221 766 00a0 0122 movs r2, #1 767 00a2 1946 mov r1, r3 768 .LVL75: 484:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 769 .loc 1 484 19 view .LVU222 770 00a4 FFF7FEFF bl USBD_CtlSendData 771 .LVL76: 484:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 772 .loc 1 484 19 view .LVU223 773 00a8 18E0 b .L38 774 .LVL77: 775 .L44: 494:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 776 .loc 1 494 11 is_stmt 1 view .LVU224 494:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { ARM GAS /tmp/ccdtFdaF.s page 32 777 .loc 1 494 19 is_stmt 0 view .LVU225 778 00aa 90F89C52 ldrb r5, [r0, #668] @ zero_extendqisi2 779 00ae EDB2 uxtb r5, r5 494:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 780 .loc 1 494 14 view .LVU226 781 00b0 032D cmp r5, #3 782 00b2 08D1 bne .L51 496:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 783 .loc 1 496 13 is_stmt 1 view .LVU227 496:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 784 .loc 1 496 17 is_stmt 0 view .LVU228 785 00b4 8A78 ldrb r2, [r1, #2] @ zero_extendqisi2 496:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 786 .loc 1 496 16 view .LVU229 787 00b6 012A cmp r2, #1 788 00b8 01D8 bhi .L52 498:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 789 .loc 1 498 15 is_stmt 1 view .LVU230 498:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 790 .loc 1 498 35 is_stmt 0 view .LVU231 791 00ba 1A60 str r2, [r3] 792 00bc 0EE0 b .L38 793 .L52: 503:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** ret = USBD_FAIL; 794 .loc 1 503 15 is_stmt 1 view .LVU232 795 00be FFF7FEFF bl USBD_CtlError 796 .LVL78: 504:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 797 .loc 1 504 15 view .LVU233 504:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 798 .loc 1 504 19 is_stmt 0 view .LVU234 799 00c2 2C46 mov r4, r5 800 00c4 0AE0 b .L38 801 .LVL79: 802 .L51: 509:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** ret = USBD_FAIL; 803 .loc 1 509 13 is_stmt 1 view .LVU235 804 00c6 FFF7FEFF bl USBD_CtlError 805 .LVL80: 510:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 806 .loc 1 510 13 view .LVU236 510:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 807 .loc 1 510 17 is_stmt 0 view .LVU237 808 00ca 0324 movs r4, #3 809 00cc 06E0 b .L38 810 .LVL81: 811 .L43: 518:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** ret = USBD_FAIL; 812 .loc 1 518 11 is_stmt 1 view .LVU238 813 00ce FFF7FEFF bl USBD_CtlError 814 .LVL82: 519:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** break; 815 .loc 1 519 11 view .LVU239 520:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 816 .loc 1 520 11 view .LVU240 519:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** break; 817 .loc 1 519 15 is_stmt 0 view .LVU241 ARM GAS /tmp/ccdtFdaF.s page 33 818 00d2 0324 movs r4, #3 520:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 819 .loc 1 520 11 view .LVU242 820 00d4 02E0 b .L38 821 .LVL83: 822 .L40: 524:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** ret = USBD_FAIL; 823 .loc 1 524 7 is_stmt 1 view .LVU243 824 00d6 FFF7FEFF bl USBD_CtlError 825 .LVL84: 525:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** break; 826 .loc 1 525 7 view .LVU244 526:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 827 .loc 1 526 7 view .LVU245 525:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** break; 828 .loc 1 525 11 is_stmt 0 view .LVU246 829 00da 0324 movs r4, #3 830 .LVL85: 831 .L38: 530:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 832 .loc 1 530 1 view .LVU247 833 00dc 2046 mov r0, r4 834 00de 03B0 add sp, sp, #12 835 .LCFI6: 836 .cfi_remember_state 837 .cfi_def_cfa_offset 12 838 @ sp needed 839 00e0 30BD pop {r4, r5, pc} 840 .LVL86: 841 .L53: 842 .LCFI7: 843 .cfi_restore_state 433:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 844 .loc 1 433 12 view .LVU248 845 00e2 0324 movs r4, #3 846 00e4 FAE7 b .L38 847 .L59: 848 00e6 00BF .align 2 849 .L58: 850 00e8 12000000 .word USBD_AUDIO_CfgDesc+18 851 .cfi_endproc 852 .LFE335: 854 .section .text.USBD_AUDIO_DeInit,"ax",%progbits 855 .align 1 856 .syntax unified 857 .thumb 858 .thumb_func 860 USBD_AUDIO_DeInit: 861 .LVL87: 862 .LFB334: 394:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** UNUSED(cfgidx); 863 .loc 1 394 1 is_stmt 1 view -0 864 .cfi_startproc 865 @ args = 0, pretend = 0, frame = 0 866 @ frame_needed = 0, uses_anonymous_args = 0 394:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** UNUSED(cfgidx); 867 .loc 1 394 1 is_stmt 0 view .LVU250 ARM GAS /tmp/ccdtFdaF.s page 34 868 0000 10B5 push {r4, lr} 869 .LCFI8: 870 .cfi_def_cfa_offset 8 871 .cfi_offset 4, -8 872 .cfi_offset 14, -4 873 0002 0446 mov r4, r0 395:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 874 .loc 1 395 3 is_stmt 1 view .LVU251 398:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** pdev->ep_out[AUDIO_OUT_EP & 0xFU].is_used = 0U; 875 .loc 1 398 3 view .LVU252 398:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** pdev->ep_out[AUDIO_OUT_EP & 0xFU].is_used = 0U; 876 .loc 1 398 9 is_stmt 0 view .LVU253 877 0004 0121 movs r1, #1 878 .LVL88: 398:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** pdev->ep_out[AUDIO_OUT_EP & 0xFU].is_used = 0U; 879 .loc 1 398 9 view .LVU254 880 0006 FFF7FEFF bl USBD_LL_CloseEP 881 .LVL89: 399:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** pdev->ep_out[AUDIO_OUT_EP & 0xFU].bInterval = 0U; 882 .loc 1 399 3 is_stmt 1 view .LVU255 399:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** pdev->ep_out[AUDIO_OUT_EP & 0xFU].bInterval = 0U; 883 .loc 1 399 45 is_stmt 0 view .LVU256 884 000a 0023 movs r3, #0 885 000c A4F87831 strh r3, [r4, #376] @ movhi 400:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 886 .loc 1 400 3 is_stmt 1 view .LVU257 400:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 887 .loc 1 400 47 is_stmt 0 view .LVU258 888 0010 A4F87A31 strh r3, [r4, #378] @ movhi 403:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 889 .loc 1 403 3 is_stmt 1 view .LVU259 403:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 890 .loc 1 403 11 is_stmt 0 view .LVU260 891 0014 D4F8BC32 ldr r3, [r4, #700] 403:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 892 .loc 1 403 6 view .LVU261 893 0018 5BB1 cbz r3, .L61 405:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** (void)USBD_free(pdev->pClassData); 894 .loc 1 405 5 is_stmt 1 view .LVU262 405:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** (void)USBD_free(pdev->pClassData); 895 .loc 1 405 35 is_stmt 0 view .LVU263 896 001a D4F8C032 ldr r3, [r4, #704] 405:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** (void)USBD_free(pdev->pClassData); 897 .loc 1 405 47 view .LVU264 898 001e 5B68 ldr r3, [r3, #4] 405:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** (void)USBD_free(pdev->pClassData); 899 .loc 1 405 6 view .LVU265 900 0020 0020 movs r0, #0 901 0022 9847 blx r3 902 .LVL90: 406:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** pdev->pClassData = NULL; 903 .loc 1 406 5 is_stmt 1 view .LVU266 904 0024 D4F8BC02 ldr r0, [r4, #700] 905 0028 FFF7FEFF bl USBD_static_free 906 .LVL91: 407:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 907 .loc 1 407 5 view .LVU267 ARM GAS /tmp/ccdtFdaF.s page 35 407:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 908 .loc 1 407 22 is_stmt 0 view .LVU268 909 002c 0023 movs r3, #0 910 002e C4F8BC32 str r3, [r4, #700] 911 .L61: 410:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 912 .loc 1 410 3 is_stmt 1 view .LVU269 411:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 913 .loc 1 411 1 is_stmt 0 view .LVU270 914 0032 0020 movs r0, #0 915 0034 10BD pop {r4, pc} 411:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 916 .loc 1 411 1 view .LVU271 917 .cfi_endproc 918 .LFE334: 920 .section .text.USBD_AUDIO_Init,"ax",%progbits 921 .align 1 922 .syntax unified 923 .thumb 924 .thumb_func 926 USBD_AUDIO_Init: 927 .LVL92: 928 .LFB333: 337:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** UNUSED(cfgidx); 929 .loc 1 337 1 is_stmt 1 view -0 930 .cfi_startproc 931 @ args = 0, pretend = 0, frame = 0 932 @ frame_needed = 0, uses_anonymous_args = 0 337:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** UNUSED(cfgidx); 933 .loc 1 337 1 is_stmt 0 view .LVU273 934 0000 38B5 push {r3, r4, r5, lr} 935 .LCFI9: 936 .cfi_def_cfa_offset 16 937 .cfi_offset 3, -16 938 .cfi_offset 4, -12 939 .cfi_offset 5, -8 940 .cfi_offset 14, -4 941 0002 0446 mov r4, r0 338:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** USBD_AUDIO_HandleTypeDef *haudio; 942 .loc 1 338 3 is_stmt 1 view .LVU274 339:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 943 .loc 1 339 3 view .LVU275 342:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 944 .loc 1 342 3 view .LVU276 342:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 945 .loc 1 342 12 is_stmt 0 view .LVU277 946 0004 41F6D030 movw r0, #7120 947 .LVL93: 342:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 948 .loc 1 342 12 view .LVU278 949 0008 FFF7FEFF bl USBD_static_malloc 950 .LVL94: 344:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 951 .loc 1 344 3 is_stmt 1 view .LVU279 344:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 952 .loc 1 344 6 is_stmt 0 view .LVU280 953 000c 68B3 cbz r0, .L70 ARM GAS /tmp/ccdtFdaF.s page 36 954 000e 0546 mov r5, r0 350:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 955 .loc 1 350 3 is_stmt 1 view .LVU281 350:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 956 .loc 1 350 20 is_stmt 0 view .LVU282 957 0010 C4F8BC02 str r0, [r4, #700] 352:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 958 .loc 1 352 3 is_stmt 1 view .LVU283 352:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 959 .loc 1 352 11 is_stmt 0 view .LVU284 960 0014 237C ldrb r3, [r4, #16] @ zero_extendqisi2 352:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 961 .loc 1 352 6 view .LVU285 962 0016 6BBB cbnz r3, .L66 354:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 963 .loc 1 354 5 is_stmt 1 view .LVU286 354:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 964 .loc 1 354 49 is_stmt 0 view .LVU287 965 0018 0123 movs r3, #1 966 001a A4F87A31 strh r3, [r4, #378] @ movhi 967 .L67: 362:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** pdev->ep_out[AUDIO_OUT_EP & 0xFU].is_used = 1U; 968 .loc 1 362 3 is_stmt 1 view .LVU288 362:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** pdev->ep_out[AUDIO_OUT_EP & 0xFU].is_used = 1U; 969 .loc 1 362 9 is_stmt 0 view .LVU289 970 001e 5823 movs r3, #88 971 0020 0122 movs r2, #1 972 0022 1146 mov r1, r2 973 0024 2046 mov r0, r4 974 .LVL95: 362:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** pdev->ep_out[AUDIO_OUT_EP & 0xFU].is_used = 1U; 975 .loc 1 362 9 view .LVU290 976 0026 FFF7FEFF bl USBD_LL_OpenEP 977 .LVL96: 363:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 978 .loc 1 363 3 is_stmt 1 view .LVU291 363:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 979 .loc 1 363 45 is_stmt 0 view .LVU292 980 002a 0123 movs r3, #1 981 002c A4F87831 strh r3, [r4, #376] @ movhi 365:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** haudio->offset = AUDIO_OFFSET_UNKNOWN; 982 .loc 1 365 3 is_stmt 1 view .LVU293 365:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** haudio->offset = AUDIO_OFFSET_UNKNOWN; 983 .loc 1 365 23 is_stmt 0 view .LVU294 984 0030 0022 movs r2, #0 985 0032 2A60 str r2, [r5] 366:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** haudio->wr_ptr = 0U; 986 .loc 1 366 3 is_stmt 1 view .LVU295 366:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** haudio->wr_ptr = 0U; 987 .loc 1 366 18 is_stmt 0 view .LVU296 988 0034 05F58053 add r3, r5, #4096 989 0038 0321 movs r1, #3 990 003a 83F8841B strb r1, [r3, #2948] 367:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** haudio->rd_ptr = 0U; 991 .loc 1 367 3 is_stmt 1 view .LVU297 367:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** haudio->rd_ptr = 0U; 992 .loc 1 367 18 is_stmt 0 view .LVU298 ARM GAS /tmp/ccdtFdaF.s page 37 993 003e A3F8882B strh r2, [r3, #2952] @ movhi 368:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** haudio->rd_enable = 0U; 994 .loc 1 368 3 is_stmt 1 view .LVU299 368:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** haudio->rd_enable = 0U; 995 .loc 1 368 18 is_stmt 0 view .LVU300 996 0042 A3F8862B strh r2, [r3, #2950] @ movhi 369:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 997 .loc 1 369 3 is_stmt 1 view .LVU301 369:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 998 .loc 1 369 21 is_stmt 0 view .LVU302 999 0046 83F8852B strb r2, [r3, #2949] 372:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** AUDIO_DEFAULT_VOLUME, 1000 .loc 1 372 3 is_stmt 1 view .LVU303 372:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** AUDIO_DEFAULT_VOLUME, 1001 .loc 1 372 37 is_stmt 0 view .LVU304 1002 004a D4F8C032 ldr r3, [r4, #704] 372:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** AUDIO_DEFAULT_VOLUME, 1003 .loc 1 372 49 view .LVU305 1004 004e 1B68 ldr r3, [r3] 372:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** AUDIO_DEFAULT_VOLUME, 1005 .loc 1 372 8 view .LVU306 1006 0050 4621 movs r1, #70 1007 0052 45F25460 movw r0, #22100 1008 0056 9847 blx r3 1009 .LVL97: 372:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** AUDIO_DEFAULT_VOLUME, 1010 .loc 1 372 6 view .LVU307 1011 0058 80B9 cbnz r0, .L68 380:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** AUDIO_OUT_PACKET); 1012 .loc 1 380 3 is_stmt 1 view .LVU308 380:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** AUDIO_OUT_PACKET); 1013 .loc 1 380 9 is_stmt 0 view .LVU309 1014 005a 5823 movs r3, #88 1015 005c 2A1D adds r2, r5, #4 1016 005e 0121 movs r1, #1 1017 0060 2046 mov r0, r4 1018 0062 FFF7FEFF bl USBD_LL_PrepareReceive 1019 .LVL98: 383:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 1020 .loc 1 383 3 is_stmt 1 view .LVU310 383:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 1021 .loc 1 383 10 is_stmt 0 view .LVU311 1022 0066 0020 movs r0, #0 1023 .LVL99: 1024 .L65: 384:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 1025 .loc 1 384 1 view .LVU312 1026 0068 38BD pop {r3, r4, r5, pc} 1027 .LVL100: 1028 .L70: 346:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** return (uint8_t)USBD_EMEM; 1029 .loc 1 346 5 is_stmt 1 view .LVU313 346:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** return (uint8_t)USBD_EMEM; 1030 .loc 1 346 22 is_stmt 0 view .LVU314 1031 006a 0023 movs r3, #0 1032 006c C4F8BC32 str r3, [r4, #700] 347:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } ARM GAS /tmp/ccdtFdaF.s page 38 1033 .loc 1 347 5 is_stmt 1 view .LVU315 347:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 1034 .loc 1 347 12 is_stmt 0 view .LVU316 1035 0070 0220 movs r0, #2 1036 .LVL101: 347:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 1037 .loc 1 347 12 view .LVU317 1038 0072 F9E7 b .L65 1039 .LVL102: 1040 .L66: 358:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 1041 .loc 1 358 5 is_stmt 1 view .LVU318 358:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 1042 .loc 1 358 49 is_stmt 0 view .LVU319 1043 0074 0123 movs r3, #1 1044 0076 A4F87A31 strh r3, [r4, #378] @ movhi 1045 007a D0E7 b .L67 1046 .LVL103: 1047 .L68: 376:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 1048 .loc 1 376 12 view .LVU320 1049 007c 0320 movs r0, #3 1050 007e F3E7 b .L65 1051 .cfi_endproc 1052 .LFE333: 1054 .section .text.USBD_AUDIO_Sync,"ax",%progbits 1055 .align 1 1056 .global USBD_AUDIO_Sync 1057 .syntax unified 1058 .thumb 1059 .thumb_func 1061 USBD_AUDIO_Sync: 1062 .LVL104: 1063 .LFB341: 626:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** USBD_AUDIO_HandleTypeDef *haudio; 1064 .loc 1 626 1 is_stmt 1 view -0 1065 .cfi_startproc 1066 @ args = 0, pretend = 0, frame = 0 1067 @ frame_needed = 0, uses_anonymous_args = 0 626:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** USBD_AUDIO_HandleTypeDef *haudio; 1068 .loc 1 626 1 is_stmt 0 view .LVU322 1069 0000 10B5 push {r4, lr} 1070 .LCFI10: 1071 .cfi_def_cfa_offset 8 1072 .cfi_offset 4, -8 1073 .cfi_offset 14, -4 627:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** uint32_t BufferSize = AUDIO_TOTAL_BUF_SIZE / 2U; 1074 .loc 1 627 3 is_stmt 1 view .LVU323 628:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 1075 .loc 1 628 3 view .LVU324 1076 .LVL105: 630:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 1077 .loc 1 630 3 view .LVU325 630:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 1078 .loc 1 630 11 is_stmt 0 view .LVU326 1079 0002 D0F8BC42 ldr r4, [r0, #700] 630:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { ARM GAS /tmp/ccdtFdaF.s page 39 1080 .loc 1 630 6 view .LVU327 1081 0006 CCB3 cbz r4, .L71 1082 0008 0B46 mov r3, r1 635:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 1083 .loc 1 635 3 is_stmt 1 view .LVU328 1084 .LVL106: 637:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 1085 .loc 1 637 3 view .LVU329 637:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 1086 .loc 1 637 18 is_stmt 0 view .LVU330 1087 000a 04F58052 add r2, r4, #4096 1088 000e 82F8841B strb r1, [r2, #2948] 639:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 1089 .loc 1 639 3 is_stmt 1 view .LVU331 639:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 1090 .loc 1 639 13 is_stmt 0 view .LVU332 1091 0012 92F8852B ldrb r2, [r2, #2949] @ zero_extendqisi2 639:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 1092 .loc 1 639 6 view .LVU333 1093 0016 012A cmp r2, #1 1094 0018 11D0 beq .L81 1095 .LVL107: 1096 .L73: 650:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 1097 .loc 1 650 3 is_stmt 1 view .LVU334 650:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 1098 .loc 1 650 13 is_stmt 0 view .LVU335 1099 001a 04F58052 add r2, r4, #4096 1100 001e B2F8861B ldrh r1, [r2, #2950] 650:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 1101 .loc 1 650 30 view .LVU336 1102 0022 B2F8882B ldrh r2, [r2, #2952] 650:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 1103 .loc 1 650 6 view .LVU337 1104 0026 9142 cmp r1, r2 1105 0028 1AD9 bls .L74 652:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 1106 .loc 1 652 5 is_stmt 1 view .LVU338 652:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 1107 .loc 1 652 25 is_stmt 0 view .LVU339 1108 002a 891A subs r1, r1, r2 652:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 1109 .loc 1 652 8 view .LVU340 1110 002c 5729 cmp r1, #87 1111 002e 21DD ble .L76 658:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 1112 .loc 1 658 7 is_stmt 1 view .LVU341 658:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 1113 .loc 1 658 10 is_stmt 0 view .LVU342 1114 0030 41F62832 movw r2, #6952 1115 0034 9142 cmp r1, r2 1116 0036 22DC bgt .L77 628:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 1117 .loc 1 628 12 view .LVU343 1118 0038 4FF45C61 mov r1, #3520 1119 003c 1CE0 b .L75 1120 .LVL108: ARM GAS /tmp/ccdtFdaF.s page 40 1121 .L81: 641:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 1122 .loc 1 641 5 is_stmt 1 view .LVU344 641:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 1123 .loc 1 641 11 is_stmt 0 view .LVU345 1124 003e 04F58051 add r1, r4, #4096 1125 .LVL109: 641:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 1126 .loc 1 641 11 view .LVU346 1127 0042 B1F8862B ldrh r2, [r1, #2950] 641:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 1128 .loc 1 641 20 view .LVU347 1129 0046 02F55C62 add r2, r2, #3520 1130 004a 92B2 uxth r2, r2 1131 004c A1F8862B strh r2, [r1, #2950] @ movhi 643:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 1132 .loc 1 643 5 is_stmt 1 view .LVU348 643:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 1133 .loc 1 643 8 is_stmt 0 view .LVU349 1134 0050 B2F5DC5F cmp r2, #7040 1135 0054 E1D1 bne .L73 646:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 1136 .loc 1 646 7 is_stmt 1 view .LVU350 646:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 1137 .loc 1 646 22 is_stmt 0 view .LVU351 1138 0056 0A46 mov r2, r1 1139 0058 0021 movs r1, #0 1140 005a A2F8861B strh r1, [r2, #2950] @ movhi 1141 005e DCE7 b .L73 1142 .L74: 666:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 1143 .loc 1 666 5 is_stmt 1 view .LVU352 666:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 1144 .loc 1 666 25 is_stmt 0 view .LVU353 1145 0060 521A subs r2, r2, r1 666:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 1146 .loc 1 666 8 view .LVU354 1147 0062 572A cmp r2, #87 1148 0064 0EDD ble .L78 672:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 1149 .loc 1 672 7 is_stmt 1 view .LVU355 672:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 1150 .loc 1 672 10 is_stmt 0 view .LVU356 1151 0066 41F62831 movw r1, #6952 1152 006a 8A42 cmp r2, r1 1153 006c 0DDC bgt .L79 628:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 1154 .loc 1 628 12 view .LVU357 1155 006e 4FF45C61 mov r1, #3520 1156 0072 01E0 b .L75 1157 .L76: 654:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 1158 .loc 1 654 18 view .LVU358 1159 0074 40F6C451 movw r1, #3524 1160 .L75: 1161 .LVL110: 679:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { ARM GAS /tmp/ccdtFdaF.s page 41 1162 .loc 1 679 3 is_stmt 1 view .LVU359 679:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 1163 .loc 1 679 6 is_stmt 0 view .LVU360 1164 0078 022B cmp r3, #2 1165 007a 09D0 beq .L82 1166 .LVL111: 1167 .L71: 685:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 1168 .loc 1 685 1 view .LVU361 1169 007c 10BD pop {r4, pc} 1170 .LVL112: 1171 .L77: 660:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 1172 .loc 1 660 20 view .LVU362 1173 007e 40F6BC51 movw r1, #3516 1174 0082 F9E7 b .L75 1175 .L78: 668:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 1176 .loc 1 668 18 view .LVU363 1177 0084 40F6BC51 movw r1, #3516 1178 0088 F6E7 b .L75 1179 .L79: 674:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 1180 .loc 1 674 20 view .LVU364 1181 008a 40F6C451 movw r1, #3524 1182 008e F3E7 b .L75 1183 .LVL113: 1184 .L82: 681:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** BufferSize, AUDIO_CMD_PLAY); 1185 .loc 1 681 5 is_stmt 1 view .LVU365 681:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** BufferSize, AUDIO_CMD_PLAY); 1186 .loc 1 681 35 is_stmt 0 view .LVU366 1187 0090 D0F8C032 ldr r3, [r0, #704] 681:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** BufferSize, AUDIO_CMD_PLAY); 1188 .loc 1 681 47 view .LVU367 1189 0094 9B68 ldr r3, [r3, #8] 681:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** BufferSize, AUDIO_CMD_PLAY); 1190 .loc 1 681 6 view .LVU368 1191 0096 0222 movs r2, #2 1192 0098 201D adds r0, r4, #4 1193 .LVL114: 681:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** BufferSize, AUDIO_CMD_PLAY); 1194 .loc 1 681 6 view .LVU369 1195 009a 9847 blx r3 1196 .LVL115: 683:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 1197 .loc 1 683 5 is_stmt 1 view .LVU370 683:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 1198 .loc 1 683 20 is_stmt 0 view .LVU371 1199 009c 04F58054 add r4, r4, #4096 1200 .LVL116: 683:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 1201 .loc 1 683 20 view .LVU372 1202 00a0 0023 movs r3, #0 1203 00a2 84F8843B strb r3, [r4, #2948] 1204 00a6 E9E7 b .L71 1205 .cfi_endproc ARM GAS /tmp/ccdtFdaF.s page 42 1206 .LFE341: 1208 .section .text.USBD_AUDIO_RegisterInterface,"ax",%progbits 1209 .align 1 1210 .global USBD_AUDIO_RegisterInterface 1211 .syntax unified 1212 .thumb 1213 .thumb_func 1215 USBD_AUDIO_RegisterInterface: 1216 .LVL117: 1217 .LFB348: 841:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 842:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** /** 843:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * @brief USBD_AUDIO_RegisterInterface 844:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * @param fops: Audio interface callback 845:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** * @retval status 846:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** */ 847:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** uint8_t USBD_AUDIO_RegisterInterface(USBD_HandleTypeDef *pdev, 848:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** USBD_AUDIO_ItfTypeDef *fops) 849:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 1218 .loc 1 849 1 is_stmt 1 view -0 1219 .cfi_startproc 1220 @ args = 0, pretend = 0, frame = 0 1221 @ frame_needed = 0, uses_anonymous_args = 0 1222 @ link register save eliminated. 850:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** if (fops == NULL) 1223 .loc 1 850 3 view .LVU374 1224 .loc 1 850 6 is_stmt 0 view .LVU375 1225 0000 19B1 cbz r1, .L85 851:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** { 852:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** return (uint8_t)USBD_FAIL; 853:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 854:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 855:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** pdev->pUserData = fops; 1226 .loc 1 855 3 is_stmt 1 view .LVU376 1227 .loc 1 855 19 is_stmt 0 view .LVU377 1228 0002 C0F8C012 str r1, [r0, #704] 856:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** 857:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** return (uint8_t)USBD_OK; 1229 .loc 1 857 3 is_stmt 1 view .LVU378 1230 .loc 1 857 10 is_stmt 0 view .LVU379 1231 0006 0020 movs r0, #0 1232 .LVL118: 1233 .loc 1 857 10 view .LVU380 1234 0008 7047 bx lr 1235 .LVL119: 1236 .L85: 852:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 1237 .loc 1 852 12 view .LVU381 1238 000a 0320 movs r0, #3 1239 .LVL120: 858:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c **** } 1240 .loc 1 858 1 view .LVU382 1241 000c 7047 bx lr 1242 .cfi_endproc 1243 .LFE348: 1245 .section .data.USBD_AUDIO_DeviceQualifierDesc,"aw" 1246 .align 2 ARM GAS /tmp/ccdtFdaF.s page 43 1249 USBD_AUDIO_DeviceQualifierDesc: 1250 0000 0A060002 .ascii "\012\006\000\002\000\000\000@\001\000" 1250 00000040 1250 0100 1251 .section .data.USBD_AUDIO_CfgDesc,"aw" 1252 .align 2 1255 USBD_AUDIO_CfgDesc: 1256 0000 09026D00 .ascii "\011\002m\000\002\001\000\3002\011\004\000\000\000\001" 1256 020100C0 1256 32090400 1256 000001 1257 000f 01000009 .ascii "\001\000\000\011$\001\000\001'\000\001\001\014$\002" 1257 24010001 1257 27000101 1257 0C2402 1258 001e 01010100 .ascii "\001\001\001\000\001\000\000\000\000\011$\006\002\001" 1258 01000000 1258 00092406 1258 0201 1259 002c 01010000 .ascii "\001\001\000\000\011$\003\003\001\003\000\002\000\011" 1259 09240303 1259 01030002 1259 0009 1260 003a 04010000 .ascii "\004\001\000\000\001\002\000\000\011\004\001\001\001" 1260 01020000 1260 09040101 1260 01 1261 0047 01020000 .ascii "\001\002\000\000\007$\001\001\001\001\000\013$\002\001" 1261 07240101 1261 0101000B 1261 240201 1262 0056 02021001 .ascii "\002\002\020\001TV\000\011\005\001\001X\000\001\000" 1262 54560009 1262 05010158 1262 000100 1263 0065 00072501 .ascii "\000\007%\001\000\000\000\000" 1263 00000000 1264 .global USBD_AUDIO 1265 .section .data.USBD_AUDIO,"aw" 1266 .align 2 1269 USBD_AUDIO: 1270 0000 00000000 .word USBD_AUDIO_Init 1271 0004 00000000 .word USBD_AUDIO_DeInit 1272 0008 00000000 .word USBD_AUDIO_Setup 1273 000c 00000000 .word USBD_AUDIO_EP0_TxReady 1274 0010 00000000 .word USBD_AUDIO_EP0_RxReady 1275 0014 00000000 .word USBD_AUDIO_DataIn 1276 0018 00000000 .word USBD_AUDIO_DataOut 1277 001c 00000000 .word USBD_AUDIO_SOF 1278 0020 00000000 .word USBD_AUDIO_IsoINIncomplete 1279 0024 00000000 .word USBD_AUDIO_IsoOutIncomplete 1280 0028 00000000 .word USBD_AUDIO_GetCfgDesc 1281 002c 00000000 .word USBD_AUDIO_GetCfgDesc 1282 0030 00000000 .word USBD_AUDIO_GetCfgDesc 1283 0034 00000000 .word USBD_AUDIO_GetDeviceQualifierDesc 1284 .text 1285 .Letext0: ARM GAS /tmp/ccdtFdaF.s page 44 1286 .file 2 "/usr/include/newlib/machine/_default_types.h" 1287 .file 3 "/usr/lib/gcc/arm-none-eabi/12.2.1/include/stddef.h" 1288 .file 4 "/usr/include/newlib/sys/_stdint.h" 1289 .file 5 "Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h" 1290 .file 6 "Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Inc/usbd_audio.h" 1291 .file 7 "Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_core.h" 1292 .file 8 "Inc/usbd_conf.h" 1293 .file 9 "Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_ioreq.h" 1294 .file 10 "/usr/include/newlib/string.h" 1295 .file 11 "Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_ctlreq.h" 1296 .file 12 "" ARM GAS /tmp/ccdtFdaF.s page 45 DEFINED SYMBOLS *ABS*:00000000 usbd_audio.c /tmp/ccdtFdaF.s:21 .text.USBD_AUDIO_GetCfgDesc:00000000 $t /tmp/ccdtFdaF.s:26 .text.USBD_AUDIO_GetCfgDesc:00000000 USBD_AUDIO_GetCfgDesc /tmp/ccdtFdaF.s:47 .text.USBD_AUDIO_GetCfgDesc:00000008 $d /tmp/ccdtFdaF.s:1255 .data.USBD_AUDIO_CfgDesc:00000000 USBD_AUDIO_CfgDesc /tmp/ccdtFdaF.s:52 .text.USBD_AUDIO_DataIn:00000000 $t /tmp/ccdtFdaF.s:57 .text.USBD_AUDIO_DataIn:00000000 USBD_AUDIO_DataIn /tmp/ccdtFdaF.s:77 .text.USBD_AUDIO_EP0_RxReady:00000000 $t /tmp/ccdtFdaF.s:82 .text.USBD_AUDIO_EP0_RxReady:00000000 USBD_AUDIO_EP0_RxReady /tmp/ccdtFdaF.s:165 .text.USBD_AUDIO_EP0_TxReady:00000000 $t /tmp/ccdtFdaF.s:170 .text.USBD_AUDIO_EP0_TxReady:00000000 USBD_AUDIO_EP0_TxReady /tmp/ccdtFdaF.s:189 .text.USBD_AUDIO_SOF:00000000 $t /tmp/ccdtFdaF.s:194 .text.USBD_AUDIO_SOF:00000000 USBD_AUDIO_SOF /tmp/ccdtFdaF.s:213 .text.USBD_AUDIO_IsoINIncomplete:00000000 $t /tmp/ccdtFdaF.s:218 .text.USBD_AUDIO_IsoINIncomplete:00000000 USBD_AUDIO_IsoINIncomplete /tmp/ccdtFdaF.s:238 .text.USBD_AUDIO_IsoOutIncomplete:00000000 $t /tmp/ccdtFdaF.s:243 .text.USBD_AUDIO_IsoOutIncomplete:00000000 USBD_AUDIO_IsoOutIncomplete /tmp/ccdtFdaF.s:263 .text.USBD_AUDIO_GetDeviceQualifierDesc:00000000 $t /tmp/ccdtFdaF.s:268 .text.USBD_AUDIO_GetDeviceQualifierDesc:00000000 USBD_AUDIO_GetDeviceQualifierDesc /tmp/ccdtFdaF.s:289 .text.USBD_AUDIO_GetDeviceQualifierDesc:00000008 $d /tmp/ccdtFdaF.s:1249 .data.USBD_AUDIO_DeviceQualifierDesc:00000000 USBD_AUDIO_DeviceQualifierDesc /tmp/ccdtFdaF.s:294 .text.USBD_AUDIO_DataOut:00000000 $t /tmp/ccdtFdaF.s:299 .text.USBD_AUDIO_DataOut:00000000 USBD_AUDIO_DataOut /tmp/ccdtFdaF.s:447 .text.AUDIO_REQ_GetCurrent:00000000 $t /tmp/ccdtFdaF.s:452 .text.AUDIO_REQ_GetCurrent:00000000 AUDIO_REQ_GetCurrent /tmp/ccdtFdaF.s:507 .text.AUDIO_REQ_SetCurrent:00000000 $t /tmp/ccdtFdaF.s:512 .text.AUDIO_REQ_SetCurrent:00000000 AUDIO_REQ_SetCurrent /tmp/ccdtFdaF.s:578 .text.USBD_AUDIO_Setup:00000000 $t /tmp/ccdtFdaF.s:583 .text.USBD_AUDIO_Setup:00000000 USBD_AUDIO_Setup /tmp/ccdtFdaF.s:672 .text.USBD_AUDIO_Setup:0000004a $d /tmp/ccdtFdaF.s:684 .text.USBD_AUDIO_Setup:00000056 $t /tmp/ccdtFdaF.s:850 .text.USBD_AUDIO_Setup:000000e8 $d /tmp/ccdtFdaF.s:855 .text.USBD_AUDIO_DeInit:00000000 $t /tmp/ccdtFdaF.s:860 .text.USBD_AUDIO_DeInit:00000000 USBD_AUDIO_DeInit /tmp/ccdtFdaF.s:921 .text.USBD_AUDIO_Init:00000000 $t /tmp/ccdtFdaF.s:926 .text.USBD_AUDIO_Init:00000000 USBD_AUDIO_Init /tmp/ccdtFdaF.s:1055 .text.USBD_AUDIO_Sync:00000000 $t /tmp/ccdtFdaF.s:1061 .text.USBD_AUDIO_Sync:00000000 USBD_AUDIO_Sync /tmp/ccdtFdaF.s:1209 .text.USBD_AUDIO_RegisterInterface:00000000 $t /tmp/ccdtFdaF.s:1215 .text.USBD_AUDIO_RegisterInterface:00000000 USBD_AUDIO_RegisterInterface /tmp/ccdtFdaF.s:1246 .data.USBD_AUDIO_DeviceQualifierDesc:00000000 $d /tmp/ccdtFdaF.s:1252 .data.USBD_AUDIO_CfgDesc:00000000 $d /tmp/ccdtFdaF.s:1269 .data.USBD_AUDIO:00000000 USBD_AUDIO /tmp/ccdtFdaF.s:1266 .data.USBD_AUDIO:00000000 $d UNDEFINED SYMBOLS USBD_LL_GetRxDataSize USBD_LL_PrepareReceive memset USBD_CtlSendData USBD_CtlPrepareRx USBD_CtlError USBD_LL_CloseEP USBD_static_free USBD_static_malloc USBD_LL_OpenEP ARM GAS /tmp/ccdtFdaF.s page 46