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 ****   * <h2><center>&copy; Copyright (c) 2015 STMicroelectronics.
  46:Middlewares/ST/STM32_USB_Device_Library/Class/AUDIO/Src/usbd_audio.c ****   * All rights reserved.</center></h2>
  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 "<built-in>"
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


