ARM GAS  C:\Users\antras\AppData\Local\Temp\ccNHhjAe.s 			page 1


   1              		.cpu cortex-m3
   2              		.eabi_attribute 20, 1
   3              		.eabi_attribute 21, 1
   4              		.eabi_attribute 23, 3
   5              		.eabi_attribute 24, 1
   6              		.eabi_attribute 25, 1
   7              		.eabi_attribute 26, 1
   8              		.eabi_attribute 30, 1
   9              		.eabi_attribute 34, 1
  10              		.eabi_attribute 18, 4
  11              		.file	"usbd_core.c"
  12              		.text
  13              	.Ltext0:
  14              		.cfi_sections	.debug_frame
  15              		.section	.text.USBD_Init,"ax",%progbits
  16              		.align	1
  17              		.global	USBD_Init
  18              		.syntax unified
  19              		.thumb
  20              		.thumb_func
  21              		.fpu softvfp
  23              	USBD_Init:
  24              	.LFB66:
  25              		.file 1 "Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c"
   1:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /**
   2:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   ******************************************************************************
   3:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   * @file    usbd_core.c
   4:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   * @author  MCD Application Team
   5:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   * @brief   This file provides all the USBD core functions.
   6:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   ******************************************************************************
   7:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   * @attention
   8:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   *
   9:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   * <h2><center>&copy; Copyright (c) 2015 STMicroelectronics.
  10:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   * All rights reserved.</center></h2>
  11:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   *
  12:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   * This software component is licensed by ST under Ultimate Liberty license
  13:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   * SLA0044, the "License"; You may not use this file except in compliance with
  14:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   * the License. You may obtain a copy of the License at:
  15:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   *                      www.st.com/SLA0044
  16:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   *
  17:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   ******************************************************************************
  18:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   */
  19:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** 
  20:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /* Includes ------------------------------------------------------------------*/
  21:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** #include "usbd_core.h"
  22:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** 
  23:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /** @addtogroup STM32_USBD_DEVICE_LIBRARY
  24:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @{
  25:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** */
  26:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** 
  27:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** 
  28:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /** @defgroup USBD_CORE
  29:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @brief usbd core module
  30:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @{
  31:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** */
  32:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** 
  33:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /** @defgroup USBD_CORE_Private_TypesDefinitions
ARM GAS  C:\Users\antras\AppData\Local\Temp\ccNHhjAe.s 			page 2


  34:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @{
  35:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** */
  36:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** 
  37:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /**
  38:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @}
  39:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** */
  40:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** 
  41:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** 
  42:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /** @defgroup USBD_CORE_Private_Defines
  43:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @{
  44:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** */
  45:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** 
  46:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /**
  47:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @}
  48:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** */
  49:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** 
  50:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** 
  51:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /** @defgroup USBD_CORE_Private_Macros
  52:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @{
  53:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** */
  54:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** 
  55:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /**
  56:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @}
  57:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** */
  58:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** 
  59:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** 
  60:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /** @defgroup USBD_CORE_Private_FunctionPrototypes
  61:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @{
  62:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** */
  63:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** 
  64:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /**
  65:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @}
  66:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** */
  67:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** 
  68:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /** @defgroup USBD_CORE_Private_Variables
  69:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @{
  70:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** */
  71:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** 
  72:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /**
  73:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @}
  74:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** */
  75:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** 
  76:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** 
  77:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /** @defgroup USBD_CORE_Private_Functions
  78:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @{
  79:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** */
  80:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** 
  81:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /**
  82:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @brief  USBD_Init
  83:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** *         Initializes the device stack and load the class driver
  84:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @param  pdev: device instance
  85:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @param  pdesc: Descriptor structure address
  86:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @param  id: Low level core index
  87:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @retval None
  88:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** */
  89:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_StatusTypeDef USBD_Init(USBD_HandleTypeDef *pdev,
  90:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****                              USBD_DescriptorsTypeDef *pdesc, uint8_t id)
ARM GAS  C:\Users\antras\AppData\Local\Temp\ccNHhjAe.s 			page 3


  91:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
  26              		.loc 1 91 0
  27              		.cfi_startproc
  28              		@ args = 0, pretend = 0, frame = 0
  29              		@ frame_needed = 0, uses_anonymous_args = 0
  30              	.LVL0:
  92:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   /* Check whether the USB Host handle is valid */
  93:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   if (pdev == NULL)
  31              		.loc 1 93 0
  32 0000 98B1     		cbz	r0, .L5
  91:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   /* Check whether the USB Host handle is valid */
  33              		.loc 1 91 0
  34 0002 08B5     		push	{r3, lr}
  35              	.LCFI0:
  36              		.cfi_def_cfa_offset 8
  37              		.cfi_offset 3, -8
  38              		.cfi_offset 14, -4
  39 0004 0346     		mov	r3, r0
  94:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   {
  95:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** #if (USBD_DEBUG_LEVEL > 1U)
  96:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****     USBD_ErrLog("Invalid Device handle");
  97:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** #endif
  98:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****     return USBD_FAIL;
  99:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   }
 100:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** 
 101:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   /* Unlink previous class*/
 102:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   if (pdev->pClass != NULL)
  40              		.loc 1 102 0
  41 0006 D0F8B402 		ldr	r0, [r0, #692]
  42              	.LVL1:
  43 000a 10B1     		cbz	r0, .L3
 103:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   {
 104:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****     pdev->pClass = NULL;
  44              		.loc 1 104 0
  45 000c 0020     		movs	r0, #0
  46 000e C3F8B402 		str	r0, [r3, #692]
  47              	.L3:
 105:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   }
 106:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** 
 107:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   /* Assign USBD Descriptors */
 108:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   if (pdesc != NULL)
  48              		.loc 1 108 0
  49 0012 09B1     		cbz	r1, .L4
 109:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   {
 110:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****     pdev->pDesc = pdesc;
  50              		.loc 1 110 0
  51 0014 C3F8B012 		str	r1, [r3, #688]
  52              	.L4:
  53 0018 1846     		mov	r0, r3
 111:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   }
 112:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** 
 113:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   /* Set Device initial State */
 114:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   pdev->dev_state = USBD_STATE_DEFAULT;
  54              		.loc 1 114 0
  55 001a 0123     		movs	r3, #1
  56              	.LVL2:
  57 001c 80F89C32 		strb	r3, [r0, #668]
ARM GAS  C:\Users\antras\AppData\Local\Temp\ccNHhjAe.s 			page 4


 115:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   pdev->id = id;
  58              		.loc 1 115 0
  59 0020 0270     		strb	r2, [r0]
 116:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   /* Initialize low level driver */
 117:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   USBD_LL_Init(pdev);
  60              		.loc 1 117 0
  61 0022 FFF7FEFF 		bl	USBD_LL_Init
  62              	.LVL3:
 118:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** 
 119:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   return USBD_OK;
  63              		.loc 1 119 0
  64 0026 0020     		movs	r0, #0
  65 0028 08BD     		pop	{r3, pc}
  66              	.LVL4:
  67              	.L5:
  68              	.LCFI1:
  69              		.cfi_def_cfa_offset 0
  70              		.cfi_restore 3
  71              		.cfi_restore 14
  98:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   }
  72              		.loc 1 98 0
  73 002a 0220     		movs	r0, #2
  74              	.LVL5:
  75 002c 7047     		bx	lr
  76              		.cfi_endproc
  77              	.LFE66:
  79              		.section	.text.USBD_DeInit,"ax",%progbits
  80              		.align	1
  81              		.global	USBD_DeInit
  82              		.syntax unified
  83              		.thumb
  84              		.thumb_func
  85              		.fpu softvfp
  87              	USBD_DeInit:
  88              	.LFB67:
 120:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
 121:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** 
 122:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /**
 123:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @brief  USBD_DeInit
 124:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** *         Re-Initialize th device library
 125:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @param  pdev: device instance
 126:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @retval status: status
 127:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** */
 128:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_StatusTypeDef USBD_DeInit(USBD_HandleTypeDef *pdev)
 129:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
  89              		.loc 1 129 0
  90              		.cfi_startproc
  91              		@ args = 0, pretend = 0, frame = 0
  92              		@ frame_needed = 0, uses_anonymous_args = 0
  93              	.LVL6:
  94 0000 10B5     		push	{r4, lr}
  95              	.LCFI2:
  96              		.cfi_def_cfa_offset 8
  97              		.cfi_offset 4, -8
  98              		.cfi_offset 14, -4
  99 0002 0446     		mov	r4, r0
 130:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   /* Set Default State */
ARM GAS  C:\Users\antras\AppData\Local\Temp\ccNHhjAe.s 			page 5


 131:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   pdev->dev_state = USBD_STATE_DEFAULT;
 100              		.loc 1 131 0
 101 0004 0123     		movs	r3, #1
 102 0006 80F89C32 		strb	r3, [r0, #668]
 132:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** 
 133:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   /* Free Class Resources */
 134:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   pdev->pClass->DeInit(pdev, (uint8_t)pdev->dev_config);
 103              		.loc 1 134 0
 104 000a D0F8B432 		ldr	r3, [r0, #692]
 105 000e 5B68     		ldr	r3, [r3, #4]
 106 0010 0179     		ldrb	r1, [r0, #4]	@ zero_extendqisi2
 107 0012 9847     		blx	r3
 108              	.LVL7:
 135:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** 
 136:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   /* Stop the low level driver  */
 137:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   USBD_LL_Stop(pdev);
 109              		.loc 1 137 0
 110 0014 2046     		mov	r0, r4
 111 0016 FFF7FEFF 		bl	USBD_LL_Stop
 112              	.LVL8:
 138:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** 
 139:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   /* Initialize low level driver */
 140:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   USBD_LL_DeInit(pdev);
 113              		.loc 1 140 0
 114 001a 2046     		mov	r0, r4
 115 001c FFF7FEFF 		bl	USBD_LL_DeInit
 116              	.LVL9:
 141:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** 
 142:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   return USBD_OK;
 143:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
 117              		.loc 1 143 0
 118 0020 0020     		movs	r0, #0
 119 0022 10BD     		pop	{r4, pc}
 120              		.cfi_endproc
 121              	.LFE67:
 123              		.section	.text.USBD_RegisterClass,"ax",%progbits
 124              		.align	1
 125              		.global	USBD_RegisterClass
 126              		.syntax unified
 127              		.thumb
 128              		.thumb_func
 129              		.fpu softvfp
 131              	USBD_RegisterClass:
 132              	.LFB68:
 144:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** 
 145:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /**
 146:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   * @brief  USBD_RegisterClass
 147:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   *         Link class driver to Device Core.
 148:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   * @param  pDevice : Device Handle
 149:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   * @param  pclass: Class handle
 150:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   * @retval USBD Status
 151:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   */
 152:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_StatusTypeDef  USBD_RegisterClass(USBD_HandleTypeDef *pdev, USBD_ClassTypeDef *pclass)
 153:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
 133              		.loc 1 153 0
 134              		.cfi_startproc
 135              		@ args = 0, pretend = 0, frame = 0
ARM GAS  C:\Users\antras\AppData\Local\Temp\ccNHhjAe.s 			page 6


 136              		@ frame_needed = 0, uses_anonymous_args = 0
 137              		@ link register save eliminated.
 138              	.LVL10:
 154:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   USBD_StatusTypeDef status = USBD_OK;
 155:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   if (pclass != NULL)
 139              		.loc 1 155 0
 140 0000 19B1     		cbz	r1, .L14
 156:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   {
 157:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****     /* link the class to the USB Device handle */
 158:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****     pdev->pClass = pclass;
 141              		.loc 1 158 0
 142 0002 C0F8B412 		str	r1, [r0, #692]
 159:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****     status = USBD_OK;
 143              		.loc 1 159 0
 144 0006 0020     		movs	r0, #0
 145              	.LVL11:
 146 0008 7047     		bx	lr
 147              	.LVL12:
 148              	.L14:
 160:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   }
 161:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   else
 162:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   {
 163:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** #if (USBD_DEBUG_LEVEL > 1U)
 164:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****     USBD_ErrLog("Invalid Class handle");
 165:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** #endif
 166:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****     status = USBD_FAIL;
 149              		.loc 1 166 0
 150 000a 0220     		movs	r0, #2
 151              	.LVL13:
 167:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   }
 168:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** 
 169:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   return status;
 170:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
 152              		.loc 1 170 0
 153 000c 7047     		bx	lr
 154              		.cfi_endproc
 155              	.LFE68:
 157              		.section	.text.USBD_Start,"ax",%progbits
 158              		.align	1
 159              		.global	USBD_Start
 160              		.syntax unified
 161              		.thumb
 162              		.thumb_func
 163              		.fpu softvfp
 165              	USBD_Start:
 166              	.LFB69:
 171:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** 
 172:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /**
 173:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   * @brief  USBD_Start
 174:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   *         Start the USB Device Core.
 175:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   * @param  pdev: Device Handle
 176:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   * @retval USBD Status
 177:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   */
 178:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_StatusTypeDef  USBD_Start(USBD_HandleTypeDef *pdev)
 179:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
 167              		.loc 1 179 0
 168              		.cfi_startproc
ARM GAS  C:\Users\antras\AppData\Local\Temp\ccNHhjAe.s 			page 7


 169              		@ args = 0, pretend = 0, frame = 0
 170              		@ frame_needed = 0, uses_anonymous_args = 0
 171              	.LVL14:
 172 0000 08B5     		push	{r3, lr}
 173              	.LCFI3:
 174              		.cfi_def_cfa_offset 8
 175              		.cfi_offset 3, -8
 176              		.cfi_offset 14, -4
 180:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   /* Start the low level driver  */
 181:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   USBD_LL_Start(pdev);
 177              		.loc 1 181 0
 178 0002 FFF7FEFF 		bl	USBD_LL_Start
 179              	.LVL15:
 182:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** 
 183:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   return USBD_OK;
 184:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
 180              		.loc 1 184 0
 181 0006 0020     		movs	r0, #0
 182 0008 08BD     		pop	{r3, pc}
 183              		.cfi_endproc
 184              	.LFE69:
 186              		.section	.text.USBD_Stop,"ax",%progbits
 187              		.align	1
 188              		.global	USBD_Stop
 189              		.syntax unified
 190              		.thumb
 191              		.thumb_func
 192              		.fpu softvfp
 194              	USBD_Stop:
 195              	.LFB70:
 185:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** 
 186:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /**
 187:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   * @brief  USBD_Stop
 188:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   *         Stop the USB Device Core.
 189:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   * @param  pdev: Device Handle
 190:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   * @retval USBD Status
 191:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   */
 192:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_StatusTypeDef  USBD_Stop(USBD_HandleTypeDef *pdev)
 193:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
 196              		.loc 1 193 0
 197              		.cfi_startproc
 198              		@ args = 0, pretend = 0, frame = 0
 199              		@ frame_needed = 0, uses_anonymous_args = 0
 200              	.LVL16:
 201 0000 10B5     		push	{r4, lr}
 202              	.LCFI4:
 203              		.cfi_def_cfa_offset 8
 204              		.cfi_offset 4, -8
 205              		.cfi_offset 14, -4
 206 0002 0446     		mov	r4, r0
 194:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   /* Free Class Resources */
 195:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   pdev->pClass->DeInit(pdev, (uint8_t)pdev->dev_config);
 207              		.loc 1 195 0
 208 0004 D0F8B432 		ldr	r3, [r0, #692]
 209 0008 5B68     		ldr	r3, [r3, #4]
 210 000a 0179     		ldrb	r1, [r0, #4]	@ zero_extendqisi2
 211 000c 9847     		blx	r3
ARM GAS  C:\Users\antras\AppData\Local\Temp\ccNHhjAe.s 			page 8


 212              	.LVL17:
 196:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** 
 197:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   /* Stop the low level driver */
 198:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   USBD_LL_Stop(pdev);
 213              		.loc 1 198 0
 214 000e 2046     		mov	r0, r4
 215 0010 FFF7FEFF 		bl	USBD_LL_Stop
 216              	.LVL18:
 199:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** 
 200:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   return USBD_OK;
 201:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
 217              		.loc 1 201 0
 218 0014 0020     		movs	r0, #0
 219 0016 10BD     		pop	{r4, pc}
 220              		.cfi_endproc
 221              	.LFE70:
 223              		.section	.text.USBD_RunTestMode,"ax",%progbits
 224              		.align	1
 225              		.global	USBD_RunTestMode
 226              		.syntax unified
 227              		.thumb
 228              		.thumb_func
 229              		.fpu softvfp
 231              	USBD_RunTestMode:
 232              	.LFB71:
 202:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** 
 203:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /**
 204:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @brief  USBD_RunTestMode
 205:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** *         Launch test mode process
 206:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @param  pdev: device instance
 207:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @retval status
 208:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** */
 209:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_StatusTypeDef  USBD_RunTestMode(USBD_HandleTypeDef  *pdev)
 210:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
 233              		.loc 1 210 0
 234              		.cfi_startproc
 235              		@ args = 0, pretend = 0, frame = 0
 236              		@ frame_needed = 0, uses_anonymous_args = 0
 237              		@ link register save eliminated.
 238              	.LVL19:
 211:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   /* Prevent unused argument compilation warning */
 212:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   UNUSED(pdev);
 213:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** 
 214:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   return USBD_OK;
 215:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
 239              		.loc 1 215 0
 240 0000 0020     		movs	r0, #0
 241              	.LVL20:
 242 0002 7047     		bx	lr
 243              		.cfi_endproc
 244              	.LFE71:
 246              		.section	.text.USBD_SetClassConfig,"ax",%progbits
 247              		.align	1
 248              		.global	USBD_SetClassConfig
 249              		.syntax unified
 250              		.thumb
 251              		.thumb_func
ARM GAS  C:\Users\antras\AppData\Local\Temp\ccNHhjAe.s 			page 9


 252              		.fpu softvfp
 254              	USBD_SetClassConfig:
 255              	.LFB72:
 216:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** 
 217:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /**
 218:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @brief  USBD_SetClassConfig
 219:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** *        Configure device and start the interface
 220:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @param  pdev: device instance
 221:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @param  cfgidx: configuration index
 222:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @retval status
 223:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** */
 224:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** 
 225:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_StatusTypeDef USBD_SetClassConfig(USBD_HandleTypeDef  *pdev, uint8_t cfgidx)
 226:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
 256              		.loc 1 226 0
 257              		.cfi_startproc
 258              		@ args = 0, pretend = 0, frame = 0
 259              		@ frame_needed = 0, uses_anonymous_args = 0
 260              	.LVL21:
 261 0000 08B5     		push	{r3, lr}
 262              	.LCFI5:
 263              		.cfi_def_cfa_offset 8
 264              		.cfi_offset 3, -8
 265              		.cfi_offset 14, -4
 266              	.LVL22:
 227:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   USBD_StatusTypeDef ret = USBD_FAIL;
 228:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** 
 229:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   if (pdev->pClass != NULL)
 267              		.loc 1 229 0
 268 0002 D0F8B432 		ldr	r3, [r0, #692]
 269 0006 23B1     		cbz	r3, .L22
 230:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   {
 231:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****     /* Set configuration  and Start the Class*/
 232:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****     if (pdev->pClass->Init(pdev, cfgidx) == 0U)
 270              		.loc 1 232 0
 271 0008 1B68     		ldr	r3, [r3]
 272 000a 9847     		blx	r3
 273              	.LVL23:
 274 000c 18B1     		cbz	r0, .L23
 227:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   USBD_StatusTypeDef ret = USBD_FAIL;
 275              		.loc 1 227 0
 276 000e 0220     		movs	r0, #2
 277 0010 08BD     		pop	{r3, pc}
 278              	.LVL24:
 279              	.L22:
 280 0012 0220     		movs	r0, #2
 281              	.LVL25:
 282 0014 08BD     		pop	{r3, pc}
 283              	.LVL26:
 284              	.L23:
 233:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****     {
 234:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****       ret = USBD_OK;
 285              		.loc 1 234 0
 286 0016 0020     		movs	r0, #0
 287              	.LVL27:
 235:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****     }
 236:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   }
ARM GAS  C:\Users\antras\AppData\Local\Temp\ccNHhjAe.s 			page 10


 237:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** 
 238:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   return ret;
 239:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
 288              		.loc 1 239 0
 289 0018 08BD     		pop	{r3, pc}
 290              		.cfi_endproc
 291              	.LFE72:
 293              		.section	.text.USBD_ClrClassConfig,"ax",%progbits
 294              		.align	1
 295              		.global	USBD_ClrClassConfig
 296              		.syntax unified
 297              		.thumb
 298              		.thumb_func
 299              		.fpu softvfp
 301              	USBD_ClrClassConfig:
 302              	.LFB73:
 240:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** 
 241:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /**
 242:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @brief  USBD_ClrClassConfig
 243:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** *         Clear current configuration
 244:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @param  pdev: device instance
 245:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @param  cfgidx: configuration index
 246:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @retval status: USBD_StatusTypeDef
 247:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** */
 248:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_StatusTypeDef USBD_ClrClassConfig(USBD_HandleTypeDef  *pdev, uint8_t cfgidx)
 249:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
 303              		.loc 1 249 0
 304              		.cfi_startproc
 305              		@ args = 0, pretend = 0, frame = 0
 306              		@ frame_needed = 0, uses_anonymous_args = 0
 307              	.LVL28:
 308 0000 08B5     		push	{r3, lr}
 309              	.LCFI6:
 310              		.cfi_def_cfa_offset 8
 311              		.cfi_offset 3, -8
 312              		.cfi_offset 14, -4
 250:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   /* Clear configuration  and De-initialize the Class process*/
 251:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   pdev->pClass->DeInit(pdev, cfgidx);
 313              		.loc 1 251 0
 314 0002 D0F8B432 		ldr	r3, [r0, #692]
 315 0006 5B68     		ldr	r3, [r3, #4]
 316 0008 9847     		blx	r3
 317              	.LVL29:
 252:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** 
 253:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   return USBD_OK;
 254:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
 318              		.loc 1 254 0
 319 000a 0020     		movs	r0, #0
 320 000c 08BD     		pop	{r3, pc}
 321              		.cfi_endproc
 322              	.LFE73:
 324              		.section	.text.USBD_LL_SetupStage,"ax",%progbits
 325              		.align	1
 326              		.global	USBD_LL_SetupStage
 327              		.syntax unified
 328              		.thumb
 329              		.thumb_func
ARM GAS  C:\Users\antras\AppData\Local\Temp\ccNHhjAe.s 			page 11


 330              		.fpu softvfp
 332              	USBD_LL_SetupStage:
 333              	.LFB74:
 255:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** 
 256:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** 
 257:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /**
 258:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @brief  USBD_SetupStage
 259:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** *         Handle the setup stage
 260:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @param  pdev: device instance
 261:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @retval status
 262:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** */
 263:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_StatusTypeDef USBD_LL_SetupStage(USBD_HandleTypeDef *pdev, uint8_t *psetup)
 264:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
 334              		.loc 1 264 0
 335              		.cfi_startproc
 336              		@ args = 0, pretend = 0, frame = 0
 337              		@ frame_needed = 0, uses_anonymous_args = 0
 338              	.LVL30:
 339 0000 38B5     		push	{r3, r4, r5, lr}
 340              	.LCFI7:
 341              		.cfi_def_cfa_offset 16
 342              		.cfi_offset 3, -16
 343              		.cfi_offset 4, -12
 344              		.cfi_offset 5, -8
 345              		.cfi_offset 14, -4
 346 0002 0446     		mov	r4, r0
 265:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   USBD_ParseSetupRequest(&pdev->request, psetup);
 347              		.loc 1 265 0
 348 0004 00F52A75 		add	r5, r0, #680
 349 0008 2846     		mov	r0, r5
 350              	.LVL31:
 351 000a FFF7FEFF 		bl	USBD_ParseSetupRequest
 352              	.LVL32:
 266:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** 
 267:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   pdev->ep0_state = USBD_EP0_SETUP;
 353              		.loc 1 267 0
 354 000e 0123     		movs	r3, #1
 355 0010 C4F89432 		str	r3, [r4, #660]
 268:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** 
 269:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   pdev->ep0_data_len = pdev->request.wLength;
 356              		.loc 1 269 0
 357 0014 B4F8AE32 		ldrh	r3, [r4, #686]
 358 0018 C4F89832 		str	r3, [r4, #664]
 270:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** 
 271:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   switch (pdev->request.bmRequest & 0x1FU)
 359              		.loc 1 271 0
 360 001c 94F8A812 		ldrb	r1, [r4, #680]	@ zero_extendqisi2
 361 0020 01F01F03 		and	r3, r1, #31
 362 0024 012B     		cmp	r3, #1
 363 0026 0ED0     		beq	.L29
 364 0028 3BB1     		cbz	r3, .L30
 365 002a 022B     		cmp	r3, #2
 366 002c 10D0     		beq	.L31
 272:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   {
 273:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****     case USB_REQ_RECIPIENT_DEVICE:
 274:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****       USBD_StdDevReq(pdev, &pdev->request);
 275:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****       break;
ARM GAS  C:\Users\antras\AppData\Local\Temp\ccNHhjAe.s 			page 12


 276:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** 
 277:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****     case USB_REQ_RECIPIENT_INTERFACE:
 278:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****       USBD_StdItfReq(pdev, &pdev->request);
 279:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****       break;
 280:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** 
 281:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****     case USB_REQ_RECIPIENT_ENDPOINT:
 282:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****       USBD_StdEPReq(pdev, &pdev->request);
 283:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****       break;
 284:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** 
 285:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****     default:
 286:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****       USBD_LL_StallEP(pdev, (pdev->request.bmRequest & 0x80U));
 367              		.loc 1 286 0
 368 002e 01F08001 		and	r1, r1, #128
 369 0032 2046     		mov	r0, r4
 370 0034 FFF7FEFF 		bl	USBD_LL_StallEP
 371              	.LVL33:
 287:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****       break;
 372              		.loc 1 287 0
 373 0038 03E0     		b	.L32
 374              	.L30:
 274:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****       break;
 375              		.loc 1 274 0
 376 003a 2946     		mov	r1, r5
 377 003c 2046     		mov	r0, r4
 378 003e FFF7FEFF 		bl	USBD_StdDevReq
 379              	.LVL34:
 380              	.L32:
 288:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   }
 289:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** 
 290:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   return USBD_OK;
 291:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
 381              		.loc 1 291 0
 382 0042 0020     		movs	r0, #0
 383 0044 38BD     		pop	{r3, r4, r5, pc}
 384              	.LVL35:
 385              	.L29:
 278:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****       break;
 386              		.loc 1 278 0
 387 0046 2946     		mov	r1, r5
 388 0048 2046     		mov	r0, r4
 389 004a FFF7FEFF 		bl	USBD_StdItfReq
 390              	.LVL36:
 279:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** 
 391              		.loc 1 279 0
 392 004e F8E7     		b	.L32
 393              	.L31:
 282:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****       break;
 394              		.loc 1 282 0
 395 0050 2946     		mov	r1, r5
 396 0052 2046     		mov	r0, r4
 397 0054 FFF7FEFF 		bl	USBD_StdEPReq
 398              	.LVL37:
 283:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** 
 399              		.loc 1 283 0
 400 0058 F3E7     		b	.L32
 401              		.cfi_endproc
 402              	.LFE74:
ARM GAS  C:\Users\antras\AppData\Local\Temp\ccNHhjAe.s 			page 13


 404              		.section	.text.USBD_LL_DataOutStage,"ax",%progbits
 405              		.align	1
 406              		.global	USBD_LL_DataOutStage
 407              		.syntax unified
 408              		.thumb
 409              		.thumb_func
 410              		.fpu softvfp
 412              	USBD_LL_DataOutStage:
 413              	.LFB75:
 292:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** 
 293:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /**
 294:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @brief  USBD_DataOutStage
 295:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** *         Handle data OUT stage
 296:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @param  pdev: device instance
 297:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @param  epnum: endpoint index
 298:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @retval status
 299:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** */
 300:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_StatusTypeDef USBD_LL_DataOutStage(USBD_HandleTypeDef *pdev,
 301:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****                                         uint8_t epnum, uint8_t *pdata)
 302:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
 414              		.loc 1 302 0
 415              		.cfi_startproc
 416              		@ args = 0, pretend = 0, frame = 0
 417              		@ frame_needed = 0, uses_anonymous_args = 0
 418              	.LVL38:
 419 0000 38B5     		push	{r3, r4, r5, lr}
 420              	.LCFI8:
 421              		.cfi_def_cfa_offset 16
 422              		.cfi_offset 3, -16
 423              		.cfi_offset 4, -12
 424              		.cfi_offset 5, -8
 425              		.cfi_offset 14, -4
 426 0002 0446     		mov	r4, r0
 303:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   USBD_EndpointTypeDef *pep;
 304:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** 
 305:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   if (epnum == 0U)
 427              		.loc 1 305 0
 428 0004 A9BB     		cbnz	r1, .L36
 429 0006 1046     		mov	r0, r2
 430              	.LVL39:
 306:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   {
 307:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****     pep = &pdev->ep_out[0];
 308:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** 
 309:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****     if (pdev->ep0_state == USBD_EP0_DATA_OUT)
 431              		.loc 1 309 0
 432 0008 D4F89432 		ldr	r3, [r4, #660]
 433 000c 032B     		cmp	r3, #3
 434 000e 03D0     		beq	.L47
 310:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****     {
 311:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****       if (pep->rem_length > pep->maxpacket)
 312:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****       {
 313:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****         pep->rem_length -= pep->maxpacket;
 314:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** 
 315:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****         USBD_CtlContinueRx(pdev, pdata,
 316:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****                            (uint16_t)MIN(pep->rem_length, pep->maxpacket));
 317:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****       }
 318:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****       else
ARM GAS  C:\Users\antras\AppData\Local\Temp\ccNHhjAe.s 			page 14


 319:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****       {
 320:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****         if ((pdev->pClass->EP0_RxReady != NULL) &&
 321:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****             (pdev->dev_state == USBD_STATE_CONFIGURED))
 322:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****         {
 323:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****           pdev->pClass->EP0_RxReady(pdev);
 324:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****         }
 325:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****         USBD_CtlSendStatus(pdev);
 326:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****       }
 327:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****     }
 328:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****     else
 329:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****     {
 330:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****       if (pdev->ep0_state == USBD_EP0_STATUS_OUT)
 435              		.loc 1 330 0
 436 0010 052B     		cmp	r3, #5
 437 0012 25D0     		beq	.L48
 331:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****       {
 332:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****         /*
 333:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****          * STATUS PHASE completed, update ep0_state to idle
 334:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****          */
 335:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****         pdev->ep0_state = USBD_EP0_IDLE;
 336:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****         USBD_LL_StallEP(pdev, 0U);
 337:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****       }
 338:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****     }
 339:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   }
 340:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   else if ((pdev->pClass->DataOut != NULL) &&
 341:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****            (pdev->dev_state == USBD_STATE_CONFIGURED))
 342:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   {
 343:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****     pdev->pClass->DataOut(pdev, epnum);
 344:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   }
 345:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   else
 346:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   {
 347:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****     /* should never be in this condition */
 348:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****     return USBD_FAIL;
 349:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   }
 350:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** 
 351:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   return USBD_OK;
 438              		.loc 1 351 0
 439 0014 0020     		movs	r0, #0
 440 0016 38BD     		pop	{r3, r4, r5, pc}
 441              	.LVL40:
 442              	.L47:
 311:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****       {
 443              		.loc 1 311 0
 444 0018 D4F86031 		ldr	r3, [r4, #352]
 445 001c D4F86421 		ldr	r2, [r4, #356]
 446 0020 9342     		cmp	r3, r2
 447 0022 0DD9     		bls	.L38
 313:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** 
 448              		.loc 1 313 0
 449 0024 9B1A     		subs	r3, r3, r2
 450 0026 C4F86031 		str	r3, [r4, #352]
 315:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****                            (uint16_t)MIN(pep->rem_length, pep->maxpacket));
 451              		.loc 1 315 0
 452 002a 9A42     		cmp	r2, r3
 453 002c 06D9     		bls	.L39
 315:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****                            (uint16_t)MIN(pep->rem_length, pep->maxpacket));
 454              		.loc 1 315 0 is_stmt 0 discriminator 1
ARM GAS  C:\Users\antras\AppData\Local\Temp\ccNHhjAe.s 			page 15


 455 002e 9AB2     		uxth	r2, r3
 456              	.L40:
 315:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****                            (uint16_t)MIN(pep->rem_length, pep->maxpacket));
 457              		.loc 1 315 0 discriminator 4
 458 0030 0146     		mov	r1, r0
 459              	.LVL41:
 460 0032 2046     		mov	r0, r4
 461              	.LVL42:
 462 0034 FFF7FEFF 		bl	USBD_CtlContinueRx
 463              	.LVL43:
 464              		.loc 1 351 0 is_stmt 1 discriminator 4
 465 0038 0020     		movs	r0, #0
 466 003a 38BD     		pop	{r3, r4, r5, pc}
 467              	.LVL44:
 468              	.L39:
 315:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****                            (uint16_t)MIN(pep->rem_length, pep->maxpacket));
 469              		.loc 1 315 0 discriminator 2
 470 003c 92B2     		uxth	r2, r2
 471 003e F7E7     		b	.L40
 472              	.L38:
 320:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****             (pdev->dev_state == USBD_STATE_CONFIGURED))
 473              		.loc 1 320 0
 474 0040 D4F8B432 		ldr	r3, [r4, #692]
 475 0044 1B69     		ldr	r3, [r3, #16]
 476 0046 1BB1     		cbz	r3, .L42
 321:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****         {
 477              		.loc 1 321 0 discriminator 1
 478 0048 94F89C22 		ldrb	r2, [r4, #668]	@ zero_extendqisi2
 320:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****             (pdev->dev_state == USBD_STATE_CONFIGURED))
 479              		.loc 1 320 0 discriminator 1
 480 004c 032A     		cmp	r2, #3
 481 004e 04D0     		beq	.L49
 482              	.LVL45:
 483              	.L42:
 325:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****       }
 484              		.loc 1 325 0
 485 0050 2046     		mov	r0, r4
 486 0052 FFF7FEFF 		bl	USBD_CtlSendStatus
 487              	.LVL46:
 488              		.loc 1 351 0
 489 0056 0020     		movs	r0, #0
 490 0058 38BD     		pop	{r3, r4, r5, pc}
 491              	.LVL47:
 492              	.L49:
 323:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****         }
 493              		.loc 1 323 0
 494 005a 2046     		mov	r0, r4
 495              	.LVL48:
 496 005c 9847     		blx	r3
 497              	.LVL49:
 498 005e F7E7     		b	.L42
 499              	.LVL50:
 500              	.L48:
 335:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****         USBD_LL_StallEP(pdev, 0U);
 501              		.loc 1 335 0
 502 0060 0025     		movs	r5, #0
 503 0062 C4F89452 		str	r5, [r4, #660]
ARM GAS  C:\Users\antras\AppData\Local\Temp\ccNHhjAe.s 			page 16


 336:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****       }
 504              		.loc 1 336 0
 505 0066 2946     		mov	r1, r5
 506              	.LVL51:
 507 0068 2046     		mov	r0, r4
 508              	.LVL52:
 509 006a FFF7FEFF 		bl	USBD_LL_StallEP
 510              	.LVL53:
 511              		.loc 1 351 0
 512 006e 2846     		mov	r0, r5
 513 0070 38BD     		pop	{r3, r4, r5, pc}
 514              	.LVL54:
 515              	.L36:
 516 0072 0A46     		mov	r2, r1
 517              	.LVL55:
 340:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****            (pdev->dev_state == USBD_STATE_CONFIGURED))
 518              		.loc 1 340 0
 519 0074 D0F8B432 		ldr	r3, [r0, #692]
 520 0078 9B69     		ldr	r3, [r3, #24]
 521 007a 4BB1     		cbz	r3, .L44
 341:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   {
 522              		.loc 1 341 0 discriminator 1
 523 007c 90F89C12 		ldrb	r1, [r0, #668]	@ zero_extendqisi2
 524              	.LVL56:
 340:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****            (pdev->dev_state == USBD_STATE_CONFIGURED))
 525              		.loc 1 340 0 discriminator 1
 526 0080 0329     		cmp	r1, #3
 527 0082 01D0     		beq	.L50
 348:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   }
 528              		.loc 1 348 0
 529 0084 0220     		movs	r0, #2
 530              	.LVL57:
 352:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
 531              		.loc 1 352 0
 532 0086 38BD     		pop	{r3, r4, r5, pc}
 533              	.LVL58:
 534              	.L50:
 343:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   }
 535              		.loc 1 343 0
 536 0088 1146     		mov	r1, r2
 537 008a 9847     		blx	r3
 538              	.LVL59:
 351:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
 539              		.loc 1 351 0
 540 008c 0020     		movs	r0, #0
 343:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   }
 541              		.loc 1 343 0
 542 008e 38BD     		pop	{r3, r4, r5, pc}
 543              	.LVL60:
 544              	.L44:
 348:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   }
 545              		.loc 1 348 0
 546 0090 0220     		movs	r0, #2
 547              	.LVL61:
 548 0092 38BD     		pop	{r3, r4, r5, pc}
 549              		.cfi_endproc
 550              	.LFE75:
ARM GAS  C:\Users\antras\AppData\Local\Temp\ccNHhjAe.s 			page 17


 552              		.section	.text.USBD_LL_DataInStage,"ax",%progbits
 553              		.align	1
 554              		.global	USBD_LL_DataInStage
 555              		.syntax unified
 556              		.thumb
 557              		.thumb_func
 558              		.fpu softvfp
 560              	USBD_LL_DataInStage:
 561              	.LFB76:
 353:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** 
 354:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /**
 355:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @brief  USBD_DataInStage
 356:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** *         Handle data in stage
 357:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @param  pdev: device instance
 358:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @param  epnum: endpoint index
 359:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @retval status
 360:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** */
 361:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_StatusTypeDef USBD_LL_DataInStage(USBD_HandleTypeDef *pdev,
 362:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****                                        uint8_t epnum, uint8_t *pdata)
 363:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
 562              		.loc 1 363 0
 563              		.cfi_startproc
 564              		@ args = 0, pretend = 0, frame = 0
 565              		@ frame_needed = 0, uses_anonymous_args = 0
 566              	.LVL62:
 567 0000 10B5     		push	{r4, lr}
 568              	.LCFI9:
 569              		.cfi_def_cfa_offset 8
 570              		.cfi_offset 4, -8
 571              		.cfi_offset 14, -4
 572 0002 0446     		mov	r4, r0
 364:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   USBD_EndpointTypeDef *pep;
 365:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** 
 366:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   if (epnum == 0U)
 573              		.loc 1 366 0
 574 0004 0029     		cmp	r1, #0
 575 0006 54D1     		bne	.L52
 576 0008 1046     		mov	r0, r2
 577              	.LVL63:
 367:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   {
 368:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****     pep = &pdev->ep_in[0];
 369:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** 
 370:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****     if (pdev->ep0_state == USBD_EP0_DATA_IN)
 578              		.loc 1 370 0
 579 000a D4F89432 		ldr	r3, [r4, #660]
 580 000e 022B     		cmp	r3, #2
 581 0010 0CD0     		beq	.L64
 371:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****     {
 372:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****       if (pep->rem_length > pep->maxpacket)
 373:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****       {
 374:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****         pep->rem_length -= pep->maxpacket;
 375:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** 
 376:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****         USBD_CtlContinueSendData(pdev, pdata, (uint16_t)pep->rem_length);
 377:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** 
 378:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****         /* Prepare endpoint for premature end of transfer */
 379:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****         USBD_LL_PrepareReceive(pdev, 0U, NULL, 0U);
 380:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****       }
ARM GAS  C:\Users\antras\AppData\Local\Temp\ccNHhjAe.s 			page 18


 381:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****       else
 382:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****       {
 383:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****         /* last packet is MPS multiple, so send ZLP packet */
 384:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****         if ((pep->total_length % pep->maxpacket == 0U) &&
 385:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****             (pep->total_length >= pep->maxpacket) &&
 386:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****             (pep->total_length < pdev->ep0_data_len))
 387:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****         {
 388:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****           USBD_CtlContinueSendData(pdev, NULL, 0U);
 389:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****           pdev->ep0_data_len = 0U;
 390:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** 
 391:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****           /* Prepare endpoint for premature end of transfer */
 392:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****           USBD_LL_PrepareReceive(pdev, 0U, NULL, 0U);
 393:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****         }
 394:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****         else
 395:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****         {
 396:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****           if ((pdev->pClass->EP0_TxSent != NULL) &&
 397:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****               (pdev->dev_state == USBD_STATE_CONFIGURED))
 398:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****           {
 399:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****             pdev->pClass->EP0_TxSent(pdev);
 400:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****           }
 401:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****           USBD_LL_StallEP(pdev, 0x80U);
 402:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****           USBD_CtlReceiveStatus(pdev);
 403:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****         }
 404:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****       }
 405:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****     }
 406:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****     else
 407:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****     {
 408:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****       if ((pdev->ep0_state == USBD_EP0_STATUS_IN) ||
 582              		.loc 1 408 0
 583 0012 042B     		cmp	r3, #4
 584 0014 00D0     		beq	.L58
 585              		.loc 1 408 0 is_stmt 0 discriminator 1
 586 0016 1BB9     		cbnz	r3, .L55
 587              	.L58:
 409:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****           (pdev->ep0_state == USBD_EP0_IDLE))
 410:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****       {
 411:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****         USBD_LL_StallEP(pdev, 0x80U);
 588              		.loc 1 411 0 is_stmt 1
 589 0018 8021     		movs	r1, #128
 590              	.LVL64:
 591 001a 2046     		mov	r0, r4
 592 001c FFF7FEFF 		bl	USBD_LL_StallEP
 593              	.LVL65:
 594              	.L55:
 412:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****       }
 413:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****     }
 414:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** 
 415:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****     if (pdev->dev_test_mode == 1U)
 595              		.loc 1 415 0
 596 0020 94F8A032 		ldrb	r3, [r4, #672]	@ zero_extendqisi2
 597 0024 012B     		cmp	r3, #1
 598 0026 40D0     		beq	.L65
 416:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****     {
 417:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****       USBD_RunTestMode(pdev);
 418:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****       pdev->dev_test_mode = 0U;
 419:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****     }
 420:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   }
ARM GAS  C:\Users\antras\AppData\Local\Temp\ccNHhjAe.s 			page 19


 421:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   else if ((pdev->pClass->DataIn != NULL) &&
 422:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****            (pdev->dev_state == USBD_STATE_CONFIGURED))
 423:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   {
 424:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****     pdev->pClass->DataIn(pdev, epnum);
 425:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   }
 426:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   else
 427:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   {
 428:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****     /* should never be in this condition */
 429:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****     return USBD_FAIL;
 430:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   }
 431:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** 
 432:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   return USBD_OK;
 599              		.loc 1 432 0
 600 0028 0020     		movs	r0, #0
 601 002a 10BD     		pop	{r4, pc}
 602              	.LVL66:
 603              	.L64:
 372:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****       {
 604              		.loc 1 372 0
 605 002c 236A     		ldr	r3, [r4, #32]
 606 002e 626A     		ldr	r2, [r4, #36]
 607 0030 9342     		cmp	r3, r2
 608 0032 1BD8     		bhi	.L66
 384:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****             (pep->total_length >= pep->maxpacket) &&
 609              		.loc 1 384 0
 610 0034 E169     		ldr	r1, [r4, #28]
 611              	.LVL67:
 612 0036 B1FBF2F3 		udiv	r3, r1, r2
 613 003a 02FB1313 		mls	r3, r2, r3, r1
 614 003e 2BB9     		cbnz	r3, .L56
 384:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****             (pep->total_length >= pep->maxpacket) &&
 615              		.loc 1 384 0 is_stmt 0 discriminator 1
 616 0040 8A42     		cmp	r2, r1
 617 0042 03D8     		bhi	.L56
 386:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****         {
 618              		.loc 1 386 0 is_stmt 1
 619 0044 D4F89832 		ldr	r3, [r4, #664]
 385:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****             (pep->total_length < pdev->ep0_data_len))
 620              		.loc 1 385 0
 621 0048 9942     		cmp	r1, r3
 622 004a 1DD3     		bcc	.L67
 623              	.L56:
 396:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****               (pdev->dev_state == USBD_STATE_CONFIGURED))
 624              		.loc 1 396 0
 625 004c D4F8B432 		ldr	r3, [r4, #692]
 626 0050 DB68     		ldr	r3, [r3, #12]
 627 0052 1BB1     		cbz	r3, .L57
 397:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****           {
 628              		.loc 1 397 0 discriminator 1
 629 0054 94F89C22 		ldrb	r2, [r4, #668]	@ zero_extendqisi2
 396:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****               (pdev->dev_state == USBD_STATE_CONFIGURED))
 630              		.loc 1 396 0 discriminator 1
 631 0058 032A     		cmp	r2, #3
 632 005a 23D0     		beq	.L68
 633              	.LVL68:
 634              	.L57:
 401:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****           USBD_CtlReceiveStatus(pdev);
ARM GAS  C:\Users\antras\AppData\Local\Temp\ccNHhjAe.s 			page 20


 635              		.loc 1 401 0
 636 005c 8021     		movs	r1, #128
 637 005e 2046     		mov	r0, r4
 638 0060 FFF7FEFF 		bl	USBD_LL_StallEP
 639              	.LVL69:
 402:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****         }
 640              		.loc 1 402 0
 641 0064 2046     		mov	r0, r4
 642 0066 FFF7FEFF 		bl	USBD_CtlReceiveStatus
 643              	.LVL70:
 644 006a D9E7     		b	.L55
 645              	.LVL71:
 646              	.L66:
 374:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** 
 647              		.loc 1 374 0
 648 006c 9A1A     		subs	r2, r3, r2
 649 006e 2262     		str	r2, [r4, #32]
 376:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** 
 650              		.loc 1 376 0
 651 0070 92B2     		uxth	r2, r2
 652 0072 0146     		mov	r1, r0
 653              	.LVL72:
 654 0074 2046     		mov	r0, r4
 655              	.LVL73:
 656 0076 FFF7FEFF 		bl	USBD_CtlContinueSendData
 657              	.LVL74:
 379:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****       }
 658              		.loc 1 379 0
 659 007a 0023     		movs	r3, #0
 660 007c 1A46     		mov	r2, r3
 661 007e 1946     		mov	r1, r3
 662 0080 2046     		mov	r0, r4
 663 0082 FFF7FEFF 		bl	USBD_LL_PrepareReceive
 664              	.LVL75:
 665 0086 CBE7     		b	.L55
 666              	.LVL76:
 667              	.L67:
 388:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****           pdev->ep0_data_len = 0U;
 668              		.loc 1 388 0
 669 0088 0022     		movs	r2, #0
 670 008a 1146     		mov	r1, r2
 671 008c 2046     		mov	r0, r4
 672              	.LVL77:
 673 008e FFF7FEFF 		bl	USBD_CtlContinueSendData
 674              	.LVL78:
 389:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** 
 675              		.loc 1 389 0
 676 0092 0021     		movs	r1, #0
 677 0094 C4F89812 		str	r1, [r4, #664]
 392:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****         }
 678              		.loc 1 392 0
 679 0098 0B46     		mov	r3, r1
 680 009a 0A46     		mov	r2, r1
 681 009c 2046     		mov	r0, r4
 682 009e FFF7FEFF 		bl	USBD_LL_PrepareReceive
 683              	.LVL79:
 684 00a2 BDE7     		b	.L55
ARM GAS  C:\Users\antras\AppData\Local\Temp\ccNHhjAe.s 			page 21


 685              	.LVL80:
 686              	.L68:
 399:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****           }
 687              		.loc 1 399 0
 688 00a4 2046     		mov	r0, r4
 689              	.LVL81:
 690 00a6 9847     		blx	r3
 691              	.LVL82:
 692 00a8 D8E7     		b	.L57
 693              	.L65:
 418:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****     }
 694              		.loc 1 418 0
 695 00aa 0020     		movs	r0, #0
 696 00ac 84F8A002 		strb	r0, [r4, #672]
 697 00b0 10BD     		pop	{r4, pc}
 698              	.LVL83:
 699              	.L52:
 700 00b2 0A46     		mov	r2, r1
 701              	.LVL84:
 421:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****            (pdev->dev_state == USBD_STATE_CONFIGURED))
 702              		.loc 1 421 0
 703 00b4 D0F8B432 		ldr	r3, [r0, #692]
 704 00b8 5B69     		ldr	r3, [r3, #20]
 705 00ba 4BB1     		cbz	r3, .L61
 422:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   {
 706              		.loc 1 422 0 discriminator 1
 707 00bc 90F89C12 		ldrb	r1, [r0, #668]	@ zero_extendqisi2
 708              	.LVL85:
 421:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****            (pdev->dev_state == USBD_STATE_CONFIGURED))
 709              		.loc 1 421 0 discriminator 1
 710 00c0 0329     		cmp	r1, #3
 711 00c2 01D0     		beq	.L69
 429:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   }
 712              		.loc 1 429 0
 713 00c4 0220     		movs	r0, #2
 714              	.LVL86:
 433:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
 715              		.loc 1 433 0
 716 00c6 10BD     		pop	{r4, pc}
 717              	.LVL87:
 718              	.L69:
 424:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   }
 719              		.loc 1 424 0
 720 00c8 1146     		mov	r1, r2
 721 00ca 9847     		blx	r3
 722              	.LVL88:
 432:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
 723              		.loc 1 432 0
 724 00cc 0020     		movs	r0, #0
 424:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   }
 725              		.loc 1 424 0
 726 00ce 10BD     		pop	{r4, pc}
 727              	.LVL89:
 728              	.L61:
 429:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   }
 729              		.loc 1 429 0
 730 00d0 0220     		movs	r0, #2
ARM GAS  C:\Users\antras\AppData\Local\Temp\ccNHhjAe.s 			page 22


 731              	.LVL90:
 732 00d2 10BD     		pop	{r4, pc}
 733              		.cfi_endproc
 734              	.LFE76:
 736              		.section	.text.USBD_LL_Reset,"ax",%progbits
 737              		.align	1
 738              		.global	USBD_LL_Reset
 739              		.syntax unified
 740              		.thumb
 741              		.thumb_func
 742              		.fpu softvfp
 744              	USBD_LL_Reset:
 745              	.LFB77:
 434:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** 
 435:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /**
 436:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @brief  USBD_LL_Reset
 437:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** *         Handle Reset event
 438:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @param  pdev: device instance
 439:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @retval status
 440:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** */
 441:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** 
 442:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_StatusTypeDef USBD_LL_Reset(USBD_HandleTypeDef *pdev)
 443:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
 746              		.loc 1 443 0
 747              		.cfi_startproc
 748              		@ args = 0, pretend = 0, frame = 0
 749              		@ frame_needed = 0, uses_anonymous_args = 0
 750              	.LVL91:
 751 0000 70B5     		push	{r4, r5, r6, lr}
 752              	.LCFI10:
 753              		.cfi_def_cfa_offset 16
 754              		.cfi_offset 4, -16
 755              		.cfi_offset 5, -12
 756              		.cfi_offset 6, -8
 757              		.cfi_offset 14, -4
 758 0002 0446     		mov	r4, r0
 444:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   /* Open EP0 OUT */
 445:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   USBD_LL_OpenEP(pdev, 0x00U, USBD_EP_TYPE_CTRL, USB_MAX_EP0_SIZE);
 759              		.loc 1 445 0
 760 0004 4023     		movs	r3, #64
 761 0006 0022     		movs	r2, #0
 762 0008 1146     		mov	r1, r2
 763 000a FFF7FEFF 		bl	USBD_LL_OpenEP
 764              	.LVL92:
 446:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   pdev->ep_out[0x00U & 0xFU].is_used = 1U;
 765              		.loc 1 446 0
 766 000e 0125     		movs	r5, #1
 767 0010 C4F85851 		str	r5, [r4, #344]
 447:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** 
 448:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   pdev->ep_out[0].maxpacket = USB_MAX_EP0_SIZE;
 768              		.loc 1 448 0
 769 0014 4026     		movs	r6, #64
 770 0016 C4F86461 		str	r6, [r4, #356]
 449:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** 
 450:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   /* Open EP0 IN */
 451:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   USBD_LL_OpenEP(pdev, 0x80U, USBD_EP_TYPE_CTRL, USB_MAX_EP0_SIZE);
 771              		.loc 1 451 0
ARM GAS  C:\Users\antras\AppData\Local\Temp\ccNHhjAe.s 			page 23


 772 001a 3346     		mov	r3, r6
 773 001c 0022     		movs	r2, #0
 774 001e 8021     		movs	r1, #128
 775 0020 2046     		mov	r0, r4
 776 0022 FFF7FEFF 		bl	USBD_LL_OpenEP
 777              	.LVL93:
 452:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   pdev->ep_in[0x80U & 0xFU].is_used = 1U;
 778              		.loc 1 452 0
 779 0026 A561     		str	r5, [r4, #24]
 453:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** 
 454:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   pdev->ep_in[0].maxpacket = USB_MAX_EP0_SIZE;
 780              		.loc 1 454 0
 781 0028 6662     		str	r6, [r4, #36]
 455:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** 
 456:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   /* Upon Reset call user call back */
 457:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   pdev->dev_state = USBD_STATE_DEFAULT;
 782              		.loc 1 457 0
 783 002a 84F89C52 		strb	r5, [r4, #668]
 458:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   pdev->ep0_state = USBD_EP0_IDLE;
 784              		.loc 1 458 0
 785 002e 0023     		movs	r3, #0
 786 0030 C4F89432 		str	r3, [r4, #660]
 459:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   pdev->dev_config = 0U;
 787              		.loc 1 459 0
 788 0034 6360     		str	r3, [r4, #4]
 460:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   pdev->dev_remote_wakeup = 0U;
 789              		.loc 1 460 0
 790 0036 C4F8A432 		str	r3, [r4, #676]
 461:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** 
 462:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   if (pdev->pClassData)
 791              		.loc 1 462 0
 792 003a D4F8B832 		ldr	r3, [r4, #696]
 793 003e 2BB1     		cbz	r3, .L71
 463:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   {
 464:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****     pdev->pClass->DeInit(pdev, (uint8_t)pdev->dev_config);
 794              		.loc 1 464 0
 795 0040 D4F8B432 		ldr	r3, [r4, #692]
 796 0044 5B68     		ldr	r3, [r3, #4]
 797 0046 0021     		movs	r1, #0
 798 0048 2046     		mov	r0, r4
 799 004a 9847     		blx	r3
 800              	.LVL94:
 801              	.L71:
 465:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   }
 466:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** 
 467:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   return USBD_OK;
 468:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
 802              		.loc 1 468 0
 803 004c 0020     		movs	r0, #0
 804 004e 70BD     		pop	{r4, r5, r6, pc}
 805              		.cfi_endproc
 806              	.LFE77:
 808              		.section	.text.USBD_LL_SetSpeed,"ax",%progbits
 809              		.align	1
 810              		.global	USBD_LL_SetSpeed
 811              		.syntax unified
 812              		.thumb
ARM GAS  C:\Users\antras\AppData\Local\Temp\ccNHhjAe.s 			page 24


 813              		.thumb_func
 814              		.fpu softvfp
 816              	USBD_LL_SetSpeed:
 817              	.LFB78:
 469:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** 
 470:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /**
 471:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @brief  USBD_LL_Reset
 472:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** *         Handle Reset event
 473:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @param  pdev: device instance
 474:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @retval status
 475:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** */
 476:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_StatusTypeDef USBD_LL_SetSpeed(USBD_HandleTypeDef *pdev,
 477:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****                                     USBD_SpeedTypeDef speed)
 478:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
 818              		.loc 1 478 0
 819              		.cfi_startproc
 820              		@ args = 0, pretend = 0, frame = 0
 821              		@ frame_needed = 0, uses_anonymous_args = 0
 822              		@ link register save eliminated.
 823              	.LVL95:
 479:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   pdev->dev_speed = speed;
 824              		.loc 1 479 0
 825 0000 0174     		strb	r1, [r0, #16]
 480:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** 
 481:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   return USBD_OK;
 482:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
 826              		.loc 1 482 0
 827 0002 0020     		movs	r0, #0
 828              	.LVL96:
 829 0004 7047     		bx	lr
 830              		.cfi_endproc
 831              	.LFE78:
 833              		.section	.text.USBD_LL_Suspend,"ax",%progbits
 834              		.align	1
 835              		.global	USBD_LL_Suspend
 836              		.syntax unified
 837              		.thumb
 838              		.thumb_func
 839              		.fpu softvfp
 841              	USBD_LL_Suspend:
 842              	.LFB79:
 483:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** 
 484:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /**
 485:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @brief  USBD_Suspend
 486:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** *         Handle Suspend event
 487:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @param  pdev: device instance
 488:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @retval status
 489:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** */
 490:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** 
 491:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_StatusTypeDef USBD_LL_Suspend(USBD_HandleTypeDef *pdev)
 492:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
 843              		.loc 1 492 0
 844              		.cfi_startproc
 845              		@ args = 0, pretend = 0, frame = 0
 846              		@ frame_needed = 0, uses_anonymous_args = 0
 847              		@ link register save eliminated.
 848              	.LVL97:
ARM GAS  C:\Users\antras\AppData\Local\Temp\ccNHhjAe.s 			page 25


 493:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   pdev->dev_old_state =  pdev->dev_state;
 849              		.loc 1 493 0
 850 0000 90F89C32 		ldrb	r3, [r0, #668]	@ zero_extendqisi2
 851 0004 80F89D32 		strb	r3, [r0, #669]
 494:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   pdev->dev_state  = USBD_STATE_SUSPENDED;
 852              		.loc 1 494 0
 853 0008 0423     		movs	r3, #4
 854 000a 80F89C32 		strb	r3, [r0, #668]
 495:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** 
 496:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   return USBD_OK;
 497:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
 855              		.loc 1 497 0
 856 000e 0020     		movs	r0, #0
 857              	.LVL98:
 858 0010 7047     		bx	lr
 859              		.cfi_endproc
 860              	.LFE79:
 862              		.section	.text.USBD_LL_Resume,"ax",%progbits
 863              		.align	1
 864              		.global	USBD_LL_Resume
 865              		.syntax unified
 866              		.thumb
 867              		.thumb_func
 868              		.fpu softvfp
 870              	USBD_LL_Resume:
 871              	.LFB80:
 498:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** 
 499:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /**
 500:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @brief  USBD_Resume
 501:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** *         Handle Resume event
 502:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @param  pdev: device instance
 503:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @retval status
 504:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** */
 505:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** 
 506:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_StatusTypeDef USBD_LL_Resume(USBD_HandleTypeDef *pdev)
 507:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
 872              		.loc 1 507 0
 873              		.cfi_startproc
 874              		@ args = 0, pretend = 0, frame = 0
 875              		@ frame_needed = 0, uses_anonymous_args = 0
 876              		@ link register save eliminated.
 877              	.LVL99:
 508:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   if (pdev->dev_state == USBD_STATE_SUSPENDED)
 878              		.loc 1 508 0
 879 0000 90F89C32 		ldrb	r3, [r0, #668]	@ zero_extendqisi2
 880 0004 042B     		cmp	r3, #4
 881 0006 01D0     		beq	.L77
 882              	.L76:
 509:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   {
 510:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****     pdev->dev_state = pdev->dev_old_state;
 511:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   }
 512:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** 
 513:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   return USBD_OK;
 514:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
 883              		.loc 1 514 0
 884 0008 0020     		movs	r0, #0
 885              	.LVL100:
ARM GAS  C:\Users\antras\AppData\Local\Temp\ccNHhjAe.s 			page 26


 886 000a 7047     		bx	lr
 887              	.LVL101:
 888              	.L77:
 510:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   }
 889              		.loc 1 510 0
 890 000c 90F89D32 		ldrb	r3, [r0, #669]	@ zero_extendqisi2
 891 0010 80F89C32 		strb	r3, [r0, #668]
 892 0014 F8E7     		b	.L76
 893              		.cfi_endproc
 894              	.LFE80:
 896              		.section	.text.USBD_LL_SOF,"ax",%progbits
 897              		.align	1
 898              		.global	USBD_LL_SOF
 899              		.syntax unified
 900              		.thumb
 901              		.thumb_func
 902              		.fpu softvfp
 904              	USBD_LL_SOF:
 905              	.LFB81:
 515:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** 
 516:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /**
 517:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @brief  USBD_SOF
 518:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** *         Handle SOF event
 519:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @param  pdev: device instance
 520:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @retval status
 521:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** */
 522:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** 
 523:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_StatusTypeDef USBD_LL_SOF(USBD_HandleTypeDef *pdev)
 524:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
 906              		.loc 1 524 0
 907              		.cfi_startproc
 908              		@ args = 0, pretend = 0, frame = 0
 909              		@ frame_needed = 0, uses_anonymous_args = 0
 910              	.LVL102:
 911 0000 08B5     		push	{r3, lr}
 912              	.LCFI11:
 913              		.cfi_def_cfa_offset 8
 914              		.cfi_offset 3, -8
 915              		.cfi_offset 14, -4
 525:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   if (pdev->dev_state == USBD_STATE_CONFIGURED)
 916              		.loc 1 525 0
 917 0002 90F89C32 		ldrb	r3, [r0, #668]	@ zero_extendqisi2
 918 0006 032B     		cmp	r3, #3
 919 0008 01D0     		beq	.L81
 920              	.LVL103:
 921              	.L79:
 526:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   {
 527:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****     if (pdev->pClass->SOF != NULL)
 528:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****     {
 529:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****       pdev->pClass->SOF(pdev);
 530:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****     }
 531:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   }
 532:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** 
 533:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   return USBD_OK;
 534:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
 922              		.loc 1 534 0
 923 000a 0020     		movs	r0, #0
ARM GAS  C:\Users\antras\AppData\Local\Temp\ccNHhjAe.s 			page 27


 924 000c 08BD     		pop	{r3, pc}
 925              	.LVL104:
 926              	.L81:
 527:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****     {
 927              		.loc 1 527 0
 928 000e D0F8B432 		ldr	r3, [r0, #692]
 929 0012 DB69     		ldr	r3, [r3, #28]
 930 0014 002B     		cmp	r3, #0
 931 0016 F8D0     		beq	.L79
 529:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****     }
 932              		.loc 1 529 0
 933 0018 9847     		blx	r3
 934              	.LVL105:
 935 001a F6E7     		b	.L79
 936              		.cfi_endproc
 937              	.LFE81:
 939              		.section	.text.USBD_LL_IsoINIncomplete,"ax",%progbits
 940              		.align	1
 941              		.global	USBD_LL_IsoINIncomplete
 942              		.syntax unified
 943              		.thumb
 944              		.thumb_func
 945              		.fpu softvfp
 947              	USBD_LL_IsoINIncomplete:
 948              	.LFB82:
 535:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** 
 536:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /**
 537:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @brief  USBD_IsoINIncomplete
 538:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** *         Handle iso in incomplete event
 539:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @param  pdev: device instance
 540:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @retval status
 541:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** */
 542:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_StatusTypeDef USBD_LL_IsoINIncomplete(USBD_HandleTypeDef *pdev,
 543:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****                                            uint8_t epnum)
 544:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
 949              		.loc 1 544 0
 950              		.cfi_startproc
 951              		@ args = 0, pretend = 0, frame = 0
 952              		@ frame_needed = 0, uses_anonymous_args = 0
 953              		@ link register save eliminated.
 954              	.LVL106:
 545:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   /* Prevent unused arguments compilation warning */
 546:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   UNUSED(pdev);
 547:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   UNUSED(epnum);
 548:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** 
 549:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   return USBD_OK;
 550:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
 955              		.loc 1 550 0
 956 0000 0020     		movs	r0, #0
 957              	.LVL107:
 958 0002 7047     		bx	lr
 959              		.cfi_endproc
 960              	.LFE82:
 962              		.section	.text.USBD_LL_IsoOUTIncomplete,"ax",%progbits
 963              		.align	1
 964              		.global	USBD_LL_IsoOUTIncomplete
 965              		.syntax unified
ARM GAS  C:\Users\antras\AppData\Local\Temp\ccNHhjAe.s 			page 28


 966              		.thumb
 967              		.thumb_func
 968              		.fpu softvfp
 970              	USBD_LL_IsoOUTIncomplete:
 971              	.LFB83:
 551:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** 
 552:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /**
 553:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @brief  USBD_IsoOUTIncomplete
 554:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** *         Handle iso out incomplete event
 555:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @param  pdev: device instance
 556:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @retval status
 557:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** */
 558:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_StatusTypeDef USBD_LL_IsoOUTIncomplete(USBD_HandleTypeDef *pdev,
 559:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****                                             uint8_t epnum)
 560:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
 972              		.loc 1 560 0
 973              		.cfi_startproc
 974              		@ args = 0, pretend = 0, frame = 0
 975              		@ frame_needed = 0, uses_anonymous_args = 0
 976              		@ link register save eliminated.
 977              	.LVL108:
 561:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   /* Prevent unused arguments compilation warning */
 562:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   UNUSED(pdev);
 563:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   UNUSED(epnum);
 564:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** 
 565:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   return USBD_OK;
 566:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
 978              		.loc 1 566 0
 979 0000 0020     		movs	r0, #0
 980              	.LVL109:
 981 0002 7047     		bx	lr
 982              		.cfi_endproc
 983              	.LFE83:
 985              		.section	.text.USBD_LL_DevConnected,"ax",%progbits
 986              		.align	1
 987              		.global	USBD_LL_DevConnected
 988              		.syntax unified
 989              		.thumb
 990              		.thumb_func
 991              		.fpu softvfp
 993              	USBD_LL_DevConnected:
 994              	.LFB84:
 567:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** 
 568:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /**
 569:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @brief  USBD_DevConnected
 570:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** *         Handle device connection event
 571:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @param  pdev: device instance
 572:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @retval status
 573:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** */
 574:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_StatusTypeDef USBD_LL_DevConnected(USBD_HandleTypeDef *pdev)
 575:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
 995              		.loc 1 575 0
 996              		.cfi_startproc
 997              		@ args = 0, pretend = 0, frame = 0
 998              		@ frame_needed = 0, uses_anonymous_args = 0
 999              		@ link register save eliminated.
 1000              	.LVL110:
ARM GAS  C:\Users\antras\AppData\Local\Temp\ccNHhjAe.s 			page 29


 576:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   /* Prevent unused argument compilation warning */
 577:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   UNUSED(pdev);
 578:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** 
 579:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   return USBD_OK;
 580:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
 1001              		.loc 1 580 0
 1002 0000 0020     		movs	r0, #0
 1003              	.LVL111:
 1004 0002 7047     		bx	lr
 1005              		.cfi_endproc
 1006              	.LFE84:
 1008              		.section	.text.USBD_LL_DevDisconnected,"ax",%progbits
 1009              		.align	1
 1010              		.global	USBD_LL_DevDisconnected
 1011              		.syntax unified
 1012              		.thumb
 1013              		.thumb_func
 1014              		.fpu softvfp
 1016              	USBD_LL_DevDisconnected:
 1017              	.LFB85:
 581:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** 
 582:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** /**
 583:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @brief  USBD_DevDisconnected
 584:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** *         Handle device disconnection event
 585:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @param  pdev: device instance
 586:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** * @retval status
 587:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** */
 588:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** USBD_StatusTypeDef USBD_LL_DevDisconnected(USBD_HandleTypeDef *pdev)
 589:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** {
 1018              		.loc 1 589 0
 1019              		.cfi_startproc
 1020              		@ args = 0, pretend = 0, frame = 0
 1021              		@ frame_needed = 0, uses_anonymous_args = 0
 1022              	.LVL112:
 1023 0000 08B5     		push	{r3, lr}
 1024              	.LCFI12:
 1025              		.cfi_def_cfa_offset 8
 1026              		.cfi_offset 3, -8
 1027              		.cfi_offset 14, -4
 590:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   /* Free Class Resources */
 591:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   pdev->dev_state = USBD_STATE_DEFAULT;
 1028              		.loc 1 591 0
 1029 0002 0122     		movs	r2, #1
 1030 0004 80F89C22 		strb	r2, [r0, #668]
 592:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   pdev->pClass->DeInit(pdev, (uint8_t)pdev->dev_config);
 1031              		.loc 1 592 0
 1032 0008 D0F8B422 		ldr	r2, [r0, #692]
 1033 000c 5268     		ldr	r2, [r2, #4]
 1034 000e 0179     		ldrb	r1, [r0, #4]	@ zero_extendqisi2
 1035 0010 9047     		blx	r2
 1036              	.LVL113:
 593:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** 
 594:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c ****   return USBD_OK;
 595:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_core.c **** }
 1037              		.loc 1 595 0
 1038 0012 0020     		movs	r0, #0
 1039 0014 08BD     		pop	{r3, pc}
ARM GAS  C:\Users\antras\AppData\Local\Temp\ccNHhjAe.s 			page 30


 1040              		.cfi_endproc
 1041              	.LFE85:
 1043              		.text
 1044              	.Letext0:
 1045              		.file 2 "c:\\program files (x86)\\gnu tools arm embedded\\6 2017-q2-update\\arm-none-eabi\\include
 1046              		.file 3 "c:\\program files (x86)\\gnu tools arm embedded\\6 2017-q2-update\\arm-none-eabi\\include
 1047              		.file 4 "c:\\program files (x86)\\gnu tools arm embedded\\6 2017-q2-update\\arm-none-eabi\\include
 1048              		.file 5 "c:\\program files (x86)\\gnu tools arm embedded\\6 2017-q2-update\\lib\\gcc\\arm-none-eab
 1049              		.file 6 "c:\\program files (x86)\\gnu tools arm embedded\\6 2017-q2-update\\arm-none-eabi\\include
 1050              		.file 7 "c:\\program files (x86)\\gnu tools arm embedded\\6 2017-q2-update\\arm-none-eabi\\include
 1051              		.file 8 "c:\\program files (x86)\\gnu tools arm embedded\\6 2017-q2-update\\arm-none-eabi\\include
 1052              		.file 9 "Drivers/CMSIS/Include/core_cm3.h"
 1053              		.file 10 "Drivers/CMSIS/Device/ST/STM32F1xx/Include/system_stm32f1xx.h"
 1054              		.file 11 "Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal.h"
 1055              		.file 12 "Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h"
 1056              		.file 13 "Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_core.h"
 1057              		.file 14 "Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_ioreq.h"
 1058              		.file 15 "Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_ctlreq.h"
ARM GAS  C:\Users\antras\AppData\Local\Temp\ccNHhjAe.s 			page 31


DEFINED SYMBOLS
                            *ABS*:00000000 usbd_core.c
C:\Users\antras\AppData\Local\Temp\ccNHhjAe.s:16     .text.USBD_Init:00000000 $t
C:\Users\antras\AppData\Local\Temp\ccNHhjAe.s:23     .text.USBD_Init:00000000 USBD_Init
C:\Users\antras\AppData\Local\Temp\ccNHhjAe.s:80     .text.USBD_DeInit:00000000 $t
C:\Users\antras\AppData\Local\Temp\ccNHhjAe.s:87     .text.USBD_DeInit:00000000 USBD_DeInit
C:\Users\antras\AppData\Local\Temp\ccNHhjAe.s:124    .text.USBD_RegisterClass:00000000 $t
C:\Users\antras\AppData\Local\Temp\ccNHhjAe.s:131    .text.USBD_RegisterClass:00000000 USBD_RegisterClass
C:\Users\antras\AppData\Local\Temp\ccNHhjAe.s:158    .text.USBD_Start:00000000 $t
C:\Users\antras\AppData\Local\Temp\ccNHhjAe.s:165    .text.USBD_Start:00000000 USBD_Start
C:\Users\antras\AppData\Local\Temp\ccNHhjAe.s:187    .text.USBD_Stop:00000000 $t
C:\Users\antras\AppData\Local\Temp\ccNHhjAe.s:194    .text.USBD_Stop:00000000 USBD_Stop
C:\Users\antras\AppData\Local\Temp\ccNHhjAe.s:224    .text.USBD_RunTestMode:00000000 $t
C:\Users\antras\AppData\Local\Temp\ccNHhjAe.s:231    .text.USBD_RunTestMode:00000000 USBD_RunTestMode
C:\Users\antras\AppData\Local\Temp\ccNHhjAe.s:247    .text.USBD_SetClassConfig:00000000 $t
C:\Users\antras\AppData\Local\Temp\ccNHhjAe.s:254    .text.USBD_SetClassConfig:00000000 USBD_SetClassConfig
C:\Users\antras\AppData\Local\Temp\ccNHhjAe.s:294    .text.USBD_ClrClassConfig:00000000 $t
C:\Users\antras\AppData\Local\Temp\ccNHhjAe.s:301    .text.USBD_ClrClassConfig:00000000 USBD_ClrClassConfig
C:\Users\antras\AppData\Local\Temp\ccNHhjAe.s:325    .text.USBD_LL_SetupStage:00000000 $t
C:\Users\antras\AppData\Local\Temp\ccNHhjAe.s:332    .text.USBD_LL_SetupStage:00000000 USBD_LL_SetupStage
C:\Users\antras\AppData\Local\Temp\ccNHhjAe.s:405    .text.USBD_LL_DataOutStage:00000000 $t
C:\Users\antras\AppData\Local\Temp\ccNHhjAe.s:412    .text.USBD_LL_DataOutStage:00000000 USBD_LL_DataOutStage
C:\Users\antras\AppData\Local\Temp\ccNHhjAe.s:553    .text.USBD_LL_DataInStage:00000000 $t
C:\Users\antras\AppData\Local\Temp\ccNHhjAe.s:560    .text.USBD_LL_DataInStage:00000000 USBD_LL_DataInStage
C:\Users\antras\AppData\Local\Temp\ccNHhjAe.s:737    .text.USBD_LL_Reset:00000000 $t
C:\Users\antras\AppData\Local\Temp\ccNHhjAe.s:744    .text.USBD_LL_Reset:00000000 USBD_LL_Reset
C:\Users\antras\AppData\Local\Temp\ccNHhjAe.s:809    .text.USBD_LL_SetSpeed:00000000 $t
C:\Users\antras\AppData\Local\Temp\ccNHhjAe.s:816    .text.USBD_LL_SetSpeed:00000000 USBD_LL_SetSpeed
C:\Users\antras\AppData\Local\Temp\ccNHhjAe.s:834    .text.USBD_LL_Suspend:00000000 $t
C:\Users\antras\AppData\Local\Temp\ccNHhjAe.s:841    .text.USBD_LL_Suspend:00000000 USBD_LL_Suspend
C:\Users\antras\AppData\Local\Temp\ccNHhjAe.s:863    .text.USBD_LL_Resume:00000000 $t
C:\Users\antras\AppData\Local\Temp\ccNHhjAe.s:870    .text.USBD_LL_Resume:00000000 USBD_LL_Resume
C:\Users\antras\AppData\Local\Temp\ccNHhjAe.s:897    .text.USBD_LL_SOF:00000000 $t
C:\Users\antras\AppData\Local\Temp\ccNHhjAe.s:904    .text.USBD_LL_SOF:00000000 USBD_LL_SOF
C:\Users\antras\AppData\Local\Temp\ccNHhjAe.s:940    .text.USBD_LL_IsoINIncomplete:00000000 $t
C:\Users\antras\AppData\Local\Temp\ccNHhjAe.s:947    .text.USBD_LL_IsoINIncomplete:00000000 USBD_LL_IsoINIncomplete
C:\Users\antras\AppData\Local\Temp\ccNHhjAe.s:963    .text.USBD_LL_IsoOUTIncomplete:00000000 $t
C:\Users\antras\AppData\Local\Temp\ccNHhjAe.s:970    .text.USBD_LL_IsoOUTIncomplete:00000000 USBD_LL_IsoOUTIncomplete
C:\Users\antras\AppData\Local\Temp\ccNHhjAe.s:986    .text.USBD_LL_DevConnected:00000000 $t
C:\Users\antras\AppData\Local\Temp\ccNHhjAe.s:993    .text.USBD_LL_DevConnected:00000000 USBD_LL_DevConnected
C:\Users\antras\AppData\Local\Temp\ccNHhjAe.s:1009   .text.USBD_LL_DevDisconnected:00000000 $t
C:\Users\antras\AppData\Local\Temp\ccNHhjAe.s:1016   .text.USBD_LL_DevDisconnected:00000000 USBD_LL_DevDisconnected
                     .debug_frame:00000010 $d

UNDEFINED SYMBOLS
USBD_LL_Init
USBD_LL_Stop
USBD_LL_DeInit
USBD_LL_Start
USBD_ParseSetupRequest
USBD_LL_StallEP
USBD_StdDevReq
USBD_StdItfReq
USBD_StdEPReq
USBD_CtlContinueRx
USBD_CtlSendStatus
USBD_CtlReceiveStatus
ARM GAS  C:\Users\antras\AppData\Local\Temp\ccNHhjAe.s 			page 32


USBD_CtlContinueSendData
USBD_LL_PrepareReceive
USBD_LL_OpenEP
