From 6ab94e0b318884bbcb95e2ea3835f951502e1d99 Mon Sep 17 00:00:00 2001 From: jaseg Date: Wed, 14 Oct 2020 12:47:28 +0200 Subject: Move firmware into subdirectory --- fw/midi-dials/build/usbd_conf.lst | 2429 +++++++++++++++++++++++++++++++++++++ 1 file changed, 2429 insertions(+) create mode 100644 fw/midi-dials/build/usbd_conf.lst (limited to 'fw/midi-dials/build/usbd_conf.lst') diff --git a/fw/midi-dials/build/usbd_conf.lst b/fw/midi-dials/build/usbd_conf.lst new file mode 100644 index 0000000..1d03ddb --- /dev/null +++ b/fw/midi-dials/build/usbd_conf.lst @@ -0,0 +1,2429 @@ +ARM GAS /tmp/ccvOfDqw.s page 1 + + + 1 .cpu cortex-m0 + 2 .eabi_attribute 20, 1 + 3 .eabi_attribute 21, 1 + 4 .eabi_attribute 23, 3 + 5 .eabi_attribute 24, 1 + 6 .eabi_attribute 25, 1 + 7 .eabi_attribute 26, 1 + 8 .eabi_attribute 30, 1 + 9 .eabi_attribute 34, 0 + 10 .eabi_attribute 18, 4 + 11 .file "usbd_conf.c" + 12 .text + 13 .Ltext0: + 14 .cfi_sections .debug_frame + 15 .section .text.HAL_PCD_MspInit,"ax",%progbits + 16 .align 1 + 17 .global HAL_PCD_MspInit + 18 .syntax unified + 19 .code 16 + 20 .thumb_func + 21 .fpu softvfp + 23 HAL_PCD_MspInit: + 24 .LFB43: + 25 .file 1 "Src/usbd_conf.c" + 1:Src/usbd_conf.c **** /** + 2:Src/usbd_conf.c **** ****************************************************************************** + 3:Src/usbd_conf.c **** * @file : usbd_conf.c + 4:Src/usbd_conf.c **** * @version : v2.0_Cube + 5:Src/usbd_conf.c **** * @brief : This file implements the board support package for the USB device library + 6:Src/usbd_conf.c **** ****************************************************************************** + 7:Src/usbd_conf.c **** * This notice applies to any and all portions of this file + 8:Src/usbd_conf.c **** * that are not between comment pairs USER CODE BEGIN and + 9:Src/usbd_conf.c **** * USER CODE END. Other portions of this file, whether + 10:Src/usbd_conf.c **** * inserted by the user or by software development tools + 11:Src/usbd_conf.c **** * are owned by their respective copyright owners. + 12:Src/usbd_conf.c **** * + 13:Src/usbd_conf.c **** * Copyright (c) 2018 STMicroelectronics International N.V. + 14:Src/usbd_conf.c **** * All rights reserved. + 15:Src/usbd_conf.c **** * + 16:Src/usbd_conf.c **** * Redistribution and use in source and binary forms, with or without + 17:Src/usbd_conf.c **** * modification, are permitted, provided that the following conditions are met: + 18:Src/usbd_conf.c **** * + 19:Src/usbd_conf.c **** * 1. Redistribution of source code must retain the above copyright notice, + 20:Src/usbd_conf.c **** * this list of conditions and the following disclaimer. + 21:Src/usbd_conf.c **** * 2. Redistributions in binary form must reproduce the above copyright notice, + 22:Src/usbd_conf.c **** * this list of conditions and the following disclaimer in the documentation + 23:Src/usbd_conf.c **** * and/or other materials provided with the distribution. + 24:Src/usbd_conf.c **** * 3. Neither the name of STMicroelectronics nor the names of other + 25:Src/usbd_conf.c **** * contributors to this software may be used to endorse or promote products + 26:Src/usbd_conf.c **** * derived from this software without specific written permission. + 27:Src/usbd_conf.c **** * 4. This software, including modifications and/or derivative works of this + 28:Src/usbd_conf.c **** * software, must execute solely and exclusively on microcontroller or + 29:Src/usbd_conf.c **** * microprocessor devices manufactured by or for STMicroelectronics. + 30:Src/usbd_conf.c **** * 5. Redistribution and use of this software other than as permitted under + 31:Src/usbd_conf.c **** * this license is void and will automatically terminate your rights under + 32:Src/usbd_conf.c **** * this license. + 33:Src/usbd_conf.c **** * + ARM GAS /tmp/ccvOfDqw.s page 2 + + + 34:Src/usbd_conf.c **** * THIS SOFTWARE IS PROVIDED BY STMICROELECTRONICS AND CONTRIBUTORS "AS IS" + 35:Src/usbd_conf.c **** * AND ANY EXPRESS, IMPLIED OR STATUTORY WARRANTIES, INCLUDING, BUT NOT + 36:Src/usbd_conf.c **** * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A + 37:Src/usbd_conf.c **** * PARTICULAR PURPOSE AND NON-INFRINGEMENT OF THIRD PARTY INTELLECTUAL PROPERTY + 38:Src/usbd_conf.c **** * RIGHTS ARE DISCLAIMED TO THE FULLEST EXTENT PERMITTED BY LAW. IN NO EVENT + 39:Src/usbd_conf.c **** * SHALL STMICROELECTRONICS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + 40:Src/usbd_conf.c **** * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + 41:Src/usbd_conf.c **** * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, + 42:Src/usbd_conf.c **** * OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + 43:Src/usbd_conf.c **** * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + 44:Src/usbd_conf.c **** * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, + 45:Src/usbd_conf.c **** * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + 46:Src/usbd_conf.c **** * + 47:Src/usbd_conf.c **** ****************************************************************************** + 48:Src/usbd_conf.c **** */ + 49:Src/usbd_conf.c **** + 50:Src/usbd_conf.c **** /* Includes ------------------------------------------------------------------*/ + 51:Src/usbd_conf.c **** #include "stm32f0xx.h" + 52:Src/usbd_conf.c **** #include "stm32f0xx_hal.h" + 53:Src/usbd_conf.c **** #include "usbd_def.h" + 54:Src/usbd_conf.c **** #include "usbd_core.h" + 55:Src/usbd_conf.c **** + 56:Src/usbd_conf.c **** /* USER CODE BEGIN Includes */ + 57:Src/usbd_conf.c **** + 58:Src/usbd_conf.c **** /* USER CODE END Includes */ + 59:Src/usbd_conf.c **** + 60:Src/usbd_conf.c **** /* Private typedef -----------------------------------------------------------*/ + 61:Src/usbd_conf.c **** /* Private define ------------------------------------------------------------*/ + 62:Src/usbd_conf.c **** /* Private macro -------------------------------------------------------------*/ + 63:Src/usbd_conf.c **** + 64:Src/usbd_conf.c **** /* USER CODE BEGIN PV */ + 65:Src/usbd_conf.c **** /* Private variables ---------------------------------------------------------*/ + 66:Src/usbd_conf.c **** + 67:Src/usbd_conf.c **** /* USER CODE END PV */ + 68:Src/usbd_conf.c **** + 69:Src/usbd_conf.c **** PCD_HandleTypeDef hpcd_USB_FS; + 70:Src/usbd_conf.c **** //void _Error_Handler(char * file, int line); + 71:Src/usbd_conf.c **** + 72:Src/usbd_conf.c **** /* USER CODE BEGIN 0 */ + 73:Src/usbd_conf.c **** + 74:Src/usbd_conf.c **** /* USER CODE END 0 */ + 75:Src/usbd_conf.c **** + 76:Src/usbd_conf.c **** /* USER CODE BEGIN PFP */ + 77:Src/usbd_conf.c **** /* Private function prototypes -----------------------------------------------*/ + 78:Src/usbd_conf.c **** + 79:Src/usbd_conf.c **** /* USER CODE END PFP */ + 80:Src/usbd_conf.c **** + 81:Src/usbd_conf.c **** /* Private functions ---------------------------------------------------------*/ + 82:Src/usbd_conf.c **** + 83:Src/usbd_conf.c **** /* USER CODE BEGIN 1 */ + 84:Src/usbd_conf.c **** + 85:Src/usbd_conf.c **** /* USER CODE END 1 */ + 86:Src/usbd_conf.c **** void HAL_PCDEx_SetConnectionState(PCD_HandleTypeDef *hpcd, uint8_t state); + 87:Src/usbd_conf.c **** //extern void SystemClock_Config(void); + 88:Src/usbd_conf.c **** + 89:Src/usbd_conf.c **** /******************************************************************************* + 90:Src/usbd_conf.c **** LL Driver Callbacks (PCD -> USB Device Library) + ARM GAS /tmp/ccvOfDqw.s page 3 + + + 91:Src/usbd_conf.c **** *******************************************************************************/ + 92:Src/usbd_conf.c **** /* MSP Init */ + 93:Src/usbd_conf.c **** + 94:Src/usbd_conf.c **** void HAL_PCD_MspInit(PCD_HandleTypeDef* pcdHandle) + 95:Src/usbd_conf.c **** { + 26 .loc 1 95 0 + 27 .cfi_startproc + 28 @ args = 0, pretend = 0, frame = 8 + 29 @ frame_needed = 0, uses_anonymous_args = 0 + 30 .LVL0: + 31 0000 00B5 push {lr} + 32 .LCFI0: + 33 .cfi_def_cfa_offset 4 + 34 .cfi_offset 14, -4 + 35 0002 83B0 sub sp, sp, #12 + 36 .LCFI1: + 37 .cfi_def_cfa_offset 16 + 96:Src/usbd_conf.c **** if(pcdHandle->Instance==USB) + 38 .loc 1 96 0 + 39 0004 0268 ldr r2, [r0] + 40 0006 0C4B ldr r3, .L4 + 41 0008 9A42 cmp r2, r3 + 42 000a 01D0 beq .L3 + 43 .LVL1: + 44 .L1: + 97:Src/usbd_conf.c **** { + 98:Src/usbd_conf.c **** /* USER CODE BEGIN USB_MspInit 0 */ + 99:Src/usbd_conf.c **** + 100:Src/usbd_conf.c **** /* USER CODE END USB_MspInit 0 */ + 101:Src/usbd_conf.c **** /* Peripheral clock enable */ + 102:Src/usbd_conf.c **** __HAL_RCC_USB_CLK_ENABLE(); + 103:Src/usbd_conf.c **** + 104:Src/usbd_conf.c **** /* Peripheral interrupt init */ + 105:Src/usbd_conf.c **** HAL_NVIC_SetPriority(USB_IRQn, 1, 0); + 106:Src/usbd_conf.c **** HAL_NVIC_EnableIRQ(USB_IRQn); + 107:Src/usbd_conf.c **** /* USER CODE BEGIN USB_MspInit 1 */ + 108:Src/usbd_conf.c **** + 109:Src/usbd_conf.c **** /* USER CODE END USB_MspInit 1 */ + 110:Src/usbd_conf.c **** } + 111:Src/usbd_conf.c **** } + 45 .loc 1 111 0 + 46 000c 03B0 add sp, sp, #12 + 47 @ sp needed + 48 000e 00BD pop {pc} + 49 .LVL2: + 50 .L3: + 51 .LBB2: + 102:Src/usbd_conf.c **** + 52 .loc 1 102 0 + 53 0010 0A4A ldr r2, .L4+4 + 54 0012 D169 ldr r1, [r2, #28] + 55 0014 8020 movs r0, #128 + 56 .LVL3: + 57 0016 0004 lsls r0, r0, #16 + 58 0018 0143 orrs r1, r0 + 59 001a D161 str r1, [r2, #28] + 60 001c D369 ldr r3, [r2, #28] + ARM GAS /tmp/ccvOfDqw.s page 4 + + + 61 001e 0340 ands r3, r0 + 62 0020 0193 str r3, [sp, #4] + 63 0022 019B ldr r3, [sp, #4] + 64 .LBE2: + 105:Src/usbd_conf.c **** HAL_NVIC_EnableIRQ(USB_IRQn); + 65 .loc 1 105 0 + 66 0024 0022 movs r2, #0 + 67 0026 0121 movs r1, #1 + 68 0028 1F20 movs r0, #31 + 69 002a FFF7FEFF bl HAL_NVIC_SetPriority + 70 .LVL4: + 106:Src/usbd_conf.c **** /* USER CODE BEGIN USB_MspInit 1 */ + 71 .loc 1 106 0 + 72 002e 1F20 movs r0, #31 + 73 0030 FFF7FEFF bl HAL_NVIC_EnableIRQ + 74 .LVL5: + 75 .loc 1 111 0 + 76 0034 EAE7 b .L1 + 77 .L5: + 78 0036 C046 .align 2 + 79 .L4: + 80 0038 005C0040 .word 1073765376 + 81 003c 00100240 .word 1073876992 + 82 .cfi_endproc + 83 .LFE43: + 85 .section .text.HAL_PCD_MspDeInit,"ax",%progbits + 86 .align 1 + 87 .global HAL_PCD_MspDeInit + 88 .syntax unified + 89 .code 16 + 90 .thumb_func + 91 .fpu softvfp + 93 HAL_PCD_MspDeInit: + 94 .LFB44: + 112:Src/usbd_conf.c **** + 113:Src/usbd_conf.c **** void HAL_PCD_MspDeInit(PCD_HandleTypeDef* pcdHandle) + 114:Src/usbd_conf.c **** { + 95 .loc 1 114 0 + 96 .cfi_startproc + 97 @ args = 0, pretend = 0, frame = 0 + 98 @ frame_needed = 0, uses_anonymous_args = 0 + 99 .LVL6: + 100 0000 10B5 push {r4, lr} + 101 .LCFI2: + 102 .cfi_def_cfa_offset 8 + 103 .cfi_offset 4, -8 + 104 .cfi_offset 14, -4 + 115:Src/usbd_conf.c **** if(pcdHandle->Instance==USB) + 105 .loc 1 115 0 + 106 0002 0268 ldr r2, [r0] + 107 0004 064B ldr r3, .L9 + 108 0006 9A42 cmp r2, r3 + 109 0008 00D0 beq .L8 + 110 .LVL7: + 111 .L6: + 116:Src/usbd_conf.c **** { + 117:Src/usbd_conf.c **** /* USER CODE BEGIN USB_MspDeInit 0 */ + ARM GAS /tmp/ccvOfDqw.s page 5 + + + 118:Src/usbd_conf.c **** + 119:Src/usbd_conf.c **** /* USER CODE END USB_MspDeInit 0 */ + 120:Src/usbd_conf.c **** /* Peripheral clock disable */ + 121:Src/usbd_conf.c **** __HAL_RCC_USB_CLK_DISABLE(); + 122:Src/usbd_conf.c **** + 123:Src/usbd_conf.c **** /* Peripheral interrupt Deinit*/ + 124:Src/usbd_conf.c **** HAL_NVIC_DisableIRQ(USB_IRQn); + 125:Src/usbd_conf.c **** + 126:Src/usbd_conf.c **** /* USER CODE BEGIN USB_MspDeInit 1 */ + 127:Src/usbd_conf.c **** + 128:Src/usbd_conf.c **** /* USER CODE END USB_MspDeInit 1 */ + 129:Src/usbd_conf.c **** } + 130:Src/usbd_conf.c **** } + 112 .loc 1 130 0 + 113 @ sp needed + 114 000a 10BD pop {r4, pc} + 115 .LVL8: + 116 .L8: + 121:Src/usbd_conf.c **** + 117 .loc 1 121 0 + 118 000c 054A ldr r2, .L9+4 + 119 000e D369 ldr r3, [r2, #28] + 120 0010 0549 ldr r1, .L9+8 + 121 0012 0B40 ands r3, r1 + 122 0014 D361 str r3, [r2, #28] + 124:Src/usbd_conf.c **** + 123 .loc 1 124 0 + 124 0016 1F20 movs r0, #31 + 125 .LVL9: + 126 0018 FFF7FEFF bl HAL_NVIC_DisableIRQ + 127 .LVL10: + 128 .loc 1 130 0 + 129 001c F5E7 b .L6 + 130 .L10: + 131 001e C046 .align 2 + 132 .L9: + 133 0020 005C0040 .word 1073765376 + 134 0024 00100240 .word 1073876992 + 135 0028 FFFF7FFF .word -8388609 + 136 .cfi_endproc + 137 .LFE44: + 139 .section .text.HAL_PCD_SetupStageCallback,"ax",%progbits + 140 .align 1 + 141 .global HAL_PCD_SetupStageCallback + 142 .syntax unified + 143 .code 16 + 144 .thumb_func + 145 .fpu softvfp + 147 HAL_PCD_SetupStageCallback: + 148 .LFB45: + 131:Src/usbd_conf.c **** + 132:Src/usbd_conf.c **** /** + 133:Src/usbd_conf.c **** * @brief Setup stage callback + 134:Src/usbd_conf.c **** * @param hpcd: PCD handle + 135:Src/usbd_conf.c **** * @retval None + 136:Src/usbd_conf.c **** */ + 137:Src/usbd_conf.c **** void HAL_PCD_SetupStageCallback(PCD_HandleTypeDef *hpcd) + ARM GAS /tmp/ccvOfDqw.s page 6 + + + 138:Src/usbd_conf.c **** { + 149 .loc 1 138 0 + 150 .cfi_startproc + 151 @ args = 0, pretend = 0, frame = 0 + 152 @ frame_needed = 0, uses_anonymous_args = 0 + 153 .LVL11: + 154 0000 10B5 push {r4, lr} + 155 .LCFI3: + 156 .cfi_def_cfa_offset 8 + 157 .cfi_offset 4, -8 + 158 .cfi_offset 14, -4 + 159 0002 0100 movs r1, r0 + 139:Src/usbd_conf.c **** USBD_LL_SetupStage((USBD_HandleTypeDef*)hpcd->pData, (uint8_t *)hpcd->Setup); + 160 .loc 1 139 0 + 161 0004 9C23 movs r3, #156 + 162 0006 9B00 lsls r3, r3, #2 + 163 0008 C058 ldr r0, [r0, r3] + 164 .LVL12: + 165 000a 403B subs r3, r3, #64 + 166 000c 9C46 mov ip, r3 + 167 000e 6144 add r1, r1, ip + 168 .LVL13: + 169 0010 FFF7FEFF bl USBD_LL_SetupStage + 170 .LVL14: + 140:Src/usbd_conf.c **** } + 171 .loc 1 140 0 + 172 @ sp needed + 173 0014 10BD pop {r4, pc} + 174 .cfi_endproc + 175 .LFE45: + 177 .section .text.HAL_PCD_DataOutStageCallback,"ax",%progbits + 178 .align 1 + 179 .global HAL_PCD_DataOutStageCallback + 180 .syntax unified + 181 .code 16 + 182 .thumb_func + 183 .fpu softvfp + 185 HAL_PCD_DataOutStageCallback: + 186 .LFB46: + 141:Src/usbd_conf.c **** + 142:Src/usbd_conf.c **** /** + 143:Src/usbd_conf.c **** * @brief Data Out stage callback. + 144:Src/usbd_conf.c **** * @param hpcd: PCD handle + 145:Src/usbd_conf.c **** * @param epnum: Endpoint number + 146:Src/usbd_conf.c **** * @retval None + 147:Src/usbd_conf.c **** */ + 148:Src/usbd_conf.c **** void HAL_PCD_DataOutStageCallback(PCD_HandleTypeDef *hpcd, uint8_t epnum) + 149:Src/usbd_conf.c **** { + 187 .loc 1 149 0 + 188 .cfi_startproc + 189 @ args = 0, pretend = 0, frame = 0 + 190 @ frame_needed = 0, uses_anonymous_args = 0 + 191 .LVL15: + 192 0000 10B5 push {r4, lr} + 193 .LCFI4: + 194 .cfi_def_cfa_offset 8 + 195 .cfi_offset 4, -8 + ARM GAS /tmp/ccvOfDqw.s page 7 + + + 196 .cfi_offset 14, -4 + 197 0002 0300 movs r3, r0 + 150:Src/usbd_conf.c **** USBD_LL_DataOutStage((USBD_HandleTypeDef*)hpcd->pData, epnum, hpcd->OUT_ep[epnum].xfer_buff); + 198 .loc 1 150 0 + 199 0004 9C22 movs r2, #156 + 200 0006 9200 lsls r2, r2, #2 + 201 0008 8058 ldr r0, [r0, r2] + 202 .LVL16: + 203 000a 4A01 lsls r2, r1, #5 + 204 000c 9B18 adds r3, r3, r2 + 205 .LVL17: + 206 000e 3D33 adds r3, r3, #61 + 207 0010 FF33 adds r3, r3, #255 + 208 0012 1A68 ldr r2, [r3] + 209 0014 FFF7FEFF bl USBD_LL_DataOutStage + 210 .LVL18: + 151:Src/usbd_conf.c **** } + 211 .loc 1 151 0 + 212 @ sp needed + 213 0018 10BD pop {r4, pc} + 214 .cfi_endproc + 215 .LFE46: + 217 .section .text.HAL_PCD_DataInStageCallback,"ax",%progbits + 218 .align 1 + 219 .global HAL_PCD_DataInStageCallback + 220 .syntax unified + 221 .code 16 + 222 .thumb_func + 223 .fpu softvfp + 225 HAL_PCD_DataInStageCallback: + 226 .LFB47: + 152:Src/usbd_conf.c **** + 153:Src/usbd_conf.c **** /** + 154:Src/usbd_conf.c **** * @brief Data In stage callback. + 155:Src/usbd_conf.c **** * @param hpcd: PCD handle + 156:Src/usbd_conf.c **** * @param epnum: Endpoint number + 157:Src/usbd_conf.c **** * @retval None + 158:Src/usbd_conf.c **** */ + 159:Src/usbd_conf.c **** void HAL_PCD_DataInStageCallback(PCD_HandleTypeDef *hpcd, uint8_t epnum) + 160:Src/usbd_conf.c **** { + 227 .loc 1 160 0 + 228 .cfi_startproc + 229 @ args = 0, pretend = 0, frame = 0 + 230 @ frame_needed = 0, uses_anonymous_args = 0 + 231 .LVL19: + 232 0000 10B5 push {r4, lr} + 233 .LCFI5: + 234 .cfi_def_cfa_offset 8 + 235 .cfi_offset 4, -8 + 236 .cfi_offset 14, -4 + 237 0002 0300 movs r3, r0 + 161:Src/usbd_conf.c **** USBD_LL_DataInStage((USBD_HandleTypeDef*)hpcd->pData, epnum, hpcd->IN_ep[epnum].xfer_buff); + 238 .loc 1 161 0 + 239 0004 9C22 movs r2, #156 + 240 0006 9200 lsls r2, r2, #2 + 241 0008 8058 ldr r0, [r0, r2] + 242 .LVL20: + ARM GAS /tmp/ccvOfDqw.s page 8 + + + 243 000a 4A01 lsls r2, r1, #5 + 244 000c 9B18 adds r3, r3, r2 + 245 .LVL21: + 246 000e DA6B ldr r2, [r3, #60] + 247 0010 FFF7FEFF bl USBD_LL_DataInStage + 248 .LVL22: + 162:Src/usbd_conf.c **** } + 249 .loc 1 162 0 + 250 @ sp needed + 251 0014 10BD pop {r4, pc} + 252 .cfi_endproc + 253 .LFE47: + 255 .section .text.HAL_PCD_SOFCallback,"ax",%progbits + 256 .align 1 + 257 .global HAL_PCD_SOFCallback + 258 .syntax unified + 259 .code 16 + 260 .thumb_func + 261 .fpu softvfp + 263 HAL_PCD_SOFCallback: + 264 .LFB48: + 163:Src/usbd_conf.c **** + 164:Src/usbd_conf.c **** /** + 165:Src/usbd_conf.c **** * @brief SOF callback. + 166:Src/usbd_conf.c **** * @param hpcd: PCD handle + 167:Src/usbd_conf.c **** * @retval None + 168:Src/usbd_conf.c **** */ + 169:Src/usbd_conf.c **** void HAL_PCD_SOFCallback(PCD_HandleTypeDef *hpcd) + 170:Src/usbd_conf.c **** { + 265 .loc 1 170 0 + 266 .cfi_startproc + 267 @ args = 0, pretend = 0, frame = 0 + 268 @ frame_needed = 0, uses_anonymous_args = 0 + 269 .LVL23: + 270 0000 10B5 push {r4, lr} + 271 .LCFI6: + 272 .cfi_def_cfa_offset 8 + 273 .cfi_offset 4, -8 + 274 .cfi_offset 14, -4 + 171:Src/usbd_conf.c **** USBD_LL_SOF((USBD_HandleTypeDef*)hpcd->pData); + 275 .loc 1 171 0 + 276 0002 9C23 movs r3, #156 + 277 0004 9B00 lsls r3, r3, #2 + 278 0006 C058 ldr r0, [r0, r3] + 279 .LVL24: + 280 0008 FFF7FEFF bl USBD_LL_SOF + 281 .LVL25: + 172:Src/usbd_conf.c **** } + 282 .loc 1 172 0 + 283 @ sp needed + 284 000c 10BD pop {r4, pc} + 285 .cfi_endproc + 286 .LFE48: + 288 .section .text.HAL_PCD_ResetCallback,"ax",%progbits + 289 .align 1 + 290 .global HAL_PCD_ResetCallback + 291 .syntax unified + ARM GAS /tmp/ccvOfDqw.s page 9 + + + 292 .code 16 + 293 .thumb_func + 294 .fpu softvfp + 296 HAL_PCD_ResetCallback: + 297 .LFB49: + 173:Src/usbd_conf.c **** + 174:Src/usbd_conf.c **** /** + 175:Src/usbd_conf.c **** * @brief Reset callback. + 176:Src/usbd_conf.c **** * @param hpcd: PCD handle + 177:Src/usbd_conf.c **** * @retval None + 178:Src/usbd_conf.c **** */ + 179:Src/usbd_conf.c **** void HAL_PCD_ResetCallback(PCD_HandleTypeDef *hpcd) + 180:Src/usbd_conf.c **** { + 298 .loc 1 180 0 + 299 .cfi_startproc + 300 @ args = 0, pretend = 0, frame = 0 + 301 @ frame_needed = 0, uses_anonymous_args = 0 + 302 .LVL26: + 303 0000 70B5 push {r4, r5, r6, lr} + 304 .LCFI7: + 305 .cfi_def_cfa_offset 16 + 306 .cfi_offset 4, -16 + 307 .cfi_offset 5, -12 + 308 .cfi_offset 6, -8 + 309 .cfi_offset 14, -4 + 310 0002 0500 movs r5, r0 + 311 .LVL27: + 181:Src/usbd_conf.c **** USBD_SpeedTypeDef speed = USBD_SPEED_FULL; + 182:Src/usbd_conf.c **** + 183:Src/usbd_conf.c **** /* Set USB current speed. */ + 184:Src/usbd_conf.c **** switch (hpcd->Init.speed) + 185:Src/usbd_conf.c **** { + 186:Src/usbd_conf.c **** case PCD_SPEED_FULL: + 187:Src/usbd_conf.c **** speed = USBD_SPEED_FULL; + 188:Src/usbd_conf.c **** break; + 189:Src/usbd_conf.c **** + 190:Src/usbd_conf.c **** default: + 191:Src/usbd_conf.c **** speed = USBD_SPEED_FULL; + 192:Src/usbd_conf.c **** break; + 193:Src/usbd_conf.c **** } + 194:Src/usbd_conf.c **** USBD_LL_SetSpeed((USBD_HandleTypeDef*)hpcd->pData, speed); + 312 .loc 1 194 0 + 313 0004 9C24 movs r4, #156 + 314 0006 A400 lsls r4, r4, #2 + 315 0008 0121 movs r1, #1 + 316 000a 0059 ldr r0, [r0, r4] + 317 .LVL28: + 318 000c FFF7FEFF bl USBD_LL_SetSpeed + 319 .LVL29: + 195:Src/usbd_conf.c **** + 196:Src/usbd_conf.c **** /* Reset Device. */ + 197:Src/usbd_conf.c **** USBD_LL_Reset((USBD_HandleTypeDef*)hpcd->pData); + 320 .loc 1 197 0 + 321 0010 2859 ldr r0, [r5, r4] + 322 0012 FFF7FEFF bl USBD_LL_Reset + 323 .LVL30: + 198:Src/usbd_conf.c **** } + ARM GAS /tmp/ccvOfDqw.s page 10 + + + 324 .loc 1 198 0 + 325 @ sp needed + 326 .LVL31: + 327 0016 70BD pop {r4, r5, r6, pc} + 328 .cfi_endproc + 329 .LFE49: + 331 .section .text.HAL_PCD_SuspendCallback,"ax",%progbits + 332 .align 1 + 333 .global HAL_PCD_SuspendCallback + 334 .syntax unified + 335 .code 16 + 336 .thumb_func + 337 .fpu softvfp + 339 HAL_PCD_SuspendCallback: + 340 .LFB50: + 199:Src/usbd_conf.c **** + 200:Src/usbd_conf.c **** /** + 201:Src/usbd_conf.c **** * @brief Suspend callback. + 202:Src/usbd_conf.c **** * When Low power mode is enabled the debug cannot be used (IAR, Keil doesn't support it) + 203:Src/usbd_conf.c **** * @param hpcd: PCD handle + 204:Src/usbd_conf.c **** * @retval None + 205:Src/usbd_conf.c **** */ + 206:Src/usbd_conf.c **** void HAL_PCD_SuspendCallback(PCD_HandleTypeDef *hpcd) + 207:Src/usbd_conf.c **** { + 341 .loc 1 207 0 + 342 .cfi_startproc + 343 @ args = 0, pretend = 0, frame = 0 + 344 @ frame_needed = 0, uses_anonymous_args = 0 + 345 .LVL32: + 346 0000 10B5 push {r4, lr} + 347 .LCFI8: + 348 .cfi_def_cfa_offset 8 + 349 .cfi_offset 4, -8 + 350 .cfi_offset 14, -4 + 351 0002 0400 movs r4, r0 + 208:Src/usbd_conf.c **** /* Inform USB library that core enters in suspend Mode. */ + 209:Src/usbd_conf.c **** USBD_LL_Suspend((USBD_HandleTypeDef*)hpcd->pData); + 352 .loc 1 209 0 + 353 0004 9C23 movs r3, #156 + 354 0006 9B00 lsls r3, r3, #2 + 355 0008 C058 ldr r0, [r0, r3] + 356 .LVL33: + 357 000a FFF7FEFF bl USBD_LL_Suspend + 358 .LVL34: + 210:Src/usbd_conf.c **** /* Enter in STOP mode. */ + 211:Src/usbd_conf.c **** /* USER CODE BEGIN 2 */ + 212:Src/usbd_conf.c **** if (hpcd->Init.low_power_enable) + 359 .loc 1 212 0 + 360 000e A369 ldr r3, [r4, #24] + 361 0010 002B cmp r3, #0 + 362 0012 04D0 beq .L16 + 213:Src/usbd_conf.c **** { + 214:Src/usbd_conf.c **** /* Set SLEEPDEEP bit and SleepOnExit of Cortex System Control Register. */ + 215:Src/usbd_conf.c **** SCB->SCR |= (uint32_t)((uint32_t)(SCB_SCR_SLEEPDEEP_Msk | SCB_SCR_SLEEPONEXIT_Msk)); + 363 .loc 1 215 0 + 364 0014 024A ldr r2, .L18 + 365 0016 1369 ldr r3, [r2, #16] + ARM GAS /tmp/ccvOfDqw.s page 11 + + + 366 0018 0621 movs r1, #6 + 367 001a 0B43 orrs r3, r1 + 368 001c 1361 str r3, [r2, #16] + 369 .L16: + 216:Src/usbd_conf.c **** } + 217:Src/usbd_conf.c **** /* USER CODE END 2 */ + 218:Src/usbd_conf.c **** } + 370 .loc 1 218 0 + 371 @ sp needed + 372 .LVL35: + 373 001e 10BD pop {r4, pc} + 374 .L19: + 375 .align 2 + 376 .L18: + 377 0020 00ED00E0 .word -536810240 + 378 .cfi_endproc + 379 .LFE50: + 381 .section .text.HAL_PCD_ResumeCallback,"ax",%progbits + 382 .align 1 + 383 .global HAL_PCD_ResumeCallback + 384 .syntax unified + 385 .code 16 + 386 .thumb_func + 387 .fpu softvfp + 389 HAL_PCD_ResumeCallback: + 390 .LFB51: + 219:Src/usbd_conf.c **** + 220:Src/usbd_conf.c **** /** + 221:Src/usbd_conf.c **** * @brief Resume callback. + 222:Src/usbd_conf.c **** * When Low power mode is enabled the debug cannot be used (IAR, Keil doesn't support it) + 223:Src/usbd_conf.c **** * @param hpcd: PCD handle + 224:Src/usbd_conf.c **** * @retval None + 225:Src/usbd_conf.c **** */ + 226:Src/usbd_conf.c **** void HAL_PCD_ResumeCallback(PCD_HandleTypeDef *hpcd) + 227:Src/usbd_conf.c **** { + 391 .loc 1 227 0 + 392 .cfi_startproc + 393 @ args = 0, pretend = 0, frame = 0 + 394 @ frame_needed = 0, uses_anonymous_args = 0 + 395 .LVL36: + 396 0000 10B5 push {r4, lr} + 397 .LCFI9: + 398 .cfi_def_cfa_offset 8 + 399 .cfi_offset 4, -8 + 400 .cfi_offset 14, -4 + 228:Src/usbd_conf.c **** /* USER CODE BEGIN 3 */ + 229:Src/usbd_conf.c **** + 230:Src/usbd_conf.c **** /* USER CODE END 3 */ + 231:Src/usbd_conf.c **** USBD_LL_Resume((USBD_HandleTypeDef*)hpcd->pData); + 401 .loc 1 231 0 + 402 0002 9C23 movs r3, #156 + 403 0004 9B00 lsls r3, r3, #2 + 404 0006 C058 ldr r0, [r0, r3] + 405 .LVL37: + 406 0008 FFF7FEFF bl USBD_LL_Resume + 407 .LVL38: + 232:Src/usbd_conf.c **** } + ARM GAS /tmp/ccvOfDqw.s page 12 + + + 408 .loc 1 232 0 + 409 @ sp needed + 410 000c 10BD pop {r4, pc} + 411 .cfi_endproc + 412 .LFE51: + 414 .section .text.HAL_PCD_ISOOUTIncompleteCallback,"ax",%progbits + 415 .align 1 + 416 .global HAL_PCD_ISOOUTIncompleteCallback + 417 .syntax unified + 418 .code 16 + 419 .thumb_func + 420 .fpu softvfp + 422 HAL_PCD_ISOOUTIncompleteCallback: + 423 .LFB52: + 233:Src/usbd_conf.c **** + 234:Src/usbd_conf.c **** /** + 235:Src/usbd_conf.c **** * @brief ISOOUTIncomplete callback. + 236:Src/usbd_conf.c **** * @param hpcd: PCD handle + 237:Src/usbd_conf.c **** * @param epnum: Endpoint number + 238:Src/usbd_conf.c **** * @retval None + 239:Src/usbd_conf.c **** */ + 240:Src/usbd_conf.c **** void HAL_PCD_ISOOUTIncompleteCallback(PCD_HandleTypeDef *hpcd, uint8_t epnum) + 241:Src/usbd_conf.c **** { + 424 .loc 1 241 0 + 425 .cfi_startproc + 426 @ args = 0, pretend = 0, frame = 0 + 427 @ frame_needed = 0, uses_anonymous_args = 0 + 428 .LVL39: + 429 0000 10B5 push {r4, lr} + 430 .LCFI10: + 431 .cfi_def_cfa_offset 8 + 432 .cfi_offset 4, -8 + 433 .cfi_offset 14, -4 + 242:Src/usbd_conf.c **** USBD_LL_IsoOUTIncomplete((USBD_HandleTypeDef*)hpcd->pData, epnum); + 434 .loc 1 242 0 + 435 0002 9C23 movs r3, #156 + 436 0004 9B00 lsls r3, r3, #2 + 437 0006 C058 ldr r0, [r0, r3] + 438 .LVL40: + 439 0008 FFF7FEFF bl USBD_LL_IsoOUTIncomplete + 440 .LVL41: + 243:Src/usbd_conf.c **** } + 441 .loc 1 243 0 + 442 @ sp needed + 443 000c 10BD pop {r4, pc} + 444 .cfi_endproc + 445 .LFE52: + 447 .section .text.HAL_PCD_ISOINIncompleteCallback,"ax",%progbits + 448 .align 1 + 449 .global HAL_PCD_ISOINIncompleteCallback + 450 .syntax unified + 451 .code 16 + 452 .thumb_func + 453 .fpu softvfp + 455 HAL_PCD_ISOINIncompleteCallback: + 456 .LFB53: + 244:Src/usbd_conf.c **** + ARM GAS /tmp/ccvOfDqw.s page 13 + + + 245:Src/usbd_conf.c **** /** + 246:Src/usbd_conf.c **** * @brief ISOINIncomplete callback. + 247:Src/usbd_conf.c **** * @param hpcd: PCD handle + 248:Src/usbd_conf.c **** * @param epnum: Endpoint number + 249:Src/usbd_conf.c **** * @retval None + 250:Src/usbd_conf.c **** */ + 251:Src/usbd_conf.c **** void HAL_PCD_ISOINIncompleteCallback(PCD_HandleTypeDef *hpcd, uint8_t epnum) + 252:Src/usbd_conf.c **** { + 457 .loc 1 252 0 + 458 .cfi_startproc + 459 @ args = 0, pretend = 0, frame = 0 + 460 @ frame_needed = 0, uses_anonymous_args = 0 + 461 .LVL42: + 462 0000 10B5 push {r4, lr} + 463 .LCFI11: + 464 .cfi_def_cfa_offset 8 + 465 .cfi_offset 4, -8 + 466 .cfi_offset 14, -4 + 253:Src/usbd_conf.c **** USBD_LL_IsoINIncomplete((USBD_HandleTypeDef*)hpcd->pData, epnum); + 467 .loc 1 253 0 + 468 0002 9C23 movs r3, #156 + 469 0004 9B00 lsls r3, r3, #2 + 470 0006 C058 ldr r0, [r0, r3] + 471 .LVL43: + 472 0008 FFF7FEFF bl USBD_LL_IsoINIncomplete + 473 .LVL44: + 254:Src/usbd_conf.c **** } + 474 .loc 1 254 0 + 475 @ sp needed + 476 000c 10BD pop {r4, pc} + 477 .cfi_endproc + 478 .LFE53: + 480 .section .text.HAL_PCD_ConnectCallback,"ax",%progbits + 481 .align 1 + 482 .global HAL_PCD_ConnectCallback + 483 .syntax unified + 484 .code 16 + 485 .thumb_func + 486 .fpu softvfp + 488 HAL_PCD_ConnectCallback: + 489 .LFB54: + 255:Src/usbd_conf.c **** + 256:Src/usbd_conf.c **** /** + 257:Src/usbd_conf.c **** * @brief Connect callback. + 258:Src/usbd_conf.c **** * @param hpcd: PCD handle + 259:Src/usbd_conf.c **** * @retval None + 260:Src/usbd_conf.c **** */ + 261:Src/usbd_conf.c **** void HAL_PCD_ConnectCallback(PCD_HandleTypeDef *hpcd) + 262:Src/usbd_conf.c **** { + 490 .loc 1 262 0 + 491 .cfi_startproc + 492 @ args = 0, pretend = 0, frame = 0 + 493 @ frame_needed = 0, uses_anonymous_args = 0 + 494 .LVL45: + 495 0000 10B5 push {r4, lr} + 496 .LCFI12: + 497 .cfi_def_cfa_offset 8 + ARM GAS /tmp/ccvOfDqw.s page 14 + + + 498 .cfi_offset 4, -8 + 499 .cfi_offset 14, -4 + 263:Src/usbd_conf.c **** USBD_LL_DevConnected((USBD_HandleTypeDef*)hpcd->pData); + 500 .loc 1 263 0 + 501 0002 9C23 movs r3, #156 + 502 0004 9B00 lsls r3, r3, #2 + 503 0006 C058 ldr r0, [r0, r3] + 504 .LVL46: + 505 0008 FFF7FEFF bl USBD_LL_DevConnected + 506 .LVL47: + 264:Src/usbd_conf.c **** } + 507 .loc 1 264 0 + 508 @ sp needed + 509 000c 10BD pop {r4, pc} + 510 .cfi_endproc + 511 .LFE54: + 513 .section .text.HAL_PCD_DisconnectCallback,"ax",%progbits + 514 .align 1 + 515 .global HAL_PCD_DisconnectCallback + 516 .syntax unified + 517 .code 16 + 518 .thumb_func + 519 .fpu softvfp + 521 HAL_PCD_DisconnectCallback: + 522 .LFB55: + 265:Src/usbd_conf.c **** + 266:Src/usbd_conf.c **** /** + 267:Src/usbd_conf.c **** * @brief Disconnect callback. + 268:Src/usbd_conf.c **** * @param hpcd: PCD handle + 269:Src/usbd_conf.c **** * @retval None + 270:Src/usbd_conf.c **** */ + 271:Src/usbd_conf.c **** void HAL_PCD_DisconnectCallback(PCD_HandleTypeDef *hpcd) + 272:Src/usbd_conf.c **** { + 523 .loc 1 272 0 + 524 .cfi_startproc + 525 @ args = 0, pretend = 0, frame = 0 + 526 @ frame_needed = 0, uses_anonymous_args = 0 + 527 .LVL48: + 528 0000 10B5 push {r4, lr} + 529 .LCFI13: + 530 .cfi_def_cfa_offset 8 + 531 .cfi_offset 4, -8 + 532 .cfi_offset 14, -4 + 273:Src/usbd_conf.c **** USBD_LL_DevDisconnected((USBD_HandleTypeDef*)hpcd->pData); + 533 .loc 1 273 0 + 534 0002 9C23 movs r3, #156 + 535 0004 9B00 lsls r3, r3, #2 + 536 0006 C058 ldr r0, [r0, r3] + 537 .LVL49: + 538 0008 FFF7FEFF bl USBD_LL_DevDisconnected + 539 .LVL50: + 274:Src/usbd_conf.c **** } + 540 .loc 1 274 0 + 541 @ sp needed + 542 000c 10BD pop {r4, pc} + 543 .cfi_endproc + 544 .LFE55: + ARM GAS /tmp/ccvOfDqw.s page 15 + + + 546 .section .text.USBD_LL_Init,"ax",%progbits + 547 .align 1 + 548 .global USBD_LL_Init + 549 .syntax unified + 550 .code 16 + 551 .thumb_func + 552 .fpu softvfp + 554 USBD_LL_Init: + 555 .LFB56: + 275:Src/usbd_conf.c **** + 276:Src/usbd_conf.c **** /******************************************************************************* + 277:Src/usbd_conf.c **** LL Driver Interface (USB Device Library --> PCD) + 278:Src/usbd_conf.c **** *******************************************************************************/ + 279:Src/usbd_conf.c **** + 280:Src/usbd_conf.c **** /** + 281:Src/usbd_conf.c **** * @brief Initializes the low level portion of the device driver. + 282:Src/usbd_conf.c **** * @param pdev: Device handle + 283:Src/usbd_conf.c **** * @retval USBD status + 284:Src/usbd_conf.c **** */ + 285:Src/usbd_conf.c **** USBD_StatusTypeDef USBD_LL_Init(USBD_HandleTypeDef *pdev) + 286:Src/usbd_conf.c **** { + 556 .loc 1 286 0 + 557 .cfi_startproc + 558 @ args = 0, pretend = 0, frame = 0 + 559 @ frame_needed = 0, uses_anonymous_args = 0 + 560 .LVL51: + 561 0000 70B5 push {r4, r5, r6, lr} + 562 .LCFI14: + 563 .cfi_def_cfa_offset 16 + 564 .cfi_offset 4, -16 + 565 .cfi_offset 5, -12 + 566 .cfi_offset 6, -8 + 567 .cfi_offset 14, -4 + 568 0002 0400 movs r4, r0 + 287:Src/usbd_conf.c **** /* Init USB Ip. */ + 288:Src/usbd_conf.c **** /* Link the driver to the stack. */ + 289:Src/usbd_conf.c **** hpcd_USB_FS.pData = pdev; + 569 .loc 1 289 0 + 570 0004 1B48 ldr r0, .L26 + 571 .LVL52: + 572 0006 9C23 movs r3, #156 + 573 0008 9B00 lsls r3, r3, #2 + 574 000a C450 str r4, [r0, r3] + 290:Src/usbd_conf.c **** pdev->pData = &hpcd_USB_FS; + 575 .loc 1 290 0 + 576 000c 8825 movs r5, #136 + 577 000e AD00 lsls r5, r5, #2 + 578 0010 6051 str r0, [r4, r5] + 291:Src/usbd_conf.c **** + 292:Src/usbd_conf.c **** hpcd_USB_FS.Instance = USB; + 579 .loc 1 292 0 + 580 0012 194B ldr r3, .L26+4 + 581 0014 0360 str r3, [r0] + 293:Src/usbd_conf.c **** hpcd_USB_FS.Init.dev_endpoints = 8; + 582 .loc 1 293 0 + 583 0016 0823 movs r3, #8 + 584 0018 4360 str r3, [r0, #4] + ARM GAS /tmp/ccvOfDqw.s page 16 + + + 294:Src/usbd_conf.c **** hpcd_USB_FS.Init.speed = PCD_SPEED_FULL; + 585 .loc 1 294 0 + 586 001a 0222 movs r2, #2 + 587 001c 8260 str r2, [r0, #8] + 295:Src/usbd_conf.c **** hpcd_USB_FS.Init.ep0_mps = DEP0CTL_MPS_64; + 588 .loc 1 295 0 + 589 001e 0023 movs r3, #0 + 590 0020 C360 str r3, [r0, #12] + 296:Src/usbd_conf.c **** hpcd_USB_FS.Init.phy_itface = PCD_PHY_EMBEDDED; + 591 .loc 1 296 0 + 592 0022 0261 str r2, [r0, #16] + 297:Src/usbd_conf.c **** hpcd_USB_FS.Init.low_power_enable = DISABLE; + 593 .loc 1 297 0 + 594 0024 8361 str r3, [r0, #24] + 298:Src/usbd_conf.c **** hpcd_USB_FS.Init.lpm_enable = DISABLE; + 595 .loc 1 298 0 + 596 0026 C361 str r3, [r0, #28] + 299:Src/usbd_conf.c **** hpcd_USB_FS.Init.battery_charging_enable = DISABLE; + 597 .loc 1 299 0 + 598 0028 0362 str r3, [r0, #32] + 300:Src/usbd_conf.c **** if (HAL_PCD_Init(&hpcd_USB_FS) != HAL_OK) + 599 .loc 1 300 0 + 600 002a FFF7FEFF bl HAL_PCD_Init + 601 .LVL53: + 301:Src/usbd_conf.c **** { + 302:Src/usbd_conf.c **** //_Error_Handler(__FILE__, __LINE__); + 303:Src/usbd_conf.c **** } + 304:Src/usbd_conf.c **** + 305:Src/usbd_conf.c **** HAL_PCDEx_PMAConfig((PCD_HandleTypeDef*)pdev->pData , 0x00 , PCD_SNG_BUF, 0x18); + 602 .loc 1 305 0 + 603 002e 1823 movs r3, #24 + 604 0030 0022 movs r2, #0 + 605 0032 0021 movs r1, #0 + 606 0034 6059 ldr r0, [r4, r5] + 607 0036 FFF7FEFF bl HAL_PCDEx_PMAConfig + 608 .LVL54: + 306:Src/usbd_conf.c **** HAL_PCDEx_PMAConfig((PCD_HandleTypeDef*)pdev->pData , 0x80 , PCD_SNG_BUF, 0x58); + 609 .loc 1 306 0 + 610 003a 5823 movs r3, #88 + 611 003c 0022 movs r2, #0 + 612 003e 8021 movs r1, #128 + 613 0040 6059 ldr r0, [r4, r5] + 614 0042 FFF7FEFF bl HAL_PCDEx_PMAConfig + 615 .LVL55: + 307:Src/usbd_conf.c **** HAL_PCDEx_PMAConfig((PCD_HandleTypeDef*)pdev->pData , 0x81 , PCD_SNG_BUF, 0xC0); + 616 .loc 1 307 0 + 617 0046 C023 movs r3, #192 + 618 0048 0022 movs r2, #0 + 619 004a 8121 movs r1, #129 + 620 004c 6059 ldr r0, [r4, r5] + 621 004e FFF7FEFF bl HAL_PCDEx_PMAConfig + 622 .LVL56: + 308:Src/usbd_conf.c **** HAL_PCDEx_PMAConfig((PCD_HandleTypeDef*)pdev->pData , 0x01 , PCD_SNG_BUF, 0x110); + 623 .loc 1 308 0 + 624 0052 8823 movs r3, #136 + 625 0054 5B00 lsls r3, r3, #1 + 626 0056 0022 movs r2, #0 + ARM GAS /tmp/ccvOfDqw.s page 17 + + + 627 0058 0121 movs r1, #1 + 628 005a 6059 ldr r0, [r4, r5] + 629 005c FFF7FEFF bl HAL_PCDEx_PMAConfig + 630 .LVL57: + 309:Src/usbd_conf.c **** HAL_PCDEx_PMAConfig((PCD_HandleTypeDef*)pdev->pData , 0x82 , PCD_SNG_BUF, 0x100); + 631 .loc 1 309 0 + 632 0060 6059 ldr r0, [r4, r5] + 633 0062 8023 movs r3, #128 + 634 0064 5B00 lsls r3, r3, #1 + 635 0066 0022 movs r2, #0 + 636 0068 8221 movs r1, #130 + 637 006a FFF7FEFF bl HAL_PCDEx_PMAConfig + 638 .LVL58: + 310:Src/usbd_conf.c **** return USBD_OK; + 311:Src/usbd_conf.c **** } + 639 .loc 1 311 0 + 640 006e 0020 movs r0, #0 + 641 @ sp needed + 642 .LVL59: + 643 0070 70BD pop {r4, r5, r6, pc} + 644 .L27: + 645 0072 C046 .align 2 + 646 .L26: + 647 0074 00000000 .word hpcd_USB_FS + 648 0078 005C0040 .word 1073765376 + 649 .cfi_endproc + 650 .LFE56: + 652 .section .text.USBD_LL_DeInit,"ax",%progbits + 653 .align 1 + 654 .global USBD_LL_DeInit + 655 .syntax unified + 656 .code 16 + 657 .thumb_func + 658 .fpu softvfp + 660 USBD_LL_DeInit: + 661 .LFB57: + 312:Src/usbd_conf.c **** + 313:Src/usbd_conf.c **** /** + 314:Src/usbd_conf.c **** * @brief De-Initializes the low level portion of the device driver. + 315:Src/usbd_conf.c **** * @param pdev: Device handle + 316:Src/usbd_conf.c **** * @retval USBD status + 317:Src/usbd_conf.c **** */ + 318:Src/usbd_conf.c **** USBD_StatusTypeDef USBD_LL_DeInit(USBD_HandleTypeDef *pdev) + 319:Src/usbd_conf.c **** { + 662 .loc 1 319 0 + 663 .cfi_startproc + 664 @ args = 0, pretend = 0, frame = 0 + 665 @ frame_needed = 0, uses_anonymous_args = 0 + 666 .LVL60: + 667 0000 10B5 push {r4, lr} + 668 .LCFI15: + 669 .cfi_def_cfa_offset 8 + 670 .cfi_offset 4, -8 + 671 .cfi_offset 14, -4 + 672 .LVL61: + 320:Src/usbd_conf.c **** HAL_StatusTypeDef hal_status = HAL_OK; + 321:Src/usbd_conf.c **** USBD_StatusTypeDef usb_status = USBD_OK; + ARM GAS /tmp/ccvOfDqw.s page 18 + + + 322:Src/usbd_conf.c **** + 323:Src/usbd_conf.c **** hal_status = HAL_PCD_DeInit(pdev->pData); + 673 .loc 1 323 0 + 674 0002 8823 movs r3, #136 + 675 0004 9B00 lsls r3, r3, #2 + 676 0006 C058 ldr r0, [r0, r3] + 677 .LVL62: + 678 0008 FFF7FEFF bl HAL_PCD_DeInit + 679 .LVL63: + 324:Src/usbd_conf.c **** + 325:Src/usbd_conf.c **** switch (hal_status) { + 680 .loc 1 325 0 + 681 000c 0028 cmp r0, #0 + 682 000e 03D0 beq .L30 + 683 0010 0228 cmp r0, #2 + 684 0012 03D0 beq .L31 + 326:Src/usbd_conf.c **** case HAL_OK : + 327:Src/usbd_conf.c **** usb_status = USBD_OK; + 328:Src/usbd_conf.c **** break; + 329:Src/usbd_conf.c **** case HAL_ERROR : + 330:Src/usbd_conf.c **** usb_status = USBD_FAIL; + 685 .loc 1 330 0 + 686 0014 0220 movs r0, #2 + 687 .LVL64: + 688 .L29: + 331:Src/usbd_conf.c **** break; + 332:Src/usbd_conf.c **** case HAL_BUSY : + 333:Src/usbd_conf.c **** usb_status = USBD_BUSY; + 334:Src/usbd_conf.c **** break; + 335:Src/usbd_conf.c **** case HAL_TIMEOUT : + 336:Src/usbd_conf.c **** usb_status = USBD_FAIL; + 337:Src/usbd_conf.c **** break; + 338:Src/usbd_conf.c **** default : + 339:Src/usbd_conf.c **** usb_status = USBD_FAIL; + 340:Src/usbd_conf.c **** break; + 341:Src/usbd_conf.c **** } + 342:Src/usbd_conf.c **** return usb_status; + 343:Src/usbd_conf.c **** } + 689 .loc 1 343 0 + 690 @ sp needed + 691 0016 10BD pop {r4, pc} + 692 .LVL65: + 693 .L30: + 327:Src/usbd_conf.c **** break; + 694 .loc 1 327 0 + 695 0018 0020 movs r0, #0 + 696 .LVL66: + 697 001a FCE7 b .L29 + 698 .LVL67: + 699 .L31: + 333:Src/usbd_conf.c **** break; + 700 .loc 1 333 0 + 701 001c 0120 movs r0, #1 + 702 .LVL68: + 334:Src/usbd_conf.c **** case HAL_TIMEOUT : + 703 .loc 1 334 0 + 704 001e FAE7 b .L29 + ARM GAS /tmp/ccvOfDqw.s page 19 + + + 705 .cfi_endproc + 706 .LFE57: + 708 .section .text.USBD_LL_Start,"ax",%progbits + 709 .align 1 + 710 .global USBD_LL_Start + 711 .syntax unified + 712 .code 16 + 713 .thumb_func + 714 .fpu softvfp + 716 USBD_LL_Start: + 717 .LFB58: + 344:Src/usbd_conf.c **** + 345:Src/usbd_conf.c **** /** + 346:Src/usbd_conf.c **** * @brief Starts the low level portion of the device driver. + 347:Src/usbd_conf.c **** * @param pdev: Device handle + 348:Src/usbd_conf.c **** * @retval USBD status + 349:Src/usbd_conf.c **** */ + 350:Src/usbd_conf.c **** USBD_StatusTypeDef USBD_LL_Start(USBD_HandleTypeDef *pdev) + 351:Src/usbd_conf.c **** { + 718 .loc 1 351 0 + 719 .cfi_startproc + 720 @ args = 0, pretend = 0, frame = 0 + 721 @ frame_needed = 0, uses_anonymous_args = 0 + 722 .LVL69: + 723 0000 10B5 push {r4, lr} + 724 .LCFI16: + 725 .cfi_def_cfa_offset 8 + 726 .cfi_offset 4, -8 + 727 .cfi_offset 14, -4 + 728 .LVL70: + 352:Src/usbd_conf.c **** HAL_StatusTypeDef hal_status = HAL_OK; + 353:Src/usbd_conf.c **** USBD_StatusTypeDef usb_status = USBD_OK; + 354:Src/usbd_conf.c **** + 355:Src/usbd_conf.c **** hal_status = HAL_PCD_Start(pdev->pData); + 729 .loc 1 355 0 + 730 0002 8823 movs r3, #136 + 731 0004 9B00 lsls r3, r3, #2 + 732 0006 C058 ldr r0, [r0, r3] + 733 .LVL71: + 734 0008 FFF7FEFF bl HAL_PCD_Start + 735 .LVL72: + 356:Src/usbd_conf.c **** + 357:Src/usbd_conf.c **** switch (hal_status) { + 736 .loc 1 357 0 + 737 000c 0028 cmp r0, #0 + 738 000e 03D0 beq .L36 + 739 0010 0228 cmp r0, #2 + 740 0012 03D0 beq .L37 + 358:Src/usbd_conf.c **** case HAL_OK : + 359:Src/usbd_conf.c **** usb_status = USBD_OK; + 360:Src/usbd_conf.c **** break; + 361:Src/usbd_conf.c **** case HAL_ERROR : + 362:Src/usbd_conf.c **** usb_status = USBD_FAIL; + 741 .loc 1 362 0 + 742 0014 0220 movs r0, #2 + 743 .LVL73: + 744 .L35: + ARM GAS /tmp/ccvOfDqw.s page 20 + + + 363:Src/usbd_conf.c **** break; + 364:Src/usbd_conf.c **** case HAL_BUSY : + 365:Src/usbd_conf.c **** usb_status = USBD_BUSY; + 366:Src/usbd_conf.c **** break; + 367:Src/usbd_conf.c **** case HAL_TIMEOUT : + 368:Src/usbd_conf.c **** usb_status = USBD_FAIL; + 369:Src/usbd_conf.c **** break; + 370:Src/usbd_conf.c **** default : + 371:Src/usbd_conf.c **** usb_status = USBD_FAIL; + 372:Src/usbd_conf.c **** break; + 373:Src/usbd_conf.c **** } + 374:Src/usbd_conf.c **** return usb_status; + 375:Src/usbd_conf.c **** } + 745 .loc 1 375 0 + 746 @ sp needed + 747 0016 10BD pop {r4, pc} + 748 .LVL74: + 749 .L36: + 359:Src/usbd_conf.c **** break; + 750 .loc 1 359 0 + 751 0018 0020 movs r0, #0 + 752 .LVL75: + 753 001a FCE7 b .L35 + 754 .LVL76: + 755 .L37: + 365:Src/usbd_conf.c **** break; + 756 .loc 1 365 0 + 757 001c 0120 movs r0, #1 + 758 .LVL77: + 366:Src/usbd_conf.c **** case HAL_TIMEOUT : + 759 .loc 1 366 0 + 760 001e FAE7 b .L35 + 761 .cfi_endproc + 762 .LFE58: + 764 .section .text.USBD_LL_Stop,"ax",%progbits + 765 .align 1 + 766 .global USBD_LL_Stop + 767 .syntax unified + 768 .code 16 + 769 .thumb_func + 770 .fpu softvfp + 772 USBD_LL_Stop: + 773 .LFB59: + 376:Src/usbd_conf.c **** + 377:Src/usbd_conf.c **** /** + 378:Src/usbd_conf.c **** * @brief Stops the low level portion of the device driver. + 379:Src/usbd_conf.c **** * @param pdev: Device handle + 380:Src/usbd_conf.c **** * @retval USBD status + 381:Src/usbd_conf.c **** */ + 382:Src/usbd_conf.c **** USBD_StatusTypeDef USBD_LL_Stop(USBD_HandleTypeDef *pdev) + 383:Src/usbd_conf.c **** { + 774 .loc 1 383 0 + 775 .cfi_startproc + 776 @ args = 0, pretend = 0, frame = 0 + 777 @ frame_needed = 0, uses_anonymous_args = 0 + 778 .LVL78: + 779 0000 10B5 push {r4, lr} + ARM GAS /tmp/ccvOfDqw.s page 21 + + + 780 .LCFI17: + 781 .cfi_def_cfa_offset 8 + 782 .cfi_offset 4, -8 + 783 .cfi_offset 14, -4 + 784 .LVL79: + 384:Src/usbd_conf.c **** HAL_StatusTypeDef hal_status = HAL_OK; + 385:Src/usbd_conf.c **** USBD_StatusTypeDef usb_status = USBD_OK; + 386:Src/usbd_conf.c **** + 387:Src/usbd_conf.c **** hal_status = HAL_PCD_Stop(pdev->pData); + 785 .loc 1 387 0 + 786 0002 8823 movs r3, #136 + 787 0004 9B00 lsls r3, r3, #2 + 788 0006 C058 ldr r0, [r0, r3] + 789 .LVL80: + 790 0008 FFF7FEFF bl HAL_PCD_Stop + 791 .LVL81: + 388:Src/usbd_conf.c **** + 389:Src/usbd_conf.c **** switch (hal_status) { + 792 .loc 1 389 0 + 793 000c 0028 cmp r0, #0 + 794 000e 03D0 beq .L42 + 795 0010 0228 cmp r0, #2 + 796 0012 03D0 beq .L43 + 390:Src/usbd_conf.c **** case HAL_OK : + 391:Src/usbd_conf.c **** usb_status = USBD_OK; + 392:Src/usbd_conf.c **** break; + 393:Src/usbd_conf.c **** case HAL_ERROR : + 394:Src/usbd_conf.c **** usb_status = USBD_FAIL; + 797 .loc 1 394 0 + 798 0014 0220 movs r0, #2 + 799 .LVL82: + 800 .L41: + 395:Src/usbd_conf.c **** break; + 396:Src/usbd_conf.c **** case HAL_BUSY : + 397:Src/usbd_conf.c **** usb_status = USBD_BUSY; + 398:Src/usbd_conf.c **** break; + 399:Src/usbd_conf.c **** case HAL_TIMEOUT : + 400:Src/usbd_conf.c **** usb_status = USBD_FAIL; + 401:Src/usbd_conf.c **** break; + 402:Src/usbd_conf.c **** default : + 403:Src/usbd_conf.c **** usb_status = USBD_FAIL; + 404:Src/usbd_conf.c **** break; + 405:Src/usbd_conf.c **** } + 406:Src/usbd_conf.c **** return usb_status; + 407:Src/usbd_conf.c **** } + 801 .loc 1 407 0 + 802 @ sp needed + 803 0016 10BD pop {r4, pc} + 804 .LVL83: + 805 .L42: + 391:Src/usbd_conf.c **** break; + 806 .loc 1 391 0 + 807 0018 0020 movs r0, #0 + 808 .LVL84: + 809 001a FCE7 b .L41 + 810 .LVL85: + 811 .L43: + ARM GAS /tmp/ccvOfDqw.s page 22 + + + 397:Src/usbd_conf.c **** break; + 812 .loc 1 397 0 + 813 001c 0120 movs r0, #1 + 814 .LVL86: + 398:Src/usbd_conf.c **** case HAL_TIMEOUT : + 815 .loc 1 398 0 + 816 001e FAE7 b .L41 + 817 .cfi_endproc + 818 .LFE59: + 820 .section .text.USBD_LL_OpenEP,"ax",%progbits + 821 .align 1 + 822 .global USBD_LL_OpenEP + 823 .syntax unified + 824 .code 16 + 825 .thumb_func + 826 .fpu softvfp + 828 USBD_LL_OpenEP: + 829 .LFB60: + 408:Src/usbd_conf.c **** + 409:Src/usbd_conf.c **** /** + 410:Src/usbd_conf.c **** * @brief Opens an endpoint of the low level driver. + 411:Src/usbd_conf.c **** * @param pdev: Device handle + 412:Src/usbd_conf.c **** * @param ep_addr: Endpoint number + 413:Src/usbd_conf.c **** * @param ep_type: Endpoint type + 414:Src/usbd_conf.c **** * @param ep_mps: Endpoint max packet size + 415:Src/usbd_conf.c **** * @retval USBD status + 416:Src/usbd_conf.c **** */ + 417:Src/usbd_conf.c **** USBD_StatusTypeDef USBD_LL_OpenEP(USBD_HandleTypeDef *pdev, uint8_t ep_addr, uint8_t ep_type, uint1 + 418:Src/usbd_conf.c **** { + 830 .loc 1 418 0 + 831 .cfi_startproc + 832 @ args = 0, pretend = 0, frame = 0 + 833 @ frame_needed = 0, uses_anonymous_args = 0 + 834 .LVL87: + 835 0000 10B5 push {r4, lr} + 836 .LCFI18: + 837 .cfi_def_cfa_offset 8 + 838 .cfi_offset 4, -8 + 839 .cfi_offset 14, -4 + 840 0002 1400 movs r4, r2 + 841 0004 1A00 movs r2, r3 + 842 .LVL88: + 419:Src/usbd_conf.c **** HAL_StatusTypeDef hal_status = HAL_OK; + 420:Src/usbd_conf.c **** USBD_StatusTypeDef usb_status = USBD_OK; + 421:Src/usbd_conf.c **** + 422:Src/usbd_conf.c **** hal_status = HAL_PCD_EP_Open(pdev->pData, ep_addr, ep_mps, ep_type); + 843 .loc 1 422 0 + 844 0006 8823 movs r3, #136 + 845 .LVL89: + 846 0008 9B00 lsls r3, r3, #2 + 847 000a C058 ldr r0, [r0, r3] + 848 .LVL90: + 849 000c 2300 movs r3, r4 + 850 000e FFF7FEFF bl HAL_PCD_EP_Open + 851 .LVL91: + 423:Src/usbd_conf.c **** + 424:Src/usbd_conf.c **** switch (hal_status) { + ARM GAS /tmp/ccvOfDqw.s page 23 + + + 852 .loc 1 424 0 + 853 0012 0028 cmp r0, #0 + 854 0014 03D0 beq .L48 + 855 0016 0228 cmp r0, #2 + 856 0018 03D0 beq .L49 + 425:Src/usbd_conf.c **** case HAL_OK : + 426:Src/usbd_conf.c **** usb_status = USBD_OK; + 427:Src/usbd_conf.c **** break; + 428:Src/usbd_conf.c **** case HAL_ERROR : + 429:Src/usbd_conf.c **** usb_status = USBD_FAIL; + 857 .loc 1 429 0 + 858 001a 0220 movs r0, #2 + 859 .LVL92: + 860 .L47: + 430:Src/usbd_conf.c **** break; + 431:Src/usbd_conf.c **** case HAL_BUSY : + 432:Src/usbd_conf.c **** usb_status = USBD_BUSY; + 433:Src/usbd_conf.c **** break; + 434:Src/usbd_conf.c **** case HAL_TIMEOUT : + 435:Src/usbd_conf.c **** usb_status = USBD_FAIL; + 436:Src/usbd_conf.c **** break; + 437:Src/usbd_conf.c **** default : + 438:Src/usbd_conf.c **** usb_status = USBD_FAIL; + 439:Src/usbd_conf.c **** break; + 440:Src/usbd_conf.c **** } + 441:Src/usbd_conf.c **** return usb_status; + 442:Src/usbd_conf.c **** } + 861 .loc 1 442 0 + 862 @ sp needed + 863 001c 10BD pop {r4, pc} + 864 .LVL93: + 865 .L48: + 426:Src/usbd_conf.c **** break; + 866 .loc 1 426 0 + 867 001e 0020 movs r0, #0 + 868 .LVL94: + 869 0020 FCE7 b .L47 + 870 .LVL95: + 871 .L49: + 432:Src/usbd_conf.c **** break; + 872 .loc 1 432 0 + 873 0022 0120 movs r0, #1 + 874 .LVL96: + 433:Src/usbd_conf.c **** case HAL_TIMEOUT : + 875 .loc 1 433 0 + 876 0024 FAE7 b .L47 + 877 .cfi_endproc + 878 .LFE60: + 880 .section .text.USBD_LL_CloseEP,"ax",%progbits + 881 .align 1 + 882 .global USBD_LL_CloseEP + 883 .syntax unified + 884 .code 16 + 885 .thumb_func + 886 .fpu softvfp + 888 USBD_LL_CloseEP: + 889 .LFB61: + ARM GAS /tmp/ccvOfDqw.s page 24 + + + 443:Src/usbd_conf.c **** + 444:Src/usbd_conf.c **** /** + 445:Src/usbd_conf.c **** * @brief Closes an endpoint of the low level driver. + 446:Src/usbd_conf.c **** * @param pdev: Device handle + 447:Src/usbd_conf.c **** * @param ep_addr: Endpoint number + 448:Src/usbd_conf.c **** * @retval USBD status + 449:Src/usbd_conf.c **** */ + 450:Src/usbd_conf.c **** USBD_StatusTypeDef USBD_LL_CloseEP(USBD_HandleTypeDef *pdev, uint8_t ep_addr) + 451:Src/usbd_conf.c **** { + 890 .loc 1 451 0 + 891 .cfi_startproc + 892 @ args = 0, pretend = 0, frame = 0 + 893 @ frame_needed = 0, uses_anonymous_args = 0 + 894 .LVL97: + 895 0000 10B5 push {r4, lr} + 896 .LCFI19: + 897 .cfi_def_cfa_offset 8 + 898 .cfi_offset 4, -8 + 899 .cfi_offset 14, -4 + 900 .LVL98: + 452:Src/usbd_conf.c **** HAL_StatusTypeDef hal_status = HAL_OK; + 453:Src/usbd_conf.c **** USBD_StatusTypeDef usb_status = USBD_OK; + 454:Src/usbd_conf.c **** + 455:Src/usbd_conf.c **** hal_status = HAL_PCD_EP_Close(pdev->pData, ep_addr); + 901 .loc 1 455 0 + 902 0002 8823 movs r3, #136 + 903 0004 9B00 lsls r3, r3, #2 + 904 0006 C058 ldr r0, [r0, r3] + 905 .LVL99: + 906 0008 FFF7FEFF bl HAL_PCD_EP_Close + 907 .LVL100: + 456:Src/usbd_conf.c **** + 457:Src/usbd_conf.c **** switch (hal_status) { + 908 .loc 1 457 0 + 909 000c 0028 cmp r0, #0 + 910 000e 03D0 beq .L54 + 911 0010 0228 cmp r0, #2 + 912 0012 03D0 beq .L55 + 458:Src/usbd_conf.c **** case HAL_OK : + 459:Src/usbd_conf.c **** usb_status = USBD_OK; + 460:Src/usbd_conf.c **** break; + 461:Src/usbd_conf.c **** case HAL_ERROR : + 462:Src/usbd_conf.c **** usb_status = USBD_FAIL; + 913 .loc 1 462 0 + 914 0014 0220 movs r0, #2 + 915 .LVL101: + 916 .L53: + 463:Src/usbd_conf.c **** break; + 464:Src/usbd_conf.c **** case HAL_BUSY : + 465:Src/usbd_conf.c **** usb_status = USBD_BUSY; + 466:Src/usbd_conf.c **** break; + 467:Src/usbd_conf.c **** case HAL_TIMEOUT : + 468:Src/usbd_conf.c **** usb_status = USBD_FAIL; + 469:Src/usbd_conf.c **** break; + 470:Src/usbd_conf.c **** default : + 471:Src/usbd_conf.c **** usb_status = USBD_FAIL; + 472:Src/usbd_conf.c **** break; + ARM GAS /tmp/ccvOfDqw.s page 25 + + + 473:Src/usbd_conf.c **** } + 474:Src/usbd_conf.c **** return usb_status; + 475:Src/usbd_conf.c **** } + 917 .loc 1 475 0 + 918 @ sp needed + 919 0016 10BD pop {r4, pc} + 920 .LVL102: + 921 .L54: + 459:Src/usbd_conf.c **** break; + 922 .loc 1 459 0 + 923 0018 0020 movs r0, #0 + 924 .LVL103: + 925 001a FCE7 b .L53 + 926 .LVL104: + 927 .L55: + 465:Src/usbd_conf.c **** break; + 928 .loc 1 465 0 + 929 001c 0120 movs r0, #1 + 930 .LVL105: + 466:Src/usbd_conf.c **** case HAL_TIMEOUT : + 931 .loc 1 466 0 + 932 001e FAE7 b .L53 + 933 .cfi_endproc + 934 .LFE61: + 936 .section .text.USBD_LL_FlushEP,"ax",%progbits + 937 .align 1 + 938 .global USBD_LL_FlushEP + 939 .syntax unified + 940 .code 16 + 941 .thumb_func + 942 .fpu softvfp + 944 USBD_LL_FlushEP: + 945 .LFB62: + 476:Src/usbd_conf.c **** + 477:Src/usbd_conf.c **** /** + 478:Src/usbd_conf.c **** * @brief Flushes an endpoint of the Low Level Driver. + 479:Src/usbd_conf.c **** * @param pdev: Device handle + 480:Src/usbd_conf.c **** * @param ep_addr: Endpoint number + 481:Src/usbd_conf.c **** * @retval USBD status + 482:Src/usbd_conf.c **** */ + 483:Src/usbd_conf.c **** USBD_StatusTypeDef USBD_LL_FlushEP(USBD_HandleTypeDef *pdev, uint8_t ep_addr) + 484:Src/usbd_conf.c **** { + 946 .loc 1 484 0 + 947 .cfi_startproc + 948 @ args = 0, pretend = 0, frame = 0 + 949 @ frame_needed = 0, uses_anonymous_args = 0 + 950 .LVL106: + 951 0000 10B5 push {r4, lr} + 952 .LCFI20: + 953 .cfi_def_cfa_offset 8 + 954 .cfi_offset 4, -8 + 955 .cfi_offset 14, -4 + 956 .LVL107: + 485:Src/usbd_conf.c **** HAL_StatusTypeDef hal_status = HAL_OK; + 486:Src/usbd_conf.c **** USBD_StatusTypeDef usb_status = USBD_OK; + 487:Src/usbd_conf.c **** + 488:Src/usbd_conf.c **** hal_status = HAL_PCD_EP_Flush(pdev->pData, ep_addr); + ARM GAS /tmp/ccvOfDqw.s page 26 + + + 957 .loc 1 488 0 + 958 0002 8823 movs r3, #136 + 959 0004 9B00 lsls r3, r3, #2 + 960 0006 C058 ldr r0, [r0, r3] + 961 .LVL108: + 962 0008 FFF7FEFF bl HAL_PCD_EP_Flush + 963 .LVL109: + 489:Src/usbd_conf.c **** + 490:Src/usbd_conf.c **** switch (hal_status) { + 964 .loc 1 490 0 + 965 000c 0028 cmp r0, #0 + 966 000e 03D0 beq .L60 + 967 0010 0228 cmp r0, #2 + 968 0012 03D0 beq .L61 + 491:Src/usbd_conf.c **** case HAL_OK : + 492:Src/usbd_conf.c **** usb_status = USBD_OK; + 493:Src/usbd_conf.c **** break; + 494:Src/usbd_conf.c **** case HAL_ERROR : + 495:Src/usbd_conf.c **** usb_status = USBD_FAIL; + 969 .loc 1 495 0 + 970 0014 0220 movs r0, #2 + 971 .LVL110: + 972 .L59: + 496:Src/usbd_conf.c **** break; + 497:Src/usbd_conf.c **** case HAL_BUSY : + 498:Src/usbd_conf.c **** usb_status = USBD_BUSY; + 499:Src/usbd_conf.c **** break; + 500:Src/usbd_conf.c **** case HAL_TIMEOUT : + 501:Src/usbd_conf.c **** usb_status = USBD_FAIL; + 502:Src/usbd_conf.c **** break; + 503:Src/usbd_conf.c **** default : + 504:Src/usbd_conf.c **** usb_status = USBD_FAIL; + 505:Src/usbd_conf.c **** break; + 506:Src/usbd_conf.c **** } + 507:Src/usbd_conf.c **** return usb_status; + 508:Src/usbd_conf.c **** } + 973 .loc 1 508 0 + 974 @ sp needed + 975 0016 10BD pop {r4, pc} + 976 .LVL111: + 977 .L60: + 492:Src/usbd_conf.c **** break; + 978 .loc 1 492 0 + 979 0018 0020 movs r0, #0 + 980 .LVL112: + 981 001a FCE7 b .L59 + 982 .LVL113: + 983 .L61: + 498:Src/usbd_conf.c **** break; + 984 .loc 1 498 0 + 985 001c 0120 movs r0, #1 + 986 .LVL114: + 499:Src/usbd_conf.c **** case HAL_TIMEOUT : + 987 .loc 1 499 0 + 988 001e FAE7 b .L59 + 989 .cfi_endproc + 990 .LFE62: + ARM GAS /tmp/ccvOfDqw.s page 27 + + + 992 .section .text.USBD_LL_StallEP,"ax",%progbits + 993 .align 1 + 994 .global USBD_LL_StallEP + 995 .syntax unified + 996 .code 16 + 997 .thumb_func + 998 .fpu softvfp + 1000 USBD_LL_StallEP: + 1001 .LFB63: + 509:Src/usbd_conf.c **** + 510:Src/usbd_conf.c **** /** + 511:Src/usbd_conf.c **** * @brief Sets a Stall condition on an endpoint of the Low Level Driver. + 512:Src/usbd_conf.c **** * @param pdev: Device handle + 513:Src/usbd_conf.c **** * @param ep_addr: Endpoint number + 514:Src/usbd_conf.c **** * @retval USBD status + 515:Src/usbd_conf.c **** */ + 516:Src/usbd_conf.c **** USBD_StatusTypeDef USBD_LL_StallEP(USBD_HandleTypeDef *pdev, uint8_t ep_addr) + 517:Src/usbd_conf.c **** { + 1002 .loc 1 517 0 + 1003 .cfi_startproc + 1004 @ args = 0, pretend = 0, frame = 0 + 1005 @ frame_needed = 0, uses_anonymous_args = 0 + 1006 .LVL115: + 1007 0000 10B5 push {r4, lr} + 1008 .LCFI21: + 1009 .cfi_def_cfa_offset 8 + 1010 .cfi_offset 4, -8 + 1011 .cfi_offset 14, -4 + 1012 .LVL116: + 518:Src/usbd_conf.c **** HAL_StatusTypeDef hal_status = HAL_OK; + 519:Src/usbd_conf.c **** USBD_StatusTypeDef usb_status = USBD_OK; + 520:Src/usbd_conf.c **** + 521:Src/usbd_conf.c **** hal_status = HAL_PCD_EP_SetStall(pdev->pData, ep_addr); + 1013 .loc 1 521 0 + 1014 0002 8823 movs r3, #136 + 1015 0004 9B00 lsls r3, r3, #2 + 1016 0006 C058 ldr r0, [r0, r3] + 1017 .LVL117: + 1018 0008 FFF7FEFF bl HAL_PCD_EP_SetStall + 1019 .LVL118: + 522:Src/usbd_conf.c **** + 523:Src/usbd_conf.c **** switch (hal_status) { + 1020 .loc 1 523 0 + 1021 000c 0028 cmp r0, #0 + 1022 000e 03D0 beq .L66 + 1023 0010 0228 cmp r0, #2 + 1024 0012 03D0 beq .L67 + 524:Src/usbd_conf.c **** case HAL_OK : + 525:Src/usbd_conf.c **** usb_status = USBD_OK; + 526:Src/usbd_conf.c **** break; + 527:Src/usbd_conf.c **** case HAL_ERROR : + 528:Src/usbd_conf.c **** usb_status = USBD_FAIL; + 1025 .loc 1 528 0 + 1026 0014 0220 movs r0, #2 + 1027 .LVL119: + 1028 .L65: + 529:Src/usbd_conf.c **** break; + ARM GAS /tmp/ccvOfDqw.s page 28 + + + 530:Src/usbd_conf.c **** case HAL_BUSY : + 531:Src/usbd_conf.c **** usb_status = USBD_BUSY; + 532:Src/usbd_conf.c **** break; + 533:Src/usbd_conf.c **** case HAL_TIMEOUT : + 534:Src/usbd_conf.c **** usb_status = USBD_FAIL; + 535:Src/usbd_conf.c **** break; + 536:Src/usbd_conf.c **** default : + 537:Src/usbd_conf.c **** usb_status = USBD_FAIL; + 538:Src/usbd_conf.c **** break; + 539:Src/usbd_conf.c **** } + 540:Src/usbd_conf.c **** return usb_status; + 541:Src/usbd_conf.c **** } + 1029 .loc 1 541 0 + 1030 @ sp needed + 1031 0016 10BD pop {r4, pc} + 1032 .LVL120: + 1033 .L66: + 525:Src/usbd_conf.c **** break; + 1034 .loc 1 525 0 + 1035 0018 0020 movs r0, #0 + 1036 .LVL121: + 1037 001a FCE7 b .L65 + 1038 .LVL122: + 1039 .L67: + 531:Src/usbd_conf.c **** break; + 1040 .loc 1 531 0 + 1041 001c 0120 movs r0, #1 + 1042 .LVL123: + 532:Src/usbd_conf.c **** case HAL_TIMEOUT : + 1043 .loc 1 532 0 + 1044 001e FAE7 b .L65 + 1045 .cfi_endproc + 1046 .LFE63: + 1048 .section .text.USBD_LL_ClearStallEP,"ax",%progbits + 1049 .align 1 + 1050 .global USBD_LL_ClearStallEP + 1051 .syntax unified + 1052 .code 16 + 1053 .thumb_func + 1054 .fpu softvfp + 1056 USBD_LL_ClearStallEP: + 1057 .LFB64: + 542:Src/usbd_conf.c **** + 543:Src/usbd_conf.c **** /** + 544:Src/usbd_conf.c **** * @brief Clears a Stall condition on an endpoint of the Low Level Driver. + 545:Src/usbd_conf.c **** * @param pdev: Device handle + 546:Src/usbd_conf.c **** * @param ep_addr: Endpoint number + 547:Src/usbd_conf.c **** * @retval USBD status + 548:Src/usbd_conf.c **** */ + 549:Src/usbd_conf.c **** USBD_StatusTypeDef USBD_LL_ClearStallEP(USBD_HandleTypeDef *pdev, uint8_t ep_addr) + 550:Src/usbd_conf.c **** { + 1058 .loc 1 550 0 + 1059 .cfi_startproc + 1060 @ args = 0, pretend = 0, frame = 0 + 1061 @ frame_needed = 0, uses_anonymous_args = 0 + 1062 .LVL124: + 1063 0000 10B5 push {r4, lr} + ARM GAS /tmp/ccvOfDqw.s page 29 + + + 1064 .LCFI22: + 1065 .cfi_def_cfa_offset 8 + 1066 .cfi_offset 4, -8 + 1067 .cfi_offset 14, -4 + 1068 .LVL125: + 551:Src/usbd_conf.c **** HAL_StatusTypeDef hal_status = HAL_OK; + 552:Src/usbd_conf.c **** USBD_StatusTypeDef usb_status = USBD_OK; + 553:Src/usbd_conf.c **** + 554:Src/usbd_conf.c **** hal_status = HAL_PCD_EP_ClrStall(pdev->pData, ep_addr); + 1069 .loc 1 554 0 + 1070 0002 8823 movs r3, #136 + 1071 0004 9B00 lsls r3, r3, #2 + 1072 0006 C058 ldr r0, [r0, r3] + 1073 .LVL126: + 1074 0008 FFF7FEFF bl HAL_PCD_EP_ClrStall + 1075 .LVL127: + 555:Src/usbd_conf.c **** + 556:Src/usbd_conf.c **** switch (hal_status) { + 1076 .loc 1 556 0 + 1077 000c 0028 cmp r0, #0 + 1078 000e 03D0 beq .L72 + 1079 0010 0228 cmp r0, #2 + 1080 0012 03D0 beq .L73 + 557:Src/usbd_conf.c **** case HAL_OK : + 558:Src/usbd_conf.c **** usb_status = USBD_OK; + 559:Src/usbd_conf.c **** break; + 560:Src/usbd_conf.c **** case HAL_ERROR : + 561:Src/usbd_conf.c **** usb_status = USBD_FAIL; + 1081 .loc 1 561 0 + 1082 0014 0220 movs r0, #2 + 1083 .LVL128: + 1084 .L71: + 562:Src/usbd_conf.c **** break; + 563:Src/usbd_conf.c **** case HAL_BUSY : + 564:Src/usbd_conf.c **** usb_status = USBD_BUSY; + 565:Src/usbd_conf.c **** break; + 566:Src/usbd_conf.c **** case HAL_TIMEOUT : + 567:Src/usbd_conf.c **** usb_status = USBD_FAIL; + 568:Src/usbd_conf.c **** break; + 569:Src/usbd_conf.c **** default : + 570:Src/usbd_conf.c **** usb_status = USBD_FAIL; + 571:Src/usbd_conf.c **** break; + 572:Src/usbd_conf.c **** } + 573:Src/usbd_conf.c **** return usb_status; + 574:Src/usbd_conf.c **** } + 1085 .loc 1 574 0 + 1086 @ sp needed + 1087 0016 10BD pop {r4, pc} + 1088 .LVL129: + 1089 .L72: + 558:Src/usbd_conf.c **** break; + 1090 .loc 1 558 0 + 1091 0018 0020 movs r0, #0 + 1092 .LVL130: + 1093 001a FCE7 b .L71 + 1094 .LVL131: + 1095 .L73: + ARM GAS /tmp/ccvOfDqw.s page 30 + + + 564:Src/usbd_conf.c **** break; + 1096 .loc 1 564 0 + 1097 001c 0120 movs r0, #1 + 1098 .LVL132: + 565:Src/usbd_conf.c **** case HAL_TIMEOUT : + 1099 .loc 1 565 0 + 1100 001e FAE7 b .L71 + 1101 .cfi_endproc + 1102 .LFE64: + 1104 .section .text.USBD_LL_IsStallEP,"ax",%progbits + 1105 .align 1 + 1106 .global USBD_LL_IsStallEP + 1107 .syntax unified + 1108 .code 16 + 1109 .thumb_func + 1110 .fpu softvfp + 1112 USBD_LL_IsStallEP: + 1113 .LFB65: + 575:Src/usbd_conf.c **** + 576:Src/usbd_conf.c **** /** + 577:Src/usbd_conf.c **** * @brief Returns Stall condition. + 578:Src/usbd_conf.c **** * @param pdev: Device handle + 579:Src/usbd_conf.c **** * @param ep_addr: Endpoint number + 580:Src/usbd_conf.c **** * @retval Stall (1: Yes, 0: No) + 581:Src/usbd_conf.c **** */ + 582:Src/usbd_conf.c **** uint8_t USBD_LL_IsStallEP(USBD_HandleTypeDef *pdev, uint8_t ep_addr) + 583:Src/usbd_conf.c **** { + 1114 .loc 1 583 0 + 1115 .cfi_startproc + 1116 @ args = 0, pretend = 0, frame = 0 + 1117 @ frame_needed = 0, uses_anonymous_args = 0 + 1118 @ link register save eliminated. + 1119 .LVL133: + 1120 0000 0A00 movs r2, r1 + 584:Src/usbd_conf.c **** PCD_HandleTypeDef *hpcd = (PCD_HandleTypeDef*) pdev->pData; + 1121 .loc 1 584 0 + 1122 0002 8823 movs r3, #136 + 1123 0004 9B00 lsls r3, r3, #2 + 1124 0006 C358 ldr r3, [r0, r3] + 1125 .LVL134: + 585:Src/usbd_conf.c **** + 586:Src/usbd_conf.c **** if((ep_addr & 0x80) == 0x80) + 1126 .loc 1 586 0 + 1127 0008 49B2 sxtb r1, r1 + 1128 000a 0029 cmp r1, #0 + 1129 000c 07DB blt .L79 + 587:Src/usbd_conf.c **** { + 588:Src/usbd_conf.c **** return hpcd->IN_ep[ep_addr & 0x7F].is_stall; + 589:Src/usbd_conf.c **** } + 590:Src/usbd_conf.c **** else + 591:Src/usbd_conf.c **** { + 592:Src/usbd_conf.c **** return hpcd->OUT_ep[ep_addr & 0x7F].is_stall; + 1130 .loc 1 592 0 + 1131 000e 7F21 movs r1, #127 + 1132 .LVL135: + 1133 0010 1140 ands r1, r2 + 1134 0012 4901 lsls r1, r1, #5 + ARM GAS /tmp/ccvOfDqw.s page 31 + + + 1135 0014 5B18 adds r3, r3, r1 + 1136 .LVL136: + 1137 0016 2B33 adds r3, r3, #43 + 1138 0018 FF33 adds r3, r3, #255 + 1139 001a 1878 ldrb r0, [r3] + 1140 .LVL137: + 1141 .L78: + 593:Src/usbd_conf.c **** } + 594:Src/usbd_conf.c **** } + 1142 .loc 1 594 0 + 1143 @ sp needed + 1144 001c 7047 bx lr + 1145 .LVL138: + 1146 .L79: + 588:Src/usbd_conf.c **** } + 1147 .loc 1 588 0 + 1148 001e 7F21 movs r1, #127 + 1149 0020 1140 ands r1, r2 + 1150 0022 4901 lsls r1, r1, #5 + 1151 0024 5B18 adds r3, r3, r1 + 1152 .LVL139: + 1153 0026 2A33 adds r3, r3, #42 + 1154 0028 1878 ldrb r0, [r3] + 1155 .LVL140: + 1156 002a F7E7 b .L78 + 1157 .cfi_endproc + 1158 .LFE65: + 1160 .section .text.USBD_LL_SetUSBAddress,"ax",%progbits + 1161 .align 1 + 1162 .global USBD_LL_SetUSBAddress + 1163 .syntax unified + 1164 .code 16 + 1165 .thumb_func + 1166 .fpu softvfp + 1168 USBD_LL_SetUSBAddress: + 1169 .LFB66: + 595:Src/usbd_conf.c **** + 596:Src/usbd_conf.c **** /** + 597:Src/usbd_conf.c **** * @brief Assigns a USB address to the device. + 598:Src/usbd_conf.c **** * @param pdev: Device handle + 599:Src/usbd_conf.c **** * @param dev_addr: Device address + 600:Src/usbd_conf.c **** * @retval USBD status + 601:Src/usbd_conf.c **** */ + 602:Src/usbd_conf.c **** USBD_StatusTypeDef USBD_LL_SetUSBAddress(USBD_HandleTypeDef *pdev, uint8_t dev_addr) + 603:Src/usbd_conf.c **** { + 1170 .loc 1 603 0 + 1171 .cfi_startproc + 1172 @ args = 0, pretend = 0, frame = 0 + 1173 @ frame_needed = 0, uses_anonymous_args = 0 + 1174 .LVL141: + 1175 0000 10B5 push {r4, lr} + 1176 .LCFI23: + 1177 .cfi_def_cfa_offset 8 + 1178 .cfi_offset 4, -8 + 1179 .cfi_offset 14, -4 + 1180 .LVL142: + 604:Src/usbd_conf.c **** HAL_StatusTypeDef hal_status = HAL_OK; + ARM GAS /tmp/ccvOfDqw.s page 32 + + + 605:Src/usbd_conf.c **** USBD_StatusTypeDef usb_status = USBD_OK; + 606:Src/usbd_conf.c **** + 607:Src/usbd_conf.c **** hal_status = HAL_PCD_SetAddress(pdev->pData, dev_addr); + 1181 .loc 1 607 0 + 1182 0002 8823 movs r3, #136 + 1183 0004 9B00 lsls r3, r3, #2 + 1184 0006 C058 ldr r0, [r0, r3] + 1185 .LVL143: + 1186 0008 FFF7FEFF bl HAL_PCD_SetAddress + 1187 .LVL144: + 608:Src/usbd_conf.c **** + 609:Src/usbd_conf.c **** switch (hal_status) { + 1188 .loc 1 609 0 + 1189 000c 0028 cmp r0, #0 + 1190 000e 03D0 beq .L82 + 1191 0010 0228 cmp r0, #2 + 1192 0012 03D0 beq .L83 + 610:Src/usbd_conf.c **** case HAL_OK : + 611:Src/usbd_conf.c **** usb_status = USBD_OK; + 612:Src/usbd_conf.c **** break; + 613:Src/usbd_conf.c **** case HAL_ERROR : + 614:Src/usbd_conf.c **** usb_status = USBD_FAIL; + 1193 .loc 1 614 0 + 1194 0014 0220 movs r0, #2 + 1195 .LVL145: + 1196 .L81: + 615:Src/usbd_conf.c **** break; + 616:Src/usbd_conf.c **** case HAL_BUSY : + 617:Src/usbd_conf.c **** usb_status = USBD_BUSY; + 618:Src/usbd_conf.c **** break; + 619:Src/usbd_conf.c **** case HAL_TIMEOUT : + 620:Src/usbd_conf.c **** usb_status = USBD_FAIL; + 621:Src/usbd_conf.c **** break; + 622:Src/usbd_conf.c **** default : + 623:Src/usbd_conf.c **** usb_status = USBD_FAIL; + 624:Src/usbd_conf.c **** break; + 625:Src/usbd_conf.c **** } + 626:Src/usbd_conf.c **** return usb_status; + 627:Src/usbd_conf.c **** } + 1197 .loc 1 627 0 + 1198 @ sp needed + 1199 0016 10BD pop {r4, pc} + 1200 .LVL146: + 1201 .L82: + 611:Src/usbd_conf.c **** break; + 1202 .loc 1 611 0 + 1203 0018 0020 movs r0, #0 + 1204 .LVL147: + 1205 001a FCE7 b .L81 + 1206 .LVL148: + 1207 .L83: + 617:Src/usbd_conf.c **** break; + 1208 .loc 1 617 0 + 1209 001c 0120 movs r0, #1 + 1210 .LVL149: + 618:Src/usbd_conf.c **** case HAL_TIMEOUT : + 1211 .loc 1 618 0 + ARM GAS /tmp/ccvOfDqw.s page 33 + + + 1212 001e FAE7 b .L81 + 1213 .cfi_endproc + 1214 .LFE66: + 1216 .section .text.USBD_LL_Transmit,"ax",%progbits + 1217 .align 1 + 1218 .global USBD_LL_Transmit + 1219 .syntax unified + 1220 .code 16 + 1221 .thumb_func + 1222 .fpu softvfp + 1224 USBD_LL_Transmit: + 1225 .LFB67: + 628:Src/usbd_conf.c **** + 629:Src/usbd_conf.c **** /** + 630:Src/usbd_conf.c **** * @brief Transmits data over an endpoint. + 631:Src/usbd_conf.c **** * @param pdev: Device handle + 632:Src/usbd_conf.c **** * @param ep_addr: Endpoint number + 633:Src/usbd_conf.c **** * @param pbuf: Pointer to data to be sent + 634:Src/usbd_conf.c **** * @param size: Data size + 635:Src/usbd_conf.c **** * @retval USBD status + 636:Src/usbd_conf.c **** */ + 637:Src/usbd_conf.c **** USBD_StatusTypeDef USBD_LL_Transmit(USBD_HandleTypeDef *pdev, uint8_t ep_addr, uint8_t *pbuf, uint1 + 638:Src/usbd_conf.c **** { + 1226 .loc 1 638 0 + 1227 .cfi_startproc + 1228 @ args = 0, pretend = 0, frame = 0 + 1229 @ frame_needed = 0, uses_anonymous_args = 0 + 1230 .LVL150: + 1231 0000 10B5 push {r4, lr} + 1232 .LCFI24: + 1233 .cfi_def_cfa_offset 8 + 1234 .cfi_offset 4, -8 + 1235 .cfi_offset 14, -4 + 1236 .LVL151: + 639:Src/usbd_conf.c **** HAL_StatusTypeDef hal_status = HAL_OK; + 640:Src/usbd_conf.c **** USBD_StatusTypeDef usb_status = USBD_OK; + 641:Src/usbd_conf.c **** + 642:Src/usbd_conf.c **** hal_status = HAL_PCD_EP_Transmit(pdev->pData, ep_addr, pbuf, size); + 1237 .loc 1 642 0 + 1238 0002 8824 movs r4, #136 + 1239 0004 A400 lsls r4, r4, #2 + 1240 0006 0059 ldr r0, [r0, r4] + 1241 .LVL152: + 1242 0008 FFF7FEFF bl HAL_PCD_EP_Transmit + 1243 .LVL153: + 643:Src/usbd_conf.c **** + 644:Src/usbd_conf.c **** switch (hal_status) { + 1244 .loc 1 644 0 + 1245 000c 0028 cmp r0, #0 + 1246 000e 03D0 beq .L88 + 1247 0010 0228 cmp r0, #2 + 1248 0012 03D0 beq .L89 + 645:Src/usbd_conf.c **** case HAL_OK : + 646:Src/usbd_conf.c **** usb_status = USBD_OK; + 647:Src/usbd_conf.c **** break; + 648:Src/usbd_conf.c **** case HAL_ERROR : + 649:Src/usbd_conf.c **** usb_status = USBD_FAIL; + ARM GAS /tmp/ccvOfDqw.s page 34 + + + 1249 .loc 1 649 0 + 1250 0014 0220 movs r0, #2 + 1251 .LVL154: + 1252 .L87: + 650:Src/usbd_conf.c **** break; + 651:Src/usbd_conf.c **** case HAL_BUSY : + 652:Src/usbd_conf.c **** usb_status = USBD_BUSY; + 653:Src/usbd_conf.c **** break; + 654:Src/usbd_conf.c **** case HAL_TIMEOUT : + 655:Src/usbd_conf.c **** usb_status = USBD_FAIL; + 656:Src/usbd_conf.c **** break; + 657:Src/usbd_conf.c **** default : + 658:Src/usbd_conf.c **** usb_status = USBD_FAIL; + 659:Src/usbd_conf.c **** break; + 660:Src/usbd_conf.c **** } + 661:Src/usbd_conf.c **** return usb_status; + 662:Src/usbd_conf.c **** } + 1253 .loc 1 662 0 + 1254 @ sp needed + 1255 0016 10BD pop {r4, pc} + 1256 .LVL155: + 1257 .L88: + 646:Src/usbd_conf.c **** break; + 1258 .loc 1 646 0 + 1259 0018 0020 movs r0, #0 + 1260 .LVL156: + 1261 001a FCE7 b .L87 + 1262 .LVL157: + 1263 .L89: + 652:Src/usbd_conf.c **** break; + 1264 .loc 1 652 0 + 1265 001c 0120 movs r0, #1 + 1266 .LVL158: + 653:Src/usbd_conf.c **** case HAL_TIMEOUT : + 1267 .loc 1 653 0 + 1268 001e FAE7 b .L87 + 1269 .cfi_endproc + 1270 .LFE67: + 1272 .section .text.USBD_LL_PrepareReceive,"ax",%progbits + 1273 .align 1 + 1274 .global USBD_LL_PrepareReceive + 1275 .syntax unified + 1276 .code 16 + 1277 .thumb_func + 1278 .fpu softvfp + 1280 USBD_LL_PrepareReceive: + 1281 .LFB68: + 663:Src/usbd_conf.c **** + 664:Src/usbd_conf.c **** /** + 665:Src/usbd_conf.c **** * @brief Prepares an endpoint for reception. + 666:Src/usbd_conf.c **** * @param pdev: Device handle + 667:Src/usbd_conf.c **** * @param ep_addr: Endpoint number + 668:Src/usbd_conf.c **** * @param pbuf: Pointer to data to be received + 669:Src/usbd_conf.c **** * @param size: Data size + 670:Src/usbd_conf.c **** * @retval USBD status + 671:Src/usbd_conf.c **** */ + 672:Src/usbd_conf.c **** USBD_StatusTypeDef USBD_LL_PrepareReceive(USBD_HandleTypeDef *pdev, uint8_t ep_addr, uint8_t *pbuf, + ARM GAS /tmp/ccvOfDqw.s page 35 + + + 673:Src/usbd_conf.c **** { + 1282 .loc 1 673 0 + 1283 .cfi_startproc + 1284 @ args = 0, pretend = 0, frame = 0 + 1285 @ frame_needed = 0, uses_anonymous_args = 0 + 1286 .LVL159: + 1287 0000 10B5 push {r4, lr} + 1288 .LCFI25: + 1289 .cfi_def_cfa_offset 8 + 1290 .cfi_offset 4, -8 + 1291 .cfi_offset 14, -4 + 1292 .LVL160: + 674:Src/usbd_conf.c **** HAL_StatusTypeDef hal_status = HAL_OK; + 675:Src/usbd_conf.c **** USBD_StatusTypeDef usb_status = USBD_OK; + 676:Src/usbd_conf.c **** + 677:Src/usbd_conf.c **** hal_status = HAL_PCD_EP_Receive(pdev->pData, ep_addr, pbuf, size); + 1293 .loc 1 677 0 + 1294 0002 8824 movs r4, #136 + 1295 0004 A400 lsls r4, r4, #2 + 1296 0006 0059 ldr r0, [r0, r4] + 1297 .LVL161: + 1298 0008 FFF7FEFF bl HAL_PCD_EP_Receive + 1299 .LVL162: + 678:Src/usbd_conf.c **** + 679:Src/usbd_conf.c **** switch (hal_status) { + 1300 .loc 1 679 0 + 1301 000c 0028 cmp r0, #0 + 1302 000e 03D0 beq .L94 + 1303 0010 0228 cmp r0, #2 + 1304 0012 03D0 beq .L95 + 680:Src/usbd_conf.c **** case HAL_OK : + 681:Src/usbd_conf.c **** usb_status = USBD_OK; + 682:Src/usbd_conf.c **** break; + 683:Src/usbd_conf.c **** case HAL_ERROR : + 684:Src/usbd_conf.c **** usb_status = USBD_FAIL; + 1305 .loc 1 684 0 + 1306 0014 0220 movs r0, #2 + 1307 .LVL163: + 1308 .L93: + 685:Src/usbd_conf.c **** break; + 686:Src/usbd_conf.c **** case HAL_BUSY : + 687:Src/usbd_conf.c **** usb_status = USBD_BUSY; + 688:Src/usbd_conf.c **** break; + 689:Src/usbd_conf.c **** case HAL_TIMEOUT : + 690:Src/usbd_conf.c **** usb_status = USBD_FAIL; + 691:Src/usbd_conf.c **** break; + 692:Src/usbd_conf.c **** default : + 693:Src/usbd_conf.c **** usb_status = USBD_FAIL; + 694:Src/usbd_conf.c **** break; + 695:Src/usbd_conf.c **** } + 696:Src/usbd_conf.c **** return usb_status; + 697:Src/usbd_conf.c **** } + 1309 .loc 1 697 0 + 1310 @ sp needed + 1311 0016 10BD pop {r4, pc} + 1312 .LVL164: + 1313 .L94: + ARM GAS /tmp/ccvOfDqw.s page 36 + + + 681:Src/usbd_conf.c **** break; + 1314 .loc 1 681 0 + 1315 0018 0020 movs r0, #0 + 1316 .LVL165: + 1317 001a FCE7 b .L93 + 1318 .LVL166: + 1319 .L95: + 687:Src/usbd_conf.c **** break; + 1320 .loc 1 687 0 + 1321 001c 0120 movs r0, #1 + 1322 .LVL167: + 688:Src/usbd_conf.c **** case HAL_TIMEOUT : + 1323 .loc 1 688 0 + 1324 001e FAE7 b .L93 + 1325 .cfi_endproc + 1326 .LFE68: + 1328 .section .text.USBD_LL_GetRxDataSize,"ax",%progbits + 1329 .align 1 + 1330 .global USBD_LL_GetRxDataSize + 1331 .syntax unified + 1332 .code 16 + 1333 .thumb_func + 1334 .fpu softvfp + 1336 USBD_LL_GetRxDataSize: + 1337 .LFB69: + 698:Src/usbd_conf.c **** + 699:Src/usbd_conf.c **** /** + 700:Src/usbd_conf.c **** * @brief Returns the last transfered packet size. + 701:Src/usbd_conf.c **** * @param pdev: Device handle + 702:Src/usbd_conf.c **** * @param ep_addr: Endpoint number + 703:Src/usbd_conf.c **** * @retval Recived Data Size + 704:Src/usbd_conf.c **** */ + 705:Src/usbd_conf.c **** uint32_t USBD_LL_GetRxDataSize(USBD_HandleTypeDef *pdev, uint8_t ep_addr) + 706:Src/usbd_conf.c **** { + 1338 .loc 1 706 0 + 1339 .cfi_startproc + 1340 @ args = 0, pretend = 0, frame = 0 + 1341 @ frame_needed = 0, uses_anonymous_args = 0 + 1342 .LVL168: + 1343 0000 10B5 push {r4, lr} + 1344 .LCFI26: + 1345 .cfi_def_cfa_offset 8 + 1346 .cfi_offset 4, -8 + 1347 .cfi_offset 14, -4 + 707:Src/usbd_conf.c **** return HAL_PCD_EP_GetRxCount((PCD_HandleTypeDef*) pdev->pData, ep_addr); + 1348 .loc 1 707 0 + 1349 0002 8823 movs r3, #136 + 1350 0004 9B00 lsls r3, r3, #2 + 1351 0006 C058 ldr r0, [r0, r3] + 1352 .LVL169: + 1353 0008 FFF7FEFF bl HAL_PCD_EP_GetRxCount + 1354 .LVL170: + 708:Src/usbd_conf.c **** } + 1355 .loc 1 708 0 + 1356 @ sp needed + 1357 000c 10BD pop {r4, pc} + 1358 .cfi_endproc + ARM GAS /tmp/ccvOfDqw.s page 37 + + + 1359 .LFE69: + 1361 .section .text.USBD_LL_Delay,"ax",%progbits + 1362 .align 1 + 1363 .global USBD_LL_Delay + 1364 .syntax unified + 1365 .code 16 + 1366 .thumb_func + 1367 .fpu softvfp + 1369 USBD_LL_Delay: + 1370 .LFB70: + 709:Src/usbd_conf.c **** + 710:Src/usbd_conf.c **** /** + 711:Src/usbd_conf.c **** * @brief Delays routine for the USB device library. + 712:Src/usbd_conf.c **** * @param Delay: Delay in ms + 713:Src/usbd_conf.c **** * @retval None + 714:Src/usbd_conf.c **** */ + 715:Src/usbd_conf.c **** void USBD_LL_Delay(uint32_t Delay) + 716:Src/usbd_conf.c **** { + 1371 .loc 1 716 0 + 1372 .cfi_startproc + 1373 @ args = 0, pretend = 0, frame = 0 + 1374 @ frame_needed = 0, uses_anonymous_args = 0 + 1375 .LVL171: + 1376 0000 10B5 push {r4, lr} + 1377 .LCFI27: + 1378 .cfi_def_cfa_offset 8 + 1379 .cfi_offset 4, -8 + 1380 .cfi_offset 14, -4 + 717:Src/usbd_conf.c **** HAL_Delay(Delay); + 1381 .loc 1 717 0 + 1382 0002 FFF7FEFF bl HAL_Delay + 1383 .LVL172: + 718:Src/usbd_conf.c **** } + 1384 .loc 1 718 0 + 1385 @ sp needed + 1386 0006 10BD pop {r4, pc} + 1387 .cfi_endproc + 1388 .LFE70: + 1390 .section .text.USBD_static_free,"ax",%progbits + 1391 .align 1 + 1392 .global USBD_static_free + 1393 .syntax unified + 1394 .code 16 + 1395 .thumb_func + 1396 .fpu softvfp + 1398 USBD_static_free: + 1399 .LFB71: + 719:Src/usbd_conf.c **** + 720:Src/usbd_conf.c **** /** + 721:Src/usbd_conf.c **** * @brief Static single allocation. + 722:Src/usbd_conf.c **** * @param size: Size of allocated memory + 723:Src/usbd_conf.c **** * @retval None + 724:Src/usbd_conf.c **** */ + 725:Src/usbd_conf.c **** //void *USBD_static_malloc(uint32_t size) + 726:Src/usbd_conf.c **** //{ + 727:Src/usbd_conf.c **** // static uint32_t mem[(sizeof(USBD_CDC_HandleTypeDef)/4)+1];/* On 32-bit boundary */ + 728:Src/usbd_conf.c **** // return mem; + ARM GAS /tmp/ccvOfDqw.s page 38 + + + 729:Src/usbd_conf.c **** //} + 730:Src/usbd_conf.c **** + 731:Src/usbd_conf.c **** /** + 732:Src/usbd_conf.c **** * @brief Dummy memory free + 733:Src/usbd_conf.c **** * @param p: Pointer to allocated memory address + 734:Src/usbd_conf.c **** * @retval None + 735:Src/usbd_conf.c **** */ + 736:Src/usbd_conf.c **** void USBD_static_free(void *p) + 737:Src/usbd_conf.c **** { + 1400 .loc 1 737 0 + 1401 .cfi_startproc + 1402 @ args = 0, pretend = 0, frame = 0 + 1403 @ frame_needed = 0, uses_anonymous_args = 0 + 1404 @ link register save eliminated. + 1405 .LVL173: + 738:Src/usbd_conf.c **** + 739:Src/usbd_conf.c **** } + 1406 .loc 1 739 0 + 1407 @ sp needed + 1408 0000 7047 bx lr + 1409 .cfi_endproc + 1410 .LFE71: + 1412 .section .text.HAL_PCDEx_SetConnectionState,"ax",%progbits + 1413 .align 1 + 1414 .global HAL_PCDEx_SetConnectionState + 1415 .syntax unified + 1416 .code 16 + 1417 .thumb_func + 1418 .fpu softvfp + 1420 HAL_PCDEx_SetConnectionState: + 1421 .LFB72: + 740:Src/usbd_conf.c **** + 741:Src/usbd_conf.c **** /* USER CODE BEGIN 5 */ + 742:Src/usbd_conf.c **** /** + 743:Src/usbd_conf.c **** * @brief Configures system clock after wake-up from USB Resume CallBack: + 744:Src/usbd_conf.c **** * enable HSI, PLL and select PLL as system clock source. + 745:Src/usbd_conf.c **** * @retval None + 746:Src/usbd_conf.c **** */ + 747:Src/usbd_conf.c **** //static void SystemClockConfig_Resume(void) + 748:Src/usbd_conf.c **** //{ + 749:Src/usbd_conf.c **** // SystemClock_Config(); + 750:Src/usbd_conf.c **** //} + 751:Src/usbd_conf.c **** /* USER CODE END 5 */ + 752:Src/usbd_conf.c **** + 753:Src/usbd_conf.c **** /** + 754:Src/usbd_conf.c **** * @brief Software device connection + 755:Src/usbd_conf.c **** * @param hpcd: PCD handle + 756:Src/usbd_conf.c **** * @param state: Connection state (0: disconnected / 1: connected) + 757:Src/usbd_conf.c **** * @retval None + 758:Src/usbd_conf.c **** */ + 759:Src/usbd_conf.c **** void HAL_PCDEx_SetConnectionState(PCD_HandleTypeDef *hpcd, uint8_t state) + 760:Src/usbd_conf.c **** { + 1422 .loc 1 760 0 + 1423 .cfi_startproc + 1424 @ args = 0, pretend = 0, frame = 0 + 1425 @ frame_needed = 0, uses_anonymous_args = 0 + 1426 @ link register save eliminated. + ARM GAS /tmp/ccvOfDqw.s page 39 + + + 1427 .LVL174: + 761:Src/usbd_conf.c **** /* USER CODE BEGIN 6 */ + 762:Src/usbd_conf.c **** if (state == 1) + 763:Src/usbd_conf.c **** { + 764:Src/usbd_conf.c **** /* Configure Low connection state. */ + 765:Src/usbd_conf.c **** + 766:Src/usbd_conf.c **** } + 767:Src/usbd_conf.c **** else + 768:Src/usbd_conf.c **** { + 769:Src/usbd_conf.c **** /* Configure High connection state */ + 770:Src/usbd_conf.c **** + 771:Src/usbd_conf.c **** } + 772:Src/usbd_conf.c **** /* USER CODE END 6 */ + 773:Src/usbd_conf.c **** } + 1428 .loc 1 773 0 + 1429 @ sp needed + 1430 0000 7047 bx lr + 1431 .cfi_endproc + 1432 .LFE72: + 1434 .comm hpcd_USB_FS,628,4 + 1435 .text + 1436 .Letext0: + 1437 .file 2 "/usr/include/newlib/machine/_default_types.h" + 1438 .file 3 "/usr/include/newlib/sys/_stdint.h" + 1439 .file 4 "Drivers/CMSIS/Include/core_cm0.h" + 1440 .file 5 "Drivers/CMSIS/Device/ST/STM32F0xx/Include/system_stm32f0xx.h" + 1441 .file 6 "Drivers/CMSIS/Device/ST/STM32F0xx/Include/stm32f072xb.h" + 1442 .file 7 "Drivers/CMSIS/Device/ST/STM32F0xx/Include/stm32f0xx.h" + 1443 .file 8 "Drivers/STM32F0xx_HAL_Driver/Inc/stm32f0xx_hal_def.h" + 1444 .file 9 "Drivers/STM32F0xx_HAL_Driver/Inc/stm32f0xx_ll_usb.h" + 1445 .file 10 "Drivers/STM32F0xx_HAL_Driver/Inc/stm32f0xx_hal_pcd.h" + 1446 .file 11 "Drivers/STM32F0xx_HAL_Driver/Inc/stm32f0xx_hal.h" + 1447 .file 12 "/usr/include/newlib/sys/lock.h" + 1448 .file 13 "/usr/include/newlib/sys/_types.h" + 1449 .file 14 "/usr/lib/gcc/arm-none-eabi/7.3.1/include/stddef.h" + 1450 .file 15 "/usr/include/newlib/sys/reent.h" + 1451 .file 16 "/usr/include/newlib/stdlib.h" + 1452 .file 17 "Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h" + 1453 .file 18 "Drivers/STM32F0xx_HAL_Driver/Inc/stm32f0xx_hal_pcd_ex.h" + 1454 .file 19 "Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_core.h" + 1455 .file 20 "Drivers/STM32F0xx_HAL_Driver/Inc/stm32f0xx_hal_cortex.h" + ARM GAS /tmp/ccvOfDqw.s page 40 + + +DEFINED SYMBOLS + *ABS*:0000000000000000 usbd_conf.c + /tmp/ccvOfDqw.s:16 .text.HAL_PCD_MspInit:0000000000000000 $t + /tmp/ccvOfDqw.s:23 .text.HAL_PCD_MspInit:0000000000000000 HAL_PCD_MspInit + /tmp/ccvOfDqw.s:80 .text.HAL_PCD_MspInit:0000000000000038 $d + /tmp/ccvOfDqw.s:86 .text.HAL_PCD_MspDeInit:0000000000000000 $t + /tmp/ccvOfDqw.s:93 .text.HAL_PCD_MspDeInit:0000000000000000 HAL_PCD_MspDeInit + /tmp/ccvOfDqw.s:133 .text.HAL_PCD_MspDeInit:0000000000000020 $d + /tmp/ccvOfDqw.s:140 .text.HAL_PCD_SetupStageCallback:0000000000000000 $t + /tmp/ccvOfDqw.s:147 .text.HAL_PCD_SetupStageCallback:0000000000000000 HAL_PCD_SetupStageCallback + /tmp/ccvOfDqw.s:178 .text.HAL_PCD_DataOutStageCallback:0000000000000000 $t + /tmp/ccvOfDqw.s:185 .text.HAL_PCD_DataOutStageCallback:0000000000000000 HAL_PCD_DataOutStageCallback + /tmp/ccvOfDqw.s:218 .text.HAL_PCD_DataInStageCallback:0000000000000000 $t + /tmp/ccvOfDqw.s:225 .text.HAL_PCD_DataInStageCallback:0000000000000000 HAL_PCD_DataInStageCallback + /tmp/ccvOfDqw.s:256 .text.HAL_PCD_SOFCallback:0000000000000000 $t + /tmp/ccvOfDqw.s:263 .text.HAL_PCD_SOFCallback:0000000000000000 HAL_PCD_SOFCallback + /tmp/ccvOfDqw.s:289 .text.HAL_PCD_ResetCallback:0000000000000000 $t + /tmp/ccvOfDqw.s:296 .text.HAL_PCD_ResetCallback:0000000000000000 HAL_PCD_ResetCallback + /tmp/ccvOfDqw.s:332 .text.HAL_PCD_SuspendCallback:0000000000000000 $t + /tmp/ccvOfDqw.s:339 .text.HAL_PCD_SuspendCallback:0000000000000000 HAL_PCD_SuspendCallback + /tmp/ccvOfDqw.s:377 .text.HAL_PCD_SuspendCallback:0000000000000020 $d + /tmp/ccvOfDqw.s:382 .text.HAL_PCD_ResumeCallback:0000000000000000 $t + /tmp/ccvOfDqw.s:389 .text.HAL_PCD_ResumeCallback:0000000000000000 HAL_PCD_ResumeCallback + /tmp/ccvOfDqw.s:415 .text.HAL_PCD_ISOOUTIncompleteCallback:0000000000000000 $t + /tmp/ccvOfDqw.s:422 .text.HAL_PCD_ISOOUTIncompleteCallback:0000000000000000 HAL_PCD_ISOOUTIncompleteCallback + /tmp/ccvOfDqw.s:448 .text.HAL_PCD_ISOINIncompleteCallback:0000000000000000 $t + /tmp/ccvOfDqw.s:455 .text.HAL_PCD_ISOINIncompleteCallback:0000000000000000 HAL_PCD_ISOINIncompleteCallback + /tmp/ccvOfDqw.s:481 .text.HAL_PCD_ConnectCallback:0000000000000000 $t + /tmp/ccvOfDqw.s:488 .text.HAL_PCD_ConnectCallback:0000000000000000 HAL_PCD_ConnectCallback + /tmp/ccvOfDqw.s:514 .text.HAL_PCD_DisconnectCallback:0000000000000000 $t + /tmp/ccvOfDqw.s:521 .text.HAL_PCD_DisconnectCallback:0000000000000000 HAL_PCD_DisconnectCallback + /tmp/ccvOfDqw.s:547 .text.USBD_LL_Init:0000000000000000 $t + /tmp/ccvOfDqw.s:554 .text.USBD_LL_Init:0000000000000000 USBD_LL_Init + /tmp/ccvOfDqw.s:647 .text.USBD_LL_Init:0000000000000074 $d + *COM*:0000000000000274 hpcd_USB_FS + /tmp/ccvOfDqw.s:653 .text.USBD_LL_DeInit:0000000000000000 $t + /tmp/ccvOfDqw.s:660 .text.USBD_LL_DeInit:0000000000000000 USBD_LL_DeInit + /tmp/ccvOfDqw.s:709 .text.USBD_LL_Start:0000000000000000 $t + /tmp/ccvOfDqw.s:716 .text.USBD_LL_Start:0000000000000000 USBD_LL_Start + /tmp/ccvOfDqw.s:765 .text.USBD_LL_Stop:0000000000000000 $t + /tmp/ccvOfDqw.s:772 .text.USBD_LL_Stop:0000000000000000 USBD_LL_Stop + /tmp/ccvOfDqw.s:821 .text.USBD_LL_OpenEP:0000000000000000 $t + /tmp/ccvOfDqw.s:828 .text.USBD_LL_OpenEP:0000000000000000 USBD_LL_OpenEP + /tmp/ccvOfDqw.s:881 .text.USBD_LL_CloseEP:0000000000000000 $t + /tmp/ccvOfDqw.s:888 .text.USBD_LL_CloseEP:0000000000000000 USBD_LL_CloseEP + /tmp/ccvOfDqw.s:937 .text.USBD_LL_FlushEP:0000000000000000 $t + /tmp/ccvOfDqw.s:944 .text.USBD_LL_FlushEP:0000000000000000 USBD_LL_FlushEP + /tmp/ccvOfDqw.s:993 .text.USBD_LL_StallEP:0000000000000000 $t + /tmp/ccvOfDqw.s:1000 .text.USBD_LL_StallEP:0000000000000000 USBD_LL_StallEP + /tmp/ccvOfDqw.s:1049 .text.USBD_LL_ClearStallEP:0000000000000000 $t + /tmp/ccvOfDqw.s:1056 .text.USBD_LL_ClearStallEP:0000000000000000 USBD_LL_ClearStallEP + /tmp/ccvOfDqw.s:1105 .text.USBD_LL_IsStallEP:0000000000000000 $t + /tmp/ccvOfDqw.s:1112 .text.USBD_LL_IsStallEP:0000000000000000 USBD_LL_IsStallEP + /tmp/ccvOfDqw.s:1161 .text.USBD_LL_SetUSBAddress:0000000000000000 $t + /tmp/ccvOfDqw.s:1168 .text.USBD_LL_SetUSBAddress:0000000000000000 USBD_LL_SetUSBAddress + /tmp/ccvOfDqw.s:1217 .text.USBD_LL_Transmit:0000000000000000 $t + /tmp/ccvOfDqw.s:1224 .text.USBD_LL_Transmit:0000000000000000 USBD_LL_Transmit + ARM GAS /tmp/ccvOfDqw.s page 41 + + + /tmp/ccvOfDqw.s:1273 .text.USBD_LL_PrepareReceive:0000000000000000 $t + /tmp/ccvOfDqw.s:1280 .text.USBD_LL_PrepareReceive:0000000000000000 USBD_LL_PrepareReceive + /tmp/ccvOfDqw.s:1329 .text.USBD_LL_GetRxDataSize:0000000000000000 $t + /tmp/ccvOfDqw.s:1336 .text.USBD_LL_GetRxDataSize:0000000000000000 USBD_LL_GetRxDataSize + /tmp/ccvOfDqw.s:1362 .text.USBD_LL_Delay:0000000000000000 $t + /tmp/ccvOfDqw.s:1369 .text.USBD_LL_Delay:0000000000000000 USBD_LL_Delay + /tmp/ccvOfDqw.s:1391 .text.USBD_static_free:0000000000000000 $t + /tmp/ccvOfDqw.s:1398 .text.USBD_static_free:0000000000000000 USBD_static_free + /tmp/ccvOfDqw.s:1413 .text.HAL_PCDEx_SetConnectionState:0000000000000000 $t + /tmp/ccvOfDqw.s:1420 .text.HAL_PCDEx_SetConnectionState:0000000000000000 HAL_PCDEx_SetConnectionState + +UNDEFINED SYMBOLS +HAL_NVIC_SetPriority +HAL_NVIC_EnableIRQ +HAL_NVIC_DisableIRQ +USBD_LL_SetupStage +USBD_LL_DataOutStage +USBD_LL_DataInStage +USBD_LL_SOF +USBD_LL_SetSpeed +USBD_LL_Reset +USBD_LL_Suspend +USBD_LL_Resume +USBD_LL_IsoOUTIncomplete +USBD_LL_IsoINIncomplete +USBD_LL_DevConnected +USBD_LL_DevDisconnected +HAL_PCD_Init +HAL_PCDEx_PMAConfig +HAL_PCD_DeInit +HAL_PCD_Start +HAL_PCD_Stop +HAL_PCD_EP_Open +HAL_PCD_EP_Close +HAL_PCD_EP_Flush +HAL_PCD_EP_SetStall +HAL_PCD_EP_ClrStall +HAL_PCD_SetAddress +HAL_PCD_EP_Transmit +HAL_PCD_EP_Receive +HAL_PCD_EP_GetRxCount +HAL_Delay -- cgit