
ARM GAS  C:\Users\mike\AppData\Local\Temp\cc1D6url.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_ioreq.c"
  12              		.text
  13              	.Ltext0:
  14              		.cfi_sections	.debug_frame
  15              		.section	.text.USBD_CtlSendData,"ax",%progbits
  16              		.align	1
  17              		.global	USBD_CtlSendData
  18              		.arch armv7-m
  19              		.syntax unified
  20              		.thumb
  21              		.thumb_func
  22              		.fpu softvfp
  24              	USBD_CtlSendData:
  25              	.LVL0:
  26              	.LFB68:
  27              		.file 1 "Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c"
   1:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** /**
   2:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c ****   ******************************************************************************
   3:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c ****   * @file    usbd_ioreq.c
   4:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c ****   * @author  MCD Application Team
   5:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c ****   * @brief   This file provides the IO requests APIs for control endpoints.
   6:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c ****   ******************************************************************************
   7:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c ****   * @attention
   8:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c ****   *
   9:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c ****   * <h2><center>&copy; Copyright (c) 2015 STMicroelectronics.
  10:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c ****   * All rights reserved.</center></h2>
  11:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c ****   *
  12:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c ****   * This software component is licensed by ST under Ultimate Liberty license
  13:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c ****   * SLA0044, the "License"; You may not use this file except in compliance with
  14:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c ****   * the License. You may obtain a copy of the License at:
  15:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c ****   *                      www.st.com/SLA0044
  16:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c ****   *
  17:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c ****   ******************************************************************************
  18:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c ****   */
  19:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** 
  20:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** /* Includes ------------------------------------------------------------------*/
  21:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** #include "usbd_ioreq.h"
  22:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** 
  23:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** /** @addtogroup STM32_USB_DEVICE_LIBRARY
  24:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c ****   * @{
  25:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c ****   */
  26:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** 
  27:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** 
  28:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** /** @defgroup USBD_IOREQ
  29:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c ****   * @brief control I/O requests module
  30:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c ****   * @{
  31:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c ****   */
ARM GAS  C:\Users\mike\AppData\Local\Temp\cc1D6url.s 			page 2


  32:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** 
  33:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** /** @defgroup USBD_IOREQ_Private_TypesDefinitions
  34:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c ****   * @{
  35:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c ****   */
  36:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** /**
  37:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c ****   * @}
  38:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c ****   */
  39:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** 
  40:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** 
  41:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** /** @defgroup USBD_IOREQ_Private_Defines
  42:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c ****   * @{
  43:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c ****   */
  44:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** 
  45:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** /**
  46:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c ****   * @}
  47:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c ****   */
  48:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** 
  49:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** 
  50:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** /** @defgroup USBD_IOREQ_Private_Macros
  51:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c ****   * @{
  52:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c ****   */
  53:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** /**
  54:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c ****   * @}
  55:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c ****   */
  56:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** 
  57:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** 
  58:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** /** @defgroup USBD_IOREQ_Private_Variables
  59:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c ****   * @{
  60:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c ****   */
  61:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** 
  62:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** /**
  63:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c ****   * @}
  64:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c ****   */
  65:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** 
  66:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** 
  67:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** /** @defgroup USBD_IOREQ_Private_FunctionPrototypes
  68:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c ****   * @{
  69:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c ****   */
  70:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** /**
  71:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c ****   * @}
  72:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c ****   */
  73:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** 
  74:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** 
  75:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** /** @defgroup USBD_IOREQ_Private_Functions
  76:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c ****   * @{
  77:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c ****   */
  78:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** 
  79:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** /**
  80:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** * @brief  USBD_CtlSendData
  81:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** *         send data on the ctl pipe
  82:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** * @param  pdev: device instance
  83:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** * @param  buff: pointer to data buffer
  84:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** * @param  len: length of data to be sent
  85:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** * @retval status
  86:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** */
  87:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** USBD_StatusTypeDef USBD_CtlSendData(USBD_HandleTypeDef *pdev,
  88:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c ****                                     uint8_t *pbuf, uint16_t len)
ARM GAS  C:\Users\mike\AppData\Local\Temp\cc1D6url.s 			page 3


  89:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** {
  28              		.loc 1 89 1 view -0
  29              		.cfi_startproc
  30              		@ args = 0, pretend = 0, frame = 0
  31              		@ frame_needed = 0, uses_anonymous_args = 0
  32              		.loc 1 89 1 is_stmt 0 view .LVU1
  33 0000 10B5     		push	{r4, lr}
  34              	.LCFI0:
  35              		.cfi_def_cfa_offset 8
  36              		.cfi_offset 4, -8
  37              		.cfi_offset 14, -4
  38 0002 1346     		mov	r3, r2
  90:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c ****   /* Set EP0 State */
  91:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c ****   pdev->ep0_state = USBD_EP0_DATA_IN;
  39              		.loc 1 91 3 is_stmt 1 view .LVU2
  40              		.loc 1 91 19 is_stmt 0 view .LVU3
  41 0004 0222     		movs	r2, #2
  42              	.LVL1:
  43              		.loc 1 91 19 view .LVU4
  44 0006 C0F89422 		str	r2, [r0, #660]
  92:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c ****   pdev->ep_in[0].total_length = len;
  45              		.loc 1 92 3 is_stmt 1 view .LVU5
  46              		.loc 1 92 31 is_stmt 0 view .LVU6
  47 000a C361     		str	r3, [r0, #28]
  93:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c ****   pdev->ep_in[0].rem_length   = len;
  48              		.loc 1 93 3 is_stmt 1 view .LVU7
  49              		.loc 1 93 31 is_stmt 0 view .LVU8
  50 000c 0362     		str	r3, [r0, #32]
  94:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** 
  95:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c ****   /* Start the transfer */
  96:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c ****   USBD_LL_Transmit(pdev, 0x00U, pbuf, len);
  51              		.loc 1 96 3 is_stmt 1 view .LVU9
  52 000e 0A46     		mov	r2, r1
  53 0010 0021     		movs	r1, #0
  54              	.LVL2:
  55              		.loc 1 96 3 is_stmt 0 view .LVU10
  56 0012 FFF7FEFF 		bl	USBD_LL_Transmit
  57              	.LVL3:
  97:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** 
  98:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c ****   return USBD_OK;
  58              		.loc 1 98 3 is_stmt 1 view .LVU11
  99:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** }
  59              		.loc 1 99 1 is_stmt 0 view .LVU12
  60 0016 0020     		movs	r0, #0
  61 0018 10BD     		pop	{r4, pc}
  62              		.cfi_endproc
  63              	.LFE68:
  65              		.section	.text.USBD_CtlContinueSendData,"ax",%progbits
  66              		.align	1
  67              		.global	USBD_CtlContinueSendData
  68              		.syntax unified
  69              		.thumb
  70              		.thumb_func
  71              		.fpu softvfp
  73              	USBD_CtlContinueSendData:
  74              	.LVL4:
  75              	.LFB69:
ARM GAS  C:\Users\mike\AppData\Local\Temp\cc1D6url.s 			page 4


 100:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** 
 101:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** /**
 102:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** * @brief  USBD_CtlContinueSendData
 103:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** *         continue sending data on the ctl pipe
 104:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** * @param  pdev: device instance
 105:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** * @param  buff: pointer to data buffer
 106:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** * @param  len: length of data to be sent
 107:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** * @retval status
 108:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** */
 109:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** USBD_StatusTypeDef USBD_CtlContinueSendData(USBD_HandleTypeDef *pdev,
 110:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c ****                                             uint8_t *pbuf, uint16_t len)
 111:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** {
  76              		.loc 1 111 1 is_stmt 1 view -0
  77              		.cfi_startproc
  78              		@ args = 0, pretend = 0, frame = 0
  79              		@ frame_needed = 0, uses_anonymous_args = 0
  80              		.loc 1 111 1 is_stmt 0 view .LVU14
  81 0000 08B5     		push	{r3, lr}
  82              	.LCFI1:
  83              		.cfi_def_cfa_offset 8
  84              		.cfi_offset 3, -8
  85              		.cfi_offset 14, -4
 112:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c ****   /* Start the next transfer */
 113:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c ****   USBD_LL_Transmit(pdev, 0x00U, pbuf, len);
  86              		.loc 1 113 3 is_stmt 1 view .LVU15
  87 0002 1346     		mov	r3, r2
  88 0004 0A46     		mov	r2, r1
  89              	.LVL5:
  90              		.loc 1 113 3 is_stmt 0 view .LVU16
  91 0006 0021     		movs	r1, #0
  92              	.LVL6:
  93              		.loc 1 113 3 view .LVU17
  94 0008 FFF7FEFF 		bl	USBD_LL_Transmit
  95              	.LVL7:
 114:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** 
 115:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c ****   return USBD_OK;
  96              		.loc 1 115 3 is_stmt 1 view .LVU18
 116:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** }
  97              		.loc 1 116 1 is_stmt 0 view .LVU19
  98 000c 0020     		movs	r0, #0
  99 000e 08BD     		pop	{r3, pc}
 100              		.cfi_endproc
 101              	.LFE69:
 103              		.section	.text.USBD_CtlPrepareRx,"ax",%progbits
 104              		.align	1
 105              		.global	USBD_CtlPrepareRx
 106              		.syntax unified
 107              		.thumb
 108              		.thumb_func
 109              		.fpu softvfp
 111              	USBD_CtlPrepareRx:
 112              	.LVL8:
 113              	.LFB70:
 117:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** 
 118:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** /**
 119:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** * @brief  USBD_CtlPrepareRx
 120:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** *         receive data on the ctl pipe
ARM GAS  C:\Users\mike\AppData\Local\Temp\cc1D6url.s 			page 5


 121:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** * @param  pdev: device instance
 122:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** * @param  buff: pointer to data buffer
 123:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** * @param  len: length of data to be received
 124:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** * @retval status
 125:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** */
 126:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** USBD_StatusTypeDef USBD_CtlPrepareRx(USBD_HandleTypeDef *pdev,
 127:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c ****                                      uint8_t *pbuf, uint16_t len)
 128:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** {
 114              		.loc 1 128 1 is_stmt 1 view -0
 115              		.cfi_startproc
 116              		@ args = 0, pretend = 0, frame = 0
 117              		@ frame_needed = 0, uses_anonymous_args = 0
 118              		.loc 1 128 1 is_stmt 0 view .LVU21
 119 0000 10B5     		push	{r4, lr}
 120              	.LCFI2:
 121              		.cfi_def_cfa_offset 8
 122              		.cfi_offset 4, -8
 123              		.cfi_offset 14, -4
 124 0002 1346     		mov	r3, r2
 129:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c ****   /* Set EP0 State */
 130:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c ****   pdev->ep0_state = USBD_EP0_DATA_OUT;
 125              		.loc 1 130 3 is_stmt 1 view .LVU22
 126              		.loc 1 130 19 is_stmt 0 view .LVU23
 127 0004 0322     		movs	r2, #3
 128              	.LVL9:
 129              		.loc 1 130 19 view .LVU24
 130 0006 C0F89422 		str	r2, [r0, #660]
 131:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c ****   pdev->ep_out[0].total_length = len;
 131              		.loc 1 131 3 is_stmt 1 view .LVU25
 132              		.loc 1 131 32 is_stmt 0 view .LVU26
 133 000a C0F85C31 		str	r3, [r0, #348]
 132:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c ****   pdev->ep_out[0].rem_length   = len;
 134              		.loc 1 132 3 is_stmt 1 view .LVU27
 135              		.loc 1 132 32 is_stmt 0 view .LVU28
 136 000e C0F86031 		str	r3, [r0, #352]
 133:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** 
 134:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c ****   /* Start the transfer */
 135:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c ****   USBD_LL_PrepareReceive(pdev, 0U, pbuf, len);
 137              		.loc 1 135 3 is_stmt 1 view .LVU29
 138 0012 0A46     		mov	r2, r1
 139 0014 0021     		movs	r1, #0
 140              	.LVL10:
 141              		.loc 1 135 3 is_stmt 0 view .LVU30
 142 0016 FFF7FEFF 		bl	USBD_LL_PrepareReceive
 143              	.LVL11:
 136:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** 
 137:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c ****   return USBD_OK;
 144              		.loc 1 137 3 is_stmt 1 view .LVU31
 138:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** }
 145              		.loc 1 138 1 is_stmt 0 view .LVU32
 146 001a 0020     		movs	r0, #0
 147 001c 10BD     		pop	{r4, pc}
 148              		.cfi_endproc
 149              	.LFE70:
 151              		.section	.text.USBD_CtlContinueRx,"ax",%progbits
 152              		.align	1
 153              		.global	USBD_CtlContinueRx
ARM GAS  C:\Users\mike\AppData\Local\Temp\cc1D6url.s 			page 6


 154              		.syntax unified
 155              		.thumb
 156              		.thumb_func
 157              		.fpu softvfp
 159              	USBD_CtlContinueRx:
 160              	.LVL12:
 161              	.LFB71:
 139:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** 
 140:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** /**
 141:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** * @brief  USBD_CtlContinueRx
 142:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** *         continue receive data on the ctl pipe
 143:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** * @param  pdev: device instance
 144:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** * @param  buff: pointer to data buffer
 145:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** * @param  len: length of data to be received
 146:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** * @retval status
 147:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** */
 148:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** USBD_StatusTypeDef USBD_CtlContinueRx(USBD_HandleTypeDef *pdev,
 149:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c ****                                       uint8_t *pbuf, uint16_t len)
 150:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** {
 162              		.loc 1 150 1 is_stmt 1 view -0
 163              		.cfi_startproc
 164              		@ args = 0, pretend = 0, frame = 0
 165              		@ frame_needed = 0, uses_anonymous_args = 0
 166              		.loc 1 150 1 is_stmt 0 view .LVU34
 167 0000 08B5     		push	{r3, lr}
 168              	.LCFI3:
 169              		.cfi_def_cfa_offset 8
 170              		.cfi_offset 3, -8
 171              		.cfi_offset 14, -4
 151:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c ****   USBD_LL_PrepareReceive(pdev, 0U, pbuf, len);
 172              		.loc 1 151 3 is_stmt 1 view .LVU35
 173 0002 1346     		mov	r3, r2
 174 0004 0A46     		mov	r2, r1
 175              	.LVL13:
 176              		.loc 1 151 3 is_stmt 0 view .LVU36
 177 0006 0021     		movs	r1, #0
 178              	.LVL14:
 179              		.loc 1 151 3 view .LVU37
 180 0008 FFF7FEFF 		bl	USBD_LL_PrepareReceive
 181              	.LVL15:
 152:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** 
 153:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c ****   return USBD_OK;
 182              		.loc 1 153 3 is_stmt 1 view .LVU38
 154:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** }
 183              		.loc 1 154 1 is_stmt 0 view .LVU39
 184 000c 0020     		movs	r0, #0
 185 000e 08BD     		pop	{r3, pc}
 186              		.cfi_endproc
 187              	.LFE71:
 189              		.section	.text.USBD_CtlSendStatus,"ax",%progbits
 190              		.align	1
 191              		.global	USBD_CtlSendStatus
 192              		.syntax unified
 193              		.thumb
 194              		.thumb_func
 195              		.fpu softvfp
 197              	USBD_CtlSendStatus:
ARM GAS  C:\Users\mike\AppData\Local\Temp\cc1D6url.s 			page 7


 198              	.LVL16:
 199              	.LFB72:
 155:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** 
 156:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** /**
 157:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** * @brief  USBD_CtlSendStatus
 158:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** *         send zero lzngth packet on the ctl pipe
 159:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** * @param  pdev: device instance
 160:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** * @retval status
 161:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** */
 162:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** USBD_StatusTypeDef USBD_CtlSendStatus(USBD_HandleTypeDef *pdev)
 163:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** {
 200              		.loc 1 163 1 is_stmt 1 view -0
 201              		.cfi_startproc
 202              		@ args = 0, pretend = 0, frame = 0
 203              		@ frame_needed = 0, uses_anonymous_args = 0
 204              		.loc 1 163 1 is_stmt 0 view .LVU41
 205 0000 08B5     		push	{r3, lr}
 206              	.LCFI4:
 207              		.cfi_def_cfa_offset 8
 208              		.cfi_offset 3, -8
 209              		.cfi_offset 14, -4
 164:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c ****   /* Set EP0 State */
 165:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c ****   pdev->ep0_state = USBD_EP0_STATUS_IN;
 210              		.loc 1 165 3 is_stmt 1 view .LVU42
 211              		.loc 1 165 19 is_stmt 0 view .LVU43
 212 0002 0423     		movs	r3, #4
 213 0004 C0F89432 		str	r3, [r0, #660]
 166:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** 
 167:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c ****   /* Start the transfer */
 168:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c ****   USBD_LL_Transmit(pdev, 0x00U, NULL, 0U);
 214              		.loc 1 168 3 is_stmt 1 view .LVU44
 215 0008 0023     		movs	r3, #0
 216 000a 1A46     		mov	r2, r3
 217 000c 1946     		mov	r1, r3
 218 000e FFF7FEFF 		bl	USBD_LL_Transmit
 219              	.LVL17:
 169:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** 
 170:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c ****   return USBD_OK;
 220              		.loc 1 170 3 view .LVU45
 171:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** }
 221              		.loc 1 171 1 is_stmt 0 view .LVU46
 222 0012 0020     		movs	r0, #0
 223 0014 08BD     		pop	{r3, pc}
 224              		.cfi_endproc
 225              	.LFE72:
 227              		.section	.text.USBD_CtlReceiveStatus,"ax",%progbits
 228              		.align	1
 229              		.global	USBD_CtlReceiveStatus
 230              		.syntax unified
 231              		.thumb
 232              		.thumb_func
 233              		.fpu softvfp
 235              	USBD_CtlReceiveStatus:
 236              	.LVL18:
 237              	.LFB73:
 172:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** 
 173:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** /**
ARM GAS  C:\Users\mike\AppData\Local\Temp\cc1D6url.s 			page 8


 174:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** * @brief  USBD_CtlReceiveStatus
 175:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** *         receive zero lzngth packet on the ctl pipe
 176:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** * @param  pdev: device instance
 177:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** * @retval status
 178:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** */
 179:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** USBD_StatusTypeDef USBD_CtlReceiveStatus(USBD_HandleTypeDef *pdev)
 180:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** {
 238              		.loc 1 180 1 is_stmt 1 view -0
 239              		.cfi_startproc
 240              		@ args = 0, pretend = 0, frame = 0
 241              		@ frame_needed = 0, uses_anonymous_args = 0
 242              		.loc 1 180 1 is_stmt 0 view .LVU48
 243 0000 08B5     		push	{r3, lr}
 244              	.LCFI5:
 245              		.cfi_def_cfa_offset 8
 246              		.cfi_offset 3, -8
 247              		.cfi_offset 14, -4
 181:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c ****   /* Set EP0 State */
 182:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c ****   pdev->ep0_state = USBD_EP0_STATUS_OUT;
 248              		.loc 1 182 3 is_stmt 1 view .LVU49
 249              		.loc 1 182 19 is_stmt 0 view .LVU50
 250 0002 0523     		movs	r3, #5
 251 0004 C0F89432 		str	r3, [r0, #660]
 183:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** 
 184:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c ****   /* Start the transfer */
 185:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c ****   USBD_LL_PrepareReceive(pdev, 0U, NULL, 0U);
 252              		.loc 1 185 3 is_stmt 1 view .LVU51
 253 0008 0023     		movs	r3, #0
 254 000a 1A46     		mov	r2, r3
 255 000c 1946     		mov	r1, r3
 256 000e FFF7FEFF 		bl	USBD_LL_PrepareReceive
 257              	.LVL19:
 186:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** 
 187:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c ****   return USBD_OK;
 258              		.loc 1 187 3 view .LVU52
 188:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** }
 259              		.loc 1 188 1 is_stmt 0 view .LVU53
 260 0012 0020     		movs	r0, #0
 261 0014 08BD     		pop	{r3, pc}
 262              		.cfi_endproc
 263              	.LFE73:
 265              		.section	.text.USBD_GetRxCount,"ax",%progbits
 266              		.align	1
 267              		.global	USBD_GetRxCount
 268              		.syntax unified
 269              		.thumb
 270              		.thumb_func
 271              		.fpu softvfp
 273              	USBD_GetRxCount:
 274              	.LVL20:
 275              	.LFB74:
 189:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** 
 190:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** /**
 191:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** * @brief  USBD_GetRxCount
 192:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** *         returns the received data length
 193:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** * @param  pdev: device instance
 194:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** * @param  ep_addr: endpoint address
ARM GAS  C:\Users\mike\AppData\Local\Temp\cc1D6url.s 			page 9


 195:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** * @retval Rx Data blength
 196:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** */
 197:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** uint32_t USBD_GetRxCount(USBD_HandleTypeDef *pdev, uint8_t ep_addr)
 198:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** {
 276              		.loc 1 198 1 is_stmt 1 view -0
 277              		.cfi_startproc
 278              		@ args = 0, pretend = 0, frame = 0
 279              		@ frame_needed = 0, uses_anonymous_args = 0
 280              		.loc 1 198 1 is_stmt 0 view .LVU55
 281 0000 08B5     		push	{r3, lr}
 282              	.LCFI6:
 283              		.cfi_def_cfa_offset 8
 284              		.cfi_offset 3, -8
 285              		.cfi_offset 14, -4
 199:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c ****   return USBD_LL_GetRxDataSize(pdev, ep_addr);
 286              		.loc 1 199 3 is_stmt 1 view .LVU56
 287              		.loc 1 199 10 is_stmt 0 view .LVU57
 288 0002 FFF7FEFF 		bl	USBD_LL_GetRxDataSize
 289              	.LVL21:
 200:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c **** }
 290              		.loc 1 200 1 view .LVU58
 291 0006 08BD     		pop	{r3, pc}
 292              		.cfi_endproc
 293              	.LFE74:
 295              		.text
 296              	.Letext0:
 297              		.file 2 "c:\\users\\mike\\appdata\\roaming\\xpacks\\@gnu-mcu-eclipse\\arm-none-eabi-gcc\\8.2.1-1.7
 298              		.file 3 "c:\\users\\mike\\appdata\\roaming\\xpacks\\@gnu-mcu-eclipse\\arm-none-eabi-gcc\\8.2.1-1.7
 299              		.file 4 "c:\\users\\mike\\appdata\\roaming\\xpacks\\@gnu-mcu-eclipse\\arm-none-eabi-gcc\\8.2.1-1.7
 300              		.file 5 "c:\\users\\mike\\appdata\\roaming\\xpacks\\@gnu-mcu-eclipse\\arm-none-eabi-gcc\\8.2.1-1.7
 301              		.file 6 "c:\\users\\mike\\appdata\\roaming\\xpacks\\@gnu-mcu-eclipse\\arm-none-eabi-gcc\\8.2.1-1.7
 302              		.file 7 "c:\\users\\mike\\appdata\\roaming\\xpacks\\@gnu-mcu-eclipse\\arm-none-eabi-gcc\\8.2.1-1.7
 303              		.file 8 "c:\\users\\mike\\appdata\\roaming\\xpacks\\@gnu-mcu-eclipse\\arm-none-eabi-gcc\\8.2.1-1.7
 304              		.file 9 "Drivers/CMSIS/Include/core_cm3.h"
 305              		.file 10 "Drivers/CMSIS/Device/ST/STM32F1xx/Include/system_stm32f1xx.h"
 306              		.file 11 "Drivers/CMSIS/Device/ST/STM32F1xx/Include/stm32f103xb.h"
 307              		.file 12 "Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_def.h"
 308              		.file 13 "Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_dma.h"
 309              		.file 14 "Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_spi.h"
 310              		.file 15 "Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal.h"
 311              		.file 16 "Core/Inc/main.h"
 312              		.file 17 "Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h"
 313              		.file 18 "Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_core.h"
ARM GAS  C:\Users\mike\AppData\Local\Temp\cc1D6url.s 			page 10


DEFINED SYMBOLS
                            *ABS*:0000000000000000 usbd_ioreq.c
C:\Users\mike\AppData\Local\Temp\cc1D6url.s:16     .text.USBD_CtlSendData:0000000000000000 $t
C:\Users\mike\AppData\Local\Temp\cc1D6url.s:24     .text.USBD_CtlSendData:0000000000000000 USBD_CtlSendData
C:\Users\mike\AppData\Local\Temp\cc1D6url.s:66     .text.USBD_CtlContinueSendData:0000000000000000 $t
C:\Users\mike\AppData\Local\Temp\cc1D6url.s:73     .text.USBD_CtlContinueSendData:0000000000000000 USBD_CtlContinueSendData
C:\Users\mike\AppData\Local\Temp\cc1D6url.s:104    .text.USBD_CtlPrepareRx:0000000000000000 $t
C:\Users\mike\AppData\Local\Temp\cc1D6url.s:111    .text.USBD_CtlPrepareRx:0000000000000000 USBD_CtlPrepareRx
C:\Users\mike\AppData\Local\Temp\cc1D6url.s:152    .text.USBD_CtlContinueRx:0000000000000000 $t
C:\Users\mike\AppData\Local\Temp\cc1D6url.s:159    .text.USBD_CtlContinueRx:0000000000000000 USBD_CtlContinueRx
C:\Users\mike\AppData\Local\Temp\cc1D6url.s:190    .text.USBD_CtlSendStatus:0000000000000000 $t
C:\Users\mike\AppData\Local\Temp\cc1D6url.s:197    .text.USBD_CtlSendStatus:0000000000000000 USBD_CtlSendStatus
C:\Users\mike\AppData\Local\Temp\cc1D6url.s:228    .text.USBD_CtlReceiveStatus:0000000000000000 $t
C:\Users\mike\AppData\Local\Temp\cc1D6url.s:235    .text.USBD_CtlReceiveStatus:0000000000000000 USBD_CtlReceiveStatus
C:\Users\mike\AppData\Local\Temp\cc1D6url.s:266    .text.USBD_GetRxCount:0000000000000000 $t
C:\Users\mike\AppData\Local\Temp\cc1D6url.s:273    .text.USBD_GetRxCount:0000000000000000 USBD_GetRxCount

UNDEFINED SYMBOLS
USBD_LL_Transmit
USBD_LL_PrepareReceive
USBD_LL_GetRxDataSize