ARM GAS /tmp/ccQ58aJU.s page 1 1 .cpu cortex-m4 2 .arch armv7e-m 3 .fpu fpv4-sp-d16 4 .eabi_attribute 27, 1 5 .eabi_attribute 28, 1 6 .eabi_attribute 20, 1 7 .eabi_attribute 21, 1 8 .eabi_attribute 23, 3 9 .eabi_attribute 24, 1 10 .eabi_attribute 25, 1 11 .eabi_attribute 26, 1 12 .eabi_attribute 30, 1 13 .eabi_attribute 34, 1 14 .eabi_attribute 18, 4 15 .file "usbd_ctlreq.c" 16 .text 17 .Ltext0: 18 .cfi_sections .debug_frame 19 .file 1 "Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c" 20 .section .text.USBD_GetLen,"ax",%progbits 21 .align 1 22 .syntax unified 23 .thumb 24 .thumb_func 26 USBD_GetLen: 27 .LVL0: 28 .LFB346: 1:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** /** 2:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** ****************************************************************************** 3:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** * @file usbd_req.c 4:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** * @author MCD Application Team 5:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** * @brief This file provides the standard USB requests following chapter 9. 6:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** ****************************************************************************** 7:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** * @attention 8:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** * 9:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** *

© Copyright (c) 2015 STMicroelectronics. 10:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** * All rights reserved.

11:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** * 12:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** * This software component is licensed by ST under Ultimate Liberty license 13:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** * SLA0044, the "License"; You may not use this file except in compliance with 14:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** * the License. You may obtain a copy of the License at: 15:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** * www.st.com/SLA0044 16:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** * 17:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** ****************************************************************************** 18:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** */ 19:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 20:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** /* Includes ------------------------------------------------------------------*/ 21:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** #include "usbd_ctlreq.h" 22:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** #include "usbd_ioreq.h" 23:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 24:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 25:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** /** @addtogroup STM32_USBD_STATE_DEVICE_LIBRARY 26:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** * @{ 27:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** */ 28:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 29:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 30:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** /** @defgroup USBD_REQ ARM GAS /tmp/ccQ58aJU.s page 2 31:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** * @brief USB standard requests module 32:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** * @{ 33:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** */ 34:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 35:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** /** @defgroup USBD_REQ_Private_TypesDefinitions 36:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** * @{ 37:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** */ 38:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 39:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** /** 40:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** * @} 41:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** */ 42:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 43:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 44:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** /** @defgroup USBD_REQ_Private_Defines 45:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** * @{ 46:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** */ 47:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 48:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** /** 49:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** * @} 50:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** */ 51:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 52:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 53:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** /** @defgroup USBD_REQ_Private_Macros 54:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** * @{ 55:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** */ 56:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 57:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** /** 58:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** * @} 59:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** */ 60:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 61:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 62:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** /** @defgroup USBD_REQ_Private_Variables 63:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** * @{ 64:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** */ 65:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 66:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** /** 67:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** * @} 68:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** */ 69:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 70:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 71:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** /** @defgroup USBD_REQ_Private_FunctionPrototypes 72:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** * @{ 73:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** */ 74:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** static void USBD_GetDescriptor(USBD_HandleTypeDef *pdev, USBD_SetupReqTypedef *req); 75:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** static void USBD_SetAddress(USBD_HandleTypeDef *pdev, USBD_SetupReqTypedef *req); 76:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** static USBD_StatusTypeDef USBD_SetConfig(USBD_HandleTypeDef *pdev, USBD_SetupReqTypedef *req); 77:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** static void USBD_GetConfig(USBD_HandleTypeDef *pdev, USBD_SetupReqTypedef *req); 78:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** static void USBD_GetStatus(USBD_HandleTypeDef *pdev, USBD_SetupReqTypedef *req); 79:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** static void USBD_SetFeature(USBD_HandleTypeDef *pdev, USBD_SetupReqTypedef *req); 80:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** static void USBD_ClrFeature(USBD_HandleTypeDef *pdev, USBD_SetupReqTypedef *req); 81:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** static uint8_t USBD_GetLen(uint8_t *buf); 82:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 83:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** /** 84:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** * @} 85:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** */ 86:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 87:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** ARM GAS /tmp/ccQ58aJU.s page 3 88:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** /** @defgroup USBD_REQ_Private_Functions 89:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** * @{ 90:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** */ 91:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 92:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 93:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** /** 94:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** * @brief USBD_StdDevReq 95:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** * Handle standard usb device requests 96:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** * @param pdev: device instance 97:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** * @param req: usb request 98:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** * @retval status 99:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** */ 100:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** USBD_StatusTypeDef USBD_StdDevReq(USBD_HandleTypeDef *pdev, USBD_SetupReqTypedef *req) 101:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 102:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** USBD_StatusTypeDef ret = USBD_OK; 103:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 104:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** switch (req->bmRequest & USB_REQ_TYPE_MASK) 105:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 106:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** case USB_REQ_TYPE_CLASS: 107:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** case USB_REQ_TYPE_VENDOR: 108:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** ret = (USBD_StatusTypeDef)pdev->pClass->Setup(pdev, req); 109:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 110:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 111:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** case USB_REQ_TYPE_STANDARD: 112:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** switch (req->bRequest) 113:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 114:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** case USB_REQ_GET_DESCRIPTOR: 115:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** USBD_GetDescriptor(pdev, req); 116:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 117:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 118:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** case USB_REQ_SET_ADDRESS: 119:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** USBD_SetAddress(pdev, req); 120:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 121:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 122:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** case USB_REQ_SET_CONFIGURATION: 123:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** ret = USBD_SetConfig(pdev, req); 124:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 125:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 126:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** case USB_REQ_GET_CONFIGURATION: 127:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** USBD_GetConfig(pdev, req); 128:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 129:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 130:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** case USB_REQ_GET_STATUS: 131:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** USBD_GetStatus(pdev, req); 132:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 133:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 134:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** case USB_REQ_SET_FEATURE: 135:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** USBD_SetFeature(pdev, req); 136:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 137:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 138:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** case USB_REQ_CLEAR_FEATURE: 139:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** USBD_ClrFeature(pdev, req); 140:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 141:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 142:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** default: 143:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** USBD_CtlError(pdev, req); 144:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; ARM GAS /tmp/ccQ58aJU.s page 4 145:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 146:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 147:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 148:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** default: 149:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** USBD_CtlError(pdev, req); 150:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 151:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 152:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 153:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** return ret; 154:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 155:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 156:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** /** 157:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** * @brief USBD_StdItfReq 158:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** * Handle standard usb interface requests 159:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** * @param pdev: device instance 160:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** * @param req: usb request 161:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** * @retval status 162:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** */ 163:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** USBD_StatusTypeDef USBD_StdItfReq(USBD_HandleTypeDef *pdev, USBD_SetupReqTypedef *req) 164:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 165:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** USBD_StatusTypeDef ret = USBD_OK; 166:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 167:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** switch (req->bmRequest & USB_REQ_TYPE_MASK) 168:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 169:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** case USB_REQ_TYPE_CLASS: 170:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** case USB_REQ_TYPE_VENDOR: 171:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** case USB_REQ_TYPE_STANDARD: 172:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** switch (pdev->dev_state) 173:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 174:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** case USBD_STATE_DEFAULT: 175:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** case USBD_STATE_ADDRESSED: 176:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** case USBD_STATE_CONFIGURED: 177:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 178:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** if (LOBYTE(req->wIndex) <= USBD_MAX_NUM_INTERFACES) 179:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 180:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** ret = (USBD_StatusTypeDef)pdev->pClass->Setup(pdev, req); 181:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 182:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** if ((req->wLength == 0U) && (ret == USBD_OK)) 183:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 184:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** (void)USBD_CtlSendStatus(pdev); 185:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 186:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 187:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** else 188:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 189:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** USBD_CtlError(pdev, req); 190:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 191:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 192:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 193:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** default: 194:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** USBD_CtlError(pdev, req); 195:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 196:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 197:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 198:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 199:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** default: 200:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** USBD_CtlError(pdev, req); 201:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; ARM GAS /tmp/ccQ58aJU.s page 5 202:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 203:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 204:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** return ret; 205:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 206:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 207:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** /** 208:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** * @brief USBD_StdEPReq 209:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** * Handle standard usb endpoint requests 210:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** * @param pdev: device instance 211:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** * @param req: usb request 212:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** * @retval status 213:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** */ 214:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** USBD_StatusTypeDef USBD_StdEPReq(USBD_HandleTypeDef *pdev, USBD_SetupReqTypedef *req) 215:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 216:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** USBD_EndpointTypeDef *pep; 217:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** uint8_t ep_addr; 218:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** USBD_StatusTypeDef ret = USBD_OK; 219:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** ep_addr = LOBYTE(req->wIndex); 220:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 221:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** switch (req->bmRequest & USB_REQ_TYPE_MASK) 222:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 223:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** case USB_REQ_TYPE_CLASS: 224:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** case USB_REQ_TYPE_VENDOR: 225:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** ret = (USBD_StatusTypeDef)pdev->pClass->Setup(pdev, req); 226:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 227:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 228:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** case USB_REQ_TYPE_STANDARD: 229:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** switch (req->bRequest) 230:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 231:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** case USB_REQ_SET_FEATURE: 232:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** switch (pdev->dev_state) 233:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 234:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** case USBD_STATE_ADDRESSED: 235:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** if ((ep_addr != 0x00U) && (ep_addr != 0x80U)) 236:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 237:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** (void)USBD_LL_StallEP(pdev, ep_addr); 238:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** (void)USBD_LL_StallEP(pdev, 0x80U); 239:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 240:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** else 241:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 242:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** USBD_CtlError(pdev, req); 243:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 244:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 245:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 246:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** case USBD_STATE_CONFIGURED: 247:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** if (req->wValue == USB_FEATURE_EP_HALT) 248:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 249:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** if ((ep_addr != 0x00U) && (ep_addr != 0x80U) && (req->wLength == 0x00U)) 250:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 251:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** (void)USBD_LL_StallEP(pdev, ep_addr); 252:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 253:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 254:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** (void)USBD_CtlSendStatus(pdev); 255:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 256:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 257:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 258:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** default: ARM GAS /tmp/ccQ58aJU.s page 6 259:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** USBD_CtlError(pdev, req); 260:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 261:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 262:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 263:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 264:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** case USB_REQ_CLEAR_FEATURE: 265:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 266:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** switch (pdev->dev_state) 267:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 268:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** case USBD_STATE_ADDRESSED: 269:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** if ((ep_addr != 0x00U) && (ep_addr != 0x80U)) 270:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 271:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** (void)USBD_LL_StallEP(pdev, ep_addr); 272:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** (void)USBD_LL_StallEP(pdev, 0x80U); 273:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 274:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** else 275:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 276:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** USBD_CtlError(pdev, req); 277:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 278:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 279:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 280:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** case USBD_STATE_CONFIGURED: 281:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** if (req->wValue == USB_FEATURE_EP_HALT) 282:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 283:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** if ((ep_addr & 0x7FU) != 0x00U) 284:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 285:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** (void)USBD_LL_ClearStallEP(pdev, ep_addr); 286:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 287:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** (void)USBD_CtlSendStatus(pdev); 288:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** ret = (USBD_StatusTypeDef)pdev->pClass->Setup(pdev, req); 289:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 290:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 291:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 292:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** default: 293:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** USBD_CtlError(pdev, req); 294:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 295:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 296:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 297:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 298:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** case USB_REQ_GET_STATUS: 299:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** switch (pdev->dev_state) 300:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 301:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** case USBD_STATE_ADDRESSED: 302:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** if ((ep_addr != 0x00U) && (ep_addr != 0x80U)) 303:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 304:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** USBD_CtlError(pdev, req); 305:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 306:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 307:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** pep = ((ep_addr & 0x80U) == 0x80U) ? &pdev->ep_in[ep_addr & 0x7FU] : \ 308:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** &pdev->ep_out[ep_addr & 0x7FU]; 309:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 310:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** pep->status = 0x0000U; 311:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 312:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** (void)USBD_CtlSendData(pdev, (uint8_t *)&pep->status, 2U); 313:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 314:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 315:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** case USBD_STATE_CONFIGURED: ARM GAS /tmp/ccQ58aJU.s page 7 316:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** if ((ep_addr & 0x80U) == 0x80U) 317:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 318:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** if (pdev->ep_in[ep_addr & 0xFU].is_used == 0U) 319:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 320:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** USBD_CtlError(pdev, req); 321:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 322:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 323:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 324:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** else 325:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 326:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** if (pdev->ep_out[ep_addr & 0xFU].is_used == 0U) 327:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 328:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** USBD_CtlError(pdev, req); 329:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 330:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 331:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 332:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 333:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** pep = ((ep_addr & 0x80U) == 0x80U) ? &pdev->ep_in[ep_addr & 0x7FU] : \ 334:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** &pdev->ep_out[ep_addr & 0x7FU]; 335:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 336:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** if ((ep_addr == 0x00U) || (ep_addr == 0x80U)) 337:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 338:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** pep->status = 0x0000U; 339:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 340:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** else if (USBD_LL_IsStallEP(pdev, ep_addr) != 0U) 341:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 342:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** pep->status = 0x0001U; 343:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 344:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** else 345:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 346:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** pep->status = 0x0000U; 347:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 348:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 349:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** (void)USBD_CtlSendData(pdev, (uint8_t *)&pep->status, 2U); 350:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 351:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 352:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** default: 353:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** USBD_CtlError(pdev, req); 354:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 355:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 356:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 357:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 358:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** default: 359:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** USBD_CtlError(pdev, req); 360:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 361:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 362:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 363:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 364:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** default: 365:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** USBD_CtlError(pdev, req); 366:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 367:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 368:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 369:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** return ret; 370:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 371:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 372:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** ARM GAS /tmp/ccQ58aJU.s page 8 373:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** /** 374:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** * @brief USBD_GetDescriptor 375:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** * Handle Get Descriptor requests 376:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** * @param pdev: device instance 377:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** * @param req: usb request 378:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** * @retval status 379:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** */ 380:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** static void USBD_GetDescriptor(USBD_HandleTypeDef *pdev, USBD_SetupReqTypedef *req) 381:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 382:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** uint16_t len = 0U; 383:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** uint8_t *pbuf = NULL; 384:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** uint8_t err = 0U; 385:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 386:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** switch (req->wValue >> 8) 387:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 388:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** #if ((USBD_LPM_ENABLED == 1U) || (USBD_CLASS_BOS_ENABLED == 1U)) 389:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** case USB_DESC_TYPE_BOS: 390:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** if (pdev->pDesc->GetBOSDescriptor != NULL) 391:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 392:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** pbuf = pdev->pDesc->GetBOSDescriptor(pdev->dev_speed, &len); 393:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 394:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** else 395:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 396:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** USBD_CtlError(pdev, req); 397:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** err++; 398:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 399:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 400:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** #endif 401:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** case USB_DESC_TYPE_DEVICE: 402:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** pbuf = pdev->pDesc->GetDeviceDescriptor(pdev->dev_speed, &len); 403:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 404:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 405:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** case USB_DESC_TYPE_CONFIGURATION: 406:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** if (pdev->dev_speed == USBD_SPEED_HIGH) 407:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 408:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** pbuf = pdev->pClass->GetHSConfigDescriptor(&len); 409:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** pbuf[1] = USB_DESC_TYPE_CONFIGURATION; 410:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 411:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** else 412:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 413:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** pbuf = pdev->pClass->GetFSConfigDescriptor(&len); 414:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** pbuf[1] = USB_DESC_TYPE_CONFIGURATION; 415:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 416:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 417:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 418:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** case USB_DESC_TYPE_STRING: 419:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** switch ((uint8_t)(req->wValue)) 420:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 421:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** case USBD_IDX_LANGID_STR: 422:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** if (pdev->pDesc->GetLangIDStrDescriptor != NULL) 423:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 424:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** pbuf = pdev->pDesc->GetLangIDStrDescriptor(pdev->dev_speed, &len); 425:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 426:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** else 427:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 428:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** USBD_CtlError(pdev, req); 429:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** err++; ARM GAS /tmp/ccQ58aJU.s page 9 430:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 431:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 432:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 433:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** case USBD_IDX_MFC_STR: 434:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** if (pdev->pDesc->GetManufacturerStrDescriptor != NULL) 435:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 436:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** pbuf = pdev->pDesc->GetManufacturerStrDescriptor(pdev->dev_speed, &len); 437:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 438:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** else 439:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 440:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** USBD_CtlError(pdev, req); 441:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** err++; 442:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 443:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 444:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 445:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** case USBD_IDX_PRODUCT_STR: 446:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** if (pdev->pDesc->GetProductStrDescriptor != NULL) 447:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 448:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** pbuf = pdev->pDesc->GetProductStrDescriptor(pdev->dev_speed, &len); 449:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 450:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** else 451:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 452:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** USBD_CtlError(pdev, req); 453:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** err++; 454:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 455:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 456:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 457:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** case USBD_IDX_SERIAL_STR: 458:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** if (pdev->pDesc->GetSerialStrDescriptor != NULL) 459:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 460:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** pbuf = pdev->pDesc->GetSerialStrDescriptor(pdev->dev_speed, &len); 461:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 462:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** else 463:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 464:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** USBD_CtlError(pdev, req); 465:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** err++; 466:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 467:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 468:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 469:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** case USBD_IDX_CONFIG_STR: 470:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** if (pdev->pDesc->GetConfigurationStrDescriptor != NULL) 471:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 472:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** pbuf = pdev->pDesc->GetConfigurationStrDescriptor(pdev->dev_speed, &len); 473:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 474:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** else 475:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 476:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** USBD_CtlError(pdev, req); 477:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** err++; 478:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 479:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 480:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 481:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** case USBD_IDX_INTERFACE_STR: 482:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** if (pdev->pDesc->GetInterfaceStrDescriptor != NULL) 483:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 484:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** pbuf = pdev->pDesc->GetInterfaceStrDescriptor(pdev->dev_speed, &len); 485:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 486:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** else ARM GAS /tmp/ccQ58aJU.s page 10 487:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 488:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** USBD_CtlError(pdev, req); 489:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** err++; 490:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 491:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 492:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 493:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** default: 494:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** #if (USBD_SUPPORT_USER_STRING_DESC == 1U) 495:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** if (pdev->pClass->GetUsrStrDescriptor != NULL) 496:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 497:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** pbuf = pdev->pClass->GetUsrStrDescriptor(pdev, (req->wValue), &len); 498:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 499:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** else 500:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 501:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** USBD_CtlError(pdev, req); 502:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** err++; 503:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 504:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** #endif 505:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 506:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** #if (USBD_CLASS_USER_STRING_DESC == 1U) 507:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** if (pdev->pDesc->GetUserStrDescriptor != NULL) 508:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 509:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** pbuf = pdev->pDesc->GetUserStrDescriptor(pdev->dev_speed, (req->wValue), &len); 510:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 511:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** else 512:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 513:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** USBD_CtlError(pdev, req); 514:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** err++; 515:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 516:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** #endif 517:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 518:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** #if ((USBD_CLASS_USER_STRING_DESC == 0U) && (USBD_SUPPORT_USER_STRING_DESC == 0U)) 519:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** USBD_CtlError(pdev, req); 520:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** err++; 521:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** #endif 522:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 523:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 524:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 525:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 526:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** case USB_DESC_TYPE_DEVICE_QUALIFIER: 527:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** if (pdev->dev_speed == USBD_SPEED_HIGH) 528:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 529:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** pbuf = pdev->pClass->GetDeviceQualifierDescriptor(&len); 530:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 531:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** else 532:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 533:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** USBD_CtlError(pdev, req); 534:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** err++; 535:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 536:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 537:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 538:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** case USB_DESC_TYPE_OTHER_SPEED_CONFIGURATION: 539:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** if (pdev->dev_speed == USBD_SPEED_HIGH) 540:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 541:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** pbuf = pdev->pClass->GetOtherSpeedConfigDescriptor(&len); 542:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** pbuf[1] = USB_DESC_TYPE_OTHER_SPEED_CONFIGURATION; 543:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } ARM GAS /tmp/ccQ58aJU.s page 11 544:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** else 545:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 546:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** USBD_CtlError(pdev, req); 547:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** err++; 548:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 549:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 550:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 551:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** default: 552:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** USBD_CtlError(pdev, req); 553:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** err++; 554:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 555:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 556:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 557:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** if (err != 0U) 558:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 559:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** return; 560:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 561:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 562:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** if (req->wLength != 0U) 563:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 564:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** if (len != 0U) 565:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 566:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** len = MIN(len, req->wLength); 567:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** (void)USBD_CtlSendData(pdev, pbuf, len); 568:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 569:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** else 570:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 571:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** USBD_CtlError(pdev, req); 572:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 573:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 574:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** else 575:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 576:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** (void)USBD_CtlSendStatus(pdev); 577:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 578:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 579:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 580:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 581:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** /** 582:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** * @brief USBD_SetAddress 583:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** * Set device address 584:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** * @param pdev: device instance 585:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** * @param req: usb request 586:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** * @retval status 587:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** */ 588:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** static void USBD_SetAddress(USBD_HandleTypeDef *pdev, USBD_SetupReqTypedef *req) 589:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 590:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** uint8_t dev_addr; 591:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 592:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** if ((req->wIndex == 0U) && (req->wLength == 0U) && (req->wValue < 128U)) 593:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 594:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** dev_addr = (uint8_t)(req->wValue) & 0x7FU; 595:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 596:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** if (pdev->dev_state == USBD_STATE_CONFIGURED) 597:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 598:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** USBD_CtlError(pdev, req); 599:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 600:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** else ARM GAS /tmp/ccQ58aJU.s page 12 601:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 602:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** pdev->dev_address = dev_addr; 603:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** (void)USBD_LL_SetUSBAddress(pdev, dev_addr); 604:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** (void)USBD_CtlSendStatus(pdev); 605:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 606:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** if (dev_addr != 0U) 607:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 608:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** pdev->dev_state = USBD_STATE_ADDRESSED; 609:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 610:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** else 611:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 612:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** pdev->dev_state = USBD_STATE_DEFAULT; 613:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 614:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 615:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 616:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** else 617:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 618:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** USBD_CtlError(pdev, req); 619:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 620:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 621:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 622:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** /** 623:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** * @brief USBD_SetConfig 624:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** * Handle Set device configuration request 625:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** * @param pdev: device instance 626:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** * @param req: usb request 627:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** * @retval status 628:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** */ 629:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** static USBD_StatusTypeDef USBD_SetConfig(USBD_HandleTypeDef *pdev, USBD_SetupReqTypedef *req) 630:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 631:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** USBD_StatusTypeDef ret = USBD_OK; 632:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** static uint8_t cfgidx; 633:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 634:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** cfgidx = (uint8_t)(req->wValue); 635:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 636:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** if (cfgidx > USBD_MAX_NUM_CONFIGURATION) 637:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 638:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** USBD_CtlError(pdev, req); 639:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** return USBD_FAIL; 640:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 641:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 642:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** switch (pdev->dev_state) 643:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 644:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** case USBD_STATE_ADDRESSED: 645:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** if (cfgidx != 0U) 646:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 647:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** pdev->dev_config = cfgidx; 648:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 649:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** ret = USBD_SetClassConfig(pdev, cfgidx); 650:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 651:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** if (ret != USBD_OK) 652:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 653:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** USBD_CtlError(pdev, req); 654:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 655:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** else 656:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 657:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** (void)USBD_CtlSendStatus(pdev); ARM GAS /tmp/ccQ58aJU.s page 13 658:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** pdev->dev_state = USBD_STATE_CONFIGURED; 659:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 660:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 661:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** else 662:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 663:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** (void)USBD_CtlSendStatus(pdev); 664:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 665:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 666:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 667:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** case USBD_STATE_CONFIGURED: 668:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** if (cfgidx == 0U) 669:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 670:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** pdev->dev_state = USBD_STATE_ADDRESSED; 671:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** pdev->dev_config = cfgidx; 672:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** (void)USBD_ClrClassConfig(pdev, cfgidx); 673:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** (void)USBD_CtlSendStatus(pdev); 674:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 675:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** else if (cfgidx != pdev->dev_config) 676:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 677:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** /* Clear old configuration */ 678:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** (void)USBD_ClrClassConfig(pdev, (uint8_t)pdev->dev_config); 679:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 680:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** /* set new configuration */ 681:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** pdev->dev_config = cfgidx; 682:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 683:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** ret = USBD_SetClassConfig(pdev, cfgidx); 684:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 685:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** if (ret != USBD_OK) 686:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 687:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** USBD_CtlError(pdev, req); 688:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** (void)USBD_ClrClassConfig(pdev, (uint8_t)pdev->dev_config); 689:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** pdev->dev_state = USBD_STATE_ADDRESSED; 690:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 691:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** else 692:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 693:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** (void)USBD_CtlSendStatus(pdev); 694:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 695:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 696:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** else 697:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 698:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** (void)USBD_CtlSendStatus(pdev); 699:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 700:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 701:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 702:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** default: 703:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** USBD_CtlError(pdev, req); 704:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** (void)USBD_ClrClassConfig(pdev, cfgidx); 705:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** ret = USBD_FAIL; 706:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 707:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 708:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 709:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** return ret; 710:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 711:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 712:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** /** 713:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** * @brief USBD_GetConfig 714:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** * Handle Get device configuration request ARM GAS /tmp/ccQ58aJU.s page 14 715:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** * @param pdev: device instance 716:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** * @param req: usb request 717:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** * @retval status 718:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** */ 719:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** static void USBD_GetConfig(USBD_HandleTypeDef *pdev, USBD_SetupReqTypedef *req) 720:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 721:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** if (req->wLength != 1U) 722:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 723:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** USBD_CtlError(pdev, req); 724:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 725:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** else 726:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 727:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** switch (pdev->dev_state) 728:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 729:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** case USBD_STATE_DEFAULT: 730:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** case USBD_STATE_ADDRESSED: 731:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** pdev->dev_default_config = 0U; 732:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** (void)USBD_CtlSendData(pdev, (uint8_t *)&pdev->dev_default_config, 1U); 733:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 734:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 735:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** case USBD_STATE_CONFIGURED: 736:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** (void)USBD_CtlSendData(pdev, (uint8_t *)&pdev->dev_config, 1U); 737:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 738:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 739:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** default: 740:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** USBD_CtlError(pdev, req); 741:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 742:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 743:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 744:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 745:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 746:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** /** 747:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** * @brief USBD_GetStatus 748:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** * Handle Get Status request 749:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** * @param pdev: device instance 750:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** * @param req: usb request 751:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** * @retval status 752:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** */ 753:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** static void USBD_GetStatus(USBD_HandleTypeDef *pdev, USBD_SetupReqTypedef *req) 754:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 755:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** switch (pdev->dev_state) 756:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 757:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** case USBD_STATE_DEFAULT: 758:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** case USBD_STATE_ADDRESSED: 759:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** case USBD_STATE_CONFIGURED: 760:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** if (req->wLength != 0x2U) 761:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 762:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** USBD_CtlError(pdev, req); 763:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 764:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 765:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 766:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** #if (USBD_SELF_POWERED == 1U) 767:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** pdev->dev_config_status = USB_CONFIG_SELF_POWERED; 768:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** #else 769:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** pdev->dev_config_status = 0U; 770:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** #endif 771:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** ARM GAS /tmp/ccQ58aJU.s page 15 772:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** if (pdev->dev_remote_wakeup != 0U) 773:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 774:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** pdev->dev_config_status |= USB_CONFIG_REMOTE_WAKEUP; 775:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 776:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 777:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** (void)USBD_CtlSendData(pdev, (uint8_t *)&pdev->dev_config_status, 2U); 778:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 779:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 780:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** default: 781:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** USBD_CtlError(pdev, req); 782:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 783:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 784:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 785:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 786:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 787:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** /** 788:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** * @brief USBD_SetFeature 789:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** * Handle Set device feature request 790:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** * @param pdev: device instance 791:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** * @param req: usb request 792:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** * @retval status 793:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** */ 794:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** static void USBD_SetFeature(USBD_HandleTypeDef *pdev, USBD_SetupReqTypedef *req) 795:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 796:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** if (req->wValue == USB_FEATURE_REMOTE_WAKEUP) 797:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 798:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** pdev->dev_remote_wakeup = 1U; 799:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** (void)USBD_CtlSendStatus(pdev); 800:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 801:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 802:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 803:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 804:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** /** 805:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** * @brief USBD_ClrFeature 806:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** * Handle clear device feature request 807:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** * @param pdev: device instance 808:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** * @param req: usb request 809:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** * @retval status 810:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** */ 811:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** static void USBD_ClrFeature(USBD_HandleTypeDef *pdev, USBD_SetupReqTypedef *req) 812:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 813:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** switch (pdev->dev_state) 814:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 815:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** case USBD_STATE_DEFAULT: 816:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** case USBD_STATE_ADDRESSED: 817:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** case USBD_STATE_CONFIGURED: 818:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** if (req->wValue == USB_FEATURE_REMOTE_WAKEUP) 819:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 820:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** pdev->dev_remote_wakeup = 0U; 821:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** (void)USBD_CtlSendStatus(pdev); 822:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 823:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 824:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 825:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** default: 826:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** USBD_CtlError(pdev, req); 827:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 828:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } ARM GAS /tmp/ccQ58aJU.s page 16 829:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 830:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 831:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 832:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** /** 833:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** * @brief USBD_ParseSetupRequest 834:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** * Copy buffer into setup structure 835:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** * @param pdev: device instance 836:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** * @param req: usb request 837:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** * @retval None 838:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** */ 839:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** void USBD_ParseSetupRequest(USBD_SetupReqTypedef *req, uint8_t *pdata) 840:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 841:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** uint8_t *pbuff = pdata; 842:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 843:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** req->bmRequest = *(uint8_t *)(pbuff); 844:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 845:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** pbuff++; 846:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** req->bRequest = *(uint8_t *)(pbuff); 847:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 848:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** pbuff++; 849:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** req->wValue = SWAPBYTE(pbuff); 850:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 851:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** pbuff++; 852:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** pbuff++; 853:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** req->wIndex = SWAPBYTE(pbuff); 854:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 855:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** pbuff++; 856:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** pbuff++; 857:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** req->wLength = SWAPBYTE(pbuff); 858:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 859:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 860:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 861:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** /** 862:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** * @brief USBD_CtlError 863:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** * Handle USB low level Error 864:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** * @param pdev: device instance 865:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** * @param req: usb request 866:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** * @retval None 867:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** */ 868:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** void USBD_CtlError(USBD_HandleTypeDef *pdev, USBD_SetupReqTypedef *req) 869:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 870:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** UNUSED(req); 871:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 872:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** (void)USBD_LL_StallEP(pdev, 0x80U); 873:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** (void)USBD_LL_StallEP(pdev, 0U); 874:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 875:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 876:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 877:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** /** 878:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** * @brief USBD_GetString 879:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** * Convert Ascii string into unicode one 880:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** * @param desc : descriptor buffer 881:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** * @param unicode : Formatted string buffer (unicode) 882:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** * @param len : descriptor length 883:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** * @retval None 884:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** */ 885:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** void USBD_GetString(uint8_t *desc, uint8_t *unicode, uint16_t *len) ARM GAS /tmp/ccQ58aJU.s page 17 886:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 887:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** uint8_t idx = 0U; 888:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** uint8_t *pdesc; 889:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 890:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** if (desc == NULL) 891:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 892:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** return; 893:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 894:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 895:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** pdesc = desc; 896:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** *len = ((uint16_t)USBD_GetLen(pdesc) * 2U) + 2U; 897:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 898:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** unicode[idx] = *(uint8_t *)len; 899:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** idx++; 900:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** unicode[idx] = USB_DESC_TYPE_STRING; 901:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** idx++; 902:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 903:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** while (*pdesc != (uint8_t)'\0') 904:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 905:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** unicode[idx] = *pdesc; 906:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** pdesc++; 907:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** idx++; 908:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 909:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** unicode[idx] = 0U; 910:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** idx++; 911:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 912:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 913:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 914:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 915:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** /** 916:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** * @brief USBD_GetLen 917:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** * return the string length 918:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** * @param buf : pointer to the ascii string buffer 919:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** * @retval string length 920:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** */ 921:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** static uint8_t USBD_GetLen(uint8_t *buf) 922:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 29 .loc 1 922 1 view -0 30 .cfi_startproc 31 @ args = 0, pretend = 0, frame = 0 32 @ frame_needed = 0, uses_anonymous_args = 0 33 @ link register save eliminated. 34 .loc 1 922 1 is_stmt 0 view .LVU1 35 0000 0346 mov r3, r0 923:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** uint8_t len = 0U; 36 .loc 1 923 3 is_stmt 1 view .LVU2 37 .LVL1: 924:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** uint8_t *pbuff = buf; 38 .loc 1 924 3 view .LVU3 925:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 926:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** while (*pbuff != (uint8_t)'\0') 39 .loc 1 926 3 view .LVU4 923:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** uint8_t *pbuff = buf; 40 .loc 1 923 12 is_stmt 0 view .LVU5 41 0002 0020 movs r0, #0 42 .LVL2: 43 .loc 1 926 9 view .LVU6 ARM GAS /tmp/ccQ58aJU.s page 18 44 0004 02E0 b .L2 45 .LVL3: 46 .L3: 927:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 928:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** len++; 47 .loc 1 928 5 is_stmt 1 view .LVU7 48 .loc 1 928 8 is_stmt 0 view .LVU8 49 0006 0130 adds r0, r0, #1 50 .LVL4: 51 .loc 1 928 8 view .LVU9 52 0008 C0B2 uxtb r0, r0 53 .LVL5: 929:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** pbuff++; 54 .loc 1 929 5 is_stmt 1 view .LVU10 55 .loc 1 929 10 is_stmt 0 view .LVU11 56 000a 0133 adds r3, r3, #1 57 .LVL6: 58 .L2: 926:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 59 .loc 1 926 17 is_stmt 1 view .LVU12 926:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 60 .loc 1 926 10 is_stmt 0 view .LVU13 61 000c 1A78 ldrb r2, [r3] @ zero_extendqisi2 926:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 62 .loc 1 926 17 view .LVU14 63 000e 002A cmp r2, #0 64 0010 F9D1 bne .L3 930:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 931:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 932:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** return len; 65 .loc 1 932 3 is_stmt 1 view .LVU15 933:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 66 .loc 1 933 1 is_stmt 0 view .LVU16 67 0012 7047 bx lr 68 .cfi_endproc 69 .LFE346: 71 .section .text.USBD_SetFeature,"ax",%progbits 72 .align 1 73 .syntax unified 74 .thumb 75 .thumb_func 77 USBD_SetFeature: 78 .LVL7: 79 .LFB341: 795:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** if (req->wValue == USB_FEATURE_REMOTE_WAKEUP) 80 .loc 1 795 1 is_stmt 1 view -0 81 .cfi_startproc 82 @ args = 0, pretend = 0, frame = 0 83 @ frame_needed = 0, uses_anonymous_args = 0 795:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** if (req->wValue == USB_FEATURE_REMOTE_WAKEUP) 84 .loc 1 795 1 is_stmt 0 view .LVU18 85 0000 08B5 push {r3, lr} 86 .LCFI0: 87 .cfi_def_cfa_offset 8 88 .cfi_offset 3, -8 89 .cfi_offset 14, -4 796:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { ARM GAS /tmp/ccQ58aJU.s page 19 90 .loc 1 796 3 is_stmt 1 view .LVU19 796:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 91 .loc 1 796 10 is_stmt 0 view .LVU20 92 0002 4B88 ldrh r3, [r1, #2] 796:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 93 .loc 1 796 6 view .LVU21 94 0004 012B cmp r3, #1 95 0006 00D0 beq .L7 96 .LVL8: 97 .L4: 801:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 98 .loc 1 801 1 view .LVU22 99 0008 08BD pop {r3, pc} 100 .LVL9: 101 .L7: 798:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** (void)USBD_CtlSendStatus(pdev); 102 .loc 1 798 5 is_stmt 1 view .LVU23 798:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** (void)USBD_CtlSendStatus(pdev); 103 .loc 1 798 29 is_stmt 0 view .LVU24 104 000a C0F8A432 str r3, [r0, #676] 799:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 105 .loc 1 799 5 is_stmt 1 view .LVU25 799:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 106 .loc 1 799 11 is_stmt 0 view .LVU26 107 000e FFF7FEFF bl USBD_CtlSendStatus 108 .LVL10: 801:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 109 .loc 1 801 1 view .LVU27 110 0012 F9E7 b .L4 111 .cfi_endproc 112 .LFE341: 114 .section .text.USBD_ParseSetupRequest,"ax",%progbits 115 .align 1 116 .global USBD_ParseSetupRequest 117 .syntax unified 118 .thumb 119 .thumb_func 121 USBD_ParseSetupRequest: 122 .LVL11: 123 .LFB343: 840:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** uint8_t *pbuff = pdata; 124 .loc 1 840 1 is_stmt 1 view -0 125 .cfi_startproc 126 @ args = 0, pretend = 0, frame = 0 127 @ frame_needed = 0, uses_anonymous_args = 0 128 @ link register save eliminated. 841:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 129 .loc 1 841 3 view .LVU29 843:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 130 .loc 1 843 3 view .LVU30 843:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 131 .loc 1 843 20 is_stmt 0 view .LVU31 132 0000 0B78 ldrb r3, [r1] @ zero_extendqisi2 843:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 133 .loc 1 843 18 view .LVU32 134 0002 0370 strb r3, [r0] 845:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** req->bRequest = *(uint8_t *)(pbuff); ARM GAS /tmp/ccQ58aJU.s page 20 135 .loc 1 845 3 is_stmt 1 view .LVU33 136 .LVL12: 846:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 137 .loc 1 846 3 view .LVU34 846:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 138 .loc 1 846 19 is_stmt 0 view .LVU35 139 0004 4B78 ldrb r3, [r1, #1] @ zero_extendqisi2 846:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 140 .loc 1 846 17 view .LVU36 141 0006 4370 strb r3, [r0, #1] 848:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** req->wValue = SWAPBYTE(pbuff); 142 .loc 1 848 3 is_stmt 1 view .LVU37 143 .LVL13: 849:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 144 .loc 1 849 3 view .LVU38 145 .LBB8: 146 .LBI8: 147 .file 2 "Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h" 1:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** /** 2:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** ****************************************************************************** 3:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** * @file usbd_def.h 4:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** * @author MCD Application Team 5:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** * @brief General defines for the usb device library 6:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** ****************************************************************************** 7:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** * @attention 8:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** * 9:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** *

© Copyright (c) 2015 STMicroelectronics. 10:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** * All rights reserved.

11:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** * 12:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** * This software component is licensed by ST under Ultimate Liberty license 13:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** * SLA0044, the "License"; You may not use this file except in compliance with 14:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** * the License. You may obtain a copy of the License at: 15:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** * www.st.com/SLA0044 16:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** * 17:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** ****************************************************************************** 18:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** */ 19:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** 20:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** /* Define to prevent recursive inclusion -------------------------------------*/ 21:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #ifndef __USBD_DEF_H 22:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #define __USBD_DEF_H 23:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** 24:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #ifdef __cplusplus 25:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** extern "C" { 26:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #endif 27:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** 28:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** /* Includes ------------------------------------------------------------------*/ 29:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #include "usbd_conf.h" 30:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** 31:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** /** @addtogroup STM32_USBD_DEVICE_LIBRARY 32:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** * @{ 33:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** */ 34:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** 35:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** /** @defgroup USB_DEF 36:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** * @brief general defines for the usb device library file 37:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** * @{ 38:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** */ 39:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** ARM GAS /tmp/ccQ58aJU.s page 21 40:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** /** @defgroup USB_DEF_Exported_Defines 41:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** * @{ 42:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** */ 43:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** 44:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #ifndef NULL 45:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #define NULL 0U 46:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #endif /* NULL */ 47:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** 48:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #ifndef USBD_MAX_NUM_INTERFACES 49:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #define USBD_MAX_NUM_INTERFACES 1U 50:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #endif /* USBD_MAX_NUM_CONFIGURATION */ 51:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** 52:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #ifndef USBD_MAX_NUM_CONFIGURATION 53:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #define USBD_MAX_NUM_CONFIGURATION 1U 54:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #endif /* USBD_MAX_NUM_CONFIGURATION */ 55:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** 56:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #ifndef USBD_LPM_ENABLED 57:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #define USBD_LPM_ENABLED 0U 58:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #endif /* USBD_LPM_ENABLED */ 59:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** 60:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #ifndef USBD_SELF_POWERED 61:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #define USBD_SELF_POWERED 1U 62:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #endif /*USBD_SELF_POWERED */ 63:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** 64:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #ifndef USBD_MAX_POWER 65:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #define USBD_MAX_POWER 0x32U /* 100 mA */ 66:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #endif /* USBD_MAX_POWER */ 67:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** 68:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #ifndef USBD_SUPPORT_USER_STRING_DESC 69:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #define USBD_SUPPORT_USER_STRING_DESC 0U 70:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #endif /* USBD_SUPPORT_USER_STRING_DESC */ 71:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** 72:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #ifndef USBD_CLASS_USER_STRING_DESC 73:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #define USBD_CLASS_USER_STRING_DESC 0U 74:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #endif /* USBD_CLASS_USER_STRING_DESC */ 75:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** 76:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #define USB_LEN_DEV_QUALIFIER_DESC 0x0AU 77:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #define USB_LEN_DEV_DESC 0x12U 78:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #define USB_LEN_CFG_DESC 0x09U 79:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #define USB_LEN_IF_DESC 0x09U 80:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #define USB_LEN_EP_DESC 0x07U 81:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #define USB_LEN_OTG_DESC 0x03U 82:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #define USB_LEN_LANGID_STR_DESC 0x04U 83:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #define USB_LEN_OTHER_SPEED_DESC_SIZ 0x09U 84:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** 85:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #define USBD_IDX_LANGID_STR 0x00U 86:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #define USBD_IDX_MFC_STR 0x01U 87:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #define USBD_IDX_PRODUCT_STR 0x02U 88:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #define USBD_IDX_SERIAL_STR 0x03U 89:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #define USBD_IDX_CONFIG_STR 0x04U 90:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #define USBD_IDX_INTERFACE_STR 0x05U 91:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** 92:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #define USB_REQ_TYPE_STANDARD 0x00U 93:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #define USB_REQ_TYPE_CLASS 0x20U 94:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #define USB_REQ_TYPE_VENDOR 0x40U 95:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #define USB_REQ_TYPE_MASK 0x60U 96:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** ARM GAS /tmp/ccQ58aJU.s page 22 97:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #define USB_REQ_RECIPIENT_DEVICE 0x00U 98:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #define USB_REQ_RECIPIENT_INTERFACE 0x01U 99:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #define USB_REQ_RECIPIENT_ENDPOINT 0x02U 100:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #define USB_REQ_RECIPIENT_MASK 0x03U 101:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** 102:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #define USB_REQ_GET_STATUS 0x00U 103:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #define USB_REQ_CLEAR_FEATURE 0x01U 104:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #define USB_REQ_SET_FEATURE 0x03U 105:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #define USB_REQ_SET_ADDRESS 0x05U 106:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #define USB_REQ_GET_DESCRIPTOR 0x06U 107:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #define USB_REQ_SET_DESCRIPTOR 0x07U 108:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #define USB_REQ_GET_CONFIGURATION 0x08U 109:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #define USB_REQ_SET_CONFIGURATION 0x09U 110:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #define USB_REQ_GET_INTERFACE 0x0AU 111:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #define USB_REQ_SET_INTERFACE 0x0BU 112:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #define USB_REQ_SYNCH_FRAME 0x0CU 113:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** 114:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #define USB_DESC_TYPE_DEVICE 0x01U 115:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #define USB_DESC_TYPE_CONFIGURATION 0x02U 116:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #define USB_DESC_TYPE_STRING 0x03U 117:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #define USB_DESC_TYPE_INTERFACE 0x04U 118:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #define USB_DESC_TYPE_ENDPOINT 0x05U 119:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #define USB_DESC_TYPE_DEVICE_QUALIFIER 0x06U 120:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #define USB_DESC_TYPE_OTHER_SPEED_CONFIGURATION 0x07U 121:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #define USB_DESC_TYPE_IAD 0x0BU 122:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #define USB_DESC_TYPE_BOS 0x0FU 123:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** 124:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #define USB_CONFIG_REMOTE_WAKEUP 0x02U 125:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #define USB_CONFIG_SELF_POWERED 0x01U 126:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** 127:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #define USB_FEATURE_EP_HALT 0x00U 128:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #define USB_FEATURE_REMOTE_WAKEUP 0x01U 129:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #define USB_FEATURE_TEST_MODE 0x02U 130:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** 131:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #define USB_DEVICE_CAPABITY_TYPE 0x10U 132:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** 133:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #define USB_CONF_DESC_SIZE 0x09U 134:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #define USB_IF_DESC_SIZE 0x09U 135:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #define USB_EP_DESC_SIZE 0x07U 136:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #define USB_IAD_DESC_SIZE 0x08U 137:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** 138:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #define USB_HS_MAX_PACKET_SIZE 512U 139:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #define USB_FS_MAX_PACKET_SIZE 64U 140:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #define USB_MAX_EP0_SIZE 64U 141:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** 142:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** /* Device Status */ 143:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #define USBD_STATE_DEFAULT 0x01U 144:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #define USBD_STATE_ADDRESSED 0x02U 145:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #define USBD_STATE_CONFIGURED 0x03U 146:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #define USBD_STATE_SUSPENDED 0x04U 147:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** 148:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** 149:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** /* EP0 State */ 150:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #define USBD_EP0_IDLE 0x00U 151:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #define USBD_EP0_SETUP 0x01U 152:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #define USBD_EP0_DATA_IN 0x02U 153:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #define USBD_EP0_DATA_OUT 0x03U ARM GAS /tmp/ccQ58aJU.s page 23 154:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #define USBD_EP0_STATUS_IN 0x04U 155:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #define USBD_EP0_STATUS_OUT 0x05U 156:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #define USBD_EP0_STALL 0x06U 157:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** 158:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #define USBD_EP_TYPE_CTRL 0x00U 159:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #define USBD_EP_TYPE_ISOC 0x01U 160:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #define USBD_EP_TYPE_BULK 0x02U 161:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #define USBD_EP_TYPE_INTR 0x03U 162:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** 163:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** /** 164:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** * @} 165:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** */ 166:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** 167:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** 168:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** /** @defgroup USBD_DEF_Exported_TypesDefinitions 169:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** * @{ 170:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** */ 171:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** 172:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** typedef struct usb_setup_req 173:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** { 174:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** uint8_t bmRequest; 175:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** uint8_t bRequest; 176:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** uint16_t wValue; 177:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** uint16_t wIndex; 178:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** uint16_t wLength; 179:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** } USBD_SetupReqTypedef; 180:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** 181:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** typedef struct 182:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** { 183:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** uint8_t bLength; 184:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** uint8_t bDescriptorType; 185:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** uint16_t wTotalLength; 186:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** uint8_t bNumInterfaces; 187:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** uint8_t bConfigurationValue; 188:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** uint8_t iConfiguration; 189:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** uint8_t bmAttributes; 190:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** uint8_t bMaxPower; 191:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** } USBD_ConfigDescTypedef; 192:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** 193:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** typedef struct 194:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** { 195:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** uint8_t bLength; 196:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** uint8_t bDescriptorType; 197:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** uint16_t wTotalLength; 198:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** uint8_t bNumDeviceCaps; 199:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** } USBD_BosDescTypedef; 200:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** 201:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** typedef struct 202:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** { 203:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** uint8_t bLength; 204:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** uint8_t bDescriptorType; 205:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** uint8_t bEndpointAddress; 206:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** uint8_t bmAttributes; 207:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** uint16_t wMaxPacketSize; 208:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** uint8_t bInterval; 209:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** } USBD_EpDescTypedef; 210:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** ARM GAS /tmp/ccQ58aJU.s page 24 211:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** struct _USBD_HandleTypeDef; 212:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** 213:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** typedef struct _Device_cb 214:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** { 215:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** uint8_t (*Init)(struct _USBD_HandleTypeDef *pdev, uint8_t cfgidx); 216:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** uint8_t (*DeInit)(struct _USBD_HandleTypeDef *pdev, uint8_t cfgidx); 217:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** /* Control Endpoints*/ 218:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** uint8_t (*Setup)(struct _USBD_HandleTypeDef *pdev, USBD_SetupReqTypedef *req); 219:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** uint8_t (*EP0_TxSent)(struct _USBD_HandleTypeDef *pdev); 220:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** uint8_t (*EP0_RxReady)(struct _USBD_HandleTypeDef *pdev); 221:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** /* Class Specific Endpoints*/ 222:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** uint8_t (*DataIn)(struct _USBD_HandleTypeDef *pdev, uint8_t epnum); 223:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** uint8_t (*DataOut)(struct _USBD_HandleTypeDef *pdev, uint8_t epnum); 224:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** uint8_t (*SOF)(struct _USBD_HandleTypeDef *pdev); 225:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** uint8_t (*IsoINIncomplete)(struct _USBD_HandleTypeDef *pdev, uint8_t epnum); 226:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** uint8_t (*IsoOUTIncomplete)(struct _USBD_HandleTypeDef *pdev, uint8_t epnum); 227:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** 228:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** uint8_t *(*GetHSConfigDescriptor)(uint16_t *length); 229:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** uint8_t *(*GetFSConfigDescriptor)(uint16_t *length); 230:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** uint8_t *(*GetOtherSpeedConfigDescriptor)(uint16_t *length); 231:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** uint8_t *(*GetDeviceQualifierDescriptor)(uint16_t *length); 232:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #if (USBD_SUPPORT_USER_STRING_DESC == 1U) 233:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** uint8_t *(*GetUsrStrDescriptor)(struct _USBD_HandleTypeDef *pdev, uint8_t index, uint16_t *leng 234:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #endif 235:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** 236:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** } USBD_ClassTypeDef; 237:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** 238:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** /* Following USB Device Speed */ 239:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** typedef enum 240:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** { 241:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** USBD_SPEED_HIGH = 0U, 242:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** USBD_SPEED_FULL = 1U, 243:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** USBD_SPEED_LOW = 2U, 244:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** } USBD_SpeedTypeDef; 245:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** 246:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** /* Following USB Device status */ 247:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** typedef enum 248:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** { 249:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** USBD_OK = 0U, 250:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** USBD_BUSY, 251:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** USBD_EMEM, 252:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** USBD_FAIL, 253:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** } USBD_StatusTypeDef; 254:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** 255:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** /* USB Device descriptors structure */ 256:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** typedef struct 257:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** { 258:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** uint8_t *(*GetDeviceDescriptor)(USBD_SpeedTypeDef speed, uint16_t *length); 259:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** uint8_t *(*GetLangIDStrDescriptor)(USBD_SpeedTypeDef speed, uint16_t *length); 260:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** uint8_t *(*GetManufacturerStrDescriptor)(USBD_SpeedTypeDef speed, uint16_t *length); 261:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** uint8_t *(*GetProductStrDescriptor)(USBD_SpeedTypeDef speed, uint16_t *length); 262:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** uint8_t *(*GetSerialStrDescriptor)(USBD_SpeedTypeDef speed, uint16_t *length); 263:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** uint8_t *(*GetConfigurationStrDescriptor)(USBD_SpeedTypeDef speed, uint16_t *length); 264:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** uint8_t *(*GetInterfaceStrDescriptor)(USBD_SpeedTypeDef speed, uint16_t *length); 265:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #if (USBD_CLASS_USER_STRING_DESC == 1) 266:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** uint8_t *(*GetUserStrDescriptor)(USBD_SpeedTypeDef speed, uint8_t idx, uint16_t *length); 267:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #endif ARM GAS /tmp/ccQ58aJU.s page 25 268:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #if ((USBD_LPM_ENABLED == 1U) || (USBD_CLASS_BOS_ENABLED == 1)) 269:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** uint8_t *(*GetBOSDescriptor)(USBD_SpeedTypeDef speed, uint16_t *length); 270:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** #endif 271:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** } USBD_DescriptorsTypeDef; 272:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** 273:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** /* USB Device handle structure */ 274:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** typedef struct 275:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** { 276:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** uint32_t status; 277:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** uint32_t total_length; 278:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** uint32_t rem_length; 279:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** uint32_t maxpacket; 280:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** uint16_t is_used; 281:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** uint16_t bInterval; 282:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** } USBD_EndpointTypeDef; 283:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** 284:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** /* USB Device handle structure */ 285:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** typedef struct _USBD_HandleTypeDef 286:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** { 287:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** uint8_t id; 288:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** uint32_t dev_config; 289:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** uint32_t dev_default_config; 290:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** uint32_t dev_config_status; 291:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** USBD_SpeedTypeDef dev_speed; 292:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** USBD_EndpointTypeDef ep_in[16]; 293:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** USBD_EndpointTypeDef ep_out[16]; 294:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** __IO uint32_t ep0_state; 295:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** uint32_t ep0_data_len; 296:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** __IO uint8_t dev_state; 297:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** __IO uint8_t dev_old_state; 298:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** uint8_t dev_address; 299:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** uint8_t dev_connection_status; 300:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** uint8_t dev_test_mode; 301:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** uint32_t dev_remote_wakeup; 302:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** uint8_t ConfIdx; 303:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** 304:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** USBD_SetupReqTypedef request; 305:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** USBD_DescriptorsTypeDef *pDesc; 306:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** USBD_ClassTypeDef *pClass; 307:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** void *pClassData; 308:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** void *pUserData; 309:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** void *pData; 310:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** void *pBosDesc; 311:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** void *pConfDesc; 312:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** } USBD_HandleTypeDef; 313:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** 314:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** /** 315:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** * @} 316:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** */ 317:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** 318:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** 319:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** 320:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** /** @defgroup USBD_DEF_Exported_Macros 321:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** * @{ 322:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** */ 323:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** __STATIC_INLINE uint16_t SWAPBYTE(uint8_t *addr) 148 .loc 2 323 26 view .LVU39 ARM GAS /tmp/ccQ58aJU.s page 26 149 .LBB9: 324:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** { 325:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** uint16_t _SwapVal, _Byte1, _Byte2; 150 .loc 2 325 3 view .LVU40 326:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** uint8_t *_pbuff = addr; 151 .loc 2 326 3 view .LVU41 327:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** 328:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** _Byte1 = *(uint8_t *)_pbuff; 152 .loc 2 328 3 view .LVU42 153 .loc 2 328 12 is_stmt 0 view .LVU43 154 0008 8B78 ldrb r3, [r1, #2] @ zero_extendqisi2 155 .LVL14: 329:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** _pbuff++; 156 .loc 2 329 3 is_stmt 1 view .LVU44 330:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** _Byte2 = *(uint8_t *)_pbuff; 157 .loc 2 330 3 view .LVU45 158 .loc 2 330 12 is_stmt 0 view .LVU46 159 000a CA78 ldrb r2, [r1, #3] @ zero_extendqisi2 160 .LVL15: 331:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** 332:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** _SwapVal = (_Byte2 << 8) | _Byte1; 161 .loc 2 332 3 is_stmt 1 view .LVU47 162 .loc 2 332 12 is_stmt 0 view .LVU48 163 000c 43EA0223 orr r3, r3, r2, lsl #8 164 .LVL16: 333:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** 334:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** return _SwapVal; 165 .loc 2 334 3 is_stmt 1 view .LVU49 166 .loc 2 334 3 is_stmt 0 view .LVU50 167 .LBE9: 168 .LBE8: 849:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 169 .loc 1 849 15 view .LVU51 170 0010 4380 strh r3, [r0, #2] @ movhi 171 .LVL17: 851:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** pbuff++; 172 .loc 1 851 3 is_stmt 1 view .LVU52 852:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** req->wIndex = SWAPBYTE(pbuff); 173 .loc 1 852 3 view .LVU53 853:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 174 .loc 1 853 3 view .LVU54 175 .LBB10: 176 .LBI10: 323:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** { 177 .loc 2 323 26 view .LVU55 178 .LBB11: 325:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** uint8_t *_pbuff = addr; 179 .loc 2 325 3 view .LVU56 326:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** 180 .loc 2 326 3 view .LVU57 328:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** _pbuff++; 181 .loc 2 328 3 view .LVU58 328:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** _pbuff++; 182 .loc 2 328 12 is_stmt 0 view .LVU59 183 0012 0B79 ldrb r3, [r1, #4] @ zero_extendqisi2 184 .LVL18: 329:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** _Byte2 = *(uint8_t *)_pbuff; ARM GAS /tmp/ccQ58aJU.s page 27 185 .loc 2 329 3 is_stmt 1 view .LVU60 330:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** 186 .loc 2 330 3 view .LVU61 330:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** 187 .loc 2 330 12 is_stmt 0 view .LVU62 188 0014 4A79 ldrb r2, [r1, #5] @ zero_extendqisi2 189 .LVL19: 332:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** 190 .loc 2 332 3 is_stmt 1 view .LVU63 332:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** 191 .loc 2 332 12 is_stmt 0 view .LVU64 192 0016 43EA0223 orr r3, r3, r2, lsl #8 193 .LVL20: 194 .loc 2 334 3 is_stmt 1 view .LVU65 195 .loc 2 334 3 is_stmt 0 view .LVU66 196 .LBE11: 197 .LBE10: 853:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 198 .loc 1 853 15 view .LVU67 199 001a 8380 strh r3, [r0, #4] @ movhi 200 .LVL21: 855:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** pbuff++; 201 .loc 1 855 3 is_stmt 1 view .LVU68 856:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** req->wLength = SWAPBYTE(pbuff); 202 .loc 1 856 3 view .LVU69 857:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 203 .loc 1 857 3 view .LVU70 204 .LBB12: 205 .LBI12: 323:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** { 206 .loc 2 323 26 view .LVU71 207 .LBB13: 325:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** uint8_t *_pbuff = addr; 208 .loc 2 325 3 view .LVU72 326:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** 209 .loc 2 326 3 view .LVU73 328:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** _pbuff++; 210 .loc 2 328 3 view .LVU74 328:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** _pbuff++; 211 .loc 2 328 12 is_stmt 0 view .LVU75 212 001c 8B79 ldrb r3, [r1, #6] @ zero_extendqisi2 213 .LVL22: 329:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** _Byte2 = *(uint8_t *)_pbuff; 214 .loc 2 329 3 is_stmt 1 view .LVU76 330:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** 215 .loc 2 330 3 view .LVU77 330:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** 216 .loc 2 330 12 is_stmt 0 view .LVU78 217 001e CA79 ldrb r2, [r1, #7] @ zero_extendqisi2 218 .LVL23: 332:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** 219 .loc 2 332 3 is_stmt 1 view .LVU79 332:Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h **** 220 .loc 2 332 12 is_stmt 0 view .LVU80 221 0020 43EA0223 orr r3, r3, r2, lsl #8 222 .LVL24: 223 .loc 2 334 3 is_stmt 1 view .LVU81 ARM GAS /tmp/ccQ58aJU.s page 28 224 .loc 2 334 3 is_stmt 0 view .LVU82 225 .LBE13: 226 .LBE12: 857:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 227 .loc 1 857 16 view .LVU83 228 0024 C380 strh r3, [r0, #6] @ movhi 229 .LVL25: 858:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 230 .loc 1 858 1 view .LVU84 231 0026 7047 bx lr 232 .cfi_endproc 233 .LFE343: 235 .section .text.USBD_CtlError,"ax",%progbits 236 .align 1 237 .global USBD_CtlError 238 .syntax unified 239 .thumb 240 .thumb_func 242 USBD_CtlError: 243 .LVL26: 244 .LFB344: 869:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** UNUSED(req); 245 .loc 1 869 1 is_stmt 1 view -0 246 .cfi_startproc 247 @ args = 0, pretend = 0, frame = 0 248 @ frame_needed = 0, uses_anonymous_args = 0 869:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** UNUSED(req); 249 .loc 1 869 1 is_stmt 0 view .LVU86 250 0000 10B5 push {r4, lr} 251 .LCFI1: 252 .cfi_def_cfa_offset 8 253 .cfi_offset 4, -8 254 .cfi_offset 14, -4 255 0002 0446 mov r4, r0 870:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 256 .loc 1 870 3 is_stmt 1 view .LVU87 872:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** (void)USBD_LL_StallEP(pdev, 0U); 257 .loc 1 872 3 view .LVU88 872:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** (void)USBD_LL_StallEP(pdev, 0U); 258 .loc 1 872 9 is_stmt 0 view .LVU89 259 0004 8021 movs r1, #128 260 .LVL27: 872:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** (void)USBD_LL_StallEP(pdev, 0U); 261 .loc 1 872 9 view .LVU90 262 0006 FFF7FEFF bl USBD_LL_StallEP 263 .LVL28: 873:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 264 .loc 1 873 3 is_stmt 1 view .LVU91 873:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 265 .loc 1 873 9 is_stmt 0 view .LVU92 266 000a 0021 movs r1, #0 267 000c 2046 mov r0, r4 268 000e FFF7FEFF bl USBD_LL_StallEP 269 .LVL29: 874:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 270 .loc 1 874 1 view .LVU93 271 0012 10BD pop {r4, pc} ARM GAS /tmp/ccQ58aJU.s page 29 874:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 272 .loc 1 874 1 view .LVU94 273 .cfi_endproc 274 .LFE344: 276 .section .text.USBD_GetDescriptor,"ax",%progbits 277 .align 1 278 .syntax unified 279 .thumb 280 .thumb_func 282 USBD_GetDescriptor: 283 .LVL30: 284 .LFB336: 381:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** uint16_t len = 0U; 285 .loc 1 381 1 is_stmt 1 view -0 286 .cfi_startproc 287 @ args = 0, pretend = 0, frame = 8 288 @ frame_needed = 0, uses_anonymous_args = 0 381:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** uint16_t len = 0U; 289 .loc 1 381 1 is_stmt 0 view .LVU96 290 0000 30B5 push {r4, r5, lr} 291 .LCFI2: 292 .cfi_def_cfa_offset 12 293 .cfi_offset 4, -12 294 .cfi_offset 5, -8 295 .cfi_offset 14, -4 296 0002 83B0 sub sp, sp, #12 297 .LCFI3: 298 .cfi_def_cfa_offset 24 299 0004 0446 mov r4, r0 300 0006 0D46 mov r5, r1 382:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** uint8_t *pbuf = NULL; 301 .loc 1 382 3 is_stmt 1 view .LVU97 382:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** uint8_t *pbuf = NULL; 302 .loc 1 382 12 is_stmt 0 view .LVU98 303 0008 0023 movs r3, #0 304 000a ADF80630 strh r3, [sp, #6] @ movhi 383:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** uint8_t err = 0U; 305 .loc 1 383 3 is_stmt 1 view .LVU99 306 .LVL31: 384:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 307 .loc 1 384 3 view .LVU100 386:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 308 .loc 1 386 3 view .LVU101 386:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 309 .loc 1 386 14 is_stmt 0 view .LVU102 310 000e 4A88 ldrh r2, [r1, #2] 386:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 311 .loc 1 386 23 view .LVU103 312 0010 130A lsrs r3, r2, #8 386:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 313 .loc 1 386 3 view .LVU104 314 0012 013B subs r3, r3, #1 315 0014 0E2B cmp r3, #14 316 0016 00F2BC80 bhi .L12 317 001a DFE803F0 tbb [pc, r3] 318 .LVL32: 319 .L14: ARM GAS /tmp/ccQ58aJU.s page 30 320 001e 15 .byte (.L19-.L14)/2 321 001f 30 .byte (.L18-.L14)/2 322 0020 44 .byte (.L17-.L14)/2 323 0021 BA .byte (.L12-.L14)/2 324 0022 BA .byte (.L12-.L14)/2 325 0023 9E .byte (.L16-.L14)/2 326 0024 AB .byte (.L15-.L14)/2 327 0025 BA .byte (.L12-.L14)/2 328 0026 BA .byte (.L12-.L14)/2 329 0027 BA .byte (.L12-.L14)/2 330 0028 BA .byte (.L12-.L14)/2 331 0029 BA .byte (.L12-.L14)/2 332 002a BA .byte (.L12-.L14)/2 333 002b BA .byte (.L12-.L14)/2 334 002c 08 .byte (.L13-.L14)/2 335 002d 00 .p2align 1 336 .L13: 390:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 337 .loc 1 390 7 is_stmt 1 view .LVU105 390:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 338 .loc 1 390 15 is_stmt 0 view .LVU106 339 002e D0F8B432 ldr r3, [r0, #692] 390:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 340 .loc 1 390 22 view .LVU107 341 0032 DB69 ldr r3, [r3, #28] 390:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 342 .loc 1 390 10 view .LVU108 343 0034 23B1 cbz r3, .L20 392:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 344 .loc 1 392 9 is_stmt 1 view .LVU109 392:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 345 .loc 1 392 16 is_stmt 0 view .LVU110 346 0036 0DF10601 add r1, sp, #6 347 003a 007C ldrb r0, [r0, #16] @ zero_extendqisi2 348 .LVL33: 392:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 349 .loc 1 392 16 view .LVU111 350 003c 9847 blx r3 351 .LVL34: 557:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 352 .loc 1 557 3 is_stmt 1 view .LVU112 353 003e 0AE0 b .L21 354 .LVL35: 355 .L20: 396:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** err++; 356 .loc 1 396 9 view .LVU113 357 0040 2946 mov r1, r5 358 0042 FFF7FEFF bl USBD_CtlError 359 .LVL36: 397:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 360 .loc 1 397 9 view .LVU114 557:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 361 .loc 1 557 3 view .LVU115 362 0046 18E0 b .L11 363 .LVL37: 364 .L19: 402:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; ARM GAS /tmp/ccQ58aJU.s page 31 365 .loc 1 402 7 view .LVU116 402:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 366 .loc 1 402 18 is_stmt 0 view .LVU117 367 0048 D0F8B432 ldr r3, [r0, #692] 402:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 368 .loc 1 402 25 view .LVU118 369 004c 1B68 ldr r3, [r3] 402:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 370 .loc 1 402 14 view .LVU119 371 004e 0DF10601 add r1, sp, #6 372 0052 007C ldrb r0, [r0, #16] @ zero_extendqisi2 373 .LVL38: 402:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 374 .loc 1 402 14 view .LVU120 375 0054 9847 blx r3 376 .LVL39: 403:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 377 .loc 1 403 7 is_stmt 1 view .LVU121 557:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 378 .loc 1 557 3 view .LVU122 379 .L21: 562:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 380 .loc 1 562 3 view .LVU123 562:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 381 .loc 1 562 10 is_stmt 0 view .LVU124 382 0056 EA88 ldrh r2, [r5, #6] 562:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 383 .loc 1 562 6 view .LVU125 384 0058 002A cmp r2, #0 385 005a 00F0A380 beq .L41 564:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 386 .loc 1 564 5 is_stmt 1 view .LVU126 564:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 387 .loc 1 564 13 is_stmt 0 view .LVU127 388 005e BDF80630 ldrh r3, [sp, #6] 564:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 389 .loc 1 564 8 view .LVU128 390 0062 002B cmp r3, #0 391 0064 00F09980 beq .L42 566:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** (void)USBD_CtlSendData(pdev, pbuf, len); 392 .loc 1 566 7 is_stmt 1 view .LVU129 566:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** (void)USBD_CtlSendData(pdev, pbuf, len); 393 .loc 1 566 13 is_stmt 0 view .LVU130 394 0068 9A42 cmp r2, r3 395 006a 28BF it cs 396 006c 1A46 movcs r2, r3 566:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** (void)USBD_CtlSendData(pdev, pbuf, len); 397 .loc 1 566 11 view .LVU131 398 006e ADF80620 strh r2, [sp, #6] @ movhi 567:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 399 .loc 1 567 7 is_stmt 1 view .LVU132 567:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 400 .loc 1 567 13 is_stmt 0 view .LVU133 401 0072 0146 mov r1, r0 402 0074 2046 mov r0, r4 403 .LVL40: 567:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } ARM GAS /tmp/ccQ58aJU.s page 32 404 .loc 1 567 13 view .LVU134 405 0076 FFF7FEFF bl USBD_CtlSendData 406 .LVL41: 407 .L11: 578:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 408 .loc 1 578 1 view .LVU135 409 007a 03B0 add sp, sp, #12 410 .LCFI4: 411 .cfi_remember_state 412 .cfi_def_cfa_offset 12 413 @ sp needed 414 007c 30BD pop {r4, r5, pc} 415 .LVL42: 416 .L18: 417 .LCFI5: 418 .cfi_restore_state 406:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 419 .loc 1 406 7 is_stmt 1 view .LVU136 406:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 420 .loc 1 406 15 is_stmt 0 view .LVU137 421 007e 037C ldrb r3, [r0, #16] @ zero_extendqisi2 406:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 422 .loc 1 406 10 view .LVU138 423 0080 43B9 cbnz r3, .L23 408:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** pbuf[1] = USB_DESC_TYPE_CONFIGURATION; 424 .loc 1 408 9 is_stmt 1 view .LVU139 408:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** pbuf[1] = USB_DESC_TYPE_CONFIGURATION; 425 .loc 1 408 20 is_stmt 0 view .LVU140 426 0082 D0F8B832 ldr r3, [r0, #696] 408:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** pbuf[1] = USB_DESC_TYPE_CONFIGURATION; 427 .loc 1 408 28 view .LVU141 428 0086 9B6A ldr r3, [r3, #40] 408:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** pbuf[1] = USB_DESC_TYPE_CONFIGURATION; 429 .loc 1 408 16 view .LVU142 430 0088 0DF10600 add r0, sp, #6 431 .LVL43: 408:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** pbuf[1] = USB_DESC_TYPE_CONFIGURATION; 432 .loc 1 408 16 view .LVU143 433 008c 9847 blx r3 434 .LVL44: 409:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 435 .loc 1 409 9 is_stmt 1 view .LVU144 409:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 436 .loc 1 409 17 is_stmt 0 view .LVU145 437 008e 0223 movs r3, #2 438 0090 4370 strb r3, [r0, #1] 557:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 439 .loc 1 557 3 is_stmt 1 view .LVU146 440 0092 E0E7 b .L21 441 .LVL45: 442 .L23: 413:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** pbuf[1] = USB_DESC_TYPE_CONFIGURATION; 443 .loc 1 413 9 view .LVU147 413:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** pbuf[1] = USB_DESC_TYPE_CONFIGURATION; 444 .loc 1 413 20 is_stmt 0 view .LVU148 445 0094 D0F8B832 ldr r3, [r0, #696] 413:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** pbuf[1] = USB_DESC_TYPE_CONFIGURATION; ARM GAS /tmp/ccQ58aJU.s page 33 446 .loc 1 413 28 view .LVU149 447 0098 DB6A ldr r3, [r3, #44] 413:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** pbuf[1] = USB_DESC_TYPE_CONFIGURATION; 448 .loc 1 413 16 view .LVU150 449 009a 0DF10600 add r0, sp, #6 450 .LVL46: 413:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** pbuf[1] = USB_DESC_TYPE_CONFIGURATION; 451 .loc 1 413 16 view .LVU151 452 009e 9847 blx r3 453 .LVL47: 414:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 454 .loc 1 414 9 is_stmt 1 view .LVU152 414:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 455 .loc 1 414 17 is_stmt 0 view .LVU153 456 00a0 0223 movs r3, #2 457 00a2 4370 strb r3, [r0, #1] 557:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 458 .loc 1 557 3 is_stmt 1 view .LVU154 459 00a4 D7E7 b .L21 460 .LVL48: 461 .L17: 419:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 462 .loc 1 419 7 view .LVU155 419:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 463 .loc 1 419 15 is_stmt 0 view .LVU156 464 00a6 D2B2 uxtb r2, r2 465 00a8 052A cmp r2, #5 466 00aa 52D8 bhi .L24 467 00ac DFE802F0 tbb [pc, r2] 468 .L26: 469 00b0 03 .byte (.L31-.L26)/2 470 00b1 10 .byte (.L30-.L26)/2 471 00b2 1D .byte (.L29-.L26)/2 472 00b3 2A .byte (.L28-.L26)/2 473 00b4 37 .byte (.L27-.L26)/2 474 00b5 44 .byte (.L25-.L26)/2 475 .p2align 1 476 .L31: 422:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 477 .loc 1 422 11 is_stmt 1 view .LVU157 422:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 478 .loc 1 422 19 is_stmt 0 view .LVU158 479 00b6 D0F8B432 ldr r3, [r0, #692] 422:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 480 .loc 1 422 26 view .LVU159 481 00ba 5B68 ldr r3, [r3, #4] 422:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 482 .loc 1 422 14 view .LVU160 483 00bc 23B1 cbz r3, .L32 424:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 484 .loc 1 424 13 is_stmt 1 view .LVU161 424:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 485 .loc 1 424 20 is_stmt 0 view .LVU162 486 00be 0DF10601 add r1, sp, #6 487 00c2 007C ldrb r0, [r0, #16] @ zero_extendqisi2 488 .LVL49: 424:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } ARM GAS /tmp/ccQ58aJU.s page 34 489 .loc 1 424 20 view .LVU163 490 00c4 9847 blx r3 491 .LVL50: 557:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 492 .loc 1 557 3 is_stmt 1 view .LVU164 493 00c6 C6E7 b .L21 494 .LVL51: 495 .L32: 428:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** err++; 496 .loc 1 428 13 view .LVU165 497 00c8 2946 mov r1, r5 498 00ca FFF7FEFF bl USBD_CtlError 499 .LVL52: 429:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 500 .loc 1 429 13 view .LVU166 557:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 501 .loc 1 557 3 view .LVU167 502 00ce D4E7 b .L11 503 .LVL53: 504 .L30: 434:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 505 .loc 1 434 11 view .LVU168 434:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 506 .loc 1 434 19 is_stmt 0 view .LVU169 507 00d0 D0F8B432 ldr r3, [r0, #692] 434:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 508 .loc 1 434 26 view .LVU170 509 00d4 9B68 ldr r3, [r3, #8] 434:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 510 .loc 1 434 14 view .LVU171 511 00d6 23B1 cbz r3, .L33 436:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 512 .loc 1 436 13 is_stmt 1 view .LVU172 436:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 513 .loc 1 436 20 is_stmt 0 view .LVU173 514 00d8 0DF10601 add r1, sp, #6 515 00dc 007C ldrb r0, [r0, #16] @ zero_extendqisi2 516 .LVL54: 436:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 517 .loc 1 436 20 view .LVU174 518 00de 9847 blx r3 519 .LVL55: 557:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 520 .loc 1 557 3 is_stmt 1 view .LVU175 521 00e0 B9E7 b .L21 522 .LVL56: 523 .L33: 440:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** err++; 524 .loc 1 440 13 view .LVU176 525 00e2 2946 mov r1, r5 526 00e4 FFF7FEFF bl USBD_CtlError 527 .LVL57: 441:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 528 .loc 1 441 13 view .LVU177 557:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 529 .loc 1 557 3 view .LVU178 530 00e8 C7E7 b .L11 ARM GAS /tmp/ccQ58aJU.s page 35 531 .LVL58: 532 .L29: 446:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 533 .loc 1 446 11 view .LVU179 446:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 534 .loc 1 446 19 is_stmt 0 view .LVU180 535 00ea D0F8B432 ldr r3, [r0, #692] 446:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 536 .loc 1 446 26 view .LVU181 537 00ee DB68 ldr r3, [r3, #12] 446:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 538 .loc 1 446 14 view .LVU182 539 00f0 23B1 cbz r3, .L34 448:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 540 .loc 1 448 13 is_stmt 1 view .LVU183 448:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 541 .loc 1 448 20 is_stmt 0 view .LVU184 542 00f2 0DF10601 add r1, sp, #6 543 00f6 007C ldrb r0, [r0, #16] @ zero_extendqisi2 544 .LVL59: 448:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 545 .loc 1 448 20 view .LVU185 546 00f8 9847 blx r3 547 .LVL60: 557:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 548 .loc 1 557 3 is_stmt 1 view .LVU186 549 00fa ACE7 b .L21 550 .LVL61: 551 .L34: 452:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** err++; 552 .loc 1 452 13 view .LVU187 553 00fc 2946 mov r1, r5 554 00fe FFF7FEFF bl USBD_CtlError 555 .LVL62: 453:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 556 .loc 1 453 13 view .LVU188 557:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 557 .loc 1 557 3 view .LVU189 558 0102 BAE7 b .L11 559 .LVL63: 560 .L28: 458:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 561 .loc 1 458 11 view .LVU190 458:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 562 .loc 1 458 19 is_stmt 0 view .LVU191 563 0104 D0F8B432 ldr r3, [r0, #692] 458:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 564 .loc 1 458 26 view .LVU192 565 0108 1B69 ldr r3, [r3, #16] 458:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 566 .loc 1 458 14 view .LVU193 567 010a 23B1 cbz r3, .L35 460:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 568 .loc 1 460 13 is_stmt 1 view .LVU194 460:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 569 .loc 1 460 20 is_stmt 0 view .LVU195 570 010c 0DF10601 add r1, sp, #6 ARM GAS /tmp/ccQ58aJU.s page 36 571 0110 007C ldrb r0, [r0, #16] @ zero_extendqisi2 572 .LVL64: 460:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 573 .loc 1 460 20 view .LVU196 574 0112 9847 blx r3 575 .LVL65: 557:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 576 .loc 1 557 3 is_stmt 1 view .LVU197 577 0114 9FE7 b .L21 578 .LVL66: 579 .L35: 464:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** err++; 580 .loc 1 464 13 view .LVU198 581 0116 2946 mov r1, r5 582 0118 FFF7FEFF bl USBD_CtlError 583 .LVL67: 465:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 584 .loc 1 465 13 view .LVU199 557:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 585 .loc 1 557 3 view .LVU200 586 011c ADE7 b .L11 587 .LVL68: 588 .L27: 470:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 589 .loc 1 470 11 view .LVU201 470:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 590 .loc 1 470 19 is_stmt 0 view .LVU202 591 011e D0F8B432 ldr r3, [r0, #692] 470:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 592 .loc 1 470 26 view .LVU203 593 0122 5B69 ldr r3, [r3, #20] 470:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 594 .loc 1 470 14 view .LVU204 595 0124 23B1 cbz r3, .L36 472:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 596 .loc 1 472 13 is_stmt 1 view .LVU205 472:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 597 .loc 1 472 20 is_stmt 0 view .LVU206 598 0126 0DF10601 add r1, sp, #6 599 012a 007C ldrb r0, [r0, #16] @ zero_extendqisi2 600 .LVL69: 472:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 601 .loc 1 472 20 view .LVU207 602 012c 9847 blx r3 603 .LVL70: 557:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 604 .loc 1 557 3 is_stmt 1 view .LVU208 605 012e 92E7 b .L21 606 .LVL71: 607 .L36: 476:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** err++; 608 .loc 1 476 13 view .LVU209 609 0130 2946 mov r1, r5 610 0132 FFF7FEFF bl USBD_CtlError 611 .LVL72: 477:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 612 .loc 1 477 13 view .LVU210 ARM GAS /tmp/ccQ58aJU.s page 37 557:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 613 .loc 1 557 3 view .LVU211 614 0136 A0E7 b .L11 615 .LVL73: 616 .L25: 482:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 617 .loc 1 482 11 view .LVU212 482:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 618 .loc 1 482 19 is_stmt 0 view .LVU213 619 0138 D0F8B432 ldr r3, [r0, #692] 482:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 620 .loc 1 482 26 view .LVU214 621 013c 9B69 ldr r3, [r3, #24] 482:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 622 .loc 1 482 14 view .LVU215 623 013e 23B1 cbz r3, .L37 484:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 624 .loc 1 484 13 is_stmt 1 view .LVU216 484:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 625 .loc 1 484 20 is_stmt 0 view .LVU217 626 0140 0DF10601 add r1, sp, #6 627 0144 007C ldrb r0, [r0, #16] @ zero_extendqisi2 628 .LVL74: 484:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 629 .loc 1 484 20 view .LVU218 630 0146 9847 blx r3 631 .LVL75: 557:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 632 .loc 1 557 3 is_stmt 1 view .LVU219 633 0148 85E7 b .L21 634 .LVL76: 635 .L37: 488:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** err++; 636 .loc 1 488 13 view .LVU220 637 014a 2946 mov r1, r5 638 014c FFF7FEFF bl USBD_CtlError 639 .LVL77: 489:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 640 .loc 1 489 13 view .LVU221 557:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 641 .loc 1 557 3 view .LVU222 642 0150 93E7 b .L11 643 .LVL78: 644 .L24: 519:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** err++; 645 .loc 1 519 11 view .LVU223 646 0152 2946 mov r1, r5 647 0154 FFF7FEFF bl USBD_CtlError 648 .LVL79: 520:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** #endif 649 .loc 1 520 11 view .LVU224 522:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 650 .loc 1 522 11 view .LVU225 557:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 651 .loc 1 557 3 view .LVU226 652 0158 8FE7 b .L11 653 .LVL80: ARM GAS /tmp/ccQ58aJU.s page 38 654 .L16: 527:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 655 .loc 1 527 7 view .LVU227 527:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 656 .loc 1 527 15 is_stmt 0 view .LVU228 657 015a 037C ldrb r3, [r0, #16] @ zero_extendqisi2 527:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 658 .loc 1 527 10 view .LVU229 659 015c 33B9 cbnz r3, .L38 529:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 660 .loc 1 529 9 is_stmt 1 view .LVU230 529:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 661 .loc 1 529 20 is_stmt 0 view .LVU231 662 015e D0F8B832 ldr r3, [r0, #696] 529:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 663 .loc 1 529 28 view .LVU232 664 0162 5B6B ldr r3, [r3, #52] 529:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 665 .loc 1 529 16 view .LVU233 666 0164 0DF10600 add r0, sp, #6 667 .LVL81: 529:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 668 .loc 1 529 16 view .LVU234 669 0168 9847 blx r3 670 .LVL82: 557:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 671 .loc 1 557 3 is_stmt 1 view .LVU235 672 016a 74E7 b .L21 673 .LVL83: 674 .L38: 533:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** err++; 675 .loc 1 533 9 view .LVU236 676 016c 2946 mov r1, r5 677 016e FFF7FEFF bl USBD_CtlError 678 .LVL84: 534:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 679 .loc 1 534 9 view .LVU237 557:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 680 .loc 1 557 3 view .LVU238 681 0172 82E7 b .L11 682 .LVL85: 683 .L15: 539:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 684 .loc 1 539 7 view .LVU239 539:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 685 .loc 1 539 15 is_stmt 0 view .LVU240 686 0174 037C ldrb r3, [r0, #16] @ zero_extendqisi2 539:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 687 .loc 1 539 10 view .LVU241 688 0176 43B9 cbnz r3, .L39 541:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** pbuf[1] = USB_DESC_TYPE_OTHER_SPEED_CONFIGURATION; 689 .loc 1 541 9 is_stmt 1 view .LVU242 541:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** pbuf[1] = USB_DESC_TYPE_OTHER_SPEED_CONFIGURATION; 690 .loc 1 541 20 is_stmt 0 view .LVU243 691 0178 D0F8B832 ldr r3, [r0, #696] 541:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** pbuf[1] = USB_DESC_TYPE_OTHER_SPEED_CONFIGURATION; 692 .loc 1 541 28 view .LVU244 ARM GAS /tmp/ccQ58aJU.s page 39 693 017c 1B6B ldr r3, [r3, #48] 541:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** pbuf[1] = USB_DESC_TYPE_OTHER_SPEED_CONFIGURATION; 694 .loc 1 541 16 view .LVU245 695 017e 0DF10600 add r0, sp, #6 696 .LVL86: 541:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** pbuf[1] = USB_DESC_TYPE_OTHER_SPEED_CONFIGURATION; 697 .loc 1 541 16 view .LVU246 698 0182 9847 blx r3 699 .LVL87: 542:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 700 .loc 1 542 9 is_stmt 1 view .LVU247 542:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 701 .loc 1 542 17 is_stmt 0 view .LVU248 702 0184 0723 movs r3, #7 703 0186 4370 strb r3, [r0, #1] 557:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 704 .loc 1 557 3 is_stmt 1 view .LVU249 705 0188 65E7 b .L21 706 .LVL88: 707 .L39: 546:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** err++; 708 .loc 1 546 9 view .LVU250 709 018a 2946 mov r1, r5 710 018c FFF7FEFF bl USBD_CtlError 711 .LVL89: 547:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 712 .loc 1 547 9 view .LVU251 557:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 713 .loc 1 557 3 view .LVU252 714 0190 73E7 b .L11 715 .LVL90: 716 .L12: 552:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** err++; 717 .loc 1 552 7 view .LVU253 718 0192 2946 mov r1, r5 719 0194 FFF7FEFF bl USBD_CtlError 720 .LVL91: 553:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 721 .loc 1 553 7 view .LVU254 554:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 722 .loc 1 554 7 view .LVU255 557:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 723 .loc 1 557 3 view .LVU256 559:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 724 .loc 1 559 5 view .LVU257 725 0198 6FE7 b .L11 726 .LVL92: 727 .L42: 571:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 728 .loc 1 571 7 view .LVU258 729 019a 2946 mov r1, r5 730 019c 2046 mov r0, r4 731 .LVL93: 571:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 732 .loc 1 571 7 is_stmt 0 view .LVU259 733 019e FFF7FEFF bl USBD_CtlError 734 .LVL94: ARM GAS /tmp/ccQ58aJU.s page 40 735 01a2 6AE7 b .L11 736 .LVL95: 737 .L41: 576:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 738 .loc 1 576 5 is_stmt 1 view .LVU260 576:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 739 .loc 1 576 11 is_stmt 0 view .LVU261 740 01a4 2046 mov r0, r4 741 .LVL96: 576:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 742 .loc 1 576 11 view .LVU262 743 01a6 FFF7FEFF bl USBD_CtlSendStatus 744 .LVL97: 745 01aa 66E7 b .L11 746 .cfi_endproc 747 .LFE336: 749 .section .text.USBD_SetAddress,"ax",%progbits 750 .align 1 751 .syntax unified 752 .thumb 753 .thumb_func 755 USBD_SetAddress: 756 .LVL98: 757 .LFB337: 589:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** uint8_t dev_addr; 758 .loc 1 589 1 is_stmt 1 view -0 759 .cfi_startproc 760 @ args = 0, pretend = 0, frame = 0 761 @ frame_needed = 0, uses_anonymous_args = 0 589:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** uint8_t dev_addr; 762 .loc 1 589 1 is_stmt 0 view .LVU264 763 0000 38B5 push {r3, r4, r5, lr} 764 .LCFI6: 765 .cfi_def_cfa_offset 16 766 .cfi_offset 3, -16 767 .cfi_offset 4, -12 768 .cfi_offset 5, -8 769 .cfi_offset 14, -4 770 0002 0446 mov r4, r0 590:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 771 .loc 1 590 3 is_stmt 1 view .LVU265 592:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 772 .loc 1 592 3 view .LVU266 592:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 773 .loc 1 592 11 is_stmt 0 view .LVU267 774 0004 8B88 ldrh r3, [r1, #4] 592:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 775 .loc 1 592 6 view .LVU268 776 0006 FBB9 cbnz r3, .L46 592:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 777 .loc 1 592 34 discriminator 1 view .LVU269 778 0008 CB88 ldrh r3, [r1, #6] 592:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 779 .loc 1 592 27 discriminator 1 view .LVU270 780 000a EBB9 cbnz r3, .L46 592:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 781 .loc 1 592 58 discriminator 2 view .LVU271 ARM GAS /tmp/ccQ58aJU.s page 41 782 000c 4B88 ldrh r3, [r1, #2] 592:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 783 .loc 1 592 51 discriminator 2 view .LVU272 784 000e 7F2B cmp r3, #127 785 0010 1AD8 bhi .L46 594:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 786 .loc 1 594 5 is_stmt 1 view .LVU273 594:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 787 .loc 1 594 14 is_stmt 0 view .LVU274 788 0012 03F07F05 and r5, r3, #127 789 .LVL99: 596:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 790 .loc 1 596 5 is_stmt 1 view .LVU275 596:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 791 .loc 1 596 13 is_stmt 0 view .LVU276 792 0016 90F89C32 ldrb r3, [r0, #668] @ zero_extendqisi2 793 001a DBB2 uxtb r3, r3 596:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 794 .loc 1 596 8 view .LVU277 795 001c 032B cmp r3, #3 796 001e 0CD0 beq .L51 602:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** (void)USBD_LL_SetUSBAddress(pdev, dev_addr); 797 .loc 1 602 7 is_stmt 1 view .LVU278 602:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** (void)USBD_LL_SetUSBAddress(pdev, dev_addr); 798 .loc 1 602 25 is_stmt 0 view .LVU279 799 0020 80F89E52 strb r5, [r0, #670] 603:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** (void)USBD_CtlSendStatus(pdev); 800 .loc 1 603 7 is_stmt 1 view .LVU280 603:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** (void)USBD_CtlSendStatus(pdev); 801 .loc 1 603 13 is_stmt 0 view .LVU281 802 0024 2946 mov r1, r5 803 .LVL100: 603:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** (void)USBD_CtlSendStatus(pdev); 804 .loc 1 603 13 view .LVU282 805 0026 FFF7FEFF bl USBD_LL_SetUSBAddress 806 .LVL101: 604:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 807 .loc 1 604 7 is_stmt 1 view .LVU283 604:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 808 .loc 1 604 13 is_stmt 0 view .LVU284 809 002a 2046 mov r0, r4 810 002c FFF7FEFF bl USBD_CtlSendStatus 811 .LVL102: 606:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 812 .loc 1 606 7 is_stmt 1 view .LVU285 606:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 813 .loc 1 606 10 is_stmt 0 view .LVU286 814 0030 35B1 cbz r5, .L49 608:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 815 .loc 1 608 9 is_stmt 1 view .LVU287 608:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 816 .loc 1 608 25 is_stmt 0 view .LVU288 817 0032 0223 movs r3, #2 818 0034 84F89C32 strb r3, [r4, #668] 819 0038 09E0 b .L45 820 .LVL103: 821 .L51: ARM GAS /tmp/ccQ58aJU.s page 42 598:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 822 .loc 1 598 7 is_stmt 1 view .LVU289 823 003a FFF7FEFF bl USBD_CtlError 824 .LVL104: 598:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 825 .loc 1 598 7 is_stmt 0 view .LVU290 826 003e 06E0 b .L45 827 .L49: 612:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 828 .loc 1 612 9 is_stmt 1 view .LVU291 612:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 829 .loc 1 612 25 is_stmt 0 view .LVU292 830 0040 0123 movs r3, #1 831 0042 84F89C32 strb r3, [r4, #668] 832 0046 02E0 b .L45 833 .LVL105: 834 .L46: 618:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 835 .loc 1 618 5 is_stmt 1 view .LVU293 836 0048 2046 mov r0, r4 837 .LVL106: 618:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 838 .loc 1 618 5 is_stmt 0 view .LVU294 839 004a FFF7FEFF bl USBD_CtlError 840 .LVL107: 841 .L45: 620:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 842 .loc 1 620 1 view .LVU295 843 004e 38BD pop {r3, r4, r5, pc} 620:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 844 .loc 1 620 1 view .LVU296 845 .cfi_endproc 846 .LFE337: 848 .section .text.USBD_SetConfig,"ax",%progbits 849 .align 1 850 .syntax unified 851 .thumb 852 .thumb_func 854 USBD_SetConfig: 855 .LVL108: 856 .LFB338: 630:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** USBD_StatusTypeDef ret = USBD_OK; 857 .loc 1 630 1 is_stmt 1 view -0 858 .cfi_startproc 859 @ args = 0, pretend = 0, frame = 0 860 @ frame_needed = 0, uses_anonymous_args = 0 630:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** USBD_StatusTypeDef ret = USBD_OK; 861 .loc 1 630 1 is_stmt 0 view .LVU298 862 0000 70B5 push {r4, r5, r6, lr} 863 .LCFI7: 864 .cfi_def_cfa_offset 16 865 .cfi_offset 4, -16 866 .cfi_offset 5, -12 867 .cfi_offset 6, -8 868 .cfi_offset 14, -4 869 0002 0446 mov r4, r0 870 0004 0E46 mov r6, r1 ARM GAS /tmp/ccQ58aJU.s page 43 631:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** static uint8_t cfgidx; 871 .loc 1 631 3 is_stmt 1 view .LVU299 872 .LVL109: 632:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 873 .loc 1 632 3 view .LVU300 634:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 874 .loc 1 634 3 view .LVU301 634:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 875 .loc 1 634 12 is_stmt 0 view .LVU302 876 0006 8D78 ldrb r5, [r1, #2] @ zero_extendqisi2 634:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 877 .loc 1 634 10 view .LVU303 878 0008 2E4B ldr r3, .L67 879 000a 1D70 strb r5, [r3] 636:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 880 .loc 1 636 3 is_stmt 1 view .LVU304 636:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 881 .loc 1 636 6 is_stmt 0 view .LVU305 882 000c 012D cmp r5, #1 883 000e 10D8 bhi .L65 642:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 884 .loc 1 642 3 is_stmt 1 view .LVU306 642:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 885 .loc 1 642 15 is_stmt 0 view .LVU307 886 0010 90F89C32 ldrb r3, [r0, #668] @ zero_extendqisi2 887 0014 DBB2 uxtb r3, r3 642:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 888 .loc 1 642 3 view .LVU308 889 0016 022B cmp r3, #2 890 0018 0FD0 beq .L55 891 001a 032B cmp r3, #3 892 001c 23D0 beq .L56 703:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** (void)USBD_ClrClassConfig(pdev, cfgidx); 893 .loc 1 703 7 is_stmt 1 view .LVU309 894 001e FFF7FEFF bl USBD_CtlError 895 .LVL110: 704:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** ret = USBD_FAIL; 896 .loc 1 704 7 view .LVU310 704:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** ret = USBD_FAIL; 897 .loc 1 704 13 is_stmt 0 view .LVU311 898 0022 284B ldr r3, .L67 899 0024 1978 ldrb r1, [r3] @ zero_extendqisi2 900 0026 2046 mov r0, r4 901 0028 FFF7FEFF bl USBD_ClrClassConfig 902 .LVL111: 705:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 903 .loc 1 705 7 is_stmt 1 view .LVU312 706:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 904 .loc 1 706 7 view .LVU313 705:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 905 .loc 1 705 11 is_stmt 0 view .LVU314 906 002c 0325 movs r5, #3 907 .LVL112: 908 .L54: 710:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 909 .loc 1 710 1 view .LVU315 910 002e 2846 mov r0, r5 ARM GAS /tmp/ccQ58aJU.s page 44 911 0030 70BD pop {r4, r5, r6, pc} 912 .LVL113: 913 .L65: 638:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** return USBD_FAIL; 914 .loc 1 638 5 is_stmt 1 view .LVU316 915 0032 FFF7FEFF bl USBD_CtlError 916 .LVL114: 639:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 917 .loc 1 639 5 view .LVU317 639:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 918 .loc 1 639 12 is_stmt 0 view .LVU318 919 0036 0325 movs r5, #3 920 0038 F9E7 b .L54 921 .LVL115: 922 .L55: 645:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 923 .loc 1 645 7 is_stmt 1 view .LVU319 645:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 924 .loc 1 645 10 is_stmt 0 view .LVU320 925 003a 8DB1 cbz r5, .L58 647:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 926 .loc 1 647 9 is_stmt 1 view .LVU321 647:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 927 .loc 1 647 26 is_stmt 0 view .LVU322 928 003c 4560 str r5, [r0, #4] 649:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 929 .loc 1 649 9 is_stmt 1 view .LVU323 649:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 930 .loc 1 649 15 is_stmt 0 view .LVU324 931 003e 2946 mov r1, r5 932 .LVL116: 649:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 933 .loc 1 649 15 view .LVU325 934 0040 FFF7FEFF bl USBD_SetClassConfig 935 .LVL117: 651:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 936 .loc 1 651 9 is_stmt 1 view .LVU326 651:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 937 .loc 1 651 12 is_stmt 0 view .LVU327 938 0044 0546 mov r5, r0 939 0046 20B1 cbz r0, .L59 653:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 940 .loc 1 653 11 is_stmt 1 view .LVU328 941 0048 3146 mov r1, r6 942 004a 2046 mov r0, r4 943 .LVL118: 653:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 944 .loc 1 653 11 is_stmt 0 view .LVU329 945 004c FFF7FEFF bl USBD_CtlError 946 .LVL119: 947 0050 EDE7 b .L54 948 .LVL120: 949 .L59: 657:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** pdev->dev_state = USBD_STATE_CONFIGURED; 950 .loc 1 657 11 is_stmt 1 view .LVU330 657:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** pdev->dev_state = USBD_STATE_CONFIGURED; 951 .loc 1 657 17 is_stmt 0 view .LVU331 ARM GAS /tmp/ccQ58aJU.s page 45 952 0052 2046 mov r0, r4 953 .LVL121: 657:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** pdev->dev_state = USBD_STATE_CONFIGURED; 954 .loc 1 657 17 view .LVU332 955 0054 FFF7FEFF bl USBD_CtlSendStatus 956 .LVL122: 658:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 957 .loc 1 658 11 is_stmt 1 view .LVU333 658:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 958 .loc 1 658 27 is_stmt 0 view .LVU334 959 0058 0323 movs r3, #3 960 005a 84F89C32 strb r3, [r4, #668] 961 005e E6E7 b .L54 962 .LVL123: 963 .L58: 663:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 964 .loc 1 663 9 is_stmt 1 view .LVU335 663:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 965 .loc 1 663 15 is_stmt 0 view .LVU336 966 0060 FFF7FEFF bl USBD_CtlSendStatus 967 .LVL124: 663:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 968 .loc 1 663 15 view .LVU337 969 0064 E3E7 b .L54 970 .LVL125: 971 .L56: 668:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 972 .loc 1 668 7 is_stmt 1 view .LVU338 668:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 973 .loc 1 668 10 is_stmt 0 view .LVU339 974 0066 CDB1 cbz r5, .L66 675:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 975 .loc 1 675 12 is_stmt 1 view .LVU340 675:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 976 .loc 1 675 30 is_stmt 0 view .LVU341 977 0068 4168 ldr r1, [r0, #4] 978 .LVL126: 675:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 979 .loc 1 675 15 view .LVU342 980 006a 8D42 cmp r5, r1 981 006c 25D0 beq .L61 678:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 982 .loc 1 678 9 is_stmt 1 view .LVU343 678:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 983 .loc 1 678 15 is_stmt 0 view .LVU344 984 006e C9B2 uxtb r1, r1 985 0070 FFF7FEFF bl USBD_ClrClassConfig 986 .LVL127: 681:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 987 .loc 1 681 9 is_stmt 1 view .LVU345 681:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 988 .loc 1 681 26 is_stmt 0 view .LVU346 989 0074 134B ldr r3, .L67 990 0076 1978 ldrb r1, [r3] @ zero_extendqisi2 991 0078 6160 str r1, [r4, #4] 683:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 992 .loc 1 683 9 is_stmt 1 view .LVU347 ARM GAS /tmp/ccQ58aJU.s page 46 683:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 993 .loc 1 683 15 is_stmt 0 view .LVU348 994 007a 2046 mov r0, r4 995 007c FFF7FEFF bl USBD_SetClassConfig 996 .LVL128: 685:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 997 .loc 1 685 9 is_stmt 1 view .LVU349 685:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 998 .loc 1 685 12 is_stmt 0 view .LVU350 999 0080 0546 mov r5, r0 1000 0082 B0B1 cbz r0, .L62 687:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** (void)USBD_ClrClassConfig(pdev, (uint8_t)pdev->dev_config); 1001 .loc 1 687 11 is_stmt 1 view .LVU351 1002 0084 3146 mov r1, r6 1003 0086 2046 mov r0, r4 1004 .LVL129: 687:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** (void)USBD_ClrClassConfig(pdev, (uint8_t)pdev->dev_config); 1005 .loc 1 687 11 is_stmt 0 view .LVU352 1006 0088 FFF7FEFF bl USBD_CtlError 1007 .LVL130: 688:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** pdev->dev_state = USBD_STATE_ADDRESSED; 1008 .loc 1 688 11 is_stmt 1 view .LVU353 688:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** pdev->dev_state = USBD_STATE_ADDRESSED; 1009 .loc 1 688 17 is_stmt 0 view .LVU354 1010 008c 2179 ldrb r1, [r4, #4] @ zero_extendqisi2 1011 008e 2046 mov r0, r4 1012 0090 FFF7FEFF bl USBD_ClrClassConfig 1013 .LVL131: 689:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 1014 .loc 1 689 11 is_stmt 1 view .LVU355 689:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 1015 .loc 1 689 27 is_stmt 0 view .LVU356 1016 0094 0223 movs r3, #2 1017 0096 84F89C32 strb r3, [r4, #668] 1018 009a C8E7 b .L54 1019 .LVL132: 1020 .L66: 670:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** pdev->dev_config = cfgidx; 1021 .loc 1 670 9 is_stmt 1 view .LVU357 670:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** pdev->dev_config = cfgidx; 1022 .loc 1 670 25 is_stmt 0 view .LVU358 1023 009c 0223 movs r3, #2 1024 009e 80F89C32 strb r3, [r0, #668] 671:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** (void)USBD_ClrClassConfig(pdev, cfgidx); 1025 .loc 1 671 9 is_stmt 1 view .LVU359 671:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** (void)USBD_ClrClassConfig(pdev, cfgidx); 1026 .loc 1 671 26 is_stmt 0 view .LVU360 1027 00a2 4560 str r5, [r0, #4] 672:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** (void)USBD_CtlSendStatus(pdev); 1028 .loc 1 672 9 is_stmt 1 view .LVU361 672:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** (void)USBD_CtlSendStatus(pdev); 1029 .loc 1 672 15 is_stmt 0 view .LVU362 1030 00a4 2946 mov r1, r5 1031 .LVL133: 672:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** (void)USBD_CtlSendStatus(pdev); 1032 .loc 1 672 15 view .LVU363 1033 00a6 FFF7FEFF bl USBD_ClrClassConfig ARM GAS /tmp/ccQ58aJU.s page 47 1034 .LVL134: 673:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 1035 .loc 1 673 9 is_stmt 1 view .LVU364 673:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 1036 .loc 1 673 15 is_stmt 0 view .LVU365 1037 00aa 2046 mov r0, r4 1038 00ac FFF7FEFF bl USBD_CtlSendStatus 1039 .LVL135: 1040 00b0 BDE7 b .L54 1041 .LVL136: 1042 .L62: 693:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 1043 .loc 1 693 11 is_stmt 1 view .LVU366 693:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 1044 .loc 1 693 17 is_stmt 0 view .LVU367 1045 00b2 2046 mov r0, r4 1046 .LVL137: 693:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 1047 .loc 1 693 17 view .LVU368 1048 00b4 FFF7FEFF bl USBD_CtlSendStatus 1049 .LVL138: 1050 00b8 B9E7 b .L54 1051 .LVL139: 1052 .L61: 698:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 1053 .loc 1 698 9 is_stmt 1 view .LVU369 698:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 1054 .loc 1 698 15 is_stmt 0 view .LVU370 1055 00ba FFF7FEFF bl USBD_CtlSendStatus 1056 .LVL140: 631:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** static uint8_t cfgidx; 1057 .loc 1 631 22 view .LVU371 1058 00be 0025 movs r5, #0 1059 00c0 B5E7 b .L54 1060 .L68: 1061 00c2 00BF .align 2 1062 .L67: 1063 00c4 00000000 .word cfgidx.0 1064 .cfi_endproc 1065 .LFE338: 1067 .section .text.USBD_GetConfig,"ax",%progbits 1068 .align 1 1069 .syntax unified 1070 .thumb 1071 .thumb_func 1073 USBD_GetConfig: 1074 .LVL141: 1075 .LFB339: 720:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** if (req->wLength != 1U) 1076 .loc 1 720 1 is_stmt 1 view -0 1077 .cfi_startproc 1078 @ args = 0, pretend = 0, frame = 0 1079 @ frame_needed = 0, uses_anonymous_args = 0 720:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** if (req->wLength != 1U) 1080 .loc 1 720 1 is_stmt 0 view .LVU373 1081 0000 08B5 push {r3, lr} 1082 .LCFI8: ARM GAS /tmp/ccQ58aJU.s page 48 1083 .cfi_def_cfa_offset 8 1084 .cfi_offset 3, -8 1085 .cfi_offset 14, -4 721:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 1086 .loc 1 721 3 is_stmt 1 view .LVU374 721:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 1087 .loc 1 721 10 is_stmt 0 view .LVU375 1088 0002 CB88 ldrh r3, [r1, #6] 721:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 1089 .loc 1 721 6 view .LVU376 1090 0004 012B cmp r3, #1 1091 0006 0BD1 bne .L77 727:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 1092 .loc 1 727 5 is_stmt 1 view .LVU377 727:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 1093 .loc 1 727 17 is_stmt 0 view .LVU378 1094 0008 90F89C32 ldrb r3, [r0, #668] @ zero_extendqisi2 1095 000c DBB2 uxtb r3, r3 727:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 1096 .loc 1 727 5 view .LVU379 1097 000e 022B cmp r3, #2 1098 0010 09D9 bls .L78 1099 0012 032B cmp r3, #3 1100 0014 09D1 bne .L74 736:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 1101 .loc 1 736 9 is_stmt 1 view .LVU380 736:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 1102 .loc 1 736 15 is_stmt 0 view .LVU381 1103 0016 0122 movs r2, #1 1104 0018 011D adds r1, r0, #4 1105 .LVL142: 736:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 1106 .loc 1 736 15 view .LVU382 1107 001a FFF7FEFF bl USBD_CtlSendData 1108 .LVL143: 737:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 1109 .loc 1 737 9 is_stmt 1 view .LVU383 1110 001e 01E0 b .L69 1111 .LVL144: 1112 .L77: 723:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 1113 .loc 1 723 5 view .LVU384 1114 0020 FFF7FEFF bl USBD_CtlError 1115 .LVL145: 1116 .L69: 744:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 1117 .loc 1 744 1 is_stmt 0 view .LVU385 1118 0024 08BD pop {r3, pc} 1119 .LVL146: 1120 .L78: 727:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 1121 .loc 1 727 5 view .LVU386 1122 0026 5BB2 sxtb r3, r3 1123 0028 13B9 cbnz r3, .L79 1124 .L74: 740:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 1125 .loc 1 740 9 is_stmt 1 view .LVU387 ARM GAS /tmp/ccQ58aJU.s page 49 1126 002a FFF7FEFF bl USBD_CtlError 1127 .LVL147: 741:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 1128 .loc 1 741 9 view .LVU388 744:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 1129 .loc 1 744 1 is_stmt 0 view .LVU389 1130 002e F9E7 b .L69 1131 .LVL148: 1132 .L79: 731:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** (void)USBD_CtlSendData(pdev, (uint8_t *)&pdev->dev_default_config, 1U); 1133 .loc 1 731 9 is_stmt 1 view .LVU390 731:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** (void)USBD_CtlSendData(pdev, (uint8_t *)&pdev->dev_default_config, 1U); 1134 .loc 1 731 34 is_stmt 0 view .LVU391 1135 0030 0146 mov r1, r0 1136 .LVL149: 731:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** (void)USBD_CtlSendData(pdev, (uint8_t *)&pdev->dev_default_config, 1U); 1137 .loc 1 731 34 view .LVU392 1138 0032 0023 movs r3, #0 1139 0034 41F8083F str r3, [r1, #8]! 732:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 1140 .loc 1 732 9 is_stmt 1 view .LVU393 732:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 1141 .loc 1 732 15 is_stmt 0 view .LVU394 1142 0038 0122 movs r2, #1 1143 003a FFF7FEFF bl USBD_CtlSendData 1144 .LVL150: 733:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 1145 .loc 1 733 9 is_stmt 1 view .LVU395 1146 003e F1E7 b .L69 1147 .cfi_endproc 1148 .LFE339: 1150 .section .text.USBD_GetStatus,"ax",%progbits 1151 .align 1 1152 .syntax unified 1153 .thumb 1154 .thumb_func 1156 USBD_GetStatus: 1157 .LVL151: 1158 .LFB340: 754:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** switch (pdev->dev_state) 1159 .loc 1 754 1 view -0 1160 .cfi_startproc 1161 @ args = 0, pretend = 0, frame = 0 1162 @ frame_needed = 0, uses_anonymous_args = 0 754:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** switch (pdev->dev_state) 1163 .loc 1 754 1 is_stmt 0 view .LVU397 1164 0000 08B5 push {r3, lr} 1165 .LCFI9: 1166 .cfi_def_cfa_offset 8 1167 .cfi_offset 3, -8 1168 .cfi_offset 14, -4 755:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 1169 .loc 1 755 3 is_stmt 1 view .LVU398 755:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 1170 .loc 1 755 15 is_stmt 0 view .LVU399 1171 0002 90F89C32 ldrb r3, [r0, #668] @ zero_extendqisi2 755:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { ARM GAS /tmp/ccQ58aJU.s page 50 1172 .loc 1 755 3 view .LVU400 1173 0006 013B subs r3, r3, #1 1174 0008 022B cmp r3, #2 1175 000a 12D8 bhi .L81 760:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 1176 .loc 1 760 7 is_stmt 1 view .LVU401 760:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 1177 .loc 1 760 14 is_stmt 0 view .LVU402 1178 000c CB88 ldrh r3, [r1, #6] 760:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 1179 .loc 1 760 10 view .LVU403 1180 000e 022B cmp r3, #2 1181 0010 0CD1 bne .L86 767:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** #else 1182 .loc 1 767 7 is_stmt 1 view .LVU404 767:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** #else 1183 .loc 1 767 31 is_stmt 0 view .LVU405 1184 0012 0123 movs r3, #1 1185 0014 C360 str r3, [r0, #12] 772:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 1186 .loc 1 772 7 is_stmt 1 view .LVU406 772:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 1187 .loc 1 772 15 is_stmt 0 view .LVU407 1188 0016 D0F8A432 ldr r3, [r0, #676] 772:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 1189 .loc 1 772 10 view .LVU408 1190 001a 0BB1 cbz r3, .L84 774:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 1191 .loc 1 774 9 is_stmt 1 view .LVU409 774:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 1192 .loc 1 774 33 is_stmt 0 view .LVU410 1193 001c 0323 movs r3, #3 1194 001e C360 str r3, [r0, #12] 1195 .L84: 777:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 1196 .loc 1 777 7 is_stmt 1 view .LVU411 777:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 1197 .loc 1 777 13 is_stmt 0 view .LVU412 1198 0020 0222 movs r2, #2 1199 0022 00F10C01 add r1, r0, #12 1200 .LVL152: 777:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 1201 .loc 1 777 13 view .LVU413 1202 0026 FFF7FEFF bl USBD_CtlSendData 1203 .LVL153: 778:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 1204 .loc 1 778 7 is_stmt 1 view .LVU414 1205 .L80: 784:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 1206 .loc 1 784 1 is_stmt 0 view .LVU415 1207 002a 08BD pop {r3, pc} 1208 .LVL154: 1209 .L86: 762:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 1210 .loc 1 762 9 is_stmt 1 view .LVU416 1211 002c FFF7FEFF bl USBD_CtlError 1212 .LVL155: ARM GAS /tmp/ccQ58aJU.s page 51 763:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 1213 .loc 1 763 9 view .LVU417 1214 0030 FBE7 b .L80 1215 .LVL156: 1216 .L81: 781:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 1217 .loc 1 781 7 view .LVU418 1218 0032 FFF7FEFF bl USBD_CtlError 1219 .LVL157: 782:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 1220 .loc 1 782 7 view .LVU419 784:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 1221 .loc 1 784 1 is_stmt 0 view .LVU420 1222 0036 F8E7 b .L80 1223 .cfi_endproc 1224 .LFE340: 1226 .section .text.USBD_ClrFeature,"ax",%progbits 1227 .align 1 1228 .syntax unified 1229 .thumb 1230 .thumb_func 1232 USBD_ClrFeature: 1233 .LVL158: 1234 .LFB342: 812:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** switch (pdev->dev_state) 1235 .loc 1 812 1 is_stmt 1 view -0 1236 .cfi_startproc 1237 @ args = 0, pretend = 0, frame = 0 1238 @ frame_needed = 0, uses_anonymous_args = 0 812:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** switch (pdev->dev_state) 1239 .loc 1 812 1 is_stmt 0 view .LVU422 1240 0000 08B5 push {r3, lr} 1241 .LCFI10: 1242 .cfi_def_cfa_offset 8 1243 .cfi_offset 3, -8 1244 .cfi_offset 14, -4 813:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 1245 .loc 1 813 3 is_stmt 1 view .LVU423 813:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 1246 .loc 1 813 15 is_stmt 0 view .LVU424 1247 0002 90F89C32 ldrb r3, [r0, #668] @ zero_extendqisi2 813:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 1248 .loc 1 813 3 view .LVU425 1249 0006 013B subs r3, r3, #1 1250 0008 022B cmp r3, #2 1251 000a 09D8 bhi .L88 818:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 1252 .loc 1 818 7 is_stmt 1 view .LVU426 818:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 1253 .loc 1 818 14 is_stmt 0 view .LVU427 1254 000c 4B88 ldrh r3, [r1, #2] 818:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 1255 .loc 1 818 10 view .LVU428 1256 000e 012B cmp r3, #1 1257 0010 00D0 beq .L91 1258 .LVL159: 1259 .L87: ARM GAS /tmp/ccQ58aJU.s page 52 829:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 1260 .loc 1 829 1 view .LVU429 1261 0012 08BD pop {r3, pc} 1262 .LVL160: 1263 .L91: 820:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** (void)USBD_CtlSendStatus(pdev); 1264 .loc 1 820 9 is_stmt 1 view .LVU430 820:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** (void)USBD_CtlSendStatus(pdev); 1265 .loc 1 820 33 is_stmt 0 view .LVU431 1266 0014 0023 movs r3, #0 1267 0016 C0F8A432 str r3, [r0, #676] 821:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 1268 .loc 1 821 9 is_stmt 1 view .LVU432 821:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 1269 .loc 1 821 15 is_stmt 0 view .LVU433 1270 001a FFF7FEFF bl USBD_CtlSendStatus 1271 .LVL161: 821:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 1272 .loc 1 821 15 view .LVU434 1273 001e F8E7 b .L87 1274 .LVL162: 1275 .L88: 826:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 1276 .loc 1 826 7 is_stmt 1 view .LVU435 1277 0020 FFF7FEFF bl USBD_CtlError 1278 .LVL163: 827:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 1279 .loc 1 827 7 view .LVU436 829:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 1280 .loc 1 829 1 is_stmt 0 view .LVU437 1281 0024 F5E7 b .L87 1282 .cfi_endproc 1283 .LFE342: 1285 .section .text.USBD_StdDevReq,"ax",%progbits 1286 .align 1 1287 .global USBD_StdDevReq 1288 .syntax unified 1289 .thumb 1290 .thumb_func 1292 USBD_StdDevReq: 1293 .LVL164: 1294 .LFB333: 101:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** USBD_StatusTypeDef ret = USBD_OK; 1295 .loc 1 101 1 is_stmt 1 view -0 1296 .cfi_startproc 1297 @ args = 0, pretend = 0, frame = 0 1298 @ frame_needed = 0, uses_anonymous_args = 0 101:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** USBD_StatusTypeDef ret = USBD_OK; 1299 .loc 1 101 1 is_stmt 0 view .LVU439 1300 0000 38B5 push {r3, r4, r5, lr} 1301 .LCFI11: 1302 .cfi_def_cfa_offset 16 1303 .cfi_offset 3, -16 1304 .cfi_offset 4, -12 1305 .cfi_offset 5, -8 1306 .cfi_offset 14, -4 102:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** ARM GAS /tmp/ccQ58aJU.s page 53 1307 .loc 1 102 3 is_stmt 1 view .LVU440 1308 .LVL165: 104:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 1309 .loc 1 104 3 view .LVU441 104:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 1310 .loc 1 104 14 is_stmt 0 view .LVU442 1311 0002 0C78 ldrb r4, [r1] @ zero_extendqisi2 1312 0004 04F06004 and r4, r4, #96 104:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 1313 .loc 1 104 3 view .LVU443 1314 0008 202C cmp r4, #32 1315 000a 06D0 beq .L93 1316 000c 402C cmp r4, #64 1317 000e 04D0 beq .L93 1318 0010 54B1 cbz r4, .L108 149:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 1319 .loc 1 149 7 is_stmt 1 view .LVU444 1320 0012 FFF7FEFF bl USBD_CtlError 1321 .LVL166: 150:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 1322 .loc 1 150 7 view .LVU445 102:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 1323 .loc 1 102 22 is_stmt 0 view .LVU446 1324 0016 0024 movs r4, #0 150:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 1325 .loc 1 150 7 view .LVU447 1326 0018 04E0 b .L96 1327 .LVL167: 1328 .L93: 108:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 1329 .loc 1 108 7 is_stmt 1 view .LVU448 108:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 1330 .loc 1 108 37 is_stmt 0 view .LVU449 1331 001a D0F8B832 ldr r3, [r0, #696] 108:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 1332 .loc 1 108 45 view .LVU450 1333 001e 9B68 ldr r3, [r3, #8] 108:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 1334 .loc 1 108 33 view .LVU451 1335 0020 9847 blx r3 1336 .LVL168: 108:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 1337 .loc 1 108 33 view .LVU452 1338 0022 0446 mov r4, r0 1339 .LVL169: 109:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 1340 .loc 1 109 7 is_stmt 1 view .LVU453 1341 .L96: 153:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 1342 .loc 1 153 3 view .LVU454 154:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 1343 .loc 1 154 1 is_stmt 0 view .LVU455 1344 0024 2046 mov r0, r4 1345 0026 38BD pop {r3, r4, r5, pc} 1346 .LVL170: 1347 .L108: 112:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { ARM GAS /tmp/ccQ58aJU.s page 54 1348 .loc 1 112 7 is_stmt 1 view .LVU456 112:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 1349 .loc 1 112 18 is_stmt 0 view .LVU457 1350 0028 4D78 ldrb r5, [r1, #1] @ zero_extendqisi2 1351 002a 092D cmp r5, #9 1352 002c 1DD8 bhi .L97 1353 002e DFE805F0 tbb [pc, r5] 1354 .L99: 1355 0032 12 .byte (.L105-.L99)/2 1356 0033 19 .byte (.L104-.L99)/2 1357 0034 1C .byte (.L97-.L99)/2 1358 0035 16 .byte (.L103-.L99)/2 1359 0036 1C .byte (.L97-.L99)/2 1360 0037 08 .byte (.L102-.L99)/2 1361 0038 05 .byte (.L101-.L99)/2 1362 0039 1C .byte (.L97-.L99)/2 1363 003a 0F .byte (.L100-.L99)/2 1364 003b 0B .byte (.L98-.L99)/2 1365 .p2align 1 1366 .L101: 115:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 1367 .loc 1 115 11 is_stmt 1 view .LVU458 1368 003c FFF7FEFF bl USBD_GetDescriptor 1369 .LVL171: 116:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 1370 .loc 1 116 11 view .LVU459 1371 0040 F0E7 b .L96 1372 .LVL172: 1373 .L102: 119:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 1374 .loc 1 119 11 view .LVU460 1375 0042 FFF7FEFF bl USBD_SetAddress 1376 .LVL173: 120:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 1377 .loc 1 120 11 view .LVU461 1378 0046 EDE7 b .L96 1379 .LVL174: 1380 .L98: 123:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 1381 .loc 1 123 11 view .LVU462 123:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 1382 .loc 1 123 17 is_stmt 0 view .LVU463 1383 0048 FFF7FEFF bl USBD_SetConfig 1384 .LVL175: 123:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 1385 .loc 1 123 17 view .LVU464 1386 004c 0446 mov r4, r0 1387 .LVL176: 124:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 1388 .loc 1 124 11 is_stmt 1 view .LVU465 1389 004e E9E7 b .L96 1390 .LVL177: 1391 .L100: 127:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 1392 .loc 1 127 11 view .LVU466 1393 0050 FFF7FEFF bl USBD_GetConfig 1394 .LVL178: ARM GAS /tmp/ccQ58aJU.s page 55 128:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 1395 .loc 1 128 11 view .LVU467 1396 0054 E6E7 b .L96 1397 .LVL179: 1398 .L105: 131:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 1399 .loc 1 131 11 view .LVU468 1400 0056 FFF7FEFF bl USBD_GetStatus 1401 .LVL180: 132:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 1402 .loc 1 132 11 view .LVU469 102:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 1403 .loc 1 102 22 is_stmt 0 view .LVU470 1404 005a 2C46 mov r4, r5 132:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 1405 .loc 1 132 11 view .LVU471 1406 005c E2E7 b .L96 1407 .LVL181: 1408 .L103: 135:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 1409 .loc 1 135 11 is_stmt 1 view .LVU472 1410 005e FFF7FEFF bl USBD_SetFeature 1411 .LVL182: 136:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 1412 .loc 1 136 11 view .LVU473 1413 0062 DFE7 b .L96 1414 .LVL183: 1415 .L104: 139:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 1416 .loc 1 139 11 view .LVU474 1417 0064 FFF7FEFF bl USBD_ClrFeature 1418 .LVL184: 140:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 1419 .loc 1 140 11 view .LVU475 1420 0068 DCE7 b .L96 1421 .LVL185: 1422 .L97: 143:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 1423 .loc 1 143 11 view .LVU476 1424 006a FFF7FEFF bl USBD_CtlError 1425 .LVL186: 144:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 1426 .loc 1 144 11 view .LVU477 1427 006e D9E7 b .L96 1428 .cfi_endproc 1429 .LFE333: 1431 .section .text.USBD_StdItfReq,"ax",%progbits 1432 .align 1 1433 .global USBD_StdItfReq 1434 .syntax unified 1435 .thumb 1436 .thumb_func 1438 USBD_StdItfReq: 1439 .LVL187: 1440 .LFB334: 164:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** USBD_StatusTypeDef ret = USBD_OK; 1441 .loc 1 164 1 view -0 ARM GAS /tmp/ccQ58aJU.s page 56 1442 .cfi_startproc 1443 @ args = 0, pretend = 0, frame = 0 1444 @ frame_needed = 0, uses_anonymous_args = 0 164:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** USBD_StatusTypeDef ret = USBD_OK; 1445 .loc 1 164 1 is_stmt 0 view .LVU479 1446 0000 70B5 push {r4, r5, r6, lr} 1447 .LCFI12: 1448 .cfi_def_cfa_offset 16 1449 .cfi_offset 4, -16 1450 .cfi_offset 5, -12 1451 .cfi_offset 6, -8 1452 .cfi_offset 14, -4 1453 0002 0546 mov r5, r0 1454 0004 0C46 mov r4, r1 165:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 1455 .loc 1 165 3 is_stmt 1 view .LVU480 1456 .LVL188: 167:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 1457 .loc 1 167 3 view .LVU481 167:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 1458 .loc 1 167 14 is_stmt 0 view .LVU482 1459 0006 0B78 ldrb r3, [r1] @ zero_extendqisi2 1460 0008 03F06003 and r3, r3, #96 167:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 1461 .loc 1 167 3 view .LVU483 1462 000c 202B cmp r3, #32 1463 000e 07D0 beq .L110 1464 0010 402B cmp r3, #64 1465 0012 05D0 beq .L110 1466 0014 23B1 cbz r3, .L110 200:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 1467 .loc 1 200 7 is_stmt 1 view .LVU484 1468 0016 FFF7FEFF bl USBD_CtlError 1469 .LVL189: 201:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 1470 .loc 1 201 7 view .LVU485 165:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 1471 .loc 1 165 22 is_stmt 0 view .LVU486 1472 001a 0026 movs r6, #0 1473 .LVL190: 1474 .L114: 204:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 1475 .loc 1 204 3 is_stmt 1 view .LVU487 205:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 1476 .loc 1 205 1 is_stmt 0 view .LVU488 1477 001c 3046 mov r0, r6 1478 001e 70BD pop {r4, r5, r6, pc} 1479 .LVL191: 1480 .L110: 172:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 1481 .loc 1 172 7 is_stmt 1 view .LVU489 172:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 1482 .loc 1 172 19 is_stmt 0 view .LVU490 1483 0020 95F89C32 ldrb r3, [r5, #668] @ zero_extendqisi2 1484 0024 013B subs r3, r3, #1 1485 0026 022B cmp r3, #2 1486 0028 18D8 bhi .L112 ARM GAS /tmp/ccQ58aJU.s page 57 178:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 1487 .loc 1 178 11 is_stmt 1 view .LVU491 178:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 1488 .loc 1 178 15 is_stmt 0 view .LVU492 1489 002a 2379 ldrb r3, [r4, #4] @ zero_extendqisi2 178:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 1490 .loc 1 178 14 view .LVU493 1491 002c 012B cmp r3, #1 1492 002e 0FD8 bhi .L113 180:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 1493 .loc 1 180 13 is_stmt 1 view .LVU494 180:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 1494 .loc 1 180 43 is_stmt 0 view .LVU495 1495 0030 D5F8B832 ldr r3, [r5, #696] 180:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 1496 .loc 1 180 51 view .LVU496 1497 0034 9B68 ldr r3, [r3, #8] 180:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 1498 .loc 1 180 39 view .LVU497 1499 0036 2146 mov r1, r4 1500 .LVL192: 180:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 1501 .loc 1 180 39 view .LVU498 1502 0038 2846 mov r0, r5 1503 .LVL193: 180:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 1504 .loc 1 180 39 view .LVU499 1505 003a 9847 blx r3 1506 .LVL194: 1507 003c 0646 mov r6, r0 1508 .LVL195: 182:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 1509 .loc 1 182 13 is_stmt 1 view .LVU500 182:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 1510 .loc 1 182 21 is_stmt 0 view .LVU501 1511 003e E388 ldrh r3, [r4, #6] 182:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 1512 .loc 1 182 16 view .LVU502 1513 0040 002B cmp r3, #0 1514 0042 EBD1 bne .L114 182:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 1515 .loc 1 182 38 discriminator 1 view .LVU503 1516 0044 0028 cmp r0, #0 1517 0046 E9D1 bne .L114 184:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 1518 .loc 1 184 15 is_stmt 1 view .LVU504 184:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 1519 .loc 1 184 21 is_stmt 0 view .LVU505 1520 0048 2846 mov r0, r5 1521 .LVL196: 184:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 1522 .loc 1 184 21 view .LVU506 1523 004a FFF7FEFF bl USBD_CtlSendStatus 1524 .LVL197: 1525 004e E5E7 b .L114 1526 .LVL198: 1527 .L113: ARM GAS /tmp/ccQ58aJU.s page 58 189:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 1528 .loc 1 189 13 is_stmt 1 view .LVU507 1529 0050 2146 mov r1, r4 1530 .LVL199: 189:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 1531 .loc 1 189 13 is_stmt 0 view .LVU508 1532 0052 2846 mov r0, r5 1533 .LVL200: 189:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 1534 .loc 1 189 13 view .LVU509 1535 0054 FFF7FEFF bl USBD_CtlError 1536 .LVL201: 165:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 1537 .loc 1 165 22 view .LVU510 1538 0058 0026 movs r6, #0 1539 005a DFE7 b .L114 1540 .LVL202: 1541 .L112: 194:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 1542 .loc 1 194 11 is_stmt 1 view .LVU511 1543 005c 2146 mov r1, r4 1544 .LVL203: 194:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 1545 .loc 1 194 11 is_stmt 0 view .LVU512 1546 005e 2846 mov r0, r5 1547 .LVL204: 194:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 1548 .loc 1 194 11 view .LVU513 1549 0060 FFF7FEFF bl USBD_CtlError 1550 .LVL205: 195:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 1551 .loc 1 195 11 is_stmt 1 view .LVU514 165:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 1552 .loc 1 165 22 is_stmt 0 view .LVU515 1553 0064 0026 movs r6, #0 195:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 1554 .loc 1 195 11 view .LVU516 1555 0066 D9E7 b .L114 1556 .cfi_endproc 1557 .LFE334: 1559 .section .text.USBD_StdEPReq,"ax",%progbits 1560 .align 1 1561 .global USBD_StdEPReq 1562 .syntax unified 1563 .thumb 1564 .thumb_func 1566 USBD_StdEPReq: 1567 .LVL206: 1568 .LFB335: 215:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** USBD_EndpointTypeDef *pep; 1569 .loc 1 215 1 is_stmt 1 view -0 1570 .cfi_startproc 1571 @ args = 0, pretend = 0, frame = 0 1572 @ frame_needed = 0, uses_anonymous_args = 0 215:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** USBD_EndpointTypeDef *pep; 1573 .loc 1 215 1 is_stmt 0 view .LVU518 1574 0000 F8B5 push {r3, r4, r5, r6, r7, lr} ARM GAS /tmp/ccQ58aJU.s page 59 1575 .LCFI13: 1576 .cfi_def_cfa_offset 24 1577 .cfi_offset 3, -24 1578 .cfi_offset 4, -20 1579 .cfi_offset 5, -16 1580 .cfi_offset 6, -12 1581 .cfi_offset 7, -8 1582 .cfi_offset 14, -4 1583 0002 0646 mov r6, r0 1584 0004 0D46 mov r5, r1 216:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** uint8_t ep_addr; 1585 .loc 1 216 3 is_stmt 1 view .LVU519 217:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** USBD_StatusTypeDef ret = USBD_OK; 1586 .loc 1 217 3 view .LVU520 218:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** ep_addr = LOBYTE(req->wIndex); 1587 .loc 1 218 3 view .LVU521 1588 .LVL207: 219:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 1589 .loc 1 219 3 view .LVU522 219:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 1590 .loc 1 219 13 is_stmt 0 view .LVU523 1591 0006 8B88 ldrh r3, [r1, #4] 1592 .LVL208: 221:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 1593 .loc 1 221 3 is_stmt 1 view .LVU524 221:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 1594 .loc 1 221 14 is_stmt 0 view .LVU525 1595 0008 0C78 ldrb r4, [r1] @ zero_extendqisi2 1596 000a 04F06004 and r4, r4, #96 221:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 1597 .loc 1 221 3 view .LVU526 1598 000e 202C cmp r4, #32 1599 0010 08D0 beq .L117 1600 0012 D9B2 uxtb r1, r3 1601 .LVL209: 221:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 1602 .loc 1 221 3 view .LVU527 1603 0014 402C cmp r4, #64 1604 0016 05D0 beq .L117 1605 0018 6CB1 cbz r4, .L155 365:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 1606 .loc 1 365 7 is_stmt 1 view .LVU528 1607 001a 2946 mov r1, r5 1608 001c FFF7FEFF bl USBD_CtlError 1609 .LVL210: 366:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 1610 .loc 1 366 7 view .LVU529 218:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** ep_addr = LOBYTE(req->wIndex); 1611 .loc 1 218 22 is_stmt 0 view .LVU530 1612 0020 0024 movs r4, #0 366:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 1613 .loc 1 366 7 view .LVU531 1614 0022 06E0 b .L120 1615 .LVL211: 1616 .L117: 225:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 1617 .loc 1 225 7 is_stmt 1 view .LVU532 ARM GAS /tmp/ccQ58aJU.s page 60 225:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 1618 .loc 1 225 37 is_stmt 0 view .LVU533 1619 0024 D6F8B832 ldr r3, [r6, #696] 1620 .LVL212: 225:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 1621 .loc 1 225 45 view .LVU534 1622 0028 9B68 ldr r3, [r3, #8] 225:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 1623 .loc 1 225 33 view .LVU535 1624 002a 2946 mov r1, r5 1625 002c 3046 mov r0, r6 1626 .LVL213: 225:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 1627 .loc 1 225 33 view .LVU536 1628 002e 9847 blx r3 1629 .LVL214: 225:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 1630 .loc 1 225 33 view .LVU537 1631 0030 0446 mov r4, r0 1632 .LVL215: 226:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 1633 .loc 1 226 7 is_stmt 1 view .LVU538 1634 .L120: 369:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 1635 .loc 1 369 3 view .LVU539 370:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 1636 .loc 1 370 1 is_stmt 0 view .LVU540 1637 0032 2046 mov r0, r4 1638 0034 F8BD pop {r3, r4, r5, r6, r7, pc} 1639 .LVL216: 1640 .L155: 229:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 1641 .loc 1 229 7 is_stmt 1 view .LVU541 229:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 1642 .loc 1 229 18 is_stmt 0 view .LVU542 1643 0036 6F78 ldrb r7, [r5, #1] @ zero_extendqisi2 1644 0038 012F cmp r7, #1 1645 003a 2FD0 beq .L121 1646 003c 032F cmp r7, #3 1647 003e 05D0 beq .L122 1648 0040 002F cmp r7, #0 1649 0042 59D0 beq .L156 359:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 1650 .loc 1 359 11 is_stmt 1 view .LVU543 1651 0044 2946 mov r1, r5 1652 0046 FFF7FEFF bl USBD_CtlError 1653 .LVL217: 360:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 1654 .loc 1 360 11 view .LVU544 1655 004a F2E7 b .L120 1656 .LVL218: 1657 .L122: 232:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 1658 .loc 1 232 11 discriminator 3 view .LVU545 232:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 1659 .loc 1 232 23 is_stmt 0 discriminator 3 view .LVU546 1660 004c 90F89C32 ldrb r3, [r0, #668] @ zero_extendqisi2 ARM GAS /tmp/ccQ58aJU.s page 61 1661 .LVL219: 232:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 1662 .loc 1 232 23 discriminator 3 view .LVU547 1663 0050 DBB2 uxtb r3, r3 1664 0052 022B cmp r3, #2 1665 0054 05D0 beq .L125 1666 0056 032B cmp r3, #3 1667 0058 12D0 beq .L126 259:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 1668 .loc 1 259 15 is_stmt 1 view .LVU548 1669 005a 2946 mov r1, r5 1670 .LVL220: 259:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 1671 .loc 1 259 15 is_stmt 0 view .LVU549 1672 005c FFF7FEFF bl USBD_CtlError 1673 .LVL221: 260:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 1674 .loc 1 260 15 is_stmt 1 view .LVU550 1675 0060 E7E7 b .L120 1676 .LVL222: 1677 .L125: 235:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 1678 .loc 1 235 15 view .LVU551 235:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 1679 .loc 1 235 18 is_stmt 0 view .LVU552 1680 0062 09B1 cbz r1, .L128 235:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 1681 .loc 1 235 38 discriminator 1 view .LVU553 1682 0064 8029 cmp r1, #128 1683 0066 04D1 bne .L157 1684 .L128: 242:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 1685 .loc 1 242 17 is_stmt 1 view .LVU554 1686 0068 2946 mov r1, r5 1687 .LVL223: 242:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 1688 .loc 1 242 17 is_stmt 0 view .LVU555 1689 006a 3046 mov r0, r6 1690 .LVL224: 242:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 1691 .loc 1 242 17 view .LVU556 1692 006c FFF7FEFF bl USBD_CtlError 1693 .LVL225: 242:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 1694 .loc 1 242 17 view .LVU557 1695 0070 DFE7 b .L120 1696 .LVL226: 1697 .L157: 237:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** (void)USBD_LL_StallEP(pdev, 0x80U); 1698 .loc 1 237 17 is_stmt 1 view .LVU558 237:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** (void)USBD_LL_StallEP(pdev, 0x80U); 1699 .loc 1 237 23 is_stmt 0 view .LVU559 1700 0072 FFF7FEFF bl USBD_LL_StallEP 1701 .LVL227: 238:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 1702 .loc 1 238 17 is_stmt 1 view .LVU560 238:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } ARM GAS /tmp/ccQ58aJU.s page 62 1703 .loc 1 238 23 is_stmt 0 view .LVU561 1704 0076 8021 movs r1, #128 1705 0078 3046 mov r0, r6 1706 007a FFF7FEFF bl USBD_LL_StallEP 1707 .LVL228: 238:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 1708 .loc 1 238 17 view .LVU562 1709 007e D8E7 b .L120 1710 .LVL229: 1711 .L126: 247:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 1712 .loc 1 247 15 is_stmt 1 view .LVU563 247:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 1713 .loc 1 247 22 is_stmt 0 view .LVU564 1714 0080 6B88 ldrh r3, [r5, #2] 247:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 1715 .loc 1 247 18 view .LVU565 1716 0082 23B9 cbnz r3, .L129 249:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 1717 .loc 1 249 17 is_stmt 1 view .LVU566 249:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 1718 .loc 1 249 20 is_stmt 0 view .LVU567 1719 0084 19B1 cbz r1, .L129 249:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 1720 .loc 1 249 40 discriminator 1 view .LVU568 1721 0086 8029 cmp r1, #128 1722 0088 01D0 beq .L129 249:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 1723 .loc 1 249 69 discriminator 2 view .LVU569 1724 008a EB88 ldrh r3, [r5, #6] 249:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 1725 .loc 1 249 62 discriminator 2 view .LVU570 1726 008c 1BB1 cbz r3, .L158 1727 .LVL230: 1728 .L129: 254:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 1729 .loc 1 254 15 is_stmt 1 view .LVU571 254:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 1730 .loc 1 254 21 is_stmt 0 view .LVU572 1731 008e 3046 mov r0, r6 1732 0090 FFF7FEFF bl USBD_CtlSendStatus 1733 .LVL231: 256:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 1734 .loc 1 256 15 is_stmt 1 view .LVU573 1735 0094 CDE7 b .L120 1736 .LVL232: 1737 .L158: 251:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 1738 .loc 1 251 19 view .LVU574 251:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 1739 .loc 1 251 25 is_stmt 0 view .LVU575 1740 0096 FFF7FEFF bl USBD_LL_StallEP 1741 .LVL233: 251:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 1742 .loc 1 251 25 view .LVU576 1743 009a F8E7 b .L129 1744 .LVL234: ARM GAS /tmp/ccQ58aJU.s page 63 1745 .L121: 266:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 1746 .loc 1 266 11 is_stmt 1 discriminator 2 view .LVU577 266:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 1747 .loc 1 266 23 is_stmt 0 discriminator 2 view .LVU578 1748 009c 90F89C32 ldrb r3, [r0, #668] @ zero_extendqisi2 1749 .LVL235: 266:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 1750 .loc 1 266 23 discriminator 2 view .LVU579 1751 00a0 DBB2 uxtb r3, r3 1752 00a2 022B cmp r3, #2 1753 00a4 05D0 beq .L130 1754 00a6 032B cmp r3, #3 1755 00a8 12D0 beq .L131 293:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 1756 .loc 1 293 15 is_stmt 1 view .LVU580 1757 00aa 2946 mov r1, r5 1758 .LVL236: 293:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 1759 .loc 1 293 15 is_stmt 0 view .LVU581 1760 00ac FFF7FEFF bl USBD_CtlError 1761 .LVL237: 294:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 1762 .loc 1 294 15 is_stmt 1 view .LVU582 1763 00b0 BFE7 b .L120 1764 .LVL238: 1765 .L130: 269:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 1766 .loc 1 269 15 view .LVU583 269:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 1767 .loc 1 269 18 is_stmt 0 view .LVU584 1768 00b2 09B1 cbz r1, .L133 269:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 1769 .loc 1 269 38 discriminator 1 view .LVU585 1770 00b4 8029 cmp r1, #128 1771 00b6 04D1 bne .L159 1772 .L133: 276:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 1773 .loc 1 276 17 is_stmt 1 view .LVU586 1774 00b8 2946 mov r1, r5 1775 .LVL239: 276:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 1776 .loc 1 276 17 is_stmt 0 view .LVU587 1777 00ba 3046 mov r0, r6 1778 .LVL240: 276:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 1779 .loc 1 276 17 view .LVU588 1780 00bc FFF7FEFF bl USBD_CtlError 1781 .LVL241: 276:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 1782 .loc 1 276 17 view .LVU589 1783 00c0 B7E7 b .L120 1784 .LVL242: 1785 .L159: 271:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** (void)USBD_LL_StallEP(pdev, 0x80U); 1786 .loc 1 271 17 is_stmt 1 view .LVU590 271:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** (void)USBD_LL_StallEP(pdev, 0x80U); ARM GAS /tmp/ccQ58aJU.s page 64 1787 .loc 1 271 23 is_stmt 0 view .LVU591 1788 00c2 FFF7FEFF bl USBD_LL_StallEP 1789 .LVL243: 272:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 1790 .loc 1 272 17 is_stmt 1 view .LVU592 272:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 1791 .loc 1 272 23 is_stmt 0 view .LVU593 1792 00c6 8021 movs r1, #128 1793 00c8 3046 mov r0, r6 1794 00ca FFF7FEFF bl USBD_LL_StallEP 1795 .LVL244: 272:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 1796 .loc 1 272 17 view .LVU594 1797 00ce B0E7 b .L120 1798 .LVL245: 1799 .L131: 281:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 1800 .loc 1 281 15 is_stmt 1 view .LVU595 281:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 1801 .loc 1 281 22 is_stmt 0 view .LVU596 1802 00d0 6B88 ldrh r3, [r5, #2] 281:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 1803 .loc 1 281 18 view .LVU597 1804 00d2 002B cmp r3, #0 1805 00d4 ADD1 bne .L120 283:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 1806 .loc 1 283 17 is_stmt 1 view .LVU598 283:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 1807 .loc 1 283 20 is_stmt 0 view .LVU599 1808 00d6 11F07F0F tst r1, #127 1809 00da 0AD1 bne .L160 1810 .LVL246: 1811 .L134: 287:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** ret = (USBD_StatusTypeDef)pdev->pClass->Setup(pdev, req); 1812 .loc 1 287 17 is_stmt 1 view .LVU600 287:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** ret = (USBD_StatusTypeDef)pdev->pClass->Setup(pdev, req); 1813 .loc 1 287 23 is_stmt 0 view .LVU601 1814 00dc 3046 mov r0, r6 1815 00de FFF7FEFF bl USBD_CtlSendStatus 1816 .LVL247: 288:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 1817 .loc 1 288 17 is_stmt 1 view .LVU602 288:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 1818 .loc 1 288 47 is_stmt 0 view .LVU603 1819 00e2 D6F8B832 ldr r3, [r6, #696] 288:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 1820 .loc 1 288 55 view .LVU604 1821 00e6 9B68 ldr r3, [r3, #8] 288:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 1822 .loc 1 288 43 view .LVU605 1823 00e8 2946 mov r1, r5 1824 00ea 3046 mov r0, r6 1825 00ec 9847 blx r3 1826 .LVL248: 1827 00ee 0446 mov r4, r0 1828 .LVL249: 288:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } ARM GAS /tmp/ccQ58aJU.s page 65 1829 .loc 1 288 43 view .LVU606 1830 00f0 9FE7 b .L120 1831 .LVL250: 1832 .L160: 285:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 1833 .loc 1 285 19 is_stmt 1 view .LVU607 285:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 1834 .loc 1 285 25 is_stmt 0 view .LVU608 1835 00f2 FFF7FEFF bl USBD_LL_ClearStallEP 1836 .LVL251: 285:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 1837 .loc 1 285 25 view .LVU609 1838 00f6 F1E7 b .L134 1839 .LVL252: 1840 .L156: 299:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 1841 .loc 1 299 11 is_stmt 1 discriminator 1 view .LVU610 299:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 1842 .loc 1 299 23 is_stmt 0 discriminator 1 view .LVU611 1843 00f8 90F89C22 ldrb r2, [r0, #668] @ zero_extendqisi2 1844 00fc D2B2 uxtb r2, r2 1845 00fe 022A cmp r2, #2 1846 0100 06D0 beq .L135 1847 0102 032A cmp r2, #3 1848 0104 29D0 beq .L136 353:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 1849 .loc 1 353 15 is_stmt 1 view .LVU612 1850 0106 2946 mov r1, r5 1851 0108 FFF7FEFF bl USBD_CtlError 1852 .LVL253: 354:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 1853 .loc 1 354 15 view .LVU613 218:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** ep_addr = LOBYTE(req->wIndex); 1854 .loc 1 218 22 is_stmt 0 view .LVU614 1855 010c 3C46 mov r4, r7 354:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 1856 .loc 1 354 15 view .LVU615 1857 010e 90E7 b .L120 1858 .LVL254: 1859 .L135: 302:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 1860 .loc 1 302 15 is_stmt 1 view .LVU616 302:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 1861 .loc 1 302 18 is_stmt 0 view .LVU617 1862 0110 09B1 cbz r1, .L138 302:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 1863 .loc 1 302 38 discriminator 1 view .LVU618 1864 0112 8029 cmp r1, #128 1865 0114 13D1 bne .L161 1866 .L138: 307:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** &pdev->ep_out[ep_addr & 0x7FU]; 1867 .loc 1 307 15 is_stmt 1 view .LVU619 307:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** &pdev->ep_out[ep_addr & 0x7FU]; 1868 .loc 1 307 82 is_stmt 0 view .LVU620 1869 0116 13F0800F tst r3, #128 1870 011a 15D1 bne .L162 308:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** ARM GAS /tmp/ccQ58aJU.s page 66 1871 .loc 1 308 43 discriminator 2 view .LVU621 1872 011c 01F07F01 and r1, r1, #127 307:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** &pdev->ep_out[ep_addr & 0x7FU]; 1873 .loc 1 307 82 discriminator 2 view .LVU622 1874 0120 01EB8101 add r1, r1, r1, lsl #2 1875 0124 8900 lsls r1, r1, #2 1876 0126 01F5A871 add r1, r1, #336 1877 012a 3144 add r1, r1, r6 1878 012c 0431 adds r1, r1, #4 1879 .L140: 1880 .LVL255: 310:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 1881 .loc 1 310 15 is_stmt 1 discriminator 4 view .LVU623 310:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 1882 .loc 1 310 27 is_stmt 0 discriminator 4 view .LVU624 1883 012e 0023 movs r3, #0 1884 .LVL256: 310:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 1885 .loc 1 310 27 discriminator 4 view .LVU625 1886 0130 0B60 str r3, [r1] 1887 .LVL257: 312:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 1888 .loc 1 312 15 is_stmt 1 discriminator 4 view .LVU626 312:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 1889 .loc 1 312 21 is_stmt 0 discriminator 4 view .LVU627 1890 0132 0222 movs r2, #2 1891 0134 3046 mov r0, r6 1892 .LVL258: 312:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 1893 .loc 1 312 21 discriminator 4 view .LVU628 1894 0136 FFF7FEFF bl USBD_CtlSendData 1895 .LVL259: 313:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 1896 .loc 1 313 15 is_stmt 1 discriminator 4 view .LVU629 218:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** ep_addr = LOBYTE(req->wIndex); 1897 .loc 1 218 22 is_stmt 0 discriminator 4 view .LVU630 1898 013a 3C46 mov r4, r7 313:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 1899 .loc 1 313 15 discriminator 4 view .LVU631 1900 013c 79E7 b .L120 1901 .LVL260: 1902 .L161: 304:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 1903 .loc 1 304 17 is_stmt 1 view .LVU632 1904 013e 2946 mov r1, r5 1905 0140 FFF7FEFF bl USBD_CtlError 1906 .LVL261: 305:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 1907 .loc 1 305 17 view .LVU633 218:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** ep_addr = LOBYTE(req->wIndex); 1908 .loc 1 218 22 is_stmt 0 view .LVU634 1909 0144 3C46 mov r4, r7 305:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 1910 .loc 1 305 17 view .LVU635 1911 0146 74E7 b .L120 1912 .LVL262: 1913 .L162: ARM GAS /tmp/ccQ58aJU.s page 67 307:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** &pdev->ep_out[ep_addr & 0x7FU]; 1914 .loc 1 307 73 discriminator 1 view .LVU636 1915 0148 01F07F01 and r1, r1, #127 307:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** &pdev->ep_out[ep_addr & 0x7FU]; 1916 .loc 1 307 82 discriminator 1 view .LVU637 1917 014c 01EB8101 add r1, r1, r1, lsl #2 1918 0150 8900 lsls r1, r1, #2 1919 0152 1031 adds r1, r1, #16 1920 0154 3144 add r1, r1, r6 1921 0156 0431 adds r1, r1, #4 1922 0158 E9E7 b .L140 1923 .L136: 316:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 1924 .loc 1 316 15 is_stmt 1 view .LVU638 316:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 1925 .loc 1 316 37 is_stmt 0 view .LVU639 1926 015a 5BB2 sxtb r3, r3 316:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 1927 .loc 1 316 18 view .LVU640 1928 015c 002B cmp r3, #0 1929 015e 1FDB blt .L163 326:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 1930 .loc 1 326 17 is_stmt 1 view .LVU641 326:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 1931 .loc 1 326 42 is_stmt 0 view .LVU642 1932 0160 01F00F02 and r2, r1, #15 326:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 1933 .loc 1 326 49 view .LVU643 1934 0164 02EB8202 add r2, r2, r2, lsl #2 1935 0168 00EB8202 add r2, r0, r2, lsl #2 1936 016c B2F86421 ldrh r2, [r2, #356] 326:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 1937 .loc 1 326 20 view .LVU644 1938 0170 22B3 cbz r2, .L164 1939 .L142: 333:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** &pdev->ep_out[ep_addr & 0x7FU]; 1940 .loc 1 333 15 is_stmt 1 view .LVU645 333:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** &pdev->ep_out[ep_addr & 0x7FU]; 1941 .loc 1 333 82 is_stmt 0 view .LVU646 1942 0172 002B cmp r3, #0 1943 0174 27DB blt .L165 334:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 1944 .loc 1 334 43 discriminator 2 view .LVU647 1945 0176 01F07F03 and r3, r1, #127 1946 .LVL263: 333:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** &pdev->ep_out[ep_addr & 0x7FU]; 1947 .loc 1 333 82 discriminator 2 view .LVU648 1948 017a 03EB8303 add r3, r3, r3, lsl #2 1949 017e 9C00 lsls r4, r3, #2 1950 0180 04F5A874 add r4, r4, #336 1951 0184 3444 add r4, r4, r6 1952 0186 0434 adds r4, r4, #4 1953 .L144: 1954 .LVL264: 336:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 1955 .loc 1 336 15 is_stmt 1 discriminator 4 view .LVU649 336:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { ARM GAS /tmp/ccQ58aJU.s page 68 1956 .loc 1 336 18 is_stmt 0 discriminator 4 view .LVU650 1957 0188 09B1 cbz r1, .L145 336:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 1958 .loc 1 336 38 discriminator 1 view .LVU651 1959 018a 8029 cmp r1, #128 1960 018c 24D1 bne .L146 1961 .L145: 338:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 1962 .loc 1 338 17 is_stmt 1 view .LVU652 338:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 1963 .loc 1 338 29 is_stmt 0 view .LVU653 1964 018e 0023 movs r3, #0 1965 0190 2360 str r3, [r4] 1966 .LVL265: 1967 .L147: 349:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 1968 .loc 1 349 15 is_stmt 1 view .LVU654 349:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 1969 .loc 1 349 21 is_stmt 0 view .LVU655 1970 0192 0222 movs r2, #2 1971 0194 2146 mov r1, r4 1972 0196 3046 mov r0, r6 1973 0198 FFF7FEFF bl USBD_CtlSendData 1974 .LVL266: 350:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 1975 .loc 1 350 15 is_stmt 1 view .LVU656 218:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** ep_addr = LOBYTE(req->wIndex); 1976 .loc 1 218 22 is_stmt 0 view .LVU657 1977 019c 3C46 mov r4, r7 1978 .LVL267: 350:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 1979 .loc 1 350 15 view .LVU658 1980 019e 48E7 b .L120 1981 .LVL268: 1982 .L163: 318:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 1983 .loc 1 318 17 is_stmt 1 view .LVU659 318:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 1984 .loc 1 318 41 is_stmt 0 view .LVU660 1985 01a0 01F00F02 and r2, r1, #15 318:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 1986 .loc 1 318 48 view .LVU661 1987 01a4 02EB8202 add r2, r2, r2, lsl #2 1988 01a8 00EB8202 add r2, r0, r2, lsl #2 1989 01ac 928C ldrh r2, [r2, #36] 318:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 1990 .loc 1 318 20 view .LVU662 1991 01ae 002A cmp r2, #0 1992 01b0 DFD1 bne .L142 320:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 1993 .loc 1 320 19 is_stmt 1 view .LVU663 1994 01b2 2946 mov r1, r5 1995 01b4 FFF7FEFF bl USBD_CtlError 1996 .LVL269: 321:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 1997 .loc 1 321 19 view .LVU664 218:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** ep_addr = LOBYTE(req->wIndex); ARM GAS /tmp/ccQ58aJU.s page 69 1998 .loc 1 218 22 is_stmt 0 view .LVU665 1999 01b8 3C46 mov r4, r7 321:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 2000 .loc 1 321 19 view .LVU666 2001 01ba 3AE7 b .L120 2002 .LVL270: 2003 .L164: 328:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** break; 2004 .loc 1 328 19 is_stmt 1 view .LVU667 2005 01bc 2946 mov r1, r5 2006 01be FFF7FEFF bl USBD_CtlError 2007 .LVL271: 329:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 2008 .loc 1 329 19 view .LVU668 218:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** ep_addr = LOBYTE(req->wIndex); 2009 .loc 1 218 22 is_stmt 0 view .LVU669 2010 01c2 3C46 mov r4, r7 329:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 2011 .loc 1 329 19 view .LVU670 2012 01c4 35E7 b .L120 2013 .LVL272: 2014 .L165: 333:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** &pdev->ep_out[ep_addr & 0x7FU]; 2015 .loc 1 333 73 discriminator 1 view .LVU671 2016 01c6 01F07F03 and r3, r1, #127 2017 .LVL273: 333:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** &pdev->ep_out[ep_addr & 0x7FU]; 2018 .loc 1 333 82 discriminator 1 view .LVU672 2019 01ca 03EB8303 add r3, r3, r3, lsl #2 2020 01ce 9C00 lsls r4, r3, #2 2021 01d0 1034 adds r4, r4, #16 2022 01d2 3444 add r4, r4, r6 2023 01d4 0434 adds r4, r4, #4 2024 01d6 D7E7 b .L144 2025 .LVL274: 2026 .L146: 340:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 2027 .loc 1 340 20 is_stmt 1 view .LVU673 340:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 2028 .loc 1 340 24 is_stmt 0 view .LVU674 2029 01d8 3046 mov r0, r6 2030 .LVL275: 340:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 2031 .loc 1 340 24 view .LVU675 2032 01da FFF7FEFF bl USBD_LL_IsStallEP 2033 .LVL276: 340:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 2034 .loc 1 340 23 view .LVU676 2035 01de 10B1 cbz r0, .L148 342:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 2036 .loc 1 342 17 is_stmt 1 view .LVU677 342:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 2037 .loc 1 342 29 is_stmt 0 view .LVU678 2038 01e0 0123 movs r3, #1 2039 01e2 2360 str r3, [r4] 2040 01e4 D5E7 b .L147 2041 .L148: ARM GAS /tmp/ccQ58aJU.s page 70 346:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 2042 .loc 1 346 17 is_stmt 1 view .LVU679 346:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 2043 .loc 1 346 29 is_stmt 0 view .LVU680 2044 01e6 0023 movs r3, #0 2045 01e8 2360 str r3, [r4] 2046 01ea D2E7 b .L147 2047 .cfi_endproc 2048 .LFE335: 2050 .section .text.USBD_GetString,"ax",%progbits 2051 .align 1 2052 .global USBD_GetString 2053 .syntax unified 2054 .thumb 2055 .thumb_func 2057 USBD_GetString: 2058 .LVL277: 2059 .LFB345: 886:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** uint8_t idx = 0U; 2060 .loc 1 886 1 is_stmt 1 view -0 2061 .cfi_startproc 2062 @ args = 0, pretend = 0, frame = 0 2063 @ frame_needed = 0, uses_anonymous_args = 0 887:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** uint8_t *pdesc; 2064 .loc 1 887 3 view .LVU682 888:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 2065 .loc 1 888 3 view .LVU683 890:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 2066 .loc 1 890 3 view .LVU684 890:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 2067 .loc 1 890 6 is_stmt 0 view .LVU685 2068 0000 D0B1 cbz r0, .L171 886:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** uint8_t idx = 0U; 2069 .loc 1 886 1 view .LVU686 2070 0002 70B5 push {r4, r5, r6, lr} 2071 .LCFI14: 2072 .cfi_def_cfa_offset 16 2073 .cfi_offset 4, -16 2074 .cfi_offset 5, -12 2075 .cfi_offset 6, -8 2076 .cfi_offset 14, -4 2077 0004 0D46 mov r5, r1 2078 0006 1646 mov r6, r2 2079 0008 0446 mov r4, r0 895:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** *len = ((uint16_t)USBD_GetLen(pdesc) * 2U) + 2U; 2080 .loc 1 895 3 is_stmt 1 view .LVU687 2081 .LVL278: 896:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 2082 .loc 1 896 3 view .LVU688 896:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 2083 .loc 1 896 21 is_stmt 0 view .LVU689 2084 000a FFF7FEFF bl USBD_GetLen 2085 .LVL279: 896:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 2086 .loc 1 896 46 view .LVU690 2087 000e 431C adds r3, r0, #1 896:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** ARM GAS /tmp/ccQ58aJU.s page 71 2088 .loc 1 896 8 view .LVU691 2089 0010 5B00 lsls r3, r3, #1 2090 0012 9BB2 uxth r3, r3 2091 0014 3380 strh r3, [r6] @ movhi 898:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** idx++; 2092 .loc 1 898 3 is_stmt 1 view .LVU692 898:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** idx++; 2093 .loc 1 898 16 is_stmt 0 view .LVU693 2094 0016 2B70 strb r3, [r5] 899:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** unicode[idx] = USB_DESC_TYPE_STRING; 2095 .loc 1 899 3 is_stmt 1 view .LVU694 2096 .LVL280: 900:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** idx++; 2097 .loc 1 900 3 view .LVU695 900:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** idx++; 2098 .loc 1 900 16 is_stmt 0 view .LVU696 2099 0018 0323 movs r3, #3 2100 001a 6B70 strb r3, [r5, #1] 901:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 2101 .loc 1 901 3 is_stmt 1 view .LVU697 2102 .LVL281: 903:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 2103 .loc 1 903 3 view .LVU698 901:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 2104 .loc 1 901 6 is_stmt 0 view .LVU699 2105 001c 0223 movs r3, #2 903:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 2106 .loc 1 903 9 view .LVU700 2107 001e 07E0 b .L168 2108 .LVL282: 2109 .L169: 905:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** pdesc++; 2110 .loc 1 905 5 is_stmt 1 view .LVU701 905:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** pdesc++; 2111 .loc 1 905 18 is_stmt 0 view .LVU702 2112 0020 EA54 strb r2, [r5, r3] 906:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** idx++; 2113 .loc 1 906 5 is_stmt 1 view .LVU703 906:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** idx++; 2114 .loc 1 906 10 is_stmt 0 view .LVU704 2115 0022 0134 adds r4, r4, #1 2116 .LVL283: 907:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 2117 .loc 1 907 5 is_stmt 1 view .LVU705 907:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 2118 .loc 1 907 8 is_stmt 0 view .LVU706 2119 0024 5A1C adds r2, r3, #1 2120 0026 D2B2 uxtb r2, r2 2121 .LVL284: 909:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** idx++; 2122 .loc 1 909 5 is_stmt 1 view .LVU707 909:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** idx++; 2123 .loc 1 909 18 is_stmt 0 view .LVU708 2124 0028 0021 movs r1, #0 2125 002a A954 strb r1, [r5, r2] 910:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 2126 .loc 1 910 5 is_stmt 1 view .LVU709 ARM GAS /tmp/ccQ58aJU.s page 72 910:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** } 2127 .loc 1 910 8 is_stmt 0 view .LVU710 2128 002c 0233 adds r3, r3, #2 2129 002e DBB2 uxtb r3, r3 2130 .LVL285: 2131 .L168: 903:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 2132 .loc 1 903 17 is_stmt 1 view .LVU711 903:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 2133 .loc 1 903 10 is_stmt 0 view .LVU712 2134 0030 2278 ldrb r2, [r4] @ zero_extendqisi2 903:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** { 2135 .loc 1 903 17 view .LVU713 2136 0032 002A cmp r2, #0 2137 0034 F4D1 bne .L169 912:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 2138 .loc 1 912 1 view .LVU714 2139 0036 70BD pop {r4, r5, r6, pc} 2140 .LVL286: 2141 .L171: 2142 .LCFI15: 2143 .cfi_def_cfa_offset 0 2144 .cfi_restore 4 2145 .cfi_restore 5 2146 .cfi_restore 6 2147 .cfi_restore 14 912:Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ctlreq.c **** 2148 .loc 1 912 1 view .LVU715 2149 0038 7047 bx lr 2150 .cfi_endproc 2151 .LFE345: 2153 .section .bss.cfgidx.0,"aw",%nobits 2156 cfgidx.0: 2157 0000 00 .space 1 2158 .text 2159 .Letext0: 2160 .file 3 "/usr/include/newlib/machine/_default_types.h" 2161 .file 4 "/usr/include/newlib/sys/_stdint.h" 2162 .file 5 "Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_core.h" 2163 .file 6 "Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_ioreq.h" ARM GAS /tmp/ccQ58aJU.s page 73 DEFINED SYMBOLS *ABS*:00000000 usbd_ctlreq.c /tmp/ccQ58aJU.s:21 .text.USBD_GetLen:00000000 $t /tmp/ccQ58aJU.s:26 .text.USBD_GetLen:00000000 USBD_GetLen /tmp/ccQ58aJU.s:72 .text.USBD_SetFeature:00000000 $t /tmp/ccQ58aJU.s:77 .text.USBD_SetFeature:00000000 USBD_SetFeature /tmp/ccQ58aJU.s:115 .text.USBD_ParseSetupRequest:00000000 $t /tmp/ccQ58aJU.s:121 .text.USBD_ParseSetupRequest:00000000 USBD_ParseSetupRequest /tmp/ccQ58aJU.s:236 .text.USBD_CtlError:00000000 $t /tmp/ccQ58aJU.s:242 .text.USBD_CtlError:00000000 USBD_CtlError /tmp/ccQ58aJU.s:277 .text.USBD_GetDescriptor:00000000 $t /tmp/ccQ58aJU.s:282 .text.USBD_GetDescriptor:00000000 USBD_GetDescriptor /tmp/ccQ58aJU.s:320 .text.USBD_GetDescriptor:0000001e $d /tmp/ccQ58aJU.s:469 .text.USBD_GetDescriptor:000000b0 $d /tmp/ccQ58aJU.s:475 .text.USBD_GetDescriptor:000000b6 $t /tmp/ccQ58aJU.s:750 .text.USBD_SetAddress:00000000 $t /tmp/ccQ58aJU.s:755 .text.USBD_SetAddress:00000000 USBD_SetAddress /tmp/ccQ58aJU.s:849 .text.USBD_SetConfig:00000000 $t /tmp/ccQ58aJU.s:854 .text.USBD_SetConfig:00000000 USBD_SetConfig /tmp/ccQ58aJU.s:1063 .text.USBD_SetConfig:000000c4 $d /tmp/ccQ58aJU.s:2156 .bss.cfgidx.0:00000000 cfgidx.0 /tmp/ccQ58aJU.s:1068 .text.USBD_GetConfig:00000000 $t /tmp/ccQ58aJU.s:1073 .text.USBD_GetConfig:00000000 USBD_GetConfig /tmp/ccQ58aJU.s:1151 .text.USBD_GetStatus:00000000 $t /tmp/ccQ58aJU.s:1156 .text.USBD_GetStatus:00000000 USBD_GetStatus /tmp/ccQ58aJU.s:1227 .text.USBD_ClrFeature:00000000 $t /tmp/ccQ58aJU.s:1232 .text.USBD_ClrFeature:00000000 USBD_ClrFeature /tmp/ccQ58aJU.s:1286 .text.USBD_StdDevReq:00000000 $t /tmp/ccQ58aJU.s:1292 .text.USBD_StdDevReq:00000000 USBD_StdDevReq /tmp/ccQ58aJU.s:1355 .text.USBD_StdDevReq:00000032 $d /tmp/ccQ58aJU.s:1365 .text.USBD_StdDevReq:0000003c $t /tmp/ccQ58aJU.s:1432 .text.USBD_StdItfReq:00000000 $t /tmp/ccQ58aJU.s:1438 .text.USBD_StdItfReq:00000000 USBD_StdItfReq /tmp/ccQ58aJU.s:1560 .text.USBD_StdEPReq:00000000 $t /tmp/ccQ58aJU.s:1566 .text.USBD_StdEPReq:00000000 USBD_StdEPReq /tmp/ccQ58aJU.s:2051 .text.USBD_GetString:00000000 $t /tmp/ccQ58aJU.s:2057 .text.USBD_GetString:00000000 USBD_GetString /tmp/ccQ58aJU.s:2157 .bss.cfgidx.0:00000000 $d /tmp/ccQ58aJU.s:335 .text.USBD_GetDescriptor:0000002d $d /tmp/ccQ58aJU.s:335 .text.USBD_GetDescriptor:0000002e $t UNDEFINED SYMBOLS USBD_CtlSendStatus USBD_LL_StallEP USBD_CtlSendData USBD_LL_SetUSBAddress USBD_ClrClassConfig USBD_SetClassConfig USBD_LL_ClearStallEP USBD_LL_IsStallEP