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