ARM GAS /tmp/ccJPteqL.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 "stm32g4xx_hal_pcd.c" 16 .text 17 .Ltext0: 18 .cfi_sections .debug_frame 19 .file 1 "Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c" 20 .section .text.HAL_PCD_EP_DB_Receive,"ax",%progbits 21 .align 1 22 .syntax unified 23 .thumb 24 .thumb_func 26 HAL_PCD_EP_DB_Receive: 27 .LVL0: 28 .LFB362: 1:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /** 2:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ****************************************************************************** 3:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @file stm32g4xx_hal_pcd.c 4:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @author MCD Application Team 5:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @brief PCD HAL module driver. 6:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * This file provides firmware functions to manage the following 7:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * functionalities of the USB Peripheral Controller: 8:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * + Initialization and de-initialization functions 9:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * + IO operation functions 10:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * + Peripheral Control functions 11:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * + Peripheral State functions 12:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * 13:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ****************************************************************************** 14:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @attention 15:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * 16:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * Copyright (c) 2019 STMicroelectronics. 17:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * All rights reserved. 18:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * 19:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * This software is licensed under terms that can be found in the LICENSE file 20:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * in the root directory of this software component. 21:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * If no LICENSE file comes with this software, it is provided AS-IS. 22:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * 23:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ****************************************************************************** 24:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** @verbatim 25:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ============================================================================== 26:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ##### How to use this driver ##### 27:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ============================================================================== 28:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** [..] 29:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** The PCD HAL driver can be used as follows: 30:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ARM GAS /tmp/ccJPteqL.s page 2 31:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** (#) Declare a PCD_HandleTypeDef handle structure, for example: 32:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_HandleTypeDef hpcd; 33:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 34:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** (#) Fill parameters of Init structure in HCD handle 35:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 36:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** (#) Call HAL_PCD_Init() API to initialize the PCD peripheral (Core, Device core, ...) 37:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 38:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** (#) Initialize the PCD low level resources through the HAL_PCD_MspInit() API: 39:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** (##) Enable the PCD/USB Low Level interface clock using 40:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** (+++) __HAL_RCC_USB_CLK_ENABLE(); For USB Device only FS peripheral 41:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 42:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** (##) Initialize the related GPIO clocks 43:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** (##) Configure PCD pin-out 44:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** (##) Configure PCD NVIC interrupt 45:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 46:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** (#)Associate the Upper USB device stack to the HAL PCD Driver: 47:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** (##) hpcd.pData = pdev; 48:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 49:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** (#)Enable PCD transmission and reception: 50:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** (##) HAL_PCD_Start(); 51:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 52:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** @endverbatim 53:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ****************************************************************************** 54:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** */ 55:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 56:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Includes ------------------------------------------------------------------*/ 57:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** #include "stm32g4xx_hal.h" 58:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 59:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /** @addtogroup STM32G4xx_HAL_Driver 60:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @{ 61:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** */ 62:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 63:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /** @defgroup PCD PCD 64:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @brief PCD HAL module driver 65:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @{ 66:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** */ 67:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 68:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** #ifdef HAL_PCD_MODULE_ENABLED 69:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 70:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** #if defined (USB) 71:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 72:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Private types -------------------------------------------------------------*/ 73:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Private variables ---------------------------------------------------------*/ 74:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Private constants ---------------------------------------------------------*/ 75:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Private macros ------------------------------------------------------------*/ 76:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /** @defgroup PCD_Private_Macros PCD Private Macros 77:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @{ 78:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** */ 79:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** #define PCD_MIN(a, b) (((a) < (b)) ? (a) : (b)) 80:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** #define PCD_MAX(a, b) (((a) > (b)) ? (a) : (b)) 81:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /** 82:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @} 83:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** */ 84:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 85:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Private functions prototypes ----------------------------------------------*/ 86:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /** @defgroup PCD_Private_Functions PCD Private Functions 87:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @{ ARM GAS /tmp/ccJPteqL.s page 3 88:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** */ 89:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 90:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** static HAL_StatusTypeDef PCD_EP_ISR_Handler(PCD_HandleTypeDef *hpcd); 91:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** #if (USE_USB_DOUBLE_BUFFER == 1U) 92:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** static HAL_StatusTypeDef HAL_PCD_EP_DB_Transmit(PCD_HandleTypeDef *hpcd, PCD_EPTypeDef *ep, uint16_ 93:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** static uint16_t HAL_PCD_EP_DB_Receive(PCD_HandleTypeDef *hpcd, PCD_EPTypeDef *ep, uint16_t wEPVal); 94:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** #endif /* (USE_USB_DOUBLE_BUFFER == 1U) */ 95:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 96:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /** 97:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @} 98:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** */ 99:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 100:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Exported functions --------------------------------------------------------*/ 101:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /** @defgroup PCD_Exported_Functions PCD Exported Functions 102:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @{ 103:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** */ 104:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 105:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /** @defgroup PCD_Exported_Functions_Group1 Initialization and de-initialization functions 106:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @brief Initialization and Configuration functions 107:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * 108:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** @verbatim 109:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** =============================================================================== 110:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ##### Initialization and de-initialization functions ##### 111:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** =============================================================================== 112:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** [..] This section provides functions allowing to: 113:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 114:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** @endverbatim 115:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @{ 116:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** */ 117:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 118:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /** 119:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @brief Initializes the PCD according to the specified 120:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * parameters in the PCD_InitTypeDef and initialize the associated handle. 121:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @param hpcd PCD handle 122:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @retval HAL status 123:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** */ 124:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** HAL_StatusTypeDef HAL_PCD_Init(PCD_HandleTypeDef *hpcd) 125:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 126:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** uint8_t i; 127:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 128:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Check the PCD handle allocation */ 129:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** if (hpcd == NULL) 130:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 131:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** return HAL_ERROR; 132:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 133:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 134:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Check the parameters */ 135:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** assert_param(IS_PCD_ALL_INSTANCE(hpcd->Instance)); 136:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 137:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** if (hpcd->State == HAL_PCD_STATE_RESET) 138:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 139:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Allocate lock resource and initialize it */ 140:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->Lock = HAL_UNLOCKED; 141:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 142:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** #if (USE_HAL_PCD_REGISTER_CALLBACKS == 1U) 143:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->SOFCallback = HAL_PCD_SOFCallback; 144:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->SetupStageCallback = HAL_PCD_SetupStageCallback; ARM GAS /tmp/ccJPteqL.s page 4 145:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->ResetCallback = HAL_PCD_ResetCallback; 146:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->SuspendCallback = HAL_PCD_SuspendCallback; 147:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->ResumeCallback = HAL_PCD_ResumeCallback; 148:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->ConnectCallback = HAL_PCD_ConnectCallback; 149:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->DisconnectCallback = HAL_PCD_DisconnectCallback; 150:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->DataOutStageCallback = HAL_PCD_DataOutStageCallback; 151:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->DataInStageCallback = HAL_PCD_DataInStageCallback; 152:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->ISOOUTIncompleteCallback = HAL_PCD_ISOOUTIncompleteCallback; 153:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->ISOINIncompleteCallback = HAL_PCD_ISOINIncompleteCallback; 154:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->LPMCallback = HAL_PCDEx_LPM_Callback; 155:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->BCDCallback = HAL_PCDEx_BCD_Callback; 156:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 157:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** if (hpcd->MspInitCallback == NULL) 158:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 159:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->MspInitCallback = HAL_PCD_MspInit; 160:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 161:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 162:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Init the low level hardware */ 163:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->MspInitCallback(hpcd); 164:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** #else 165:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Init the low level hardware : GPIO, CLOCK, NVIC... */ 166:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** HAL_PCD_MspInit(hpcd); 167:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** #endif /* (USE_HAL_PCD_REGISTER_CALLBACKS) */ 168:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 169:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 170:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->State = HAL_PCD_STATE_BUSY; 171:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 172:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Disable the Interrupts */ 173:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __HAL_PCD_DISABLE(hpcd); 174:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 175:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Init endpoints structures */ 176:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** for (i = 0U; i < hpcd->Init.dev_endpoints; i++) 177:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 178:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Init ep structure */ 179:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->IN_ep[i].is_in = 1U; 180:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->IN_ep[i].num = i; 181:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->IN_ep[i].tx_fifo_num = i; 182:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Control until ep is activated */ 183:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->IN_ep[i].type = EP_TYPE_CTRL; 184:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->IN_ep[i].maxpacket = 0U; 185:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->IN_ep[i].xfer_buff = 0U; 186:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->IN_ep[i].xfer_len = 0U; 187:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 188:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 189:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** for (i = 0U; i < hpcd->Init.dev_endpoints; i++) 190:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 191:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->OUT_ep[i].is_in = 0U; 192:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->OUT_ep[i].num = i; 193:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Control until ep is activated */ 194:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->OUT_ep[i].type = EP_TYPE_CTRL; 195:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->OUT_ep[i].maxpacket = 0U; 196:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->OUT_ep[i].xfer_buff = 0U; 197:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->OUT_ep[i].xfer_len = 0U; 198:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 199:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 200:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Init Device */ 201:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** (void)USB_DevInit(hpcd->Instance, hpcd->Init); ARM GAS /tmp/ccJPteqL.s page 5 202:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 203:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->USB_Address = 0U; 204:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->State = HAL_PCD_STATE_READY; 205:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 206:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Activate LPM */ 207:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** if (hpcd->Init.lpm_enable == 1U) 208:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 209:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** (void)HAL_PCDEx_ActivateLPM(hpcd); 210:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 211:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 212:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** return HAL_OK; 213:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 214:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 215:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /** 216:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @brief DeInitializes the PCD peripheral. 217:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @param hpcd PCD handle 218:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @retval HAL status 219:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** */ 220:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** HAL_StatusTypeDef HAL_PCD_DeInit(PCD_HandleTypeDef *hpcd) 221:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 222:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Check the PCD handle allocation */ 223:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** if (hpcd == NULL) 224:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 225:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** return HAL_ERROR; 226:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 227:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 228:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->State = HAL_PCD_STATE_BUSY; 229:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 230:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Stop Device */ 231:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** if (USB_StopDevice(hpcd->Instance) != HAL_OK) 232:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 233:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** return HAL_ERROR; 234:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 235:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 236:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** #if (USE_HAL_PCD_REGISTER_CALLBACKS == 1U) 237:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** if (hpcd->MspDeInitCallback == NULL) 238:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 239:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->MspDeInitCallback = HAL_PCD_MspDeInit; /* Legacy weak MspDeInit */ 240:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 241:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 242:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* DeInit the low level hardware */ 243:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->MspDeInitCallback(hpcd); 244:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** #else 245:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* DeInit the low level hardware: CLOCK, NVIC.*/ 246:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** HAL_PCD_MspDeInit(hpcd); 247:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** #endif /* USE_HAL_PCD_REGISTER_CALLBACKS */ 248:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 249:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->State = HAL_PCD_STATE_RESET; 250:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 251:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** return HAL_OK; 252:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 253:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 254:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /** 255:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @brief Initializes the PCD MSP. 256:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @param hpcd PCD handle 257:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @retval None 258:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** */ ARM GAS /tmp/ccJPteqL.s page 6 259:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __weak void HAL_PCD_MspInit(PCD_HandleTypeDef *hpcd) 260:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 261:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Prevent unused argument(s) compilation warning */ 262:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** UNUSED(hpcd); 263:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 264:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* NOTE : This function should not be modified, when the callback is needed, 265:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** the HAL_PCD_MspInit could be implemented in the user file 266:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** */ 267:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 268:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 269:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /** 270:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @brief DeInitializes PCD MSP. 271:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @param hpcd PCD handle 272:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @retval None 273:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** */ 274:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __weak void HAL_PCD_MspDeInit(PCD_HandleTypeDef *hpcd) 275:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 276:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Prevent unused argument(s) compilation warning */ 277:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** UNUSED(hpcd); 278:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 279:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* NOTE : This function should not be modified, when the callback is needed, 280:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** the HAL_PCD_MspDeInit could be implemented in the user file 281:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** */ 282:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 283:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 284:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** #if (USE_HAL_PCD_REGISTER_CALLBACKS == 1U) 285:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /** 286:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @brief Register a User USB PCD Callback 287:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * To be used instead of the weak predefined callback 288:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @param hpcd USB PCD handle 289:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @param CallbackID ID of the callback to be registered 290:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * This parameter can be one of the following values: 291:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @arg @ref HAL_PCD_SOF_CB_ID USB PCD SOF callback ID 292:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @arg @ref HAL_PCD_SETUPSTAGE_CB_ID USB PCD Setup callback ID 293:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @arg @ref HAL_PCD_RESET_CB_ID USB PCD Reset callback ID 294:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @arg @ref HAL_PCD_SUSPEND_CB_ID USB PCD Suspend callback ID 295:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @arg @ref HAL_PCD_RESUME_CB_ID USB PCD Resume callback ID 296:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @arg @ref HAL_PCD_CONNECT_CB_ID USB PCD Connect callback ID 297:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @arg @ref HAL_PCD_DISCONNECT_CB_ID OTG PCD Disconnect callback ID 298:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @arg @ref HAL_PCD_MSPINIT_CB_ID MspDeInit callback ID 299:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @arg @ref HAL_PCD_MSPDEINIT_CB_ID MspDeInit callback ID 300:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @param pCallback pointer to the Callback function 301:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @retval HAL status 302:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** */ 303:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** HAL_StatusTypeDef HAL_PCD_RegisterCallback(PCD_HandleTypeDef *hpcd, 304:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** HAL_PCD_CallbackIDTypeDef CallbackID, 305:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** pPCD_CallbackTypeDef pCallback) 306:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 307:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** HAL_StatusTypeDef status = HAL_OK; 308:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 309:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** if (pCallback == NULL) 310:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 311:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Update the error code */ 312:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->ErrorCode |= HAL_PCD_ERROR_INVALID_CALLBACK; 313:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** return HAL_ERROR; 314:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 315:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Process locked */ ARM GAS /tmp/ccJPteqL.s page 7 316:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __HAL_LOCK(hpcd); 317:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 318:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** if (hpcd->State == HAL_PCD_STATE_READY) 319:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 320:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** switch (CallbackID) 321:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 322:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** case HAL_PCD_SOF_CB_ID : 323:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->SOFCallback = pCallback; 324:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** break; 325:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 326:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** case HAL_PCD_SETUPSTAGE_CB_ID : 327:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->SetupStageCallback = pCallback; 328:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** break; 329:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 330:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** case HAL_PCD_RESET_CB_ID : 331:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->ResetCallback = pCallback; 332:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** break; 333:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 334:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** case HAL_PCD_SUSPEND_CB_ID : 335:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->SuspendCallback = pCallback; 336:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** break; 337:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 338:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** case HAL_PCD_RESUME_CB_ID : 339:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->ResumeCallback = pCallback; 340:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** break; 341:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 342:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** case HAL_PCD_CONNECT_CB_ID : 343:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->ConnectCallback = pCallback; 344:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** break; 345:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 346:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** case HAL_PCD_DISCONNECT_CB_ID : 347:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->DisconnectCallback = pCallback; 348:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** break; 349:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 350:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** case HAL_PCD_MSPINIT_CB_ID : 351:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->MspInitCallback = pCallback; 352:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** break; 353:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 354:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** case HAL_PCD_MSPDEINIT_CB_ID : 355:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->MspDeInitCallback = pCallback; 356:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** break; 357:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 358:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** default : 359:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Update the error code */ 360:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->ErrorCode |= HAL_PCD_ERROR_INVALID_CALLBACK; 361:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Return error status */ 362:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** status = HAL_ERROR; 363:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** break; 364:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 365:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 366:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** else if (hpcd->State == HAL_PCD_STATE_RESET) 367:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 368:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** switch (CallbackID) 369:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 370:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** case HAL_PCD_MSPINIT_CB_ID : 371:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->MspInitCallback = pCallback; 372:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** break; ARM GAS /tmp/ccJPteqL.s page 8 373:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 374:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** case HAL_PCD_MSPDEINIT_CB_ID : 375:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->MspDeInitCallback = pCallback; 376:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** break; 377:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 378:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** default : 379:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Update the error code */ 380:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->ErrorCode |= HAL_PCD_ERROR_INVALID_CALLBACK; 381:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Return error status */ 382:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** status = HAL_ERROR; 383:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** break; 384:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 385:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 386:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** else 387:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 388:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Update the error code */ 389:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->ErrorCode |= HAL_PCD_ERROR_INVALID_CALLBACK; 390:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Return error status */ 391:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** status = HAL_ERROR; 392:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 393:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 394:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Release Lock */ 395:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __HAL_UNLOCK(hpcd); 396:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** return status; 397:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 398:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 399:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /** 400:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @brief Unregister an USB PCD Callback 401:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * USB PCD callabck is redirected to the weak predefined callback 402:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @param hpcd USB PCD handle 403:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @param CallbackID ID of the callback to be unregistered 404:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * This parameter can be one of the following values: 405:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @arg @ref HAL_PCD_SOF_CB_ID USB PCD SOF callback ID 406:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @arg @ref HAL_PCD_SETUPSTAGE_CB_ID USB PCD Setup callback ID 407:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @arg @ref HAL_PCD_RESET_CB_ID USB PCD Reset callback ID 408:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @arg @ref HAL_PCD_SUSPEND_CB_ID USB PCD Suspend callback ID 409:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @arg @ref HAL_PCD_RESUME_CB_ID USB PCD Resume callback ID 410:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @arg @ref HAL_PCD_CONNECT_CB_ID USB PCD Connect callback ID 411:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @arg @ref HAL_PCD_DISCONNECT_CB_ID OTG PCD Disconnect callback ID 412:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @arg @ref HAL_PCD_MSPINIT_CB_ID MspDeInit callback ID 413:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @arg @ref HAL_PCD_MSPDEINIT_CB_ID MspDeInit callback ID 414:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @retval HAL status 415:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** */ 416:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** HAL_StatusTypeDef HAL_PCD_UnRegisterCallback(PCD_HandleTypeDef *hpcd, HAL_PCD_CallbackIDTypeDef Cal 417:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 418:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** HAL_StatusTypeDef status = HAL_OK; 419:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 420:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Process locked */ 421:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __HAL_LOCK(hpcd); 422:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 423:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Setup Legacy weak Callbacks */ 424:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** if (hpcd->State == HAL_PCD_STATE_READY) 425:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 426:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** switch (CallbackID) 427:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 428:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** case HAL_PCD_SOF_CB_ID : 429:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->SOFCallback = HAL_PCD_SOFCallback; ARM GAS /tmp/ccJPteqL.s page 9 430:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** break; 431:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 432:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** case HAL_PCD_SETUPSTAGE_CB_ID : 433:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->SetupStageCallback = HAL_PCD_SetupStageCallback; 434:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** break; 435:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 436:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** case HAL_PCD_RESET_CB_ID : 437:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->ResetCallback = HAL_PCD_ResetCallback; 438:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** break; 439:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 440:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** case HAL_PCD_SUSPEND_CB_ID : 441:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->SuspendCallback = HAL_PCD_SuspendCallback; 442:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** break; 443:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 444:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** case HAL_PCD_RESUME_CB_ID : 445:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->ResumeCallback = HAL_PCD_ResumeCallback; 446:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** break; 447:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 448:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** case HAL_PCD_CONNECT_CB_ID : 449:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->ConnectCallback = HAL_PCD_ConnectCallback; 450:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** break; 451:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 452:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** case HAL_PCD_DISCONNECT_CB_ID : 453:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->DisconnectCallback = HAL_PCD_DisconnectCallback; 454:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** break; 455:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 456:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** case HAL_PCD_MSPINIT_CB_ID : 457:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->MspInitCallback = HAL_PCD_MspInit; 458:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** break; 459:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 460:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** case HAL_PCD_MSPDEINIT_CB_ID : 461:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->MspDeInitCallback = HAL_PCD_MspDeInit; 462:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** break; 463:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 464:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** default : 465:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Update the error code */ 466:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->ErrorCode |= HAL_PCD_ERROR_INVALID_CALLBACK; 467:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 468:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Return error status */ 469:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** status = HAL_ERROR; 470:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** break; 471:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 472:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 473:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** else if (hpcd->State == HAL_PCD_STATE_RESET) 474:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 475:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** switch (CallbackID) 476:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 477:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** case HAL_PCD_MSPINIT_CB_ID : 478:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->MspInitCallback = HAL_PCD_MspInit; 479:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** break; 480:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 481:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** case HAL_PCD_MSPDEINIT_CB_ID : 482:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->MspDeInitCallback = HAL_PCD_MspDeInit; 483:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** break; 484:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 485:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** default : 486:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Update the error code */ ARM GAS /tmp/ccJPteqL.s page 10 487:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->ErrorCode |= HAL_PCD_ERROR_INVALID_CALLBACK; 488:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 489:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Return error status */ 490:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** status = HAL_ERROR; 491:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** break; 492:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 493:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 494:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** else 495:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 496:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Update the error code */ 497:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->ErrorCode |= HAL_PCD_ERROR_INVALID_CALLBACK; 498:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 499:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Return error status */ 500:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** status = HAL_ERROR; 501:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 502:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 503:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Release Lock */ 504:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __HAL_UNLOCK(hpcd); 505:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** return status; 506:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 507:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 508:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /** 509:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @brief Register USB PCD Data OUT Stage Callback 510:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * To be used instead of the weak HAL_PCD_DataOutStageCallback() predefined callback 511:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @param hpcd PCD handle 512:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @param pCallback pointer to the USB PCD Data OUT Stage Callback function 513:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @retval HAL status 514:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** */ 515:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** HAL_StatusTypeDef HAL_PCD_RegisterDataOutStageCallback(PCD_HandleTypeDef *hpcd, 516:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** pPCD_DataOutStageCallbackTypeDef pCallback) 517:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 518:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** HAL_StatusTypeDef status = HAL_OK; 519:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 520:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** if (pCallback == NULL) 521:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 522:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Update the error code */ 523:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->ErrorCode |= HAL_PCD_ERROR_INVALID_CALLBACK; 524:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 525:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** return HAL_ERROR; 526:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 527:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 528:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Process locked */ 529:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __HAL_LOCK(hpcd); 530:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 531:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** if (hpcd->State == HAL_PCD_STATE_READY) 532:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 533:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->DataOutStageCallback = pCallback; 534:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 535:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** else 536:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 537:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Update the error code */ 538:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->ErrorCode |= HAL_PCD_ERROR_INVALID_CALLBACK; 539:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 540:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Return error status */ 541:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** status = HAL_ERROR; 542:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 543:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ARM GAS /tmp/ccJPteqL.s page 11 544:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Release Lock */ 545:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __HAL_UNLOCK(hpcd); 546:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 547:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** return status; 548:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 549:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 550:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /** 551:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @brief Unregister the USB PCD Data OUT Stage Callback 552:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * USB PCD Data OUT Stage Callback is redirected to the weak HAL_PCD_DataOutStageCallback( 553:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @param hpcd PCD handle 554:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @retval HAL status 555:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** */ 556:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** HAL_StatusTypeDef HAL_PCD_UnRegisterDataOutStageCallback(PCD_HandleTypeDef *hpcd) 557:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 558:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** HAL_StatusTypeDef status = HAL_OK; 559:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 560:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Process locked */ 561:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __HAL_LOCK(hpcd); 562:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 563:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** if (hpcd->State == HAL_PCD_STATE_READY) 564:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 565:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->DataOutStageCallback = HAL_PCD_DataOutStageCallback; /* Legacy weak DataOutStageCallback 566:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 567:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** else 568:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 569:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Update the error code */ 570:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->ErrorCode |= HAL_PCD_ERROR_INVALID_CALLBACK; 571:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 572:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Return error status */ 573:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** status = HAL_ERROR; 574:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 575:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 576:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Release Lock */ 577:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __HAL_UNLOCK(hpcd); 578:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 579:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** return status; 580:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 581:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 582:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /** 583:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @brief Register USB PCD Data IN Stage Callback 584:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * To be used instead of the weak HAL_PCD_DataInStageCallback() predefined callback 585:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @param hpcd PCD handle 586:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @param pCallback pointer to the USB PCD Data IN Stage Callback function 587:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @retval HAL status 588:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** */ 589:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** HAL_StatusTypeDef HAL_PCD_RegisterDataInStageCallback(PCD_HandleTypeDef *hpcd, 590:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** pPCD_DataInStageCallbackTypeDef pCallback) 591:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 592:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** HAL_StatusTypeDef status = HAL_OK; 593:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 594:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** if (pCallback == NULL) 595:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 596:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Update the error code */ 597:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->ErrorCode |= HAL_PCD_ERROR_INVALID_CALLBACK; 598:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 599:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** return HAL_ERROR; 600:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } ARM GAS /tmp/ccJPteqL.s page 12 601:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 602:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Process locked */ 603:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __HAL_LOCK(hpcd); 604:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 605:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** if (hpcd->State == HAL_PCD_STATE_READY) 606:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 607:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->DataInStageCallback = pCallback; 608:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 609:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** else 610:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 611:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Update the error code */ 612:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->ErrorCode |= HAL_PCD_ERROR_INVALID_CALLBACK; 613:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 614:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Return error status */ 615:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** status = HAL_ERROR; 616:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 617:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 618:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Release Lock */ 619:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __HAL_UNLOCK(hpcd); 620:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 621:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** return status; 622:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 623:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 624:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /** 625:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @brief Unregister the USB PCD Data IN Stage Callback 626:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * USB PCD Data OUT Stage Callback is redirected to the weak HAL_PCD_DataInStageCallback() 627:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @param hpcd PCD handle 628:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @retval HAL status 629:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** */ 630:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** HAL_StatusTypeDef HAL_PCD_UnRegisterDataInStageCallback(PCD_HandleTypeDef *hpcd) 631:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 632:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** HAL_StatusTypeDef status = HAL_OK; 633:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 634:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Process locked */ 635:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __HAL_LOCK(hpcd); 636:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 637:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** if (hpcd->State == HAL_PCD_STATE_READY) 638:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 639:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->DataInStageCallback = HAL_PCD_DataInStageCallback; /* Legacy weak DataInStageCallback */ 640:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 641:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** else 642:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 643:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Update the error code */ 644:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->ErrorCode |= HAL_PCD_ERROR_INVALID_CALLBACK; 645:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 646:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Return error status */ 647:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** status = HAL_ERROR; 648:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 649:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 650:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Release Lock */ 651:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __HAL_UNLOCK(hpcd); 652:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 653:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** return status; 654:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 655:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 656:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /** 657:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @brief Register USB PCD Iso OUT incomplete Callback ARM GAS /tmp/ccJPteqL.s page 13 658:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * To be used instead of the weak HAL_PCD_ISOOUTIncompleteCallback() predefined callback 659:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @param hpcd PCD handle 660:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @param pCallback pointer to the USB PCD Iso OUT incomplete Callback function 661:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @retval HAL status 662:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** */ 663:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** HAL_StatusTypeDef HAL_PCD_RegisterIsoOutIncpltCallback(PCD_HandleTypeDef *hpcd, 664:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** pPCD_IsoOutIncpltCallbackTypeDef pCallback) 665:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 666:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** HAL_StatusTypeDef status = HAL_OK; 667:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 668:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** if (pCallback == NULL) 669:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 670:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Update the error code */ 671:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->ErrorCode |= HAL_PCD_ERROR_INVALID_CALLBACK; 672:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 673:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** return HAL_ERROR; 674:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 675:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 676:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Process locked */ 677:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __HAL_LOCK(hpcd); 678:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 679:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** if (hpcd->State == HAL_PCD_STATE_READY) 680:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 681:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->ISOOUTIncompleteCallback = pCallback; 682:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 683:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** else 684:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 685:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Update the error code */ 686:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->ErrorCode |= HAL_PCD_ERROR_INVALID_CALLBACK; 687:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 688:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Return error status */ 689:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** status = HAL_ERROR; 690:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 691:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 692:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Release Lock */ 693:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __HAL_UNLOCK(hpcd); 694:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 695:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** return status; 696:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 697:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 698:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /** 699:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @brief Unregister the USB PCD Iso OUT incomplete Callback 700:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * USB PCD Iso OUT incomplete Callback is redirected 701:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * to the weak HAL_PCD_ISOOUTIncompleteCallback() predefined callback 702:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @param hpcd PCD handle 703:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @retval HAL status 704:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** */ 705:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** HAL_StatusTypeDef HAL_PCD_UnRegisterIsoOutIncpltCallback(PCD_HandleTypeDef *hpcd) 706:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 707:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** HAL_StatusTypeDef status = HAL_OK; 708:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 709:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Process locked */ 710:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __HAL_LOCK(hpcd); 711:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 712:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** if (hpcd->State == HAL_PCD_STATE_READY) 713:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 714:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->ISOOUTIncompleteCallback = HAL_PCD_ISOOUTIncompleteCallback; /* Legacy weak ISOOUTIncompl ARM GAS /tmp/ccJPteqL.s page 14 715:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 716:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** else 717:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 718:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Update the error code */ 719:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->ErrorCode |= HAL_PCD_ERROR_INVALID_CALLBACK; 720:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 721:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Return error status */ 722:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** status = HAL_ERROR; 723:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 724:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 725:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Release Lock */ 726:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __HAL_UNLOCK(hpcd); 727:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 728:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** return status; 729:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 730:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 731:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /** 732:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @brief Register USB PCD Iso IN incomplete Callback 733:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * To be used instead of the weak HAL_PCD_ISOINIncompleteCallback() predefined callback 734:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @param hpcd PCD handle 735:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @param pCallback pointer to the USB PCD Iso IN incomplete Callback function 736:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @retval HAL status 737:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** */ 738:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** HAL_StatusTypeDef HAL_PCD_RegisterIsoInIncpltCallback(PCD_HandleTypeDef *hpcd, 739:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** pPCD_IsoInIncpltCallbackTypeDef pCallback) 740:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 741:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** HAL_StatusTypeDef status = HAL_OK; 742:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 743:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** if (pCallback == NULL) 744:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 745:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Update the error code */ 746:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->ErrorCode |= HAL_PCD_ERROR_INVALID_CALLBACK; 747:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 748:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** return HAL_ERROR; 749:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 750:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 751:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Process locked */ 752:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __HAL_LOCK(hpcd); 753:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 754:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** if (hpcd->State == HAL_PCD_STATE_READY) 755:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 756:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->ISOINIncompleteCallback = pCallback; 757:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 758:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** else 759:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 760:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Update the error code */ 761:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->ErrorCode |= HAL_PCD_ERROR_INVALID_CALLBACK; 762:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 763:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Return error status */ 764:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** status = HAL_ERROR; 765:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 766:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 767:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Release Lock */ 768:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __HAL_UNLOCK(hpcd); 769:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 770:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** return status; 771:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } ARM GAS /tmp/ccJPteqL.s page 15 772:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 773:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /** 774:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @brief Unregister the USB PCD Iso IN incomplete Callback 775:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * USB PCD Iso IN incomplete Callback is redirected 776:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * to the weak HAL_PCD_ISOINIncompleteCallback() predefined callback 777:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @param hpcd PCD handle 778:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @retval HAL status 779:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** */ 780:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** HAL_StatusTypeDef HAL_PCD_UnRegisterIsoInIncpltCallback(PCD_HandleTypeDef *hpcd) 781:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 782:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** HAL_StatusTypeDef status = HAL_OK; 783:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 784:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Process locked */ 785:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __HAL_LOCK(hpcd); 786:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 787:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** if (hpcd->State == HAL_PCD_STATE_READY) 788:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 789:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->ISOINIncompleteCallback = HAL_PCD_ISOINIncompleteCallback; /* Legacy weak ISOINIncomplete 790:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 791:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** else 792:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 793:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Update the error code */ 794:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->ErrorCode |= HAL_PCD_ERROR_INVALID_CALLBACK; 795:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 796:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Return error status */ 797:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** status = HAL_ERROR; 798:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 799:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 800:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Release Lock */ 801:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __HAL_UNLOCK(hpcd); 802:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 803:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** return status; 804:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 805:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 806:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /** 807:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @brief Register USB PCD BCD Callback 808:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * To be used instead of the weak HAL_PCDEx_BCD_Callback() predefined callback 809:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @param hpcd PCD handle 810:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @param pCallback pointer to the USB PCD BCD Callback function 811:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @retval HAL status 812:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** */ 813:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** HAL_StatusTypeDef HAL_PCD_RegisterBcdCallback(PCD_HandleTypeDef *hpcd, pPCD_BcdCallbackTypeDef pCal 814:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 815:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** HAL_StatusTypeDef status = HAL_OK; 816:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 817:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** if (pCallback == NULL) 818:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 819:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Update the error code */ 820:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->ErrorCode |= HAL_PCD_ERROR_INVALID_CALLBACK; 821:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 822:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** return HAL_ERROR; 823:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 824:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 825:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Process locked */ 826:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __HAL_LOCK(hpcd); 827:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 828:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** if (hpcd->State == HAL_PCD_STATE_READY) ARM GAS /tmp/ccJPteqL.s page 16 829:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 830:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->BCDCallback = pCallback; 831:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 832:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** else 833:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 834:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Update the error code */ 835:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->ErrorCode |= HAL_PCD_ERROR_INVALID_CALLBACK; 836:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 837:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Return error status */ 838:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** status = HAL_ERROR; 839:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 840:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 841:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Release Lock */ 842:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __HAL_UNLOCK(hpcd); 843:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 844:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** return status; 845:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 846:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 847:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /** 848:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @brief Unregister the USB PCD BCD Callback 849:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * USB BCD Callback is redirected to the weak HAL_PCDEx_BCD_Callback() predefined callback 850:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @param hpcd PCD handle 851:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @retval HAL status 852:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** */ 853:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** HAL_StatusTypeDef HAL_PCD_UnRegisterBcdCallback(PCD_HandleTypeDef *hpcd) 854:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 855:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** HAL_StatusTypeDef status = HAL_OK; 856:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 857:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Process locked */ 858:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __HAL_LOCK(hpcd); 859:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 860:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** if (hpcd->State == HAL_PCD_STATE_READY) 861:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 862:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->BCDCallback = HAL_PCDEx_BCD_Callback; /* Legacy weak HAL_PCDEx_BCD_Callback */ 863:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 864:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** else 865:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 866:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Update the error code */ 867:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->ErrorCode |= HAL_PCD_ERROR_INVALID_CALLBACK; 868:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 869:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Return error status */ 870:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** status = HAL_ERROR; 871:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 872:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 873:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Release Lock */ 874:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __HAL_UNLOCK(hpcd); 875:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 876:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** return status; 877:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 878:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 879:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /** 880:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @brief Register USB PCD LPM Callback 881:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * To be used instead of the weak HAL_PCDEx_LPM_Callback() predefined callback 882:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @param hpcd PCD handle 883:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @param pCallback pointer to the USB PCD LPM Callback function 884:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @retval HAL status 885:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** */ ARM GAS /tmp/ccJPteqL.s page 17 886:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** HAL_StatusTypeDef HAL_PCD_RegisterLpmCallback(PCD_HandleTypeDef *hpcd, pPCD_LpmCallbackTypeDef pCal 887:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 888:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** HAL_StatusTypeDef status = HAL_OK; 889:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 890:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** if (pCallback == NULL) 891:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 892:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Update the error code */ 893:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->ErrorCode |= HAL_PCD_ERROR_INVALID_CALLBACK; 894:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 895:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** return HAL_ERROR; 896:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 897:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 898:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Process locked */ 899:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __HAL_LOCK(hpcd); 900:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 901:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** if (hpcd->State == HAL_PCD_STATE_READY) 902:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 903:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->LPMCallback = pCallback; 904:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 905:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** else 906:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 907:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Update the error code */ 908:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->ErrorCode |= HAL_PCD_ERROR_INVALID_CALLBACK; 909:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 910:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Return error status */ 911:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** status = HAL_ERROR; 912:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 913:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 914:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Release Lock */ 915:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __HAL_UNLOCK(hpcd); 916:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 917:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** return status; 918:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 919:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 920:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /** 921:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @brief Unregister the USB PCD LPM Callback 922:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * USB LPM Callback is redirected to the weak HAL_PCDEx_LPM_Callback() predefined callback 923:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @param hpcd PCD handle 924:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @retval HAL status 925:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** */ 926:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** HAL_StatusTypeDef HAL_PCD_UnRegisterLpmCallback(PCD_HandleTypeDef *hpcd) 927:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 928:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** HAL_StatusTypeDef status = HAL_OK; 929:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 930:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Process locked */ 931:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __HAL_LOCK(hpcd); 932:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 933:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** if (hpcd->State == HAL_PCD_STATE_READY) 934:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 935:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->LPMCallback = HAL_PCDEx_LPM_Callback; /* Legacy weak HAL_PCDEx_LPM_Callback */ 936:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 937:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** else 938:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 939:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Update the error code */ 940:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->ErrorCode |= HAL_PCD_ERROR_INVALID_CALLBACK; 941:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 942:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Return error status */ ARM GAS /tmp/ccJPteqL.s page 18 943:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** status = HAL_ERROR; 944:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 945:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 946:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Release Lock */ 947:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __HAL_UNLOCK(hpcd); 948:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 949:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** return status; 950:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 951:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** #endif /* USE_HAL_PCD_REGISTER_CALLBACKS */ 952:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 953:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /** 954:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @} 955:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** */ 956:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 957:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /** @defgroup PCD_Exported_Functions_Group2 Input and Output operation functions 958:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @brief Data transfers functions 959:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * 960:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** @verbatim 961:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** =============================================================================== 962:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ##### IO operation functions ##### 963:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** =============================================================================== 964:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** [..] 965:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** This subsection provides a set of functions allowing to manage the PCD data 966:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** transfers. 967:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 968:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** @endverbatim 969:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @{ 970:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** */ 971:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 972:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /** 973:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @brief Start the USB device 974:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @param hpcd PCD handle 975:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @retval HAL status 976:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** */ 977:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** HAL_StatusTypeDef HAL_PCD_Start(PCD_HandleTypeDef *hpcd) 978:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 979:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __HAL_LOCK(hpcd); 980:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __HAL_PCD_ENABLE(hpcd); 981:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** (void)USB_DevConnect(hpcd->Instance); 982:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __HAL_UNLOCK(hpcd); 983:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 984:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** return HAL_OK; 985:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 986:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 987:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /** 988:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @brief Stop the USB device. 989:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @param hpcd PCD handle 990:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @retval HAL status 991:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** */ 992:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** HAL_StatusTypeDef HAL_PCD_Stop(PCD_HandleTypeDef *hpcd) 993:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 994:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __HAL_LOCK(hpcd); 995:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __HAL_PCD_DISABLE(hpcd); 996:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** (void)USB_DevDisconnect(hpcd->Instance); 997:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __HAL_UNLOCK(hpcd); 998:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 999:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** return HAL_OK; ARM GAS /tmp/ccJPteqL.s page 19 1000:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1001:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1002:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1003:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /** 1004:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @brief This function handles PCD interrupt request. 1005:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @param hpcd PCD handle 1006:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @retval HAL status 1007:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** */ 1008:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** void HAL_PCD_IRQHandler(PCD_HandleTypeDef *hpcd) 1009:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1010:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** uint32_t wIstr = USB_ReadInterrupts(hpcd->Instance); 1011:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1012:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** if ((wIstr & USB_ISTR_CTR) == USB_ISTR_CTR) 1013:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1014:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* servicing of the endpoint correct transfer interrupt */ 1015:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* clear of the CTR flag into the sub */ 1016:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** (void)PCD_EP_ISR_Handler(hpcd); 1017:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1018:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** return; 1019:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1020:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1021:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** if ((wIstr & USB_ISTR_RESET) == USB_ISTR_RESET) 1022:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1023:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __HAL_PCD_CLEAR_FLAG(hpcd, USB_ISTR_RESET); 1024:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1025:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** #if (USE_HAL_PCD_REGISTER_CALLBACKS == 1U) 1026:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->ResetCallback(hpcd); 1027:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** #else 1028:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** HAL_PCD_ResetCallback(hpcd); 1029:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** #endif /* USE_HAL_PCD_REGISTER_CALLBACKS */ 1030:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1031:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** (void)HAL_PCD_SetAddress(hpcd, 0U); 1032:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1033:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** return; 1034:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1035:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1036:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** if ((wIstr & USB_ISTR_PMAOVR) == USB_ISTR_PMAOVR) 1037:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1038:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __HAL_PCD_CLEAR_FLAG(hpcd, USB_ISTR_PMAOVR); 1039:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1040:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** return; 1041:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1042:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1043:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** if ((wIstr & USB_ISTR_ERR) == USB_ISTR_ERR) 1044:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1045:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __HAL_PCD_CLEAR_FLAG(hpcd, USB_ISTR_ERR); 1046:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1047:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** return; 1048:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1049:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1050:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** if ((wIstr & USB_ISTR_WKUP) == USB_ISTR_WKUP) 1051:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1052:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->Instance->CNTR &= (uint16_t) ~(USB_CNTR_LPMODE); 1053:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->Instance->CNTR &= (uint16_t) ~(USB_CNTR_FSUSP); 1054:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1055:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** if (hpcd->LPM_State == LPM_L1) 1056:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { ARM GAS /tmp/ccJPteqL.s page 20 1057:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->LPM_State = LPM_L0; 1058:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** #if (USE_HAL_PCD_REGISTER_CALLBACKS == 1U) 1059:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->LPMCallback(hpcd, PCD_LPM_L0_ACTIVE); 1060:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** #else 1061:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** HAL_PCDEx_LPM_Callback(hpcd, PCD_LPM_L0_ACTIVE); 1062:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** #endif /* USE_HAL_PCD_REGISTER_CALLBACKS */ 1063:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1064:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1065:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** #if (USE_HAL_PCD_REGISTER_CALLBACKS == 1U) 1066:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->ResumeCallback(hpcd); 1067:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** #else 1068:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** HAL_PCD_ResumeCallback(hpcd); 1069:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** #endif /* USE_HAL_PCD_REGISTER_CALLBACKS */ 1070:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1071:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __HAL_PCD_CLEAR_FLAG(hpcd, USB_ISTR_WKUP); 1072:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1073:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** return; 1074:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1075:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1076:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** if ((wIstr & USB_ISTR_SUSP) == USB_ISTR_SUSP) 1077:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1078:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Force low-power mode in the macrocell */ 1079:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->Instance->CNTR |= (uint16_t)USB_CNTR_FSUSP; 1080:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1081:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* clear of the ISTR bit must be done after setting of CNTR_FSUSP */ 1082:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __HAL_PCD_CLEAR_FLAG(hpcd, USB_ISTR_SUSP); 1083:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1084:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->Instance->CNTR |= (uint16_t)USB_CNTR_LPMODE; 1085:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1086:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** #if (USE_HAL_PCD_REGISTER_CALLBACKS == 1U) 1087:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->SuspendCallback(hpcd); 1088:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** #else 1089:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** HAL_PCD_SuspendCallback(hpcd); 1090:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** #endif /* USE_HAL_PCD_REGISTER_CALLBACKS */ 1091:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1092:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** return; 1093:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1094:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1095:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Handle LPM Interrupt */ 1096:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** if ((wIstr & USB_ISTR_L1REQ) == USB_ISTR_L1REQ) 1097:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1098:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __HAL_PCD_CLEAR_FLAG(hpcd, USB_ISTR_L1REQ); 1099:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** if (hpcd->LPM_State == LPM_L0) 1100:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1101:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Force suspend and low-power mode before going to L1 state*/ 1102:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->Instance->CNTR |= (uint16_t)USB_CNTR_LPMODE; 1103:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->Instance->CNTR |= (uint16_t)USB_CNTR_FSUSP; 1104:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1105:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->LPM_State = LPM_L1; 1106:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->BESL = ((uint32_t)hpcd->Instance->LPMCSR & USB_LPMCSR_BESL) >> 2; 1107:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** #if (USE_HAL_PCD_REGISTER_CALLBACKS == 1U) 1108:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->LPMCallback(hpcd, PCD_LPM_L1_ACTIVE); 1109:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** #else 1110:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** HAL_PCDEx_LPM_Callback(hpcd, PCD_LPM_L1_ACTIVE); 1111:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** #endif /* USE_HAL_PCD_REGISTER_CALLBACKS */ 1112:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1113:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** else ARM GAS /tmp/ccJPteqL.s page 21 1114:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1115:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** #if (USE_HAL_PCD_REGISTER_CALLBACKS == 1U) 1116:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->SuspendCallback(hpcd); 1117:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** #else 1118:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** HAL_PCD_SuspendCallback(hpcd); 1119:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** #endif /* USE_HAL_PCD_REGISTER_CALLBACKS */ 1120:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1121:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1122:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** return; 1123:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1124:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1125:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** if ((wIstr & USB_ISTR_SOF) == USB_ISTR_SOF) 1126:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1127:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __HAL_PCD_CLEAR_FLAG(hpcd, USB_ISTR_SOF); 1128:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1129:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** #if (USE_HAL_PCD_REGISTER_CALLBACKS == 1U) 1130:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->SOFCallback(hpcd); 1131:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** #else 1132:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** HAL_PCD_SOFCallback(hpcd); 1133:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** #endif /* USE_HAL_PCD_REGISTER_CALLBACKS */ 1134:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1135:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** return; 1136:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1137:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1138:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** if ((wIstr & USB_ISTR_ESOF) == USB_ISTR_ESOF) 1139:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1140:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* clear ESOF flag in ISTR */ 1141:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __HAL_PCD_CLEAR_FLAG(hpcd, USB_ISTR_ESOF); 1142:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1143:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** return; 1144:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1145:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1146:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1147:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1148:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /** 1149:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @brief Data OUT stage callback. 1150:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @param hpcd PCD handle 1151:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @param epnum endpoint number 1152:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @retval None 1153:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** */ 1154:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __weak void HAL_PCD_DataOutStageCallback(PCD_HandleTypeDef *hpcd, uint8_t epnum) 1155:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1156:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Prevent unused argument(s) compilation warning */ 1157:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** UNUSED(hpcd); 1158:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** UNUSED(epnum); 1159:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1160:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* NOTE : This function should not be modified, when the callback is needed, 1161:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** the HAL_PCD_DataOutStageCallback could be implemented in the user file 1162:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** */ 1163:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1164:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1165:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /** 1166:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @brief Data IN stage callback 1167:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @param hpcd PCD handle 1168:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @param epnum endpoint number 1169:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @retval None 1170:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** */ ARM GAS /tmp/ccJPteqL.s page 22 1171:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __weak void HAL_PCD_DataInStageCallback(PCD_HandleTypeDef *hpcd, uint8_t epnum) 1172:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1173:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Prevent unused argument(s) compilation warning */ 1174:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** UNUSED(hpcd); 1175:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** UNUSED(epnum); 1176:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1177:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* NOTE : This function should not be modified, when the callback is needed, 1178:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** the HAL_PCD_DataInStageCallback could be implemented in the user file 1179:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** */ 1180:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1181:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /** 1182:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @brief Setup stage callback 1183:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @param hpcd PCD handle 1184:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @retval None 1185:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** */ 1186:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __weak void HAL_PCD_SetupStageCallback(PCD_HandleTypeDef *hpcd) 1187:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1188:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Prevent unused argument(s) compilation warning */ 1189:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** UNUSED(hpcd); 1190:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1191:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* NOTE : This function should not be modified, when the callback is needed, 1192:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** the HAL_PCD_SetupStageCallback could be implemented in the user file 1193:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** */ 1194:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1195:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1196:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /** 1197:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @brief USB Start Of Frame callback. 1198:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @param hpcd PCD handle 1199:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @retval None 1200:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** */ 1201:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __weak void HAL_PCD_SOFCallback(PCD_HandleTypeDef *hpcd) 1202:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1203:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Prevent unused argument(s) compilation warning */ 1204:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** UNUSED(hpcd); 1205:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1206:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* NOTE : This function should not be modified, when the callback is needed, 1207:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** the HAL_PCD_SOFCallback could be implemented in the user file 1208:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** */ 1209:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1210:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1211:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /** 1212:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @brief USB Reset callback. 1213:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @param hpcd PCD handle 1214:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @retval None 1215:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** */ 1216:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __weak void HAL_PCD_ResetCallback(PCD_HandleTypeDef *hpcd) 1217:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1218:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Prevent unused argument(s) compilation warning */ 1219:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** UNUSED(hpcd); 1220:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1221:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* NOTE : This function should not be modified, when the callback is needed, 1222:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** the HAL_PCD_ResetCallback could be implemented in the user file 1223:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** */ 1224:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1225:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1226:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /** 1227:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @brief Suspend event callback. ARM GAS /tmp/ccJPteqL.s page 23 1228:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @param hpcd PCD handle 1229:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @retval None 1230:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** */ 1231:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __weak void HAL_PCD_SuspendCallback(PCD_HandleTypeDef *hpcd) 1232:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1233:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Prevent unused argument(s) compilation warning */ 1234:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** UNUSED(hpcd); 1235:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1236:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* NOTE : This function should not be modified, when the callback is needed, 1237:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** the HAL_PCD_SuspendCallback could be implemented in the user file 1238:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** */ 1239:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1240:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1241:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /** 1242:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @brief Resume event callback. 1243:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @param hpcd PCD handle 1244:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @retval None 1245:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** */ 1246:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __weak void HAL_PCD_ResumeCallback(PCD_HandleTypeDef *hpcd) 1247:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1248:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Prevent unused argument(s) compilation warning */ 1249:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** UNUSED(hpcd); 1250:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1251:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* NOTE : This function should not be modified, when the callback is needed, 1252:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** the HAL_PCD_ResumeCallback could be implemented in the user file 1253:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** */ 1254:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1255:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1256:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /** 1257:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @brief Incomplete ISO OUT callback. 1258:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @param hpcd PCD handle 1259:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @param epnum endpoint number 1260:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @retval None 1261:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** */ 1262:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __weak void HAL_PCD_ISOOUTIncompleteCallback(PCD_HandleTypeDef *hpcd, uint8_t epnum) 1263:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1264:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Prevent unused argument(s) compilation warning */ 1265:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** UNUSED(hpcd); 1266:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** UNUSED(epnum); 1267:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1268:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* NOTE : This function should not be modified, when the callback is needed, 1269:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** the HAL_PCD_ISOOUTIncompleteCallback could be implemented in the user file 1270:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** */ 1271:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1272:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1273:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /** 1274:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @brief Incomplete ISO IN callback. 1275:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @param hpcd PCD handle 1276:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @param epnum endpoint number 1277:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @retval None 1278:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** */ 1279:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __weak void HAL_PCD_ISOINIncompleteCallback(PCD_HandleTypeDef *hpcd, uint8_t epnum) 1280:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1281:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Prevent unused argument(s) compilation warning */ 1282:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** UNUSED(hpcd); 1283:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** UNUSED(epnum); 1284:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ARM GAS /tmp/ccJPteqL.s page 24 1285:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* NOTE : This function should not be modified, when the callback is needed, 1286:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** the HAL_PCD_ISOINIncompleteCallback could be implemented in the user file 1287:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** */ 1288:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1289:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1290:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /** 1291:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @brief Connection event callback. 1292:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @param hpcd PCD handle 1293:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @retval None 1294:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** */ 1295:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __weak void HAL_PCD_ConnectCallback(PCD_HandleTypeDef *hpcd) 1296:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1297:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Prevent unused argument(s) compilation warning */ 1298:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** UNUSED(hpcd); 1299:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1300:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* NOTE : This function should not be modified, when the callback is needed, 1301:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** the HAL_PCD_ConnectCallback could be implemented in the user file 1302:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** */ 1303:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1304:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1305:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /** 1306:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @brief Disconnection event callback. 1307:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @param hpcd PCD handle 1308:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @retval None 1309:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** */ 1310:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __weak void HAL_PCD_DisconnectCallback(PCD_HandleTypeDef *hpcd) 1311:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1312:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Prevent unused argument(s) compilation warning */ 1313:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** UNUSED(hpcd); 1314:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1315:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* NOTE : This function should not be modified, when the callback is needed, 1316:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** the HAL_PCD_DisconnectCallback could be implemented in the user file 1317:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** */ 1318:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1319:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1320:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /** 1321:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @} 1322:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** */ 1323:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1324:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /** @defgroup PCD_Exported_Functions_Group3 Peripheral Control functions 1325:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @brief management functions 1326:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * 1327:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** @verbatim 1328:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** =============================================================================== 1329:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ##### Peripheral Control functions ##### 1330:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** =============================================================================== 1331:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** [..] 1332:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** This subsection provides a set of functions allowing to control the PCD data 1333:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** transfers. 1334:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1335:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** @endverbatim 1336:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @{ 1337:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** */ 1338:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1339:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /** 1340:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @brief Connect the USB device 1341:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @param hpcd PCD handle ARM GAS /tmp/ccJPteqL.s page 25 1342:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @retval HAL status 1343:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** */ 1344:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** HAL_StatusTypeDef HAL_PCD_DevConnect(PCD_HandleTypeDef *hpcd) 1345:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1346:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __HAL_LOCK(hpcd); 1347:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** (void)USB_DevConnect(hpcd->Instance); 1348:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __HAL_UNLOCK(hpcd); 1349:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1350:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** return HAL_OK; 1351:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1352:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1353:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /** 1354:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @brief Disconnect the USB device. 1355:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @param hpcd PCD handle 1356:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @retval HAL status 1357:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** */ 1358:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** HAL_StatusTypeDef HAL_PCD_DevDisconnect(PCD_HandleTypeDef *hpcd) 1359:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1360:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __HAL_LOCK(hpcd); 1361:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** (void)USB_DevDisconnect(hpcd->Instance); 1362:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __HAL_UNLOCK(hpcd); 1363:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1364:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** return HAL_OK; 1365:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1366:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1367:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /** 1368:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @brief Set the USB Device address. 1369:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @param hpcd PCD handle 1370:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @param address new device address 1371:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @retval HAL status 1372:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** */ 1373:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** HAL_StatusTypeDef HAL_PCD_SetAddress(PCD_HandleTypeDef *hpcd, uint8_t address) 1374:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1375:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __HAL_LOCK(hpcd); 1376:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->USB_Address = address; 1377:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** (void)USB_SetDevAddress(hpcd->Instance, address); 1378:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __HAL_UNLOCK(hpcd); 1379:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1380:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** return HAL_OK; 1381:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1382:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /** 1383:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @brief Open and configure an endpoint. 1384:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @param hpcd PCD handle 1385:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @param ep_addr endpoint address 1386:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @param ep_mps endpoint max packet size 1387:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @param ep_type endpoint type 1388:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @retval HAL status 1389:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** */ 1390:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** HAL_StatusTypeDef HAL_PCD_EP_Open(PCD_HandleTypeDef *hpcd, uint8_t ep_addr, 1391:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** uint16_t ep_mps, uint8_t ep_type) 1392:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1393:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** HAL_StatusTypeDef ret = HAL_OK; 1394:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_EPTypeDef *ep; 1395:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1396:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** if ((ep_addr & 0x80U) == 0x80U) 1397:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1398:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep = &hpcd->IN_ep[ep_addr & EP_ADDR_MSK]; ARM GAS /tmp/ccJPteqL.s page 26 1399:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->is_in = 1U; 1400:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1401:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** else 1402:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1403:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep = &hpcd->OUT_ep[ep_addr & EP_ADDR_MSK]; 1404:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->is_in = 0U; 1405:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1406:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1407:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->num = ep_addr & EP_ADDR_MSK; 1408:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->maxpacket = ep_mps; 1409:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->type = ep_type; 1410:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1411:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** if (ep->is_in != 0U) 1412:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1413:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Assign a Tx FIFO */ 1414:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->tx_fifo_num = ep->num; 1415:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1416:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Set initial data PID. */ 1417:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** if (ep_type == EP_TYPE_BULK) 1418:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1419:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->data_pid_start = 0U; 1420:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1421:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1422:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __HAL_LOCK(hpcd); 1423:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** (void)USB_ActivateEndpoint(hpcd->Instance, ep); 1424:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __HAL_UNLOCK(hpcd); 1425:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1426:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** return ret; 1427:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1428:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1429:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /** 1430:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @brief Deactivate an endpoint. 1431:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @param hpcd PCD handle 1432:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @param ep_addr endpoint address 1433:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @retval HAL status 1434:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** */ 1435:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** HAL_StatusTypeDef HAL_PCD_EP_Close(PCD_HandleTypeDef *hpcd, uint8_t ep_addr) 1436:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1437:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_EPTypeDef *ep; 1438:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1439:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** if ((ep_addr & 0x80U) == 0x80U) 1440:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1441:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep = &hpcd->IN_ep[ep_addr & EP_ADDR_MSK]; 1442:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->is_in = 1U; 1443:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1444:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** else 1445:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1446:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep = &hpcd->OUT_ep[ep_addr & EP_ADDR_MSK]; 1447:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->is_in = 0U; 1448:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1449:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->num = ep_addr & EP_ADDR_MSK; 1450:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1451:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __HAL_LOCK(hpcd); 1452:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** (void)USB_DeactivateEndpoint(hpcd->Instance, ep); 1453:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __HAL_UNLOCK(hpcd); 1454:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** return HAL_OK; 1455:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } ARM GAS /tmp/ccJPteqL.s page 27 1456:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1457:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1458:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /** 1459:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @brief Receive an amount of data. 1460:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @param hpcd PCD handle 1461:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @param ep_addr endpoint address 1462:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @param pBuf pointer to the reception buffer 1463:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @param len amount of data to be received 1464:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @retval HAL status 1465:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** */ 1466:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** HAL_StatusTypeDef HAL_PCD_EP_Receive(PCD_HandleTypeDef *hpcd, uint8_t ep_addr, uint8_t *pBuf, uint3 1467:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1468:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_EPTypeDef *ep; 1469:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1470:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep = &hpcd->OUT_ep[ep_addr & EP_ADDR_MSK]; 1471:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1472:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /*setup and start the Xfer */ 1473:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->xfer_buff = pBuf; 1474:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->xfer_len = len; 1475:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->xfer_count = 0U; 1476:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->is_in = 0U; 1477:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->num = ep_addr & EP_ADDR_MSK; 1478:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1479:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** if ((ep_addr & EP_ADDR_MSK) == 0U) 1480:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1481:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** (void)USB_EP0StartXfer(hpcd->Instance, ep); 1482:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1483:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** else 1484:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1485:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** (void)USB_EPStartXfer(hpcd->Instance, ep); 1486:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1487:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1488:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** return HAL_OK; 1489:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1490:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1491:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /** 1492:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @brief Get Received Data Size 1493:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @param hpcd PCD handle 1494:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @param ep_addr endpoint address 1495:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @retval Data Size 1496:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** */ 1497:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** uint32_t HAL_PCD_EP_GetRxCount(PCD_HandleTypeDef *hpcd, uint8_t ep_addr) 1498:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1499:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** return hpcd->OUT_ep[ep_addr & EP_ADDR_MSK].xfer_count; 1500:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1501:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /** 1502:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @brief Send an amount of data 1503:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @param hpcd PCD handle 1504:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @param ep_addr endpoint address 1505:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @param pBuf pointer to the transmission buffer 1506:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @param len amount of data to be sent 1507:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @retval HAL status 1508:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** */ 1509:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** HAL_StatusTypeDef HAL_PCD_EP_Transmit(PCD_HandleTypeDef *hpcd, uint8_t ep_addr, uint8_t *pBuf, uint 1510:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1511:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_EPTypeDef *ep; 1512:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ARM GAS /tmp/ccJPteqL.s page 28 1513:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep = &hpcd->IN_ep[ep_addr & EP_ADDR_MSK]; 1514:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1515:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /*setup and start the Xfer */ 1516:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->xfer_buff = pBuf; 1517:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->xfer_len = len; 1518:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->xfer_fill_db = 1U; 1519:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->xfer_len_db = len; 1520:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->xfer_count = 0U; 1521:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->is_in = 1U; 1522:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->num = ep_addr & EP_ADDR_MSK; 1523:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1524:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** if ((ep_addr & EP_ADDR_MSK) == 0U) 1525:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1526:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** (void)USB_EP0StartXfer(hpcd->Instance, ep); 1527:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1528:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** else 1529:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1530:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** (void)USB_EPStartXfer(hpcd->Instance, ep); 1531:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1532:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1533:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** return HAL_OK; 1534:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1535:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1536:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /** 1537:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @brief Set a STALL condition over an endpoint 1538:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @param hpcd PCD handle 1539:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @param ep_addr endpoint address 1540:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @retval HAL status 1541:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** */ 1542:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** HAL_StatusTypeDef HAL_PCD_EP_SetStall(PCD_HandleTypeDef *hpcd, uint8_t ep_addr) 1543:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1544:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_EPTypeDef *ep; 1545:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1546:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** if (((uint32_t)ep_addr & EP_ADDR_MSK) > hpcd->Init.dev_endpoints) 1547:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1548:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** return HAL_ERROR; 1549:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1550:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1551:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** if ((0x80U & ep_addr) == 0x80U) 1552:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1553:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep = &hpcd->IN_ep[ep_addr & EP_ADDR_MSK]; 1554:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->is_in = 1U; 1555:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1556:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** else 1557:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1558:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep = &hpcd->OUT_ep[ep_addr]; 1559:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->is_in = 0U; 1560:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1561:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1562:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->is_stall = 1U; 1563:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->num = ep_addr & EP_ADDR_MSK; 1564:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1565:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __HAL_LOCK(hpcd); 1566:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1567:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** (void)USB_EPSetStall(hpcd->Instance, ep); 1568:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1569:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __HAL_UNLOCK(hpcd); ARM GAS /tmp/ccJPteqL.s page 29 1570:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1571:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** return HAL_OK; 1572:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1573:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1574:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /** 1575:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @brief Clear a STALL condition over in an endpoint 1576:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @param hpcd PCD handle 1577:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @param ep_addr endpoint address 1578:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @retval HAL status 1579:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** */ 1580:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** HAL_StatusTypeDef HAL_PCD_EP_ClrStall(PCD_HandleTypeDef *hpcd, uint8_t ep_addr) 1581:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1582:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_EPTypeDef *ep; 1583:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1584:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** if (((uint32_t)ep_addr & 0x0FU) > hpcd->Init.dev_endpoints) 1585:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1586:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** return HAL_ERROR; 1587:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1588:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1589:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** if ((0x80U & ep_addr) == 0x80U) 1590:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1591:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep = &hpcd->IN_ep[ep_addr & EP_ADDR_MSK]; 1592:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->is_in = 1U; 1593:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1594:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** else 1595:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1596:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep = &hpcd->OUT_ep[ep_addr & EP_ADDR_MSK]; 1597:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->is_in = 0U; 1598:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1599:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1600:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->is_stall = 0U; 1601:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->num = ep_addr & EP_ADDR_MSK; 1602:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1603:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __HAL_LOCK(hpcd); 1604:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** (void)USB_EPClearStall(hpcd->Instance, ep); 1605:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __HAL_UNLOCK(hpcd); 1606:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1607:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** return HAL_OK; 1608:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1609:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1610:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /** 1611:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @brief Flush an endpoint 1612:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @param hpcd PCD handle 1613:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @param ep_addr endpoint address 1614:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @retval HAL status 1615:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** */ 1616:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** HAL_StatusTypeDef HAL_PCD_EP_Flush(PCD_HandleTypeDef *hpcd, uint8_t ep_addr) 1617:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1618:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Prevent unused argument(s) compilation warning */ 1619:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** UNUSED(hpcd); 1620:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** UNUSED(ep_addr); 1621:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1622:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** return HAL_OK; 1623:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1624:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1625:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /** 1626:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @brief Activate remote wakeup signalling ARM GAS /tmp/ccJPteqL.s page 30 1627:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @param hpcd PCD handle 1628:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @retval HAL status 1629:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** */ 1630:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** HAL_StatusTypeDef HAL_PCD_ActivateRemoteWakeup(PCD_HandleTypeDef *hpcd) 1631:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1632:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** return (USB_ActivateRemoteWakeup(hpcd->Instance)); 1633:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1634:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1635:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /** 1636:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @brief De-activate remote wakeup signalling. 1637:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @param hpcd PCD handle 1638:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @retval HAL status 1639:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** */ 1640:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** HAL_StatusTypeDef HAL_PCD_DeActivateRemoteWakeup(PCD_HandleTypeDef *hpcd) 1641:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1642:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** return (USB_DeActivateRemoteWakeup(hpcd->Instance)); 1643:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1644:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1645:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /** 1646:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @} 1647:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** */ 1648:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1649:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /** @defgroup PCD_Exported_Functions_Group4 Peripheral State functions 1650:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @brief Peripheral State functions 1651:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * 1652:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** @verbatim 1653:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** =============================================================================== 1654:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ##### Peripheral State functions ##### 1655:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** =============================================================================== 1656:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** [..] 1657:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** This subsection permits to get in run-time the status of the peripheral 1658:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** and the data flow. 1659:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1660:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** @endverbatim 1661:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @{ 1662:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** */ 1663:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1664:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /** 1665:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @brief Return the PCD handle state. 1666:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @param hpcd PCD handle 1667:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @retval HAL state 1668:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** */ 1669:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_StateTypeDef HAL_PCD_GetState(PCD_HandleTypeDef *hpcd) 1670:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1671:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** return hpcd->State; 1672:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1673:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1674:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /** 1675:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @} 1676:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** */ 1677:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1678:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /** 1679:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @} 1680:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** */ 1681:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1682:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Private functions ---------------------------------------------------------*/ 1683:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /** @addtogroup PCD_Private_Functions ARM GAS /tmp/ccJPteqL.s page 31 1684:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @{ 1685:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** */ 1686:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1687:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1688:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /** 1689:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @brief This function handles PCD Endpoint interrupt request. 1690:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @param hpcd PCD handle 1691:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @retval HAL status 1692:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** */ 1693:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** static HAL_StatusTypeDef PCD_EP_ISR_Handler(PCD_HandleTypeDef *hpcd) 1694:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1695:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_EPTypeDef *ep; 1696:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** uint16_t count; 1697:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** uint16_t wIstr; 1698:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** uint16_t wEPVal; 1699:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** uint16_t TxPctSize; 1700:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** uint8_t epindex; 1701:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1702:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* stay in loop while pending interrupts */ 1703:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** while ((hpcd->Instance->ISTR & USB_ISTR_CTR) != 0U) 1704:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1705:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** wIstr = hpcd->Instance->ISTR; 1706:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1707:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* extract highest priority endpoint number */ 1708:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** epindex = (uint8_t)(wIstr & USB_ISTR_EP_ID); 1709:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1710:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** if (epindex == 0U) 1711:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1712:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Decode and service control endpoint interrupt */ 1713:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1714:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* DIR bit = origin of the interrupt */ 1715:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** if ((wIstr & USB_ISTR_DIR) == 0U) 1716:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1717:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* DIR = 0 */ 1718:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1719:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* DIR = 0 => IN int */ 1720:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* DIR = 0 implies that (EP_CTR_TX = 1) always */ 1721:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_CLEAR_TX_EP_CTR(hpcd->Instance, PCD_ENDP0); 1722:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep = &hpcd->IN_ep[0]; 1723:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1724:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->xfer_count = PCD_GET_EP_TX_CNT(hpcd->Instance, ep->num); 1725:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->xfer_buff += ep->xfer_count; 1726:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1727:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* TX COMPLETE */ 1728:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** #if (USE_HAL_PCD_REGISTER_CALLBACKS == 1U) 1729:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->DataInStageCallback(hpcd, 0U); 1730:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** #else 1731:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** HAL_PCD_DataInStageCallback(hpcd, 0U); 1732:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** #endif /* USE_HAL_PCD_REGISTER_CALLBACKS */ 1733:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1734:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** if ((hpcd->USB_Address > 0U) && (ep->xfer_len == 0U)) 1735:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1736:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->Instance->DADDR = ((uint16_t)hpcd->USB_Address | USB_DADDR_EF); 1737:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->USB_Address = 0U; 1738:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1739:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1740:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** else ARM GAS /tmp/ccJPteqL.s page 32 1741:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1742:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* DIR = 1 */ 1743:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1744:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* DIR = 1 & CTR_RX => SETUP or OUT int */ 1745:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* DIR = 1 & (CTR_TX | CTR_RX) => 2 int pending */ 1746:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep = &hpcd->OUT_ep[0]; 1747:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** wEPVal = PCD_GET_ENDPOINT(hpcd->Instance, PCD_ENDP0); 1748:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1749:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** if ((wEPVal & USB_EP_SETUP) != 0U) 1750:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1751:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Get SETUP Packet */ 1752:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->xfer_count = PCD_GET_EP_RX_CNT(hpcd->Instance, ep->num); 1753:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1754:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** USB_ReadPMA(hpcd->Instance, (uint8_t *)hpcd->Setup, 1755:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->pmaadress, (uint16_t)ep->xfer_count); 1756:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1757:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* SETUP bit kept frozen while CTR_RX = 1 */ 1758:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_CLEAR_RX_EP_CTR(hpcd->Instance, PCD_ENDP0); 1759:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1760:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Process SETUP Packet*/ 1761:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** #if (USE_HAL_PCD_REGISTER_CALLBACKS == 1U) 1762:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->SetupStageCallback(hpcd); 1763:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** #else 1764:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** HAL_PCD_SetupStageCallback(hpcd); 1765:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** #endif /* USE_HAL_PCD_REGISTER_CALLBACKS */ 1766:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1767:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** else if ((wEPVal & USB_EP_CTR_RX) != 0U) 1768:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1769:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_CLEAR_RX_EP_CTR(hpcd->Instance, PCD_ENDP0); 1770:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1771:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Get Control Data OUT Packet */ 1772:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->xfer_count = PCD_GET_EP_RX_CNT(hpcd->Instance, ep->num); 1773:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1774:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** if ((ep->xfer_count != 0U) && (ep->xfer_buff != 0U)) 1775:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1776:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** USB_ReadPMA(hpcd->Instance, ep->xfer_buff, 1777:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->pmaadress, (uint16_t)ep->xfer_count); 1778:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1779:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->xfer_buff += ep->xfer_count; 1780:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1781:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Process Control Data OUT Packet */ 1782:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** #if (USE_HAL_PCD_REGISTER_CALLBACKS == 1U) 1783:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->DataOutStageCallback(hpcd, 0U); 1784:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** #else 1785:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** HAL_PCD_DataOutStageCallback(hpcd, 0U); 1786:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** #endif /* USE_HAL_PCD_REGISTER_CALLBACKS */ 1787:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1788:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1789:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** if ((PCD_GET_ENDPOINT(hpcd->Instance, PCD_ENDP0) & USB_EP_SETUP) == 0U) 1790:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1791:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_SET_EP_RX_CNT(hpcd->Instance, PCD_ENDP0, ep->maxpacket); 1792:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_SET_EP_RX_STATUS(hpcd->Instance, PCD_ENDP0, USB_EP_RX_VALID); 1793:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1794:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1795:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1796:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1797:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** else ARM GAS /tmp/ccJPteqL.s page 33 1798:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1799:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Decode and service non control endpoints interrupt */ 1800:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* process related endpoint register */ 1801:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** wEPVal = PCD_GET_ENDPOINT(hpcd->Instance, epindex); 1802:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1803:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** if ((wEPVal & USB_EP_CTR_RX) != 0U) 1804:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1805:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* clear int flag */ 1806:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_CLEAR_RX_EP_CTR(hpcd->Instance, epindex); 1807:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep = &hpcd->OUT_ep[epindex]; 1808:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1809:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* OUT Single Buffering */ 1810:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** if (ep->doublebuffer == 0U) 1811:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1812:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** count = (uint16_t)PCD_GET_EP_RX_CNT(hpcd->Instance, ep->num); 1813:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1814:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** if (count != 0U) 1815:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1816:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** USB_ReadPMA(hpcd->Instance, ep->xfer_buff, ep->pmaadress, count); 1817:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1818:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1819:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** #if (USE_USB_DOUBLE_BUFFER == 1U) 1820:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** else 1821:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1822:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* manage double buffer bulk out */ 1823:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** if (ep->type == EP_TYPE_BULK) 1824:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1825:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** count = HAL_PCD_EP_DB_Receive(hpcd, ep, wEPVal); 1826:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1827:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** else /* manage double buffer iso out */ 1828:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1829:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* free EP OUT Buffer */ 1830:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_FREE_USER_BUFFER(hpcd->Instance, ep->num, 0U); 1831:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1832:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** if ((PCD_GET_ENDPOINT(hpcd->Instance, ep->num) & USB_EP_DTOG_RX) != 0U) 1833:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1834:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* read from endpoint BUF0Addr buffer */ 1835:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** count = (uint16_t)PCD_GET_EP_DBUF0_CNT(hpcd->Instance, ep->num); 1836:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1837:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** if (count != 0U) 1838:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1839:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** USB_ReadPMA(hpcd->Instance, ep->xfer_buff, ep->pmaaddr0, count); 1840:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1841:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1842:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** else 1843:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1844:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* read from endpoint BUF1Addr buffer */ 1845:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** count = (uint16_t)PCD_GET_EP_DBUF1_CNT(hpcd->Instance, ep->num); 1846:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1847:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** if (count != 0U) 1848:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1849:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** USB_ReadPMA(hpcd->Instance, ep->xfer_buff, ep->pmaaddr1, count); 1850:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1851:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1852:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1853:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1854:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** #endif /* (USE_USB_DOUBLE_BUFFER == 1U) */ ARM GAS /tmp/ccJPteqL.s page 34 1855:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1856:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* multi-packet on the NON control OUT endpoint */ 1857:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->xfer_count += count; 1858:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->xfer_buff += count; 1859:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1860:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** if ((ep->xfer_len == 0U) || (count < ep->maxpacket)) 1861:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1862:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* RX COMPLETE */ 1863:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** #if (USE_HAL_PCD_REGISTER_CALLBACKS == 1U) 1864:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->DataOutStageCallback(hpcd, ep->num); 1865:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** #else 1866:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** HAL_PCD_DataOutStageCallback(hpcd, ep->num); 1867:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** #endif /* USE_HAL_PCD_REGISTER_CALLBACKS */ 1868:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1869:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** else 1870:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1871:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** (void) USB_EPStartXfer(hpcd->Instance, ep); 1872:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1873:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1874:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1875:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** if ((wEPVal & USB_EP_CTR_TX) != 0U) 1876:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1877:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep = &hpcd->IN_ep[epindex]; 1878:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1879:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* clear int flag */ 1880:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_CLEAR_TX_EP_CTR(hpcd->Instance, epindex); 1881:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1882:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** if (ep->type != EP_TYPE_BULK) 1883:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1884:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->xfer_len = 0U; 1885:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1886:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** #if (USE_USB_DOUBLE_BUFFER == 1U) 1887:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** if (ep->doublebuffer != 0U) 1888:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1889:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** if ((wEPVal & USB_EP_DTOG_TX) != 0U) 1890:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1891:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_SET_EP_DBUF0_CNT(hpcd->Instance, ep->num, ep->is_in, 0U); 1892:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1893:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** else 1894:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1895:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_SET_EP_DBUF1_CNT(hpcd->Instance, ep->num, ep->is_in, 0U); 1896:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1897:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1898:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** #endif /* (USE_USB_DOUBLE_BUFFER == 1U) */ 1899:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1900:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* TX COMPLETE */ 1901:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** #if (USE_HAL_PCD_REGISTER_CALLBACKS == 1U) 1902:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->DataInStageCallback(hpcd, ep->num); 1903:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** #else 1904:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** HAL_PCD_DataInStageCallback(hpcd, ep->num); 1905:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** #endif /* USE_HAL_PCD_REGISTER_CALLBACKS */ 1906:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1907:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** else 1908:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1909:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Manage Bulk Single Buffer Transaction */ 1910:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** if ((wEPVal & USB_EP_KIND) == 0U) 1911:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { ARM GAS /tmp/ccJPteqL.s page 35 1912:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* multi-packet on the NON control IN endpoint */ 1913:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** TxPctSize = (uint16_t)PCD_GET_EP_TX_CNT(hpcd->Instance, ep->num); 1914:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1915:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** if (ep->xfer_len > TxPctSize) 1916:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1917:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->xfer_len -= TxPctSize; 1918:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1919:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** else 1920:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1921:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->xfer_len = 0U; 1922:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1923:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1924:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Zero Length Packet? */ 1925:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** if (ep->xfer_len == 0U) 1926:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1927:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* TX COMPLETE */ 1928:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** #if (USE_HAL_PCD_REGISTER_CALLBACKS == 1U) 1929:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->DataInStageCallback(hpcd, ep->num); 1930:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** #else 1931:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** HAL_PCD_DataInStageCallback(hpcd, ep->num); 1932:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** #endif /* USE_HAL_PCD_REGISTER_CALLBACKS */ 1933:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1934:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** else 1935:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1936:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Transfer is not yet Done */ 1937:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->xfer_buff += TxPctSize; 1938:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->xfer_count += TxPctSize; 1939:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** (void)USB_EPStartXfer(hpcd->Instance, ep); 1940:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1941:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1942:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** #if (USE_USB_DOUBLE_BUFFER == 1U) 1943:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Double Buffer bulk IN (bulk transfer Len > Ep_Mps) */ 1944:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** else 1945:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1946:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** (void)HAL_PCD_EP_DB_Transmit(hpcd, ep, wEPVal); 1947:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1948:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** #endif /* (USE_USB_DOUBLE_BUFFER == 1U) */ 1949:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1950:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1951:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1952:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1953:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1954:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** return HAL_OK; 1955:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1956:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1957:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1958:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** #if (USE_USB_DOUBLE_BUFFER == 1U) 1959:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /** 1960:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @brief Manage double buffer bulk out transaction from ISR 1961:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @param hpcd PCD handle 1962:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @param ep current endpoint handle 1963:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @param wEPVal Last snapshot of EPRx register value taken in ISR 1964:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @retval HAL status 1965:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** */ 1966:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** static uint16_t HAL_PCD_EP_DB_Receive(PCD_HandleTypeDef *hpcd, 1967:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_EPTypeDef *ep, uint16_t wEPVal) 1968:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { ARM GAS /tmp/ccJPteqL.s page 36 29 .loc 1 1968 1 view -0 30 .cfi_startproc 31 @ args = 0, pretend = 0, frame = 0 32 @ frame_needed = 0, uses_anonymous_args = 0 33 .loc 1 1968 1 is_stmt 0 view .LVU1 34 0000 38B5 push {r3, r4, r5, lr} 35 .LCFI0: 36 .cfi_def_cfa_offset 16 37 .cfi_offset 3, -16 38 .cfi_offset 4, -12 39 .cfi_offset 5, -8 40 .cfi_offset 14, -4 1969:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** uint16_t count; 41 .loc 1 1969 3 is_stmt 1 view .LVU2 1970:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1971:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Manage Buffer0 OUT */ 1972:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** if ((wEPVal & USB_EP_DTOG_RX) != 0U) 42 .loc 1 1972 3 view .LVU3 43 .loc 1 1972 6 is_stmt 0 view .LVU4 44 0002 12F4804F tst r2, #16384 45 0006 43D0 beq .L2 1973:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1974:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Get count of received Data on buffer0 */ 1975:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** count = (uint16_t)PCD_GET_EP_DBUF0_CNT(hpcd->Instance, ep->num); 46 .loc 1 1975 5 is_stmt 1 view .LVU5 47 .loc 1 1975 23 is_stmt 0 view .LVU6 48 0008 0468 ldr r4, [r0] 49 000a B4F85030 ldrh r3, [r4, #80] 50 000e 91F800C0 ldrb ip, [r1] @ zero_extendqisi2 51 0012 4FEACC0E lsl lr, ip, #3 52 0016 1EFA83F3 uxtah r3, lr, r3 53 001a 2344 add r3, r3, r4 54 001c B3F80244 ldrh r4, [r3, #1026] 55 .loc 1 1975 11 view .LVU7 56 0020 C4F30904 ubfx r4, r4, #0, #10 57 .LVL1: 1976:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1977:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** if (ep->xfer_len >= count) 58 .loc 1 1977 5 is_stmt 1 view .LVU8 59 .loc 1 1977 11 is_stmt 0 view .LVU9 60 0024 8B69 ldr r3, [r1, #24] 61 .loc 1 1977 8 view .LVU10 62 0026 A342 cmp r3, r4 63 0028 28D3 bcc .L3 1978:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1979:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->xfer_len -= count; 64 .loc 1 1979 7 is_stmt 1 view .LVU11 65 .loc 1 1979 20 is_stmt 0 view .LVU12 66 002a 1B1B subs r3, r3, r4 67 002c 8B61 str r3, [r1, #24] 68 .L4: 1980:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1981:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** else 1982:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1983:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->xfer_len = 0U; 1984:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1985:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ARM GAS /tmp/ccJPteqL.s page 37 1986:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** if (ep->xfer_len == 0U) 69 .loc 1 1986 5 is_stmt 1 view .LVU13 70 .loc 1 1986 11 is_stmt 0 view .LVU14 71 002e 8B69 ldr r3, [r1, #24] 72 .loc 1 1986 8 view .LVU15 73 0030 7BB9 cbnz r3, .L5 1987:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1988:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* set NAK to OUT endpoint since double buffer is enabled */ 1989:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_SET_EP_RX_STATUS(hpcd->Instance, ep->num, USB_EP_RX_NAK); 74 .loc 1 1989 7 is_stmt 1 view .LVU16 75 .LBB2: 76 .loc 1 1989 7 view .LVU17 77 .loc 1 1989 7 view .LVU18 78 0032 0568 ldr r5, [r0] 79 0034 35F82C30 ldrh r3, [r5, ip, lsl #2] 80 0038 9BB2 uxth r3, r3 81 003a 23F48043 bic r3, r3, #16384 82 003e 23F07003 bic r3, r3, #112 83 .LVL2: 84 .loc 1 1989 7 view .LVU19 85 .loc 1 1989 7 view .LVU20 86 .loc 1 1989 7 view .LVU21 87 0042 83F40053 eor r3, r3, #8192 88 .LVL3: 89 .loc 1 1989 7 view .LVU22 90 0046 43F40043 orr r3, r3, #32768 91 .LVL4: 92 .loc 1 1989 7 is_stmt 0 view .LVU23 93 004a 43F08003 orr r3, r3, #128 94 004e 25F82C30 strh r3, [r5, ip, lsl #2] @ movhi 95 .LVL5: 96 .L5: 97 .loc 1 1989 7 view .LVU24 98 .LBE2: 99 .loc 1 1989 7 is_stmt 1 discriminator 7 view .LVU25 1990:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1991:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1992:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Check if Buffer1 is in blocked state which requires to toggle */ 1993:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** if ((wEPVal & USB_EP_DTOG_TX) != 0U) 100 .loc 1 1993 5 discriminator 7 view .LVU26 101 .loc 1 1993 8 is_stmt 0 discriminator 7 view .LVU27 102 0052 12F0400F tst r2, #64 103 0056 0ED0 beq .L6 1994:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1995:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_FREE_USER_BUFFER(hpcd->Instance, ep->num, 0U); 104 .loc 1 1995 7 is_stmt 1 discriminator 1 view .LVU28 105 .loc 1 1995 7 discriminator 1 view .LVU29 106 .loc 1 1995 7 discriminator 1 view .LVU30 107 .LBB3: 108 .loc 1 1995 7 discriminator 1 view .LVU31 109 .loc 1 1995 7 discriminator 1 view .LVU32 110 0058 0268 ldr r2, [r0] 111 .LVL6: 112 .loc 1 1995 7 is_stmt 0 discriminator 1 view .LVU33 113 005a 0D78 ldrb r5, [r1] @ zero_extendqisi2 114 005c 32F82530 ldrh r3, [r2, r5, lsl #2] 115 0060 9BB2 uxth r3, r3 ARM GAS /tmp/ccJPteqL.s page 38 116 0062 23F4E043 bic r3, r3, #28672 117 0066 23F07003 bic r3, r3, #112 118 .LVL7: 119 .loc 1 1995 7 is_stmt 1 discriminator 1 view .LVU34 120 006a 43F40043 orr r3, r3, #32768 121 .LVL8: 122 .loc 1 1995 7 is_stmt 0 discriminator 1 view .LVU35 123 006e 43F0C003 orr r3, r3, #192 124 0072 22F82530 strh r3, [r2, r5, lsl #2] @ movhi 125 .LBE3: 126 .loc 1 1995 7 is_stmt 1 discriminator 1 view .LVU36 127 .LVL9: 128 .L6: 129 .loc 1 1995 7 discriminator 6 view .LVU37 130 .loc 1 1995 7 discriminator 6 view .LVU38 1996:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1997:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1998:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** if (count != 0U) 131 .loc 1 1998 5 discriminator 6 view .LVU39 132 .loc 1 1998 8 is_stmt 0 discriminator 6 view .LVU40 133 0076 24B9 cbnz r4, .L13 134 .LVL10: 135 .L7: 1999:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 2000:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** USB_ReadPMA(hpcd->Instance, ep->xfer_buff, ep->pmaaddr0, count); 2001:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 2002:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 2003:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Manage Buffer 1 DTOG_RX=0 */ 2004:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** else 2005:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 2006:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Get count of received data */ 2007:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** count = (uint16_t)PCD_GET_EP_DBUF1_CNT(hpcd->Instance, ep->num); 2008:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2009:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** if (ep->xfer_len >= count) 2010:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 2011:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->xfer_len -= count; 2012:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 2013:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** else 2014:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 2015:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->xfer_len = 0U; 2016:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 2017:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2018:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** if (ep->xfer_len == 0U) 2019:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 2020:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* set NAK on the current endpoint */ 2021:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_SET_EP_RX_STATUS(hpcd->Instance, ep->num, USB_EP_RX_NAK); 2022:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 2023:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2024:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /*Need to FreeUser Buffer*/ 2025:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** if ((wEPVal & USB_EP_DTOG_TX) == 0U) 2026:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 2027:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_FREE_USER_BUFFER(hpcd->Instance, ep->num, 0U); 2028:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 2029:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2030:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** if (count != 0U) 2031:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 2032:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** USB_ReadPMA(hpcd->Instance, ep->xfer_buff, ep->pmaaddr1, count); ARM GAS /tmp/ccJPteqL.s page 39 2033:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 2034:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 2035:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2036:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** return count; 136 .loc 1 2036 3 is_stmt 1 view .LVU41 2037:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 137 .loc 1 2037 1 is_stmt 0 view .LVU42 138 0078 2046 mov r0, r4 139 007a 38BD pop {r3, r4, r5, pc} 140 .LVL11: 141 .L3: 1983:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 142 .loc 1 1983 7 is_stmt 1 view .LVU43 1983:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 143 .loc 1 1983 20 is_stmt 0 view .LVU44 144 007c 0023 movs r3, #0 145 007e 8B61 str r3, [r1, #24] 146 0080 D5E7 b .L4 147 .LVL12: 148 .L13: 2000:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 149 .loc 1 2000 7 is_stmt 1 view .LVU45 150 0082 2346 mov r3, r4 151 0084 0A89 ldrh r2, [r1, #8] 152 0086 4969 ldr r1, [r1, #20] 153 .LVL13: 2000:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 154 .loc 1 2000 7 is_stmt 0 view .LVU46 155 0088 0068 ldr r0, [r0] 156 .LVL14: 2000:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 157 .loc 1 2000 7 view .LVU47 158 008a FFF7FEFF bl USB_ReadPMA 159 .LVL15: 160 008e F3E7 b .L7 161 .LVL16: 162 .L2: 2007:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 163 .loc 1 2007 5 is_stmt 1 view .LVU48 2007:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 164 .loc 1 2007 23 is_stmt 0 view .LVU49 165 0090 0468 ldr r4, [r0] 166 0092 B4F85030 ldrh r3, [r4, #80] 167 0096 91F800C0 ldrb ip, [r1] @ zero_extendqisi2 168 009a 4FEACC0E lsl lr, ip, #3 169 009e 1EFA83F3 uxtah r3, lr, r3 170 00a2 2344 add r3, r3, r4 171 00a4 B3F80644 ldrh r4, [r3, #1030] 2007:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 172 .loc 1 2007 11 view .LVU50 173 00a8 C4F30904 ubfx r4, r4, #0, #10 174 .LVL17: 2009:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 175 .loc 1 2009 5 is_stmt 1 view .LVU51 2009:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 176 .loc 1 2009 11 is_stmt 0 view .LVU52 177 00ac 8B69 ldr r3, [r1, #24] ARM GAS /tmp/ccJPteqL.s page 40 2009:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 178 .loc 1 2009 8 view .LVU53 179 00ae A342 cmp r3, r4 180 00b0 2FD3 bcc .L8 2011:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 181 .loc 1 2011 7 is_stmt 1 view .LVU54 2011:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 182 .loc 1 2011 20 is_stmt 0 view .LVU55 183 00b2 1B1B subs r3, r3, r4 184 00b4 8B61 str r3, [r1, #24] 185 .L9: 2018:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 186 .loc 1 2018 5 is_stmt 1 view .LVU56 2018:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 187 .loc 1 2018 11 is_stmt 0 view .LVU57 188 00b6 8B69 ldr r3, [r1, #24] 2018:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 189 .loc 1 2018 8 view .LVU58 190 00b8 7BB9 cbnz r3, .L10 2021:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 191 .loc 1 2021 7 is_stmt 1 view .LVU59 192 .LBB4: 2021:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 193 .loc 1 2021 7 view .LVU60 2021:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 194 .loc 1 2021 7 view .LVU61 195 00ba 0568 ldr r5, [r0] 196 00bc 35F82C30 ldrh r3, [r5, ip, lsl #2] 197 00c0 9BB2 uxth r3, r3 198 00c2 23F48043 bic r3, r3, #16384 199 00c6 23F07003 bic r3, r3, #112 200 .LVL18: 2021:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 201 .loc 1 2021 7 view .LVU62 2021:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 202 .loc 1 2021 7 view .LVU63 2021:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 203 .loc 1 2021 7 view .LVU64 204 00ca 83F40053 eor r3, r3, #8192 205 .LVL19: 2021:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 206 .loc 1 2021 7 view .LVU65 207 00ce 43F40043 orr r3, r3, #32768 208 .LVL20: 2021:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 209 .loc 1 2021 7 is_stmt 0 view .LVU66 210 00d2 43F08003 orr r3, r3, #128 211 00d6 25F82C30 strh r3, [r5, ip, lsl #2] @ movhi 212 .LVL21: 213 .L10: 2021:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 214 .loc 1 2021 7 view .LVU67 215 .LBE4: 2021:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 216 .loc 1 2021 7 is_stmt 1 discriminator 7 view .LVU68 2025:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 217 .loc 1 2025 5 discriminator 7 view .LVU69 ARM GAS /tmp/ccJPteqL.s page 41 2025:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 218 .loc 1 2025 8 is_stmt 0 discriminator 7 view .LVU70 219 00da 12F0400F tst r2, #64 220 00de 0FD1 bne .L11 2027:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 221 .loc 1 2027 7 is_stmt 1 discriminator 1 view .LVU71 2027:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 222 .loc 1 2027 7 discriminator 1 view .LVU72 2027:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 223 .loc 1 2027 7 discriminator 1 view .LVU73 224 .LBB5: 2027:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 225 .loc 1 2027 7 discriminator 1 view .LVU74 2027:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 226 .loc 1 2027 7 discriminator 1 view .LVU75 227 00e0 0268 ldr r2, [r0] 228 .LVL22: 2027:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 229 .loc 1 2027 7 is_stmt 0 discriminator 1 view .LVU76 230 00e2 91F800C0 ldrb ip, [r1] @ zero_extendqisi2 231 00e6 32F82C30 ldrh r3, [r2, ip, lsl #2] 232 00ea 9BB2 uxth r3, r3 233 00ec 23F4E043 bic r3, r3, #28672 234 00f0 23F07003 bic r3, r3, #112 235 .LVL23: 2027:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 236 .loc 1 2027 7 is_stmt 1 discriminator 1 view .LVU77 237 00f4 43F40043 orr r3, r3, #32768 238 .LVL24: 2027:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 239 .loc 1 2027 7 is_stmt 0 discriminator 1 view .LVU78 240 00f8 43F0C003 orr r3, r3, #192 241 00fc 22F82C30 strh r3, [r2, ip, lsl #2] @ movhi 242 .LBE5: 2027:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 243 .loc 1 2027 7 is_stmt 1 discriminator 1 view .LVU79 244 .LVL25: 245 .L11: 2027:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 246 .loc 1 2027 7 discriminator 6 view .LVU80 2027:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 247 .loc 1 2027 7 discriminator 6 view .LVU81 2030:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 248 .loc 1 2030 5 discriminator 6 view .LVU82 2030:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 249 .loc 1 2030 8 is_stmt 0 discriminator 6 view .LVU83 250 0100 002C cmp r4, #0 251 0102 B9D0 beq .L7 2032:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 252 .loc 1 2032 7 is_stmt 1 view .LVU84 253 0104 2346 mov r3, r4 254 0106 4A89 ldrh r2, [r1, #10] 255 0108 4969 ldr r1, [r1, #20] 256 .LVL26: 2032:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 257 .loc 1 2032 7 is_stmt 0 view .LVU85 258 010a 0068 ldr r0, [r0] ARM GAS /tmp/ccJPteqL.s page 42 259 .LVL27: 2032:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 260 .loc 1 2032 7 view .LVU86 261 010c FFF7FEFF bl USB_ReadPMA 262 .LVL28: 263 0110 B2E7 b .L7 264 .LVL29: 265 .L8: 2015:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 266 .loc 1 2015 7 is_stmt 1 view .LVU87 2015:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 267 .loc 1 2015 20 is_stmt 0 view .LVU88 268 0112 0023 movs r3, #0 269 0114 8B61 str r3, [r1, #24] 270 0116 CEE7 b .L9 271 .cfi_endproc 272 .LFE362: 274 .section .text.HAL_PCD_MspInit,"ax",%progbits 275 .align 1 276 .weak HAL_PCD_MspInit 277 .syntax unified 278 .thumb 279 .thumb_func 281 HAL_PCD_MspInit: 282 .LVL30: 283 .LFB331: 260:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Prevent unused argument(s) compilation warning */ 284 .loc 1 260 1 is_stmt 1 view -0 285 .cfi_startproc 286 @ args = 0, pretend = 0, frame = 0 287 @ frame_needed = 0, uses_anonymous_args = 0 288 @ link register save eliminated. 262:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 289 .loc 1 262 3 view .LVU90 267:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 290 .loc 1 267 1 is_stmt 0 view .LVU91 291 0000 7047 bx lr 292 .cfi_endproc 293 .LFE331: 295 .section .text.HAL_PCD_Init,"ax",%progbits 296 .align 1 297 .global HAL_PCD_Init 298 .syntax unified 299 .thumb 300 .thumb_func 302 HAL_PCD_Init: 303 .LVL31: 304 .LFB329: 125:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** uint8_t i; 305 .loc 1 125 1 is_stmt 1 view -0 306 .cfi_startproc 307 @ args = 0, pretend = 0, frame = 0 308 @ frame_needed = 0, uses_anonymous_args = 0 126:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 309 .loc 1 126 3 view .LVU93 129:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 310 .loc 1 129 3 view .LVU94 ARM GAS /tmp/ccJPteqL.s page 43 129:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 311 .loc 1 129 6 is_stmt 0 view .LVU95 312 0000 0028 cmp r0, #0 313 0002 6DD0 beq .L22 125:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** uint8_t i; 314 .loc 1 125 1 view .LVU96 315 0004 30B5 push {r4, r5, lr} 316 .LCFI1: 317 .cfi_def_cfa_offset 12 318 .cfi_offset 4, -12 319 .cfi_offset 5, -8 320 .cfi_offset 14, -4 321 0006 87B0 sub sp, sp, #28 322 .LCFI2: 323 .cfi_def_cfa_offset 40 324 0008 0446 mov r4, r0 135:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 325 .loc 1 135 3 is_stmt 1 view .LVU97 137:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 326 .loc 1 137 3 view .LVU98 137:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 327 .loc 1 137 11 is_stmt 0 view .LVU99 328 000a 90F8A932 ldrb r3, [r0, #681] @ zero_extendqisi2 137:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 329 .loc 1 137 6 view .LVU100 330 000e 3BB1 cbz r3, .L28 331 .LVL32: 332 .L17: 170:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 333 .loc 1 170 3 is_stmt 1 view .LVU101 170:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 334 .loc 1 170 15 is_stmt 0 view .LVU102 335 0010 0323 movs r3, #3 336 0012 84F8A932 strb r3, [r4, #681] 173:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 337 .loc 1 173 3 is_stmt 1 view .LVU103 338 0016 2068 ldr r0, [r4] 339 0018 FFF7FEFF bl USB_DisableGlobalInt 340 .LVL33: 176:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 341 .loc 1 176 3 view .LVU104 176:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 342 .loc 1 176 10 is_stmt 0 view .LVU105 343 001c 0023 movs r3, #0 176:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 344 .loc 1 176 3 view .LVU106 345 001e 1FE0 b .L18 346 .LVL34: 347 .L28: 140:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 348 .loc 1 140 5 is_stmt 1 view .LVU107 140:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 349 .loc 1 140 16 is_stmt 0 view .LVU108 350 0020 80F8A832 strb r3, [r0, #680] 166:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** #endif /* (USE_HAL_PCD_REGISTER_CALLBACKS) */ 351 .loc 1 166 5 is_stmt 1 view .LVU109 352 0024 FFF7FEFF bl HAL_PCD_MspInit ARM GAS /tmp/ccJPteqL.s page 44 353 .LVL35: 166:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** #endif /* (USE_HAL_PCD_REGISTER_CALLBACKS) */ 354 .loc 1 166 5 is_stmt 0 view .LVU110 355 0028 F2E7 b .L17 356 .LVL36: 357 .L19: 179:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->IN_ep[i].num = i; 358 .loc 1 179 5 is_stmt 1 discriminator 3 view .LVU111 179:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->IN_ep[i].num = i; 359 .loc 1 179 26 is_stmt 0 discriminator 3 view .LVU112 360 002a 5A1C adds r2, r3, #1 361 002c 02EB8201 add r1, r2, r2, lsl #2 362 0030 04EBC101 add r1, r4, r1, lsl #3 363 0034 0120 movs r0, #1 364 0036 4870 strb r0, [r1, #1] 180:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->IN_ep[i].tx_fifo_num = i; 365 .loc 1 180 5 is_stmt 1 discriminator 3 view .LVU113 180:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->IN_ep[i].tx_fifo_num = i; 366 .loc 1 180 24 is_stmt 0 discriminator 3 view .LVU114 367 0038 02EB8201 add r1, r2, r2, lsl #2 368 003c 04F83130 strb r3, [r4, r1, lsl #3] 181:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Control until ep is activated */ 369 .loc 1 181 5 is_stmt 1 discriminator 3 view .LVU115 181:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Control until ep is activated */ 370 .loc 1 181 32 is_stmt 0 discriminator 3 view .LVU116 371 0040 03EB8301 add r1, r3, r3, lsl #2 372 0044 04EBC101 add r1, r4, r1, lsl #3 373 0048 CB86 strh r3, [r1, #54] @ movhi 183:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->IN_ep[i].maxpacket = 0U; 374 .loc 1 183 5 is_stmt 1 discriminator 3 view .LVU117 183:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->IN_ep[i].maxpacket = 0U; 375 .loc 1 183 25 is_stmt 0 discriminator 3 view .LVU118 376 004a 02EB820C add ip, r2, r2, lsl #2 377 004e 04EBCC0C add ip, r4, ip, lsl #3 378 0052 0020 movs r0, #0 379 0054 8CF80300 strb r0, [ip, #3] 184:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->IN_ep[i].xfer_buff = 0U; 380 .loc 1 184 5 is_stmt 1 discriminator 3 view .LVU119 184:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->IN_ep[i].xfer_buff = 0U; 381 .loc 1 184 30 is_stmt 0 discriminator 3 view .LVU120 382 0058 8863 str r0, [r1, #56] 185:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->IN_ep[i].xfer_len = 0U; 383 .loc 1 185 5 is_stmt 1 discriminator 3 view .LVU121 185:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->IN_ep[i].xfer_len = 0U; 384 .loc 1 185 30 is_stmt 0 discriminator 3 view .LVU122 385 005a C863 str r0, [r1, #60] 186:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 386 .loc 1 186 5 is_stmt 1 discriminator 3 view .LVU123 186:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 387 .loc 1 186 29 is_stmt 0 discriminator 3 view .LVU124 388 005c 0864 str r0, [r1, #64] 176:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 389 .loc 1 176 47 is_stmt 1 discriminator 3 view .LVU125 390 005e D3B2 uxtb r3, r2 391 .LVL37: 392 .L18: 176:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { ARM GAS /tmp/ccJPteqL.s page 45 393 .loc 1 176 18 discriminator 1 view .LVU126 176:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 394 .loc 1 176 30 is_stmt 0 discriminator 1 view .LVU127 395 0060 6068 ldr r0, [r4, #4] 176:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 396 .loc 1 176 18 discriminator 1 view .LVU128 397 0062 8342 cmp r3, r0 398 0064 E1D3 bcc .L19 189:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 399 .loc 1 189 10 view .LVU129 400 0066 0023 movs r3, #0 401 .LVL38: 189:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 402 .loc 1 189 10 view .LVU130 403 0068 16E0 b .L20 404 .LVL39: 405 .L21: 191:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->OUT_ep[i].num = i; 406 .loc 1 191 5 is_stmt 1 discriminator 3 view .LVU131 191:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->OUT_ep[i].num = i; 407 .loc 1 191 27 is_stmt 0 discriminator 3 view .LVU132 408 006a 03EB8302 add r2, r3, r3, lsl #2 409 006e 04EBC202 add r2, r4, r2, lsl #3 410 0072 0021 movs r1, #0 411 0074 82F86911 strb r1, [r2, #361] 192:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Control until ep is activated */ 412 .loc 1 192 5 is_stmt 1 discriminator 3 view .LVU133 192:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Control until ep is activated */ 413 .loc 1 192 25 is_stmt 0 discriminator 3 view .LVU134 414 0078 82F86831 strb r3, [r2, #360] 194:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->OUT_ep[i].maxpacket = 0U; 415 .loc 1 194 5 is_stmt 1 discriminator 3 view .LVU135 194:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->OUT_ep[i].maxpacket = 0U; 416 .loc 1 194 26 is_stmt 0 discriminator 3 view .LVU136 417 007c 82F86B11 strb r1, [r2, #363] 195:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->OUT_ep[i].xfer_buff = 0U; 418 .loc 1 195 5 is_stmt 1 discriminator 3 view .LVU137 195:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->OUT_ep[i].xfer_buff = 0U; 419 .loc 1 195 31 is_stmt 0 discriminator 3 view .LVU138 420 0080 C2F87811 str r1, [r2, #376] 196:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->OUT_ep[i].xfer_len = 0U; 421 .loc 1 196 5 is_stmt 1 discriminator 3 view .LVU139 196:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->OUT_ep[i].xfer_len = 0U; 422 .loc 1 196 31 is_stmt 0 discriminator 3 view .LVU140 423 0084 C2F87C11 str r1, [r2, #380] 197:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 424 .loc 1 197 5 is_stmt 1 discriminator 3 view .LVU141 197:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 425 .loc 1 197 30 is_stmt 0 discriminator 3 view .LVU142 426 0088 03EB8302 add r2, r3, r3, lsl #2 427 008c 04EBC202 add r2, r4, r2, lsl #3 428 0090 C2F88011 str r1, [r2, #384] 189:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 429 .loc 1 189 47 is_stmt 1 discriminator 3 view .LVU143 430 0094 0133 adds r3, r3, #1 431 .LVL40: 189:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { ARM GAS /tmp/ccJPteqL.s page 46 432 .loc 1 189 47 is_stmt 0 discriminator 3 view .LVU144 433 0096 DBB2 uxtb r3, r3 434 .LVL41: 435 .L20: 189:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 436 .loc 1 189 18 is_stmt 1 discriminator 1 view .LVU145 437 0098 9842 cmp r0, r3 438 009a E6D8 bhi .L21 201:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 439 .loc 1 201 3 view .LVU146 201:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 440 .loc 1 201 25 is_stmt 0 view .LVU147 441 009c A446 mov ip, r4 442 009e 5CF8105B ldr r5, [ip], #16 201:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 443 .loc 1 201 9 view .LVU148 444 00a2 EE46 mov lr, sp 445 00a4 BCE80F00 ldmia ip!, {r0, r1, r2, r3} 446 .LVL42: 201:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 447 .loc 1 201 9 view .LVU149 448 00a8 AEE80F00 stmia lr!, {r0, r1, r2, r3} 449 00ac DCF80030 ldr r3, [ip] 450 00b0 CEF80030 str r3, [lr] 451 00b4 231D adds r3, r4, #4 452 00b6 0ECB ldm r3, {r1, r2, r3} 453 00b8 2846 mov r0, r5 454 00ba FFF7FEFF bl USB_DevInit 455 .LVL43: 203:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->State = HAL_PCD_STATE_READY; 456 .loc 1 203 3 is_stmt 1 view .LVU150 203:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->State = HAL_PCD_STATE_READY; 457 .loc 1 203 21 is_stmt 0 view .LVU151 458 00be 0023 movs r3, #0 459 00c0 84F82430 strb r3, [r4, #36] 204:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 460 .loc 1 204 3 is_stmt 1 view .LVU152 204:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 461 .loc 1 204 15 is_stmt 0 view .LVU153 462 00c4 0123 movs r3, #1 463 00c6 84F8A932 strb r3, [r4, #681] 207:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 464 .loc 1 207 3 is_stmt 1 view .LVU154 207:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 465 .loc 1 207 17 is_stmt 0 view .LVU155 466 00ca E369 ldr r3, [r4, #28] 207:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 467 .loc 1 207 6 view .LVU156 468 00cc 012B cmp r3, #1 469 00ce 02D0 beq .L29 212:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 470 .loc 1 212 10 view .LVU157 471 00d0 0020 movs r0, #0 472 .L16: 213:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 473 .loc 1 213 1 view .LVU158 474 00d2 07B0 add sp, sp, #28 ARM GAS /tmp/ccJPteqL.s page 47 475 .LCFI3: 476 .cfi_remember_state 477 .cfi_def_cfa_offset 12 478 @ sp needed 479 00d4 30BD pop {r4, r5, pc} 480 .LVL44: 481 .L29: 482 .LCFI4: 483 .cfi_restore_state 209:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 484 .loc 1 209 5 is_stmt 1 view .LVU159 209:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 485 .loc 1 209 11 is_stmt 0 view .LVU160 486 00d6 2046 mov r0, r4 487 00d8 FFF7FEFF bl HAL_PCDEx_ActivateLPM 488 .LVL45: 212:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 489 .loc 1 212 10 view .LVU161 490 00dc 0020 movs r0, #0 491 00de F8E7 b .L16 492 .LVL46: 493 .L22: 494 .LCFI5: 495 .cfi_def_cfa_offset 0 496 .cfi_restore 4 497 .cfi_restore 5 498 .cfi_restore 14 131:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 499 .loc 1 131 12 view .LVU162 500 00e0 0120 movs r0, #1 501 .LVL47: 213:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 502 .loc 1 213 1 view .LVU163 503 00e2 7047 bx lr 504 .cfi_endproc 505 .LFE329: 507 .section .text.HAL_PCD_MspDeInit,"ax",%progbits 508 .align 1 509 .weak HAL_PCD_MspDeInit 510 .syntax unified 511 .thumb 512 .thumb_func 514 HAL_PCD_MspDeInit: 515 .LVL48: 516 .LFB332: 275:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Prevent unused argument(s) compilation warning */ 517 .loc 1 275 1 is_stmt 1 view -0 518 .cfi_startproc 519 @ args = 0, pretend = 0, frame = 0 520 @ frame_needed = 0, uses_anonymous_args = 0 521 @ link register save eliminated. 277:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 522 .loc 1 277 3 view .LVU165 282:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 523 .loc 1 282 1 is_stmt 0 view .LVU166 524 0000 7047 bx lr 525 .cfi_endproc ARM GAS /tmp/ccJPteqL.s page 48 526 .LFE332: 528 .section .text.HAL_PCD_DeInit,"ax",%progbits 529 .align 1 530 .global HAL_PCD_DeInit 531 .syntax unified 532 .thumb 533 .thumb_func 535 HAL_PCD_DeInit: 536 .LVL49: 537 .LFB330: 221:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Check the PCD handle allocation */ 538 .loc 1 221 1 is_stmt 1 view -0 539 .cfi_startproc 540 @ args = 0, pretend = 0, frame = 0 541 @ frame_needed = 0, uses_anonymous_args = 0 221:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Check the PCD handle allocation */ 542 .loc 1 221 1 is_stmt 0 view .LVU168 543 0000 38B5 push {r3, r4, r5, lr} 544 .LCFI6: 545 .cfi_def_cfa_offset 16 546 .cfi_offset 3, -16 547 .cfi_offset 4, -12 548 .cfi_offset 5, -8 549 .cfi_offset 14, -4 223:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 550 .loc 1 223 3 is_stmt 1 view .LVU169 223:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 551 .loc 1 223 6 is_stmt 0 view .LVU170 552 0002 90B1 cbz r0, .L33 553 0004 0446 mov r4, r0 228:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 554 .loc 1 228 3 is_stmt 1 view .LVU171 228:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 555 .loc 1 228 15 is_stmt 0 view .LVU172 556 0006 0323 movs r3, #3 557 0008 80F8A932 strb r3, [r0, #681] 231:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 558 .loc 1 231 3 is_stmt 1 view .LVU173 231:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 559 .loc 1 231 7 is_stmt 0 view .LVU174 560 000c 0068 ldr r0, [r0] 561 .LVL50: 231:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 562 .loc 1 231 7 view .LVU175 563 000e FFF7FEFF bl USB_StopDevice 564 .LVL51: 231:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 565 .loc 1 231 6 view .LVU176 566 0012 0546 mov r5, r0 567 0014 10B1 cbz r0, .L36 233:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 568 .loc 1 233 12 view .LVU177 569 0016 0125 movs r5, #1 570 .LVL52: 571 .L32: 252:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 572 .loc 1 252 1 view .LVU178 ARM GAS /tmp/ccJPteqL.s page 49 573 0018 2846 mov r0, r5 574 001a 38BD pop {r3, r4, r5, pc} 575 .LVL53: 576 .L36: 246:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** #endif /* USE_HAL_PCD_REGISTER_CALLBACKS */ 577 .loc 1 246 3 is_stmt 1 view .LVU179 578 001c 2046 mov r0, r4 579 001e FFF7FEFF bl HAL_PCD_MspDeInit 580 .LVL54: 249:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 581 .loc 1 249 3 view .LVU180 249:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 582 .loc 1 249 15 is_stmt 0 view .LVU181 583 0022 0023 movs r3, #0 584 0024 84F8A932 strb r3, [r4, #681] 251:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 585 .loc 1 251 3 is_stmt 1 view .LVU182 251:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 586 .loc 1 251 10 is_stmt 0 view .LVU183 587 0028 F6E7 b .L32 588 .LVL55: 589 .L33: 225:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 590 .loc 1 225 12 view .LVU184 591 002a 0125 movs r5, #1 592 002c F4E7 b .L32 593 .cfi_endproc 594 .LFE330: 596 .section .text.HAL_PCD_Start,"ax",%progbits 597 .align 1 598 .global HAL_PCD_Start 599 .syntax unified 600 .thumb 601 .thumb_func 603 HAL_PCD_Start: 604 .LVL56: 605 .LFB333: 978:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __HAL_LOCK(hpcd); 606 .loc 1 978 1 is_stmt 1 view -0 607 .cfi_startproc 608 @ args = 0, pretend = 0, frame = 0 609 @ frame_needed = 0, uses_anonymous_args = 0 979:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __HAL_PCD_ENABLE(hpcd); 610 .loc 1 979 3 view .LVU186 979:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __HAL_PCD_ENABLE(hpcd); 611 .loc 1 979 3 view .LVU187 612 0000 90F8A832 ldrb r3, [r0, #680] @ zero_extendqisi2 613 0004 012B cmp r3, #1 614 0006 0ED0 beq .L39 978:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __HAL_LOCK(hpcd); 615 .loc 1 978 1 is_stmt 0 discriminator 2 view .LVU188 616 0008 10B5 push {r4, lr} 617 .LCFI7: 618 .cfi_def_cfa_offset 8 619 .cfi_offset 4, -8 620 .cfi_offset 14, -4 621 000a 0446 mov r4, r0 ARM GAS /tmp/ccJPteqL.s page 50 979:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __HAL_PCD_ENABLE(hpcd); 622 .loc 1 979 3 is_stmt 1 discriminator 2 view .LVU189 623 000c 0123 movs r3, #1 624 000e 80F8A832 strb r3, [r0, #680] 979:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __HAL_PCD_ENABLE(hpcd); 625 .loc 1 979 3 discriminator 2 view .LVU190 980:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** (void)USB_DevConnect(hpcd->Instance); 626 .loc 1 980 3 discriminator 2 view .LVU191 627 0012 0068 ldr r0, [r0] 628 .LVL57: 980:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** (void)USB_DevConnect(hpcd->Instance); 629 .loc 1 980 3 is_stmt 0 discriminator 2 view .LVU192 630 0014 FFF7FEFF bl USB_EnableGlobalInt 631 .LVL58: 981:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __HAL_UNLOCK(hpcd); 632 .loc 1 981 3 is_stmt 1 discriminator 2 view .LVU193 981:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __HAL_UNLOCK(hpcd); 633 .loc 1 981 9 is_stmt 0 discriminator 2 view .LVU194 634 0018 2068 ldr r0, [r4] 635 001a FFF7FEFF bl USB_DevConnect 636 .LVL59: 982:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 637 .loc 1 982 3 is_stmt 1 discriminator 2 view .LVU195 982:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 638 .loc 1 982 3 discriminator 2 view .LVU196 639 001e 0020 movs r0, #0 640 0020 84F8A802 strb r0, [r4, #680] 982:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 641 .loc 1 982 3 discriminator 2 view .LVU197 984:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 642 .loc 1 984 3 discriminator 2 view .LVU198 985:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 643 .loc 1 985 1 is_stmt 0 discriminator 2 view .LVU199 644 0024 10BD pop {r4, pc} 645 .LVL60: 646 .L39: 647 .LCFI8: 648 .cfi_def_cfa_offset 0 649 .cfi_restore 4 650 .cfi_restore 14 979:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __HAL_PCD_ENABLE(hpcd); 651 .loc 1 979 3 view .LVU200 652 0026 0220 movs r0, #2 653 .LVL61: 985:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 654 .loc 1 985 1 view .LVU201 655 0028 7047 bx lr 656 .cfi_endproc 657 .LFE333: 659 .section .text.HAL_PCD_Stop,"ax",%progbits 660 .align 1 661 .global HAL_PCD_Stop 662 .syntax unified 663 .thumb 664 .thumb_func 666 HAL_PCD_Stop: 667 .LVL62: ARM GAS /tmp/ccJPteqL.s page 51 668 .LFB334: 993:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __HAL_LOCK(hpcd); 669 .loc 1 993 1 is_stmt 1 view -0 670 .cfi_startproc 671 @ args = 0, pretend = 0, frame = 0 672 @ frame_needed = 0, uses_anonymous_args = 0 994:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __HAL_PCD_DISABLE(hpcd); 673 .loc 1 994 3 view .LVU203 994:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __HAL_PCD_DISABLE(hpcd); 674 .loc 1 994 3 view .LVU204 675 0000 90F8A832 ldrb r3, [r0, #680] @ zero_extendqisi2 676 0004 012B cmp r3, #1 677 0006 0ED0 beq .L46 993:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __HAL_LOCK(hpcd); 678 .loc 1 993 1 is_stmt 0 discriminator 2 view .LVU205 679 0008 10B5 push {r4, lr} 680 .LCFI9: 681 .cfi_def_cfa_offset 8 682 .cfi_offset 4, -8 683 .cfi_offset 14, -4 684 000a 0446 mov r4, r0 994:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __HAL_PCD_DISABLE(hpcd); 685 .loc 1 994 3 is_stmt 1 discriminator 2 view .LVU206 686 000c 0123 movs r3, #1 687 000e 80F8A832 strb r3, [r0, #680] 994:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __HAL_PCD_DISABLE(hpcd); 688 .loc 1 994 3 discriminator 2 view .LVU207 995:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** (void)USB_DevDisconnect(hpcd->Instance); 689 .loc 1 995 3 discriminator 2 view .LVU208 690 0012 0068 ldr r0, [r0] 691 .LVL63: 995:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** (void)USB_DevDisconnect(hpcd->Instance); 692 .loc 1 995 3 is_stmt 0 discriminator 2 view .LVU209 693 0014 FFF7FEFF bl USB_DisableGlobalInt 694 .LVL64: 996:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __HAL_UNLOCK(hpcd); 695 .loc 1 996 3 is_stmt 1 discriminator 2 view .LVU210 996:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __HAL_UNLOCK(hpcd); 696 .loc 1 996 9 is_stmt 0 discriminator 2 view .LVU211 697 0018 2068 ldr r0, [r4] 698 001a FFF7FEFF bl USB_DevDisconnect 699 .LVL65: 997:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 700 .loc 1 997 3 is_stmt 1 discriminator 2 view .LVU212 997:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 701 .loc 1 997 3 discriminator 2 view .LVU213 702 001e 0020 movs r0, #0 703 0020 84F8A802 strb r0, [r4, #680] 997:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 704 .loc 1 997 3 discriminator 2 view .LVU214 999:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 705 .loc 1 999 3 discriminator 2 view .LVU215 1000:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 706 .loc 1 1000 1 is_stmt 0 discriminator 2 view .LVU216 707 0024 10BD pop {r4, pc} 708 .LVL66: 709 .L46: ARM GAS /tmp/ccJPteqL.s page 52 710 .LCFI10: 711 .cfi_def_cfa_offset 0 712 .cfi_restore 4 713 .cfi_restore 14 994:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __HAL_PCD_DISABLE(hpcd); 714 .loc 1 994 3 view .LVU217 715 0026 0220 movs r0, #2 716 .LVL67: 1000:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 717 .loc 1 1000 1 view .LVU218 718 0028 7047 bx lr 719 .cfi_endproc 720 .LFE334: 722 .section .text.HAL_PCD_DataOutStageCallback,"ax",%progbits 723 .align 1 724 .weak HAL_PCD_DataOutStageCallback 725 .syntax unified 726 .thumb 727 .thumb_func 729 HAL_PCD_DataOutStageCallback: 730 .LVL68: 731 .LFB336: 1155:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Prevent unused argument(s) compilation warning */ 732 .loc 1 1155 1 is_stmt 1 view -0 733 .cfi_startproc 734 @ args = 0, pretend = 0, frame = 0 735 @ frame_needed = 0, uses_anonymous_args = 0 736 @ link register save eliminated. 1157:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** UNUSED(epnum); 737 .loc 1 1157 3 view .LVU220 1158:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 738 .loc 1 1158 3 view .LVU221 1163:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 739 .loc 1 1163 1 is_stmt 0 view .LVU222 740 0000 7047 bx lr 741 .cfi_endproc 742 .LFE336: 744 .section .text.HAL_PCD_DataInStageCallback,"ax",%progbits 745 .align 1 746 .weak HAL_PCD_DataInStageCallback 747 .syntax unified 748 .thumb 749 .thumb_func 751 HAL_PCD_DataInStageCallback: 752 .LVL69: 753 .LFB337: 1172:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Prevent unused argument(s) compilation warning */ 754 .loc 1 1172 1 is_stmt 1 view -0 755 .cfi_startproc 756 @ args = 0, pretend = 0, frame = 0 757 @ frame_needed = 0, uses_anonymous_args = 0 758 @ link register save eliminated. 1174:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** UNUSED(epnum); 759 .loc 1 1174 3 view .LVU224 1175:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 760 .loc 1 1175 3 view .LVU225 1180:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /** ARM GAS /tmp/ccJPteqL.s page 53 761 .loc 1 1180 1 is_stmt 0 view .LVU226 762 0000 7047 bx lr 763 .cfi_endproc 764 .LFE337: 766 .section .text.HAL_PCD_EP_DB_Transmit,"ax",%progbits 767 .align 1 768 .syntax unified 769 .thumb 770 .thumb_func 772 HAL_PCD_EP_DB_Transmit: 773 .LVL70: 774 .LFB363: 2038:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2039:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2040:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /** 2041:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @brief Manage double buffer bulk IN transaction from ISR 2042:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @param hpcd PCD handle 2043:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @param ep current endpoint handle 2044:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @param wEPVal Last snapshot of EPRx register value taken in ISR 2045:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** * @retval HAL status 2046:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** */ 2047:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** static HAL_StatusTypeDef HAL_PCD_EP_DB_Transmit(PCD_HandleTypeDef *hpcd, 2048:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_EPTypeDef *ep, uint16_t wEPVal) 2049:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 775 .loc 1 2049 1 is_stmt 1 view -0 776 .cfi_startproc 777 @ args = 0, pretend = 0, frame = 0 778 @ frame_needed = 0, uses_anonymous_args = 0 779 .loc 1 2049 1 is_stmt 0 view .LVU228 780 0000 70B5 push {r4, r5, r6, lr} 781 .LCFI11: 782 .cfi_def_cfa_offset 16 783 .cfi_offset 4, -16 784 .cfi_offset 5, -12 785 .cfi_offset 6, -8 786 .cfi_offset 14, -4 787 0002 0546 mov r5, r0 788 0004 0C46 mov r4, r1 789 0006 1646 mov r6, r2 2050:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** uint32_t len; 790 .loc 1 2050 3 is_stmt 1 view .LVU229 2051:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** uint16_t TxPctSize; 791 .loc 1 2051 3 view .LVU230 2052:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2053:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Data Buffer0 ACK received */ 2054:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** if ((wEPVal & USB_EP_DTOG_TX) != 0U) 792 .loc 1 2054 3 view .LVU231 793 .loc 1 2054 6 is_stmt 0 view .LVU232 794 0008 12F0400F tst r2, #64 795 000c 00F00981 beq .L54 2055:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 2056:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* multi-packet on the NON control IN endpoint */ 2057:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** TxPctSize = (uint16_t)PCD_GET_EP_DBUF0_CNT(hpcd->Instance, ep->num); 796 .loc 1 2057 5 is_stmt 1 view .LVU233 797 .loc 1 2057 27 is_stmt 0 view .LVU234 798 0010 0268 ldr r2, [r0] 799 .LVL71: ARM GAS /tmp/ccJPteqL.s page 54 800 .loc 1 2057 27 view .LVU235 801 0012 B2F85030 ldrh r3, [r2, #80] 802 0016 0978 ldrb r1, [r1] @ zero_extendqisi2 803 .LVL72: 804 .loc 1 2057 27 view .LVU236 805 0018 C800 lsls r0, r1, #3 806 .LVL73: 807 .loc 1 2057 27 view .LVU237 808 001a 10FA83F3 uxtah r3, r0, r3 809 001e 1344 add r3, r3, r2 810 0020 B3F80224 ldrh r2, [r3, #1026] 811 .loc 1 2057 15 view .LVU238 812 0024 C2F30902 ubfx r2, r2, #0, #10 813 .LVL74: 2058:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2059:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** if (ep->xfer_len > TxPctSize) 814 .loc 1 2059 5 is_stmt 1 view .LVU239 815 .loc 1 2059 11 is_stmt 0 view .LVU240 816 0028 A369 ldr r3, [r4, #24] 817 .loc 1 2059 8 view .LVU241 818 002a 9342 cmp r3, r2 819 002c 51D9 bls .L55 2060:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 2061:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->xfer_len -= TxPctSize; 820 .loc 1 2061 7 is_stmt 1 view .LVU242 821 .loc 1 2061 20 is_stmt 0 view .LVU243 822 002e 9B1A subs r3, r3, r2 823 0030 A361 str r3, [r4, #24] 824 .L56: 2062:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 2063:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** else 2064:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 2065:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->xfer_len = 0U; 2066:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 2067:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2068:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Transfer is completed */ 2069:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** if (ep->xfer_len == 0U) 825 .loc 1 2069 5 is_stmt 1 view .LVU244 826 .loc 1 2069 11 is_stmt 0 view .LVU245 827 0032 A369 ldr r3, [r4, #24] 828 .loc 1 2069 8 view .LVU246 829 0034 002B cmp r3, #0 830 0036 68D1 bne .L57 2070:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 2071:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_SET_EP_DBUF0_CNT(hpcd->Instance, ep->num, ep->is_in, 0U); 831 .loc 1 2071 7 is_stmt 1 view .LVU247 832 .loc 1 2071 7 view .LVU248 833 0038 6378 ldrb r3, [r4, #1] @ zero_extendqisi2 834 003a 002B cmp r3, #0 835 003c 4CD1 bne .L58 836 .loc 1 2071 7 discriminator 1 view .LVU249 837 .LBB6: 838 .loc 1 2071 7 discriminator 1 view .LVU250 839 003e 2A68 ldr r2, [r5] 840 .LVL75: 841 .loc 1 2071 7 discriminator 1 view .LVU251 842 .loc 1 2071 7 discriminator 1 view .LVU252 ARM GAS /tmp/ccJPteqL.s page 55 843 0040 B2F85030 ldrh r3, [r2, #80] 844 0044 12FA83F3 uxtah r3, r2, r3 845 .LVL76: 846 .loc 1 2071 7 discriminator 1 view .LVU253 847 0048 0344 add r3, r3, r0 848 .LVL77: 849 .loc 1 2071 7 discriminator 1 view .LVU254 850 .LBB7: 851 .loc 1 2071 7 discriminator 1 view .LVU255 852 .loc 1 2071 7 discriminator 1 view .LVU256 853 .loc 1 2071 7 discriminator 1 view .LVU257 854 .loc 1 2071 7 discriminator 1 view .LVU258 855 004a B3F80224 ldrh r2, [r3, #1026] 856 004e 92B2 uxth r2, r2 857 0050 22F4F842 bic r2, r2, #31744 858 0054 92B2 uxth r2, r2 859 0056 A3F80224 strh r2, [r3, #1026] @ movhi 860 .loc 1 2071 7 discriminator 1 view .LVU259 861 005a B3F80224 ldrh r2, [r3, #1026] 862 005e 6FEA4242 mvn r2, r2, lsl #17 863 0062 6FEA5242 mvn r2, r2, lsr #17 864 0066 92B2 uxth r2, r2 865 0068 A3F80224 strh r2, [r3, #1026] @ movhi 866 .LVL78: 867 .L59: 868 .loc 1 2071 7 is_stmt 0 discriminator 1 view .LVU260 869 .LBE7: 870 .LBE6: 871 .loc 1 2071 7 is_stmt 1 discriminator 18 view .LVU261 872 .loc 1 2071 7 discriminator 18 view .LVU262 2072:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_SET_EP_DBUF1_CNT(hpcd->Instance, ep->num, ep->is_in, 0U); 873 .loc 1 2072 7 discriminator 18 view .LVU263 874 .LBB8: 875 .loc 1 2072 7 discriminator 18 view .LVU264 876 006c 2A68 ldr r2, [r5] 877 .LVL79: 878 .loc 1 2072 7 discriminator 18 view .LVU265 879 .loc 1 2072 7 discriminator 18 view .LVU266 880 006e 6378 ldrb r3, [r4, #1] @ zero_extendqisi2 881 0070 002B cmp r3, #0 882 0072 3DD1 bne .L60 883 .loc 1 2072 7 discriminator 1 view .LVU267 884 .LBB9: 885 .loc 1 2072 7 discriminator 1 view .LVU268 886 .LVL80: 887 .loc 1 2072 7 discriminator 1 view .LVU269 888 .loc 1 2072 7 discriminator 1 view .LVU270 889 0074 B2F85030 ldrh r3, [r2, #80] 890 0078 12FA83F3 uxtah r3, r2, r3 891 .LVL81: 892 .loc 1 2072 7 discriminator 1 view .LVU271 893 007c 2278 ldrb r2, [r4] @ zero_extendqisi2 894 .LVL82: 895 .loc 1 2072 7 is_stmt 0 discriminator 1 view .LVU272 896 007e 03EBC203 add r3, r3, r2, lsl #3 897 .LVL83: 898 .loc 1 2072 7 is_stmt 1 discriminator 1 view .LVU273 ARM GAS /tmp/ccJPteqL.s page 56 899 .LBB10: 900 .loc 1 2072 7 discriminator 1 view .LVU274 901 .loc 1 2072 7 discriminator 1 view .LVU275 902 .loc 1 2072 7 discriminator 1 view .LVU276 903 .loc 1 2072 7 discriminator 1 view .LVU277 904 0082 B3F80624 ldrh r2, [r3, #1030] 905 0086 92B2 uxth r2, r2 906 0088 22F4F842 bic r2, r2, #31744 907 008c 92B2 uxth r2, r2 908 008e A3F80624 strh r2, [r3, #1030] @ movhi 909 .LVL84: 910 .loc 1 2072 7 discriminator 1 view .LVU278 911 0092 B3F80624 ldrh r2, [r3, #1030] 912 0096 6FEA4242 mvn r2, r2, lsl #17 913 009a 6FEA5242 mvn r2, r2, lsr #17 914 009e 92B2 uxth r2, r2 915 00a0 A3F80624 strh r2, [r3, #1030] @ movhi 916 .LVL85: 917 .L61: 918 .loc 1 2072 7 is_stmt 0 discriminator 1 view .LVU279 919 .LBE10: 920 .LBE9: 921 .LBE8: 922 .loc 1 2072 7 is_stmt 1 discriminator 18 view .LVU280 2073:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2074:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* TX COMPLETE */ 2075:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** #if (USE_HAL_PCD_REGISTER_CALLBACKS == 1U) 2076:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->DataInStageCallback(hpcd, ep->num); 2077:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** #else 2078:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** HAL_PCD_DataInStageCallback(hpcd, ep->num); 923 .loc 1 2078 7 discriminator 18 view .LVU281 924 00a4 2178 ldrb r1, [r4] @ zero_extendqisi2 925 00a6 2846 mov r0, r5 926 00a8 FFF7FEFF bl HAL_PCD_DataInStageCallback 927 .LVL86: 2079:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** #endif /* USE_HAL_PCD_REGISTER_CALLBACKS */ 2080:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2081:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** if ((wEPVal & USB_EP_DTOG_RX) != 0U) 928 .loc 1 2081 7 discriminator 18 view .LVU282 929 .loc 1 2081 10 is_stmt 0 discriminator 18 view .LVU283 930 00ac 16F4804F tst r6, #16384 931 00b0 40D0 beq .L62 2082:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 2083:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_FREE_USER_BUFFER(hpcd->Instance, ep->num, 1U); 932 .loc 1 2083 9 is_stmt 1 discriminator 4 view .LVU284 933 .loc 1 2083 9 discriminator 4 view .LVU285 934 .loc 1 2083 9 discriminator 4 view .LVU286 935 .loc 1 2083 9 discriminator 4 view .LVU287 936 .LBB11: 937 .loc 1 2083 9 discriminator 4 view .LVU288 938 .loc 1 2083 9 discriminator 4 view .LVU289 939 00b2 2A68 ldr r2, [r5] 940 00b4 2178 ldrb r1, [r4] @ zero_extendqisi2 941 00b6 32F82130 ldrh r3, [r2, r1, lsl #2] 942 00ba 9BB2 uxth r3, r3 943 00bc 23F4E043 bic r3, r3, #28672 944 00c0 23F07003 bic r3, r3, #112 ARM GAS /tmp/ccJPteqL.s page 57 945 .LVL87: 946 .loc 1 2083 9 discriminator 4 view .LVU290 947 00c4 43F44043 orr r3, r3, #49152 948 .LVL88: 949 .loc 1 2083 9 is_stmt 0 discriminator 4 view .LVU291 950 00c8 43F08003 orr r3, r3, #128 951 00cc 22F82130 strh r3, [r2, r1, lsl #2] @ movhi 952 00d0 30E0 b .L62 953 .LVL89: 954 .L55: 955 .loc 1 2083 9 discriminator 4 view .LVU292 956 .LBE11: 2065:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 957 .loc 1 2065 7 is_stmt 1 view .LVU293 2065:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 958 .loc 1 2065 20 is_stmt 0 view .LVU294 959 00d2 0023 movs r3, #0 960 00d4 A361 str r3, [r4, #24] 961 00d6 ACE7 b .L56 962 .L58: 2071:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_SET_EP_DBUF1_CNT(hpcd->Instance, ep->num, ep->is_in, 0U); 963 .loc 1 2071 7 is_stmt 1 discriminator 2 view .LVU295 964 00d8 012B cmp r3, #1 965 00da C7D1 bne .L59 2071:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_SET_EP_DBUF1_CNT(hpcd->Instance, ep->num, ep->is_in, 0U); 966 .loc 1 2071 7 discriminator 16 view .LVU296 967 .LBB12: 2071:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_SET_EP_DBUF1_CNT(hpcd->Instance, ep->num, ep->is_in, 0U); 968 .loc 1 2071 7 discriminator 16 view .LVU297 969 00dc 2A68 ldr r2, [r5] 970 .LVL90: 2071:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_SET_EP_DBUF1_CNT(hpcd->Instance, ep->num, ep->is_in, 0U); 971 .loc 1 2071 7 discriminator 16 view .LVU298 2071:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_SET_EP_DBUF1_CNT(hpcd->Instance, ep->num, ep->is_in, 0U); 972 .loc 1 2071 7 discriminator 16 view .LVU299 973 00de B2F85030 ldrh r3, [r2, #80] 974 00e2 12FA83F3 uxtah r3, r2, r3 975 .LVL91: 2071:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_SET_EP_DBUF1_CNT(hpcd->Instance, ep->num, ep->is_in, 0U); 976 .loc 1 2071 7 discriminator 16 view .LVU300 977 00e6 0344 add r3, r3, r0 978 .LVL92: 2071:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_SET_EP_DBUF1_CNT(hpcd->Instance, ep->num, ep->is_in, 0U); 979 .loc 1 2071 7 discriminator 16 view .LVU301 980 00e8 0022 movs r2, #0 981 00ea A3F80224 strh r2, [r3, #1026] @ movhi 982 00ee BDE7 b .L59 983 .LVL93: 984 .L60: 2071:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_SET_EP_DBUF1_CNT(hpcd->Instance, ep->num, ep->is_in, 0U); 985 .loc 1 2071 7 is_stmt 0 discriminator 16 view .LVU302 986 .LBE12: 987 .LBB13: 2072:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 988 .loc 1 2072 7 is_stmt 1 discriminator 2 view .LVU303 989 00f0 012B cmp r3, #1 990 00f2 D7D1 bne .L61 ARM GAS /tmp/ccJPteqL.s page 58 2072:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 991 .loc 1 2072 7 discriminator 16 view .LVU304 992 00f4 B2F85030 ldrh r3, [r2, #80] 993 00f8 12FA83F3 uxtah r3, r2, r3 994 .LVL94: 2072:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 995 .loc 1 2072 7 discriminator 16 view .LVU305 996 00fc 2278 ldrb r2, [r4] @ zero_extendqisi2 997 00fe 03EBC203 add r3, r3, r2, lsl #3 998 .LVL95: 2072:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 999 .loc 1 2072 7 discriminator 16 view .LVU306 1000 0102 0022 movs r2, #0 1001 0104 A3F80624 strh r2, [r3, #1030] @ movhi 1002 0108 CCE7 b .L61 1003 .LVL96: 1004 .L57: 2072:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1005 .loc 1 2072 7 is_stmt 0 discriminator 16 view .LVU307 1006 .LBE13: 2084:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 2085:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 2086:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** else /* Transfer is not yet Done */ 2087:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 2088:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* need to Free USB Buff */ 2089:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** if ((wEPVal & USB_EP_DTOG_RX) != 0U) 1007 .loc 1 2089 7 is_stmt 1 view .LVU308 1008 .loc 1 2089 10 is_stmt 0 view .LVU309 1009 010a 16F4804F tst r6, #16384 1010 010e 0DD0 beq .L63 2090:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 2091:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_FREE_USER_BUFFER(hpcd->Instance, ep->num, 1U); 1011 .loc 1 2091 9 is_stmt 1 discriminator 4 view .LVU310 1012 .loc 1 2091 9 discriminator 4 view .LVU311 1013 .loc 1 2091 9 discriminator 4 view .LVU312 1014 .loc 1 2091 9 discriminator 4 view .LVU313 1015 .LBB14: 1016 .loc 1 2091 9 discriminator 4 view .LVU314 1017 .loc 1 2091 9 discriminator 4 view .LVU315 1018 0110 2868 ldr r0, [r5] 1019 0112 30F82130 ldrh r3, [r0, r1, lsl #2] 1020 0116 9BB2 uxth r3, r3 1021 0118 23F4E043 bic r3, r3, #28672 1022 011c 23F07003 bic r3, r3, #112 1023 .LVL97: 1024 .loc 1 2091 9 discriminator 4 view .LVU316 1025 0120 43F44043 orr r3, r3, #49152 1026 .LVL98: 1027 .loc 1 2091 9 is_stmt 0 discriminator 4 view .LVU317 1028 0124 43F08003 orr r3, r3, #128 1029 0128 20F82130 strh r3, [r0, r1, lsl #2] @ movhi 1030 .LVL99: 1031 .L63: 1032 .loc 1 2091 9 discriminator 4 view .LVU318 1033 .LBE14: 1034 .loc 1 2091 9 is_stmt 1 discriminator 6 view .LVU319 1035 .loc 1 2091 9 discriminator 6 view .LVU320 ARM GAS /tmp/ccJPteqL.s page 59 2092:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 2093:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2094:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Still there is data to Fill in the next Buffer */ 2095:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** if (ep->xfer_fill_db == 1U) 1036 .loc 1 2095 7 discriminator 6 view .LVU321 1037 .loc 1 2095 13 is_stmt 0 discriminator 6 view .LVU322 1038 012c 94F82430 ldrb r3, [r4, #36] @ zero_extendqisi2 1039 .loc 1 2095 10 discriminator 6 view .LVU323 1040 0130 012B cmp r3, #1 1041 0132 12D0 beq .L91 1042 .LVL100: 1043 .L62: 2096:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 2097:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->xfer_buff += TxPctSize; 2098:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->xfer_count += TxPctSize; 2099:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2100:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Calculate the len of the new buffer to fill */ 2101:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** if (ep->xfer_len_db >= ep->maxpacket) 2102:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 2103:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** len = ep->maxpacket; 2104:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->xfer_len_db -= len; 2105:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 2106:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** else if (ep->xfer_len_db == 0U) 2107:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 2108:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** len = TxPctSize; 2109:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->xfer_fill_db = 0U; 2110:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 2111:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** else 2112:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 2113:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->xfer_fill_db = 0U; 2114:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** len = ep->xfer_len_db; 2115:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->xfer_len_db = 0U; 2116:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 2117:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2118:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Write remaining Data to Buffer */ 2119:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Set the Double buffer counter for pma buffer1 */ 2120:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_SET_EP_DBUF0_CNT(hpcd->Instance, ep->num, ep->is_in, len); 2121:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2122:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Copy user buffer to USB PMA */ 2123:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** USB_WritePMA(hpcd->Instance, ep->xfer_buff, ep->pmaaddr0, (uint16_t)len); 2124:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 2125:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 2126:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 2127:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** else /* Data Buffer1 ACK received */ 2128:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 2129:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* multi-packet on the NON control IN endpoint */ 2130:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** TxPctSize = (uint16_t)PCD_GET_EP_DBUF1_CNT(hpcd->Instance, ep->num); 2131:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2132:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** if (ep->xfer_len >= TxPctSize) 2133:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 2134:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->xfer_len -= TxPctSize; 2135:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 2136:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** else 2137:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 2138:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->xfer_len = 0U; 2139:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 2140:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ARM GAS /tmp/ccJPteqL.s page 60 2141:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Transfer is completed */ 2142:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** if (ep->xfer_len == 0U) 2143:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 2144:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_SET_EP_DBUF0_CNT(hpcd->Instance, ep->num, ep->is_in, 0U); 2145:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_SET_EP_DBUF1_CNT(hpcd->Instance, ep->num, ep->is_in, 0U); 2146:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2147:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* TX COMPLETE */ 2148:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** #if (USE_HAL_PCD_REGISTER_CALLBACKS == 1U) 2149:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->DataInStageCallback(hpcd, ep->num); 2150:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** #else 2151:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** HAL_PCD_DataInStageCallback(hpcd, ep->num); 2152:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** #endif /* USE_HAL_PCD_REGISTER_CALLBACKS */ 2153:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2154:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* need to Free USB Buff */ 2155:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** if ((wEPVal & USB_EP_DTOG_RX) == 0U) 2156:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 2157:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_FREE_USER_BUFFER(hpcd->Instance, ep->num, 1U); 2158:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 2159:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 2160:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** else /* Transfer is not yet Done */ 2161:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 2162:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* need to Free USB Buff */ 2163:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** if ((wEPVal & USB_EP_DTOG_RX) == 0U) 2164:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 2165:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_FREE_USER_BUFFER(hpcd->Instance, ep->num, 1U); 2166:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 2167:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2168:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Still there is data to Fill in the next Buffer */ 2169:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** if (ep->xfer_fill_db == 1U) 2170:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 2171:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->xfer_buff += TxPctSize; 2172:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->xfer_count += TxPctSize; 2173:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2174:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Calculate the len of the new buffer to fill */ 2175:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** if (ep->xfer_len_db >= ep->maxpacket) 2176:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 2177:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** len = ep->maxpacket; 2178:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->xfer_len_db -= len; 2179:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 2180:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** else if (ep->xfer_len_db == 0U) 2181:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 2182:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** len = TxPctSize; 2183:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->xfer_fill_db = 0U; 2184:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 2185:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** else 2186:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 2187:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** len = ep->xfer_len_db; 2188:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->xfer_len_db = 0U; 2189:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->xfer_fill_db = 0; 2190:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 2191:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2192:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Set the Double buffer counter for pmabuffer1 */ 2193:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_SET_EP_DBUF1_CNT(hpcd->Instance, ep->num, ep->is_in, len); 2194:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2195:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Copy the user buffer to USB PMA */ 2196:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** USB_WritePMA(hpcd->Instance, ep->xfer_buff, ep->pmaaddr1, (uint16_t)len); 2197:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } ARM GAS /tmp/ccJPteqL.s page 61 2198:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 2199:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 2200:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2201:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /*enable endpoint IN*/ 2202:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_SET_EP_TX_STATUS(hpcd->Instance, ep->num, USB_EP_TX_VALID); 1044 .loc 1 2202 3 is_stmt 1 view .LVU324 1045 .LBB15: 1046 .loc 1 2202 3 view .LVU325 1047 .loc 1 2202 3 view .LVU326 1048 0134 2A68 ldr r2, [r5] 1049 0136 2178 ldrb r1, [r4] @ zero_extendqisi2 1050 0138 32F82130 ldrh r3, [r2, r1, lsl #2] 1051 013c 9BB2 uxth r3, r3 1052 013e 23F4E043 bic r3, r3, #28672 1053 0142 23F04003 bic r3, r3, #64 1054 .LVL101: 1055 .loc 1 2202 3 view .LVU327 1056 .loc 1 2202 3 view .LVU328 1057 .loc 1 2202 3 view .LVU329 1058 .loc 1 2202 3 view .LVU330 1059 0146 83F03003 eor r3, r3, #48 1060 .LVL102: 1061 .loc 1 2202 3 view .LVU331 1062 014a 43F40043 orr r3, r3, #32768 1063 .LVL103: 1064 .loc 1 2202 3 is_stmt 0 view .LVU332 1065 014e 43F08003 orr r3, r3, #128 1066 0152 22F82130 strh r3, [r2, r1, lsl #2] @ movhi 1067 .LBE15: 1068 .loc 1 2202 3 is_stmt 1 view .LVU333 2203:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2204:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** return HAL_OK; 1069 .loc 1 2204 3 view .LVU334 2205:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1070 .loc 1 2205 1 is_stmt 0 view .LVU335 1071 0156 0020 movs r0, #0 1072 0158 70BD pop {r4, r5, r6, pc} 1073 .LVL104: 1074 .L91: 2097:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->xfer_count += TxPctSize; 1075 .loc 1 2097 9 is_stmt 1 view .LVU336 2097:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->xfer_count += TxPctSize; 1076 .loc 1 2097 11 is_stmt 0 view .LVU337 1077 015a 6369 ldr r3, [r4, #20] 2097:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->xfer_count += TxPctSize; 1078 .loc 1 2097 23 view .LVU338 1079 015c 1344 add r3, r3, r2 1080 015e 6361 str r3, [r4, #20] 2098:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1081 .loc 1 2098 9 is_stmt 1 view .LVU339 2098:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1082 .loc 1 2098 11 is_stmt 0 view .LVU340 1083 0160 E369 ldr r3, [r4, #28] 2098:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1084 .loc 1 2098 24 view .LVU341 1085 0162 1344 add r3, r3, r2 1086 0164 E361 str r3, [r4, #28] ARM GAS /tmp/ccJPteqL.s page 62 2101:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1087 .loc 1 2101 9 is_stmt 1 view .LVU342 2101:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1088 .loc 1 2101 15 is_stmt 0 view .LVU343 1089 0166 216A ldr r1, [r4, #32] 2101:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1090 .loc 1 2101 34 view .LVU344 1091 0168 2369 ldr r3, [r4, #16] 2101:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1092 .loc 1 2101 12 view .LVU345 1093 016a 9942 cmp r1, r3 1094 016c 1BD3 bcc .L64 2103:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->xfer_len_db -= len; 1095 .loc 1 2103 11 is_stmt 1 view .LVU346 1096 .LVL105: 2104:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1097 .loc 1 2104 11 view .LVU347 2104:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1098 .loc 1 2104 27 is_stmt 0 view .LVU348 1099 016e C91A subs r1, r1, r3 1100 0170 2162 str r1, [r4, #32] 1101 .L65: 2120:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1102 .loc 1 2120 9 is_stmt 1 view .LVU349 2120:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1103 .loc 1 2120 9 view .LVU350 1104 0172 6278 ldrb r2, [r4, #1] @ zero_extendqisi2 1105 .LVL106: 2120:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1106 .loc 1 2120 9 is_stmt 0 view .LVU351 1107 0174 002A cmp r2, #0 1108 0176 3FD1 bne .L67 2120:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1109 .loc 1 2120 9 is_stmt 1 discriminator 1 view .LVU352 1110 .LBB16: 2120:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1111 .loc 1 2120 9 discriminator 1 view .LVU353 1112 0178 2968 ldr r1, [r5] 1113 .LVL107: 2120:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1114 .loc 1 2120 9 discriminator 1 view .LVU354 2120:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1115 .loc 1 2120 9 discriminator 1 view .LVU355 1116 017a B1F85020 ldrh r2, [r1, #80] 1117 017e 11FA82F2 uxtah r2, r1, r2 1118 .LVL108: 2120:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1119 .loc 1 2120 9 discriminator 1 view .LVU356 1120 0182 2178 ldrb r1, [r4] @ zero_extendqisi2 1121 0184 02EBC102 add r2, r2, r1, lsl #3 1122 .LVL109: 2120:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1123 .loc 1 2120 9 discriminator 1 view .LVU357 1124 .LBB17: 2120:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1125 .loc 1 2120 9 discriminator 1 view .LVU358 2120:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ARM GAS /tmp/ccJPteqL.s page 63 1126 .loc 1 2120 9 discriminator 1 view .LVU359 1127 0188 3E2B cmp r3, #62 1128 018a 18D9 bls .L68 2120:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1129 .loc 1 2120 9 discriminator 3 view .LVU360 2120:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1130 .loc 1 2120 9 discriminator 3 view .LVU361 1131 018c 5909 lsrs r1, r3, #5 1132 .LVL110: 2120:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1133 .loc 1 2120 9 discriminator 3 view .LVU362 1134 018e 13F01F0F tst r3, #31 1135 0192 00D1 bne .L69 2120:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1136 .loc 1 2120 9 discriminator 5 view .LVU363 1137 0194 0139 subs r1, r1, #1 1138 .LVL111: 1139 .L69: 2120:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1140 .loc 1 2120 9 discriminator 7 view .LVU364 1141 0196 6FEAC161 mvn r1, r1, lsl #27 1142 .LVL112: 2120:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1143 .loc 1 2120 9 is_stmt 0 discriminator 7 view .LVU365 1144 019a 6FEA5141 mvn r1, r1, lsr #17 1145 019e 89B2 uxth r1, r1 1146 01a0 A2F80214 strh r1, [r2, #1026] @ movhi 2120:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1147 .loc 1 2120 9 is_stmt 1 discriminator 7 view .LVU366 1148 01a4 2AE0 b .L70 1149 .LVL113: 1150 .L64: 2120:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1151 .loc 1 2120 9 is_stmt 0 discriminator 7 view .LVU367 1152 .LBE17: 1153 .LBE16: 2106:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1154 .loc 1 2106 14 is_stmt 1 view .LVU368 2106:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1155 .loc 1 2106 17 is_stmt 0 view .LVU369 1156 01a6 21B9 cbnz r1, .L66 2108:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->xfer_fill_db = 0U; 1157 .loc 1 2108 11 is_stmt 1 view .LVU370 1158 .LVL114: 2109:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1159 .loc 1 2109 11 view .LVU371 2109:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1160 .loc 1 2109 28 is_stmt 0 view .LVU372 1161 01a8 0023 movs r3, #0 1162 01aa 84F82430 strb r3, [r4, #36] 2108:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->xfer_fill_db = 0U; 1163 .loc 1 2108 15 view .LVU373 1164 01ae 1346 mov r3, r2 1165 01b0 DFE7 b .L65 1166 .LVL115: 1167 .L66: 2113:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** len = ep->xfer_len_db; ARM GAS /tmp/ccJPteqL.s page 64 1168 .loc 1 2113 11 is_stmt 1 view .LVU374 2113:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** len = ep->xfer_len_db; 1169 .loc 1 2113 28 is_stmt 0 view .LVU375 1170 01b2 0023 movs r3, #0 1171 01b4 84F82430 strb r3, [r4, #36] 2114:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->xfer_len_db = 0U; 1172 .loc 1 2114 11 is_stmt 1 view .LVU376 1173 .LVL116: 2115:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1174 .loc 1 2115 11 view .LVU377 2115:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1175 .loc 1 2115 27 is_stmt 0 view .LVU378 1176 01b8 2362 str r3, [r4, #32] 2114:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->xfer_len_db = 0U; 1177 .loc 1 2114 15 view .LVU379 1178 01ba 0B46 mov r3, r1 1179 01bc D9E7 b .L65 1180 .LVL117: 1181 .L68: 1182 .LBB19: 1183 .LBB18: 2120:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1184 .loc 1 2120 9 is_stmt 1 discriminator 4 view .LVU380 1185 01be 8BB9 cbnz r3, .L71 2120:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1186 .loc 1 2120 9 discriminator 9 view .LVU381 1187 01c0 B2F80214 ldrh r1, [r2, #1026] 1188 01c4 89B2 uxth r1, r1 1189 01c6 21F4F841 bic r1, r1, #31744 1190 01ca 89B2 uxth r1, r1 1191 01cc A2F80214 strh r1, [r2, #1026] @ movhi 2120:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1192 .loc 1 2120 9 discriminator 9 view .LVU382 1193 01d0 B2F80214 ldrh r1, [r2, #1026] 1194 01d4 6FEA4141 mvn r1, r1, lsl #17 1195 01d8 6FEA5141 mvn r1, r1, lsr #17 1196 01dc 89B2 uxth r1, r1 1197 01de A2F80214 strh r1, [r2, #1026] @ movhi 1198 01e2 0BE0 b .L70 1199 .L71: 2120:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1200 .loc 1 2120 9 discriminator 10 view .LVU383 2120:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1201 .loc 1 2120 9 discriminator 10 view .LVU384 1202 01e4 5908 lsrs r1, r3, #1 1203 .LVL118: 2120:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1204 .loc 1 2120 9 discriminator 10 view .LVU385 1205 01e6 13F0010F tst r3, #1 1206 01ea 00D0 beq .L72 2120:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1207 .loc 1 2120 9 discriminator 12 view .LVU386 1208 01ec 0131 adds r1, r1, #1 1209 .LVL119: 1210 .L72: 2120:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1211 .loc 1 2120 9 discriminator 14 view .LVU387 ARM GAS /tmp/ccJPteqL.s page 65 1212 01ee 8902 lsls r1, r1, #10 1213 .LVL120: 2120:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1214 .loc 1 2120 9 is_stmt 0 discriminator 14 view .LVU388 1215 01f0 89B2 uxth r1, r1 1216 01f2 A2F80214 strh r1, [r2, #1026] @ movhi 1217 01f6 01E0 b .L70 1218 .LVL121: 1219 .L67: 2120:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1220 .loc 1 2120 9 discriminator 14 view .LVU389 1221 .LBE18: 1222 .LBE19: 2120:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1223 .loc 1 2120 9 is_stmt 1 discriminator 2 view .LVU390 1224 01f8 012A cmp r2, #1 1225 01fa 06D0 beq .L92 1226 .L70: 2120:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1227 .loc 1 2120 9 discriminator 18 view .LVU391 2120:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1228 .loc 1 2120 9 discriminator 18 view .LVU392 2123:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1229 .loc 1 2123 9 discriminator 18 view .LVU393 1230 01fc 9BB2 uxth r3, r3 1231 .LVL122: 2123:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1232 .loc 1 2123 9 is_stmt 0 discriminator 18 view .LVU394 1233 01fe 2289 ldrh r2, [r4, #8] 1234 0200 6169 ldr r1, [r4, #20] 1235 0202 2868 ldr r0, [r5] 1236 0204 FFF7FEFF bl USB_WritePMA 1237 .LVL123: 1238 0208 94E7 b .L62 1239 .LVL124: 1240 .L92: 2120:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1241 .loc 1 2120 9 is_stmt 1 discriminator 16 view .LVU395 1242 .LBB20: 2120:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1243 .loc 1 2120 9 discriminator 16 view .LVU396 1244 020a 2968 ldr r1, [r5] 1245 .LVL125: 2120:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1246 .loc 1 2120 9 discriminator 16 view .LVU397 2120:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1247 .loc 1 2120 9 discriminator 16 view .LVU398 1248 020c B1F85020 ldrh r2, [r1, #80] 1249 0210 11FA82F2 uxtah r2, r1, r2 1250 .LVL126: 2120:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1251 .loc 1 2120 9 discriminator 16 view .LVU399 1252 0214 2178 ldrb r1, [r4] @ zero_extendqisi2 1253 0216 02EBC102 add r2, r2, r1, lsl #3 1254 .LVL127: 2120:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1255 .loc 1 2120 9 discriminator 16 view .LVU400 ARM GAS /tmp/ccJPteqL.s page 66 1256 021a 99B2 uxth r1, r3 1257 021c A2F80214 strh r1, [r2, #1026] @ movhi 1258 0220 ECE7 b .L70 1259 .LVL128: 1260 .L54: 2120:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1261 .loc 1 2120 9 is_stmt 0 discriminator 16 view .LVU401 1262 .LBE20: 2130:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1263 .loc 1 2130 5 is_stmt 1 view .LVU402 2130:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1264 .loc 1 2130 27 is_stmt 0 view .LVU403 1265 0222 0268 ldr r2, [r0] 1266 .LVL129: 2130:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1267 .loc 1 2130 27 view .LVU404 1268 0224 B2F85030 ldrh r3, [r2, #80] 1269 0228 0978 ldrb r1, [r1] @ zero_extendqisi2 1270 .LVL130: 2130:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1271 .loc 1 2130 27 view .LVU405 1272 022a C800 lsls r0, r1, #3 1273 .LVL131: 2130:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1274 .loc 1 2130 27 view .LVU406 1275 022c 10FA83F3 uxtah r3, r0, r3 1276 0230 1344 add r3, r3, r2 1277 0232 B3F80624 ldrh r2, [r3, #1030] 2130:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1278 .loc 1 2130 15 view .LVU407 1279 0236 C2F30902 ubfx r2, r2, #0, #10 1280 .LVL132: 2132:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1281 .loc 1 2132 5 is_stmt 1 view .LVU408 2132:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1282 .loc 1 2132 11 is_stmt 0 view .LVU409 1283 023a A369 ldr r3, [r4, #24] 2132:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1284 .loc 1 2132 8 view .LVU410 1285 023c 9342 cmp r3, r2 1286 023e 52D3 bcc .L73 2134:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1287 .loc 1 2134 7 is_stmt 1 view .LVU411 2134:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1288 .loc 1 2134 20 is_stmt 0 view .LVU412 1289 0240 9B1A subs r3, r3, r2 1290 0242 A361 str r3, [r4, #24] 1291 .L74: 2142:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1292 .loc 1 2142 5 is_stmt 1 view .LVU413 2142:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1293 .loc 1 2142 11 is_stmt 0 view .LVU414 1294 0244 A369 ldr r3, [r4, #24] 2142:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1295 .loc 1 2142 8 view .LVU415 1296 0246 002B cmp r3, #0 1297 0248 69D1 bne .L75 ARM GAS /tmp/ccJPteqL.s page 67 2144:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_SET_EP_DBUF1_CNT(hpcd->Instance, ep->num, ep->is_in, 0U); 1298 .loc 1 2144 7 is_stmt 1 view .LVU416 2144:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_SET_EP_DBUF1_CNT(hpcd->Instance, ep->num, ep->is_in, 0U); 1299 .loc 1 2144 7 view .LVU417 1300 024a 6378 ldrb r3, [r4, #1] @ zero_extendqisi2 1301 024c 002B cmp r3, #0 1302 024e 4DD1 bne .L76 2144:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_SET_EP_DBUF1_CNT(hpcd->Instance, ep->num, ep->is_in, 0U); 1303 .loc 1 2144 7 discriminator 1 view .LVU418 1304 .LBB21: 2144:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_SET_EP_DBUF1_CNT(hpcd->Instance, ep->num, ep->is_in, 0U); 1305 .loc 1 2144 7 discriminator 1 view .LVU419 1306 0250 2A68 ldr r2, [r5] 1307 .LVL133: 2144:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_SET_EP_DBUF1_CNT(hpcd->Instance, ep->num, ep->is_in, 0U); 1308 .loc 1 2144 7 discriminator 1 view .LVU420 2144:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_SET_EP_DBUF1_CNT(hpcd->Instance, ep->num, ep->is_in, 0U); 1309 .loc 1 2144 7 discriminator 1 view .LVU421 1310 0252 B2F85030 ldrh r3, [r2, #80] 1311 0256 12FA83F3 uxtah r3, r2, r3 1312 .LVL134: 2144:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_SET_EP_DBUF1_CNT(hpcd->Instance, ep->num, ep->is_in, 0U); 1313 .loc 1 2144 7 discriminator 1 view .LVU422 1314 025a 0344 add r3, r3, r0 1315 .LVL135: 2144:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_SET_EP_DBUF1_CNT(hpcd->Instance, ep->num, ep->is_in, 0U); 1316 .loc 1 2144 7 discriminator 1 view .LVU423 1317 .LBB22: 2144:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_SET_EP_DBUF1_CNT(hpcd->Instance, ep->num, ep->is_in, 0U); 1318 .loc 1 2144 7 discriminator 1 view .LVU424 2144:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_SET_EP_DBUF1_CNT(hpcd->Instance, ep->num, ep->is_in, 0U); 1319 .loc 1 2144 7 discriminator 1 view .LVU425 2144:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_SET_EP_DBUF1_CNT(hpcd->Instance, ep->num, ep->is_in, 0U); 1320 .loc 1 2144 7 discriminator 1 view .LVU426 2144:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_SET_EP_DBUF1_CNT(hpcd->Instance, ep->num, ep->is_in, 0U); 1321 .loc 1 2144 7 discriminator 1 view .LVU427 1322 025c B3F80224 ldrh r2, [r3, #1026] 1323 0260 92B2 uxth r2, r2 1324 0262 22F4F842 bic r2, r2, #31744 1325 0266 92B2 uxth r2, r2 1326 0268 A3F80224 strh r2, [r3, #1026] @ movhi 2144:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_SET_EP_DBUF1_CNT(hpcd->Instance, ep->num, ep->is_in, 0U); 1327 .loc 1 2144 7 discriminator 1 view .LVU428 1328 026c B3F80224 ldrh r2, [r3, #1026] 1329 0270 6FEA4242 mvn r2, r2, lsl #17 1330 0274 6FEA5242 mvn r2, r2, lsr #17 1331 0278 92B2 uxth r2, r2 1332 027a A3F80224 strh r2, [r3, #1026] @ movhi 1333 .LVL136: 1334 .L77: 2144:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_SET_EP_DBUF1_CNT(hpcd->Instance, ep->num, ep->is_in, 0U); 1335 .loc 1 2144 7 is_stmt 0 discriminator 1 view .LVU429 1336 .LBE22: 1337 .LBE21: 2144:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_SET_EP_DBUF1_CNT(hpcd->Instance, ep->num, ep->is_in, 0U); 1338 .loc 1 2144 7 is_stmt 1 discriminator 18 view .LVU430 2144:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_SET_EP_DBUF1_CNT(hpcd->Instance, ep->num, ep->is_in, 0U); ARM GAS /tmp/ccJPteqL.s page 68 1339 .loc 1 2144 7 discriminator 18 view .LVU431 2145:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1340 .loc 1 2145 7 discriminator 18 view .LVU432 1341 .LBB23: 2145:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1342 .loc 1 2145 7 discriminator 18 view .LVU433 1343 027e 2A68 ldr r2, [r5] 1344 .LVL137: 2145:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1345 .loc 1 2145 7 discriminator 18 view .LVU434 2145:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1346 .loc 1 2145 7 discriminator 18 view .LVU435 1347 0280 6378 ldrb r3, [r4, #1] @ zero_extendqisi2 1348 0282 002B cmp r3, #0 1349 0284 3ED1 bne .L78 2145:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1350 .loc 1 2145 7 discriminator 1 view .LVU436 1351 .LBB24: 2145:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1352 .loc 1 2145 7 discriminator 1 view .LVU437 1353 .LVL138: 2145:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1354 .loc 1 2145 7 discriminator 1 view .LVU438 2145:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1355 .loc 1 2145 7 discriminator 1 view .LVU439 1356 0286 B2F85030 ldrh r3, [r2, #80] 1357 028a 12FA83F3 uxtah r3, r2, r3 1358 .LVL139: 2145:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1359 .loc 1 2145 7 discriminator 1 view .LVU440 1360 028e 2278 ldrb r2, [r4] @ zero_extendqisi2 1361 .LVL140: 2145:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1362 .loc 1 2145 7 is_stmt 0 discriminator 1 view .LVU441 1363 0290 03EBC203 add r3, r3, r2, lsl #3 1364 .LVL141: 2145:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1365 .loc 1 2145 7 is_stmt 1 discriminator 1 view .LVU442 1366 .LBB25: 2145:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1367 .loc 1 2145 7 discriminator 1 view .LVU443 2145:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1368 .loc 1 2145 7 discriminator 1 view .LVU444 2145:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1369 .loc 1 2145 7 discriminator 1 view .LVU445 2145:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1370 .loc 1 2145 7 discriminator 1 view .LVU446 1371 0294 B3F80624 ldrh r2, [r3, #1030] 1372 0298 92B2 uxth r2, r2 1373 029a 22F4F842 bic r2, r2, #31744 1374 029e 92B2 uxth r2, r2 1375 02a0 A3F80624 strh r2, [r3, #1030] @ movhi 1376 .LVL142: 2145:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1377 .loc 1 2145 7 discriminator 1 view .LVU447 1378 02a4 B3F80624 ldrh r2, [r3, #1030] 1379 02a8 6FEA4242 mvn r2, r2, lsl #17 ARM GAS /tmp/ccJPteqL.s page 69 1380 02ac 6FEA5242 mvn r2, r2, lsr #17 1381 02b0 92B2 uxth r2, r2 1382 02b2 A3F80624 strh r2, [r3, #1030] @ movhi 1383 .LVL143: 1384 .L79: 2145:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1385 .loc 1 2145 7 is_stmt 0 discriminator 1 view .LVU448 1386 .LBE25: 1387 .LBE24: 1388 .LBE23: 2145:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1389 .loc 1 2145 7 is_stmt 1 discriminator 18 view .LVU449 2151:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** #endif /* USE_HAL_PCD_REGISTER_CALLBACKS */ 1390 .loc 1 2151 7 discriminator 18 view .LVU450 1391 02b6 2178 ldrb r1, [r4] @ zero_extendqisi2 1392 02b8 2846 mov r0, r5 1393 02ba FFF7FEFF bl HAL_PCD_DataInStageCallback 1394 .LVL144: 2155:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1395 .loc 1 2155 7 discriminator 18 view .LVU451 2155:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1396 .loc 1 2155 10 is_stmt 0 discriminator 18 view .LVU452 1397 02be 16F4804F tst r6, #16384 1398 02c2 7FF437AF bne .L62 2157:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1399 .loc 1 2157 9 is_stmt 1 discriminator 4 view .LVU453 2157:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1400 .loc 1 2157 9 discriminator 4 view .LVU454 2157:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1401 .loc 1 2157 9 discriminator 4 view .LVU455 2157:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1402 .loc 1 2157 9 discriminator 4 view .LVU456 1403 .LBB26: 2157:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1404 .loc 1 2157 9 discriminator 4 view .LVU457 2157:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1405 .loc 1 2157 9 discriminator 4 view .LVU458 1406 02c6 2A68 ldr r2, [r5] 1407 02c8 2178 ldrb r1, [r4] @ zero_extendqisi2 1408 02ca 32F82130 ldrh r3, [r2, r1, lsl #2] 1409 02ce 9BB2 uxth r3, r3 1410 02d0 23F4E043 bic r3, r3, #28672 1411 02d4 23F07003 bic r3, r3, #112 1412 .LVL145: 2157:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1413 .loc 1 2157 9 discriminator 4 view .LVU459 1414 02d8 43F44043 orr r3, r3, #49152 1415 .LVL146: 2157:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1416 .loc 1 2157 9 is_stmt 0 discriminator 4 view .LVU460 1417 02dc 43F08003 orr r3, r3, #128 1418 02e0 22F82130 strh r3, [r2, r1, lsl #2] @ movhi 1419 02e4 26E7 b .L62 1420 .LVL147: 1421 .L73: 2157:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1422 .loc 1 2157 9 discriminator 4 view .LVU461 ARM GAS /tmp/ccJPteqL.s page 70 1423 .LBE26: 2138:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1424 .loc 1 2138 7 is_stmt 1 view .LVU462 2138:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1425 .loc 1 2138 20 is_stmt 0 view .LVU463 1426 02e6 0023 movs r3, #0 1427 02e8 A361 str r3, [r4, #24] 1428 02ea ABE7 b .L74 1429 .L76: 2144:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_SET_EP_DBUF1_CNT(hpcd->Instance, ep->num, ep->is_in, 0U); 1430 .loc 1 2144 7 is_stmt 1 discriminator 2 view .LVU464 1431 02ec 012B cmp r3, #1 1432 02ee C6D1 bne .L77 2144:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_SET_EP_DBUF1_CNT(hpcd->Instance, ep->num, ep->is_in, 0U); 1433 .loc 1 2144 7 discriminator 16 view .LVU465 1434 .LBB27: 2144:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_SET_EP_DBUF1_CNT(hpcd->Instance, ep->num, ep->is_in, 0U); 1435 .loc 1 2144 7 discriminator 16 view .LVU466 1436 02f0 2A68 ldr r2, [r5] 1437 .LVL148: 2144:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_SET_EP_DBUF1_CNT(hpcd->Instance, ep->num, ep->is_in, 0U); 1438 .loc 1 2144 7 discriminator 16 view .LVU467 2144:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_SET_EP_DBUF1_CNT(hpcd->Instance, ep->num, ep->is_in, 0U); 1439 .loc 1 2144 7 discriminator 16 view .LVU468 1440 02f2 B2F85030 ldrh r3, [r2, #80] 1441 02f6 12FA83F3 uxtah r3, r2, r3 1442 .LVL149: 2144:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_SET_EP_DBUF1_CNT(hpcd->Instance, ep->num, ep->is_in, 0U); 1443 .loc 1 2144 7 discriminator 16 view .LVU469 1444 02fa 0344 add r3, r3, r0 1445 .LVL150: 2144:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_SET_EP_DBUF1_CNT(hpcd->Instance, ep->num, ep->is_in, 0U); 1446 .loc 1 2144 7 discriminator 16 view .LVU470 1447 02fc 0022 movs r2, #0 1448 02fe A3F80224 strh r2, [r3, #1026] @ movhi 1449 0302 BCE7 b .L77 1450 .LVL151: 1451 .L78: 2144:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_SET_EP_DBUF1_CNT(hpcd->Instance, ep->num, ep->is_in, 0U); 1452 .loc 1 2144 7 is_stmt 0 discriminator 16 view .LVU471 1453 .LBE27: 1454 .LBB28: 2145:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1455 .loc 1 2145 7 is_stmt 1 discriminator 2 view .LVU472 1456 0304 012B cmp r3, #1 1457 0306 D6D1 bne .L79 2145:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1458 .loc 1 2145 7 discriminator 16 view .LVU473 1459 0308 B2F85030 ldrh r3, [r2, #80] 1460 030c 12FA83F3 uxtah r3, r2, r3 1461 .LVL152: 2145:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1462 .loc 1 2145 7 discriminator 16 view .LVU474 1463 0310 2278 ldrb r2, [r4] @ zero_extendqisi2 1464 0312 03EBC203 add r3, r3, r2, lsl #3 1465 .LVL153: 2145:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ARM GAS /tmp/ccJPteqL.s page 71 1466 .loc 1 2145 7 discriminator 16 view .LVU475 1467 0316 0022 movs r2, #0 1468 0318 A3F80624 strh r2, [r3, #1030] @ movhi 1469 031c CBE7 b .L79 1470 .LVL154: 1471 .L75: 2145:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1472 .loc 1 2145 7 is_stmt 0 discriminator 16 view .LVU476 1473 .LBE28: 2163:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1474 .loc 1 2163 7 is_stmt 1 view .LVU477 2163:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1475 .loc 1 2163 10 is_stmt 0 view .LVU478 1476 031e 16F4804F tst r6, #16384 1477 0322 0DD1 bne .L80 2165:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1478 .loc 1 2165 9 is_stmt 1 discriminator 4 view .LVU479 2165:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1479 .loc 1 2165 9 discriminator 4 view .LVU480 2165:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1480 .loc 1 2165 9 discriminator 4 view .LVU481 2165:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1481 .loc 1 2165 9 discriminator 4 view .LVU482 1482 .LBB29: 2165:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1483 .loc 1 2165 9 discriminator 4 view .LVU483 2165:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1484 .loc 1 2165 9 discriminator 4 view .LVU484 1485 0324 2868 ldr r0, [r5] 1486 0326 30F82130 ldrh r3, [r0, r1, lsl #2] 1487 032a 9BB2 uxth r3, r3 1488 032c 23F4E043 bic r3, r3, #28672 1489 0330 23F07003 bic r3, r3, #112 1490 .LVL155: 2165:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1491 .loc 1 2165 9 discriminator 4 view .LVU485 1492 0334 43F44043 orr r3, r3, #49152 1493 .LVL156: 2165:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1494 .loc 1 2165 9 is_stmt 0 discriminator 4 view .LVU486 1495 0338 43F08003 orr r3, r3, #128 1496 033c 20F82130 strh r3, [r0, r1, lsl #2] @ movhi 1497 .LVL157: 1498 .L80: 2165:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1499 .loc 1 2165 9 discriminator 4 view .LVU487 1500 .LBE29: 2165:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1501 .loc 1 2165 9 is_stmt 1 discriminator 6 view .LVU488 2165:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1502 .loc 1 2165 9 discriminator 6 view .LVU489 2169:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1503 .loc 1 2169 7 discriminator 6 view .LVU490 2169:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1504 .loc 1 2169 13 is_stmt 0 discriminator 6 view .LVU491 1505 0340 94F82430 ldrb r3, [r4, #36] @ zero_extendqisi2 2169:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { ARM GAS /tmp/ccJPteqL.s page 72 1506 .loc 1 2169 10 discriminator 6 view .LVU492 1507 0344 012B cmp r3, #1 1508 0346 7FF4F5AE bne .L62 2171:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->xfer_count += TxPctSize; 1509 .loc 1 2171 9 is_stmt 1 view .LVU493 2171:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->xfer_count += TxPctSize; 1510 .loc 1 2171 11 is_stmt 0 view .LVU494 1511 034a 6369 ldr r3, [r4, #20] 2171:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->xfer_count += TxPctSize; 1512 .loc 1 2171 23 view .LVU495 1513 034c 1344 add r3, r3, r2 1514 034e 6361 str r3, [r4, #20] 2172:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1515 .loc 1 2172 9 is_stmt 1 view .LVU496 2172:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1516 .loc 1 2172 11 is_stmt 0 view .LVU497 1517 0350 E369 ldr r3, [r4, #28] 2172:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1518 .loc 1 2172 24 view .LVU498 1519 0352 1344 add r3, r3, r2 1520 0354 E361 str r3, [r4, #28] 2175:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1521 .loc 1 2175 9 is_stmt 1 view .LVU499 2175:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1522 .loc 1 2175 15 is_stmt 0 view .LVU500 1523 0356 216A ldr r1, [r4, #32] 2175:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1524 .loc 1 2175 34 view .LVU501 1525 0358 2369 ldr r3, [r4, #16] 2175:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1526 .loc 1 2175 12 view .LVU502 1527 035a 9942 cmp r1, r3 1528 035c 1BD3 bcc .L81 2177:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->xfer_len_db -= len; 1529 .loc 1 2177 11 is_stmt 1 view .LVU503 1530 .LVL158: 2178:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1531 .loc 1 2178 11 view .LVU504 2178:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1532 .loc 1 2178 27 is_stmt 0 view .LVU505 1533 035e C91A subs r1, r1, r3 1534 0360 2162 str r1, [r4, #32] 1535 .L82: 2193:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1536 .loc 1 2193 9 is_stmt 1 view .LVU506 1537 .LBB30: 2193:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1538 .loc 1 2193 9 view .LVU507 1539 0362 2968 ldr r1, [r5] 1540 .LVL159: 2193:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1541 .loc 1 2193 9 view .LVU508 2193:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1542 .loc 1 2193 9 view .LVU509 1543 0364 6278 ldrb r2, [r4, #1] @ zero_extendqisi2 1544 .LVL160: 2193:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ARM GAS /tmp/ccJPteqL.s page 73 1545 .loc 1 2193 9 is_stmt 0 view .LVU510 1546 0366 002A cmp r2, #0 1547 0368 3ED1 bne .L84 2193:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1548 .loc 1 2193 9 is_stmt 1 discriminator 1 view .LVU511 1549 .LBB31: 2193:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1550 .loc 1 2193 9 discriminator 1 view .LVU512 1551 .LVL161: 2193:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1552 .loc 1 2193 9 discriminator 1 view .LVU513 2193:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1553 .loc 1 2193 9 discriminator 1 view .LVU514 1554 036a B1F85020 ldrh r2, [r1, #80] 1555 036e 11FA82F2 uxtah r2, r1, r2 1556 .LVL162: 2193:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1557 .loc 1 2193 9 discriminator 1 view .LVU515 1558 0372 2178 ldrb r1, [r4] @ zero_extendqisi2 1559 .LVL163: 2193:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1560 .loc 1 2193 9 is_stmt 0 discriminator 1 view .LVU516 1561 0374 02EBC102 add r2, r2, r1, lsl #3 1562 .LVL164: 2193:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1563 .loc 1 2193 9 is_stmt 1 discriminator 1 view .LVU517 1564 .LBB32: 2193:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1565 .loc 1 2193 9 discriminator 1 view .LVU518 2193:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1566 .loc 1 2193 9 discriminator 1 view .LVU519 1567 0378 3E2B cmp r3, #62 1568 037a 18D9 bls .L85 2193:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1569 .loc 1 2193 9 discriminator 3 view .LVU520 2193:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1570 .loc 1 2193 9 discriminator 3 view .LVU521 1571 037c 5909 lsrs r1, r3, #5 1572 .LVL165: 2193:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1573 .loc 1 2193 9 discriminator 3 view .LVU522 1574 037e 13F01F0F tst r3, #31 1575 0382 00D1 bne .L86 2193:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1576 .loc 1 2193 9 discriminator 5 view .LVU523 1577 0384 0139 subs r1, r1, #1 1578 .LVL166: 1579 .L86: 2193:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1580 .loc 1 2193 9 discriminator 7 view .LVU524 1581 0386 6FEAC161 mvn r1, r1, lsl #27 1582 .LVL167: 2193:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1583 .loc 1 2193 9 is_stmt 0 discriminator 7 view .LVU525 1584 038a 6FEA5141 mvn r1, r1, lsr #17 1585 038e 89B2 uxth r1, r1 1586 0390 A2F80614 strh r1, [r2, #1030] @ movhi ARM GAS /tmp/ccJPteqL.s page 74 1587 .LVL168: 2193:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1588 .loc 1 2193 9 is_stmt 1 discriminator 7 view .LVU526 1589 0394 2AE0 b .L87 1590 .LVL169: 1591 .L81: 2193:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1592 .loc 1 2193 9 is_stmt 0 discriminator 7 view .LVU527 1593 .LBE32: 1594 .LBE31: 1595 .LBE30: 2180:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1596 .loc 1 2180 14 is_stmt 1 view .LVU528 2180:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1597 .loc 1 2180 17 is_stmt 0 view .LVU529 1598 0396 21B9 cbnz r1, .L83 2182:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->xfer_fill_db = 0U; 1599 .loc 1 2182 11 is_stmt 1 view .LVU530 1600 .LVL170: 2183:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1601 .loc 1 2183 11 view .LVU531 2183:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1602 .loc 1 2183 28 is_stmt 0 view .LVU532 1603 0398 0023 movs r3, #0 1604 039a 84F82430 strb r3, [r4, #36] 2182:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->xfer_fill_db = 0U; 1605 .loc 1 2182 15 view .LVU533 1606 039e 1346 mov r3, r2 1607 03a0 DFE7 b .L82 1608 .LVL171: 1609 .L83: 2187:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->xfer_len_db = 0U; 1610 .loc 1 2187 11 is_stmt 1 view .LVU534 2188:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->xfer_fill_db = 0; 1611 .loc 1 2188 11 view .LVU535 2188:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->xfer_fill_db = 0; 1612 .loc 1 2188 27 is_stmt 0 view .LVU536 1613 03a2 0023 movs r3, #0 1614 03a4 2362 str r3, [r4, #32] 2189:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1615 .loc 1 2189 11 is_stmt 1 view .LVU537 2189:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1616 .loc 1 2189 28 is_stmt 0 view .LVU538 1617 03a6 84F82430 strb r3, [r4, #36] 2187:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->xfer_len_db = 0U; 1618 .loc 1 2187 15 view .LVU539 1619 03aa 0B46 mov r3, r1 1620 03ac D9E7 b .L82 1621 .LVL172: 1622 .L85: 1623 .LBB35: 1624 .LBB34: 1625 .LBB33: 2193:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1626 .loc 1 2193 9 is_stmt 1 discriminator 4 view .LVU540 1627 03ae 8BB9 cbnz r3, .L88 2193:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ARM GAS /tmp/ccJPteqL.s page 75 1628 .loc 1 2193 9 discriminator 9 view .LVU541 1629 03b0 B2F80614 ldrh r1, [r2, #1030] 1630 03b4 89B2 uxth r1, r1 1631 03b6 21F4F841 bic r1, r1, #31744 1632 03ba 89B2 uxth r1, r1 1633 03bc A2F80614 strh r1, [r2, #1030] @ movhi 1634 .LVL173: 2193:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1635 .loc 1 2193 9 discriminator 9 view .LVU542 1636 03c0 B2F80614 ldrh r1, [r2, #1030] 1637 03c4 6FEA4141 mvn r1, r1, lsl #17 1638 03c8 6FEA5141 mvn r1, r1, lsr #17 1639 03cc 89B2 uxth r1, r1 1640 03ce A2F80614 strh r1, [r2, #1030] @ movhi 1641 03d2 0BE0 b .L87 1642 .LVL174: 1643 .L88: 2193:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1644 .loc 1 2193 9 discriminator 10 view .LVU543 2193:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1645 .loc 1 2193 9 discriminator 10 view .LVU544 1646 03d4 5908 lsrs r1, r3, #1 1647 .LVL175: 2193:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1648 .loc 1 2193 9 discriminator 10 view .LVU545 1649 03d6 13F0010F tst r3, #1 1650 03da 00D0 beq .L89 2193:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1651 .loc 1 2193 9 discriminator 12 view .LVU546 1652 03dc 0131 adds r1, r1, #1 1653 .LVL176: 1654 .L89: 2193:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1655 .loc 1 2193 9 discriminator 14 view .LVU547 1656 03de 8902 lsls r1, r1, #10 1657 .LVL177: 2193:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1658 .loc 1 2193 9 is_stmt 0 discriminator 14 view .LVU548 1659 03e0 89B2 uxth r1, r1 1660 03e2 A2F80614 strh r1, [r2, #1030] @ movhi 1661 .LVL178: 2193:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1662 .loc 1 2193 9 discriminator 14 view .LVU549 1663 03e6 01E0 b .L87 1664 .LVL179: 1665 .L84: 2193:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1666 .loc 1 2193 9 discriminator 14 view .LVU550 1667 .LBE33: 1668 .LBE34: 2193:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1669 .loc 1 2193 9 is_stmt 1 discriminator 2 view .LVU551 1670 03e8 012A cmp r2, #1 1671 03ea 06D0 beq .L93 1672 .LVL180: 1673 .L87: 2193:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ARM GAS /tmp/ccJPteqL.s page 76 1674 .loc 1 2193 9 is_stmt 0 discriminator 2 view .LVU552 1675 .LBE35: 2193:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1676 .loc 1 2193 9 is_stmt 1 discriminator 18 view .LVU553 2196:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1677 .loc 1 2196 9 discriminator 18 view .LVU554 1678 03ec 9BB2 uxth r3, r3 1679 .LVL181: 2196:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1680 .loc 1 2196 9 is_stmt 0 discriminator 18 view .LVU555 1681 03ee 6289 ldrh r2, [r4, #10] 1682 03f0 6169 ldr r1, [r4, #20] 1683 03f2 2868 ldr r0, [r5] 1684 03f4 FFF7FEFF bl USB_WritePMA 1685 .LVL182: 1686 03f8 9CE6 b .L62 1687 .LVL183: 1688 .L93: 1689 .LBB36: 2193:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1690 .loc 1 2193 9 is_stmt 1 discriminator 16 view .LVU556 1691 03fa B1F85020 ldrh r2, [r1, #80] 1692 03fe 11FA82F2 uxtah r2, r1, r2 1693 .LVL184: 2193:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1694 .loc 1 2193 9 discriminator 16 view .LVU557 1695 0402 2178 ldrb r1, [r4] @ zero_extendqisi2 1696 0404 02EBC102 add r2, r2, r1, lsl #3 1697 .LVL185: 2193:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1698 .loc 1 2193 9 discriminator 16 view .LVU558 1699 0408 99B2 uxth r1, r3 1700 040a A2F80614 strh r1, [r2, #1030] @ movhi 1701 040e EDE7 b .L87 1702 .LBE36: 1703 .cfi_endproc 1704 .LFE363: 1706 .section .text.HAL_PCD_SetupStageCallback,"ax",%progbits 1707 .align 1 1708 .weak HAL_PCD_SetupStageCallback 1709 .syntax unified 1710 .thumb 1711 .thumb_func 1713 HAL_PCD_SetupStageCallback: 1714 .LVL186: 1715 .LFB338: 1187:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Prevent unused argument(s) compilation warning */ 1716 .loc 1 1187 1 view -0 1717 .cfi_startproc 1718 @ args = 0, pretend = 0, frame = 0 1719 @ frame_needed = 0, uses_anonymous_args = 0 1720 @ link register save eliminated. 1189:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1721 .loc 1 1189 3 view .LVU560 1194:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1722 .loc 1 1194 1 is_stmt 0 view .LVU561 1723 0000 7047 bx lr ARM GAS /tmp/ccJPteqL.s page 77 1724 .cfi_endproc 1725 .LFE338: 1727 .section .text.PCD_EP_ISR_Handler,"ax",%progbits 1728 .align 1 1729 .syntax unified 1730 .thumb 1731 .thumb_func 1733 PCD_EP_ISR_Handler: 1734 .LVL187: 1735 .LFB361: 1694:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_EPTypeDef *ep; 1736 .loc 1 1694 1 is_stmt 1 view -0 1737 .cfi_startproc 1738 @ args = 0, pretend = 0, frame = 0 1739 @ frame_needed = 0, uses_anonymous_args = 0 1694:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_EPTypeDef *ep; 1740 .loc 1 1694 1 is_stmt 0 view .LVU563 1741 0000 2DE9F041 push {r4, r5, r6, r7, r8, lr} 1742 .LCFI12: 1743 .cfi_def_cfa_offset 24 1744 .cfi_offset 4, -24 1745 .cfi_offset 5, -20 1746 .cfi_offset 6, -16 1747 .cfi_offset 7, -12 1748 .cfi_offset 8, -8 1749 .cfi_offset 14, -4 1750 0004 0546 mov r5, r0 1695:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** uint16_t count; 1751 .loc 1 1695 3 is_stmt 1 view .LVU564 1696:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** uint16_t wIstr; 1752 .loc 1 1696 3 view .LVU565 1697:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** uint16_t wEPVal; 1753 .loc 1 1697 3 view .LVU566 1698:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** uint16_t TxPctSize; 1754 .loc 1 1698 3 view .LVU567 1699:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** uint8_t epindex; 1755 .loc 1 1699 3 view .LVU568 1700:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1756 .loc 1 1700 3 view .LVU569 1703:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1757 .loc 1 1703 3 view .LVU570 1703:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1758 .loc 1 1703 9 is_stmt 0 view .LVU571 1759 0006 CAE0 b .L96 1760 .LVL188: 1761 .L127: 1721:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep = &hpcd->IN_ep[0]; 1762 .loc 1 1721 9 is_stmt 1 view .LVU572 1763 .LBB37: 1721:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep = &hpcd->IN_ep[0]; 1764 .loc 1 1721 9 view .LVU573 1721:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep = &hpcd->IN_ep[0]; 1765 .loc 1 1721 9 view .LVU574 1766 0008 0388 ldrh r3, [r0] 1767 .LVL189: 1721:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep = &hpcd->IN_ep[0]; 1768 .loc 1 1721 9 is_stmt 0 view .LVU575 ARM GAS /tmp/ccJPteqL.s page 78 1769 000a 9BB2 uxth r3, r3 1770 000c 23F4E143 bic r3, r3, #28800 1771 0010 23F07003 bic r3, r3, #112 1772 .LVL190: 1721:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep = &hpcd->IN_ep[0]; 1773 .loc 1 1721 9 is_stmt 1 view .LVU576 1774 0014 6FEA4343 mvn r3, r3, lsl #17 1775 .LVL191: 1721:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep = &hpcd->IN_ep[0]; 1776 .loc 1 1721 9 is_stmt 0 view .LVU577 1777 0018 6FEA5343 mvn r3, r3, lsr #17 1778 001c 9BB2 uxth r3, r3 1779 001e 0380 strh r3, [r0] @ movhi 1780 .LBE37: 1721:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep = &hpcd->IN_ep[0]; 1781 .loc 1 1721 9 is_stmt 1 view .LVU578 1722:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1782 .loc 1 1722 9 view .LVU579 1783 .LVL192: 1724:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->xfer_buff += ep->xfer_count; 1784 .loc 1 1724 9 view .LVU580 1724:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->xfer_buff += ep->xfer_count; 1785 .loc 1 1724 26 is_stmt 0 view .LVU581 1786 0020 2968 ldr r1, [r5] 1787 0022 B1F85030 ldrh r3, [r1, #80] 1788 0026 95F82820 ldrb r2, [r5, #40] @ zero_extendqisi2 1789 002a D200 lsls r2, r2, #3 1790 002c 12FA83F3 uxtah r3, r2, r3 1791 0030 0B44 add r3, r3, r1 1792 0032 B3F80234 ldrh r3, [r3, #1026] 1793 0036 C3F30903 ubfx r3, r3, #0, #10 1724:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->xfer_buff += ep->xfer_count; 1794 .loc 1 1724 24 view .LVU582 1795 003a 6B64 str r3, [r5, #68] 1725:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1796 .loc 1 1725 9 is_stmt 1 view .LVU583 1725:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1797 .loc 1 1725 11 is_stmt 0 view .LVU584 1798 003c EA6B ldr r2, [r5, #60] 1725:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1799 .loc 1 1725 23 view .LVU585 1800 003e 1A44 add r2, r2, r3 1801 0040 EA63 str r2, [r5, #60] 1731:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** #endif /* USE_HAL_PCD_REGISTER_CALLBACKS */ 1802 .loc 1 1731 9 is_stmt 1 view .LVU586 1803 0042 0021 movs r1, #0 1804 0044 2846 mov r0, r5 1805 0046 FFF7FEFF bl HAL_PCD_DataInStageCallback 1806 .LVL193: 1734:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1807 .loc 1 1734 9 view .LVU587 1734:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1808 .loc 1 1734 18 is_stmt 0 view .LVU588 1809 004a 95F82430 ldrb r3, [r5, #36] @ zero_extendqisi2 1734:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1810 .loc 1 1734 12 view .LVU589 1811 004e 002B cmp r3, #0 ARM GAS /tmp/ccJPteqL.s page 79 1812 0050 00F0A580 beq .L96 1734:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1813 .loc 1 1734 44 discriminator 1 view .LVU590 1814 0054 2B6C ldr r3, [r5, #64] 1734:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1815 .loc 1 1734 38 discriminator 1 view .LVU591 1816 0056 002B cmp r3, #0 1817 0058 40F0A180 bne .L96 1736:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->USB_Address = 0U; 1818 .loc 1 1736 11 is_stmt 1 view .LVU592 1736:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->USB_Address = 0U; 1819 .loc 1 1736 50 is_stmt 0 view .LVU593 1820 005c 95F82430 ldrb r3, [r5, #36] @ zero_extendqisi2 1736:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->USB_Address = 0U; 1821 .loc 1 1736 15 view .LVU594 1822 0060 2A68 ldr r2, [r5] 1736:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->USB_Address = 0U; 1823 .loc 1 1736 33 view .LVU595 1824 0062 43F08003 orr r3, r3, #128 1825 0066 A2F84C30 strh r3, [r2, #76] @ movhi 1737:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1826 .loc 1 1737 11 is_stmt 1 view .LVU596 1737:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1827 .loc 1 1737 29 is_stmt 0 view .LVU597 1828 006a 0023 movs r3, #0 1829 006c 85F82430 strb r3, [r5, #36] 1830 0070 95E0 b .L96 1831 .LVL194: 1832 .L128: 1752:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1833 .loc 1 1752 11 is_stmt 1 view .LVU598 1752:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1834 .loc 1 1752 28 is_stmt 0 view .LVU599 1835 0072 B0F85030 ldrh r3, [r0, #80] 1836 0076 95F86821 ldrb r2, [r5, #360] @ zero_extendqisi2 1837 .LVL195: 1752:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1838 .loc 1 1752 28 view .LVU600 1839 007a D200 lsls r2, r2, #3 1840 007c 12FA83F3 uxtah r3, r2, r3 1841 0080 0344 add r3, r3, r0 1842 0082 B3F80634 ldrh r3, [r3, #1030] 1843 0086 C3F30903 ubfx r3, r3, #0, #10 1752:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1844 .loc 1 1752 26 view .LVU601 1845 008a C5F88431 str r3, [r5, #388] 1754:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->pmaadress, (uint16_t)ep->xfer_count); 1846 .loc 1 1754 11 is_stmt 1 view .LVU602 1847 008e B5F86E21 ldrh r2, [r5, #366] 1848 0092 05F52C71 add r1, r5, #688 1849 0096 FFF7FEFF bl USB_ReadPMA 1850 .LVL196: 1758:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1851 .loc 1 1758 11 view .LVU603 1852 .LBB38: 1758:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1853 .loc 1 1758 11 view .LVU604 ARM GAS /tmp/ccJPteqL.s page 80 1758:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1854 .loc 1 1758 11 view .LVU605 1855 009a 2A68 ldr r2, [r5] 1856 009c 1388 ldrh r3, [r2] 1857 009e 23F07003 bic r3, r3, #112 1858 00a2 1B05 lsls r3, r3, #20 1859 00a4 1B0D lsrs r3, r3, #20 1860 .LVL197: 1758:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1861 .loc 1 1758 11 view .LVU606 1862 00a6 43F08003 orr r3, r3, #128 1863 .LVL198: 1758:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1864 .loc 1 1758 11 is_stmt 0 view .LVU607 1865 00aa 1380 strh r3, [r2] @ movhi 1866 .LBE38: 1758:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1867 .loc 1 1758 11 is_stmt 1 view .LVU608 1764:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** #endif /* USE_HAL_PCD_REGISTER_CALLBACKS */ 1868 .loc 1 1764 11 view .LVU609 1869 00ac 2846 mov r0, r5 1870 00ae FFF7FEFF bl HAL_PCD_SetupStageCallback 1871 .LVL199: 1872 00b2 74E0 b .L96 1873 .LVL200: 1874 .L102: 1875 .LBB39: 1876 .LBB40: 1791:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_SET_EP_RX_STATUS(hpcd->Instance, PCD_ENDP0, USB_EP_RX_VALID); 1877 .loc 1 1791 13 discriminator 2 view .LVU610 1878 00b4 89B9 cbnz r1, .L105 1791:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_SET_EP_RX_STATUS(hpcd->Instance, PCD_ENDP0, USB_EP_RX_VALID); 1879 .loc 1 1791 13 discriminator 7 view .LVU611 1880 00b6 B3F80624 ldrh r2, [r3, #1030] 1881 00ba 92B2 uxth r2, r2 1882 00bc 22F4F842 bic r2, r2, #31744 1883 00c0 92B2 uxth r2, r2 1884 00c2 A3F80624 strh r2, [r3, #1030] @ movhi 1791:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_SET_EP_RX_STATUS(hpcd->Instance, PCD_ENDP0, USB_EP_RX_VALID); 1885 .loc 1 1791 13 discriminator 7 view .LVU612 1886 00c6 B3F80624 ldrh r2, [r3, #1030] 1887 00ca 6FEA4242 mvn r2, r2, lsl #17 1888 00ce 6FEA5242 mvn r2, r2, lsr #17 1889 00d2 92B2 uxth r2, r2 1890 00d4 A3F80624 strh r2, [r3, #1030] @ movhi 1891 00d8 BFE0 b .L104 1892 .L105: 1791:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_SET_EP_RX_STATUS(hpcd->Instance, PCD_ENDP0, USB_EP_RX_VALID); 1893 .loc 1 1791 13 discriminator 8 view .LVU613 1791:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_SET_EP_RX_STATUS(hpcd->Instance, PCD_ENDP0, USB_EP_RX_VALID); 1894 .loc 1 1791 13 discriminator 8 view .LVU614 1895 00da 4A08 lsrs r2, r1, #1 1896 .LVL201: 1791:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_SET_EP_RX_STATUS(hpcd->Instance, PCD_ENDP0, USB_EP_RX_VALID); 1897 .loc 1 1791 13 discriminator 8 view .LVU615 1898 00dc 11F0010F tst r1, #1 1899 00e0 00D0 beq .L106 ARM GAS /tmp/ccJPteqL.s page 81 1791:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_SET_EP_RX_STATUS(hpcd->Instance, PCD_ENDP0, USB_EP_RX_VALID); 1900 .loc 1 1791 13 discriminator 10 view .LVU616 1901 00e2 0132 adds r2, r2, #1 1902 .LVL202: 1903 .L106: 1791:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_SET_EP_RX_STATUS(hpcd->Instance, PCD_ENDP0, USB_EP_RX_VALID); 1904 .loc 1 1791 13 discriminator 12 view .LVU617 1905 00e4 9202 lsls r2, r2, #10 1906 .LVL203: 1791:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_SET_EP_RX_STATUS(hpcd->Instance, PCD_ENDP0, USB_EP_RX_VALID); 1907 .loc 1 1791 13 is_stmt 0 discriminator 12 view .LVU618 1908 00e6 92B2 uxth r2, r2 1909 00e8 A3F80624 strh r2, [r3, #1030] @ movhi 1910 00ec B5E0 b .L104 1911 .LVL204: 1912 .L97: 1791:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_SET_EP_RX_STATUS(hpcd->Instance, PCD_ENDP0, USB_EP_RX_VALID); 1913 .loc 1 1791 13 discriminator 12 view .LVU619 1914 .LBE40: 1915 .LBE39: 1801:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1916 .loc 1 1801 7 is_stmt 1 view .LVU620 1801:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1917 .loc 1 1801 14 is_stmt 0 view .LVU621 1918 00ee 30F82430 ldrh r3, [r0, r4, lsl #2] 1919 .LVL205: 1801:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1920 .loc 1 1801 14 view .LVU622 1921 00f2 9EB2 uxth r6, r3 1922 .LVL206: 1803:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1923 .loc 1 1803 7 is_stmt 1 view .LVU623 1803:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1924 .loc 1 1803 10 is_stmt 0 view .LVU624 1925 00f4 13F4004F tst r3, #32768 1926 00f8 40F0BE80 bne .L125 1927 .L107: 1875:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1928 .loc 1 1875 7 is_stmt 1 view .LVU625 1875:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1929 .loc 1 1875 10 is_stmt 0 view .LVU626 1930 00fc 16F0800F tst r6, #128 1931 0100 4DD0 beq .L96 1877:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1932 .loc 1 1877 9 is_stmt 1 view .LVU627 1877:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1933 .loc 1 1877 12 is_stmt 0 view .LVU628 1934 0102 621C adds r2, r4, #1 1935 0104 02EB8201 add r1, r2, r2, lsl #2 1936 0108 05EBC101 add r1, r5, r1, lsl #3 1937 .LVL207: 1880:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1938 .loc 1 1880 9 is_stmt 1 view .LVU629 1939 .LBB42: 1880:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1940 .loc 1 1880 9 view .LVU630 1880:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ARM GAS /tmp/ccJPteqL.s page 82 1941 .loc 1 1880 9 view .LVU631 1942 010c 2868 ldr r0, [r5] 1943 010e 30F82430 ldrh r3, [r0, r4, lsl #2] 1944 0112 9BB2 uxth r3, r3 1945 0114 23F4E143 bic r3, r3, #28800 1946 0118 23F07003 bic r3, r3, #112 1947 .LVL208: 1880:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1948 .loc 1 1880 9 view .LVU632 1949 011c 6FEA4343 mvn r3, r3, lsl #17 1950 .LVL209: 1880:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1951 .loc 1 1880 9 is_stmt 0 view .LVU633 1952 0120 6FEA5343 mvn r3, r3, lsr #17 1953 0124 9BB2 uxth r3, r3 1954 0126 20F82430 strh r3, [r0, r4, lsl #2] @ movhi 1955 .LBE42: 1880:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1956 .loc 1 1880 9 is_stmt 1 view .LVU634 1882:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1957 .loc 1 1882 9 view .LVU635 1882:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1958 .loc 1 1882 15 is_stmt 0 view .LVU636 1959 012a CB78 ldrb r3, [r1, #3] @ zero_extendqisi2 1882:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1960 .loc 1 1882 12 view .LVU637 1961 012c 022B cmp r3, #2 1962 012e 00F0A781 beq .L114 1884:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1963 .loc 1 1884 11 is_stmt 1 view .LVU638 1884:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 1964 .loc 1 1884 24 is_stmt 0 view .LVU639 1965 0132 04EB8403 add r3, r4, r4, lsl #2 1966 0136 05EBC303 add r3, r5, r3, lsl #3 1967 013a 0022 movs r2, #0 1968 013c 1A64 str r2, [r3, #64] 1887:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1969 .loc 1 1887 11 is_stmt 1 view .LVU640 1887:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1970 .loc 1 1887 17 is_stmt 0 view .LVU641 1971 013e 93F83430 ldrb r3, [r3, #52] @ zero_extendqisi2 1887:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1972 .loc 1 1887 14 view .LVU642 1973 0142 23B3 cbz r3, .L115 1889:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1974 .loc 1 1889 13 is_stmt 1 view .LVU643 1889:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 1975 .loc 1 1889 16 is_stmt 0 view .LVU644 1976 0144 16F0400F tst r6, #64 1977 0148 00F06381 beq .L116 1891:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1978 .loc 1 1891 15 is_stmt 1 view .LVU645 1891:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1979 .loc 1 1891 15 view .LVU646 1980 014c 4B78 ldrb r3, [r1, #1] @ zero_extendqisi2 1981 014e 002B cmp r3, #0 1982 0150 40F04C81 bne .L117 ARM GAS /tmp/ccJPteqL.s page 83 1891:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1983 .loc 1 1891 15 discriminator 1 view .LVU647 1984 .LBB43: 1891:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1985 .loc 1 1891 15 discriminator 1 view .LVU648 1986 0154 2A68 ldr r2, [r5] 1987 .LVL210: 1891:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1988 .loc 1 1891 15 discriminator 1 view .LVU649 1891:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1989 .loc 1 1891 15 discriminator 1 view .LVU650 1990 0156 B2F85030 ldrh r3, [r2, #80] 1991 015a 12FA83F3 uxtah r3, r2, r3 1992 .LVL211: 1891:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1993 .loc 1 1891 15 discriminator 1 view .LVU651 1994 015e 621C adds r2, r4, #1 1995 0160 02EB8202 add r2, r2, r2, lsl #2 1996 0164 15F83220 ldrb r2, [r5, r2, lsl #3] @ zero_extendqisi2 1997 0168 03EBC203 add r3, r3, r2, lsl #3 1998 .LVL212: 1891:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 1999 .loc 1 1891 15 discriminator 1 view .LVU652 2000 .LBB44: 1891:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 2001 .loc 1 1891 15 discriminator 1 view .LVU653 1891:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 2002 .loc 1 1891 15 discriminator 1 view .LVU654 1891:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 2003 .loc 1 1891 15 discriminator 1 view .LVU655 1891:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 2004 .loc 1 1891 15 discriminator 1 view .LVU656 2005 016c B3F80224 ldrh r2, [r3, #1026] 2006 0170 92B2 uxth r2, r2 2007 0172 22F4F842 bic r2, r2, #31744 2008 0176 92B2 uxth r2, r2 2009 0178 A3F80224 strh r2, [r3, #1026] @ movhi 1891:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 2010 .loc 1 1891 15 discriminator 1 view .LVU657 2011 017c B3F80224 ldrh r2, [r3, #1026] 2012 0180 6FEA4242 mvn r2, r2, lsl #17 2013 0184 6FEA5242 mvn r2, r2, lsr #17 2014 0188 92B2 uxth r2, r2 2015 018a A3F80224 strh r2, [r3, #1026] @ movhi 2016 .LVL213: 2017 .L115: 1891:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 2018 .loc 1 1891 15 is_stmt 0 discriminator 1 view .LVU658 2019 .LBE44: 2020 .LBE43: 1895:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 2021 .loc 1 1895 15 is_stmt 1 discriminator 18 view .LVU659 1904:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** #endif /* USE_HAL_PCD_REGISTER_CALLBACKS */ 2022 .loc 1 1904 11 discriminator 18 view .LVU660 2023 018e 0134 adds r4, r4, #1 2024 0190 04EB8404 add r4, r4, r4, lsl #2 2025 0194 15F83410 ldrb r1, [r5, r4, lsl #3] @ zero_extendqisi2 ARM GAS /tmp/ccJPteqL.s page 84 2026 .LVL214: 1904:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** #endif /* USE_HAL_PCD_REGISTER_CALLBACKS */ 2027 .loc 1 1904 11 is_stmt 0 discriminator 18 view .LVU661 2028 0198 2846 mov r0, r5 2029 019a FFF7FEFF bl HAL_PCD_DataInStageCallback 2030 .LVL215: 2031 .L96: 1703:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 2032 .loc 1 1703 48 is_stmt 1 view .LVU662 1703:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 2033 .loc 1 1703 15 is_stmt 0 view .LVU663 2034 019e 2868 ldr r0, [r5] 1703:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 2035 .loc 1 1703 25 view .LVU664 2036 01a0 B0F84430 ldrh r3, [r0, #68] 1703:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 2037 .loc 1 1703 48 view .LVU665 2038 01a4 13F4004F tst r3, #32768 2039 01a8 00F0B281 beq .L126 1705:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2040 .loc 1 1705 5 is_stmt 1 view .LVU666 1705:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2041 .loc 1 1705 11 is_stmt 0 view .LVU667 2042 01ac B0F84440 ldrh r4, [r0, #68] 2043 01b0 A3B2 uxth r3, r4 2044 .LVL216: 1708:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2045 .loc 1 1708 5 is_stmt 1 view .LVU668 1710:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 2046 .loc 1 1710 5 view .LVU669 1710:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 2047 .loc 1 1710 8 is_stmt 0 view .LVU670 2048 01b2 14F00F04 ands r4, r4, #15 2049 .LVL217: 1710:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 2050 .loc 1 1710 8 view .LVU671 2051 01b6 9AD1 bne .L97 1715:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 2052 .loc 1 1715 7 is_stmt 1 view .LVU672 1715:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 2053 .loc 1 1715 10 is_stmt 0 view .LVU673 2054 01b8 13F0100F tst r3, #16 2055 01bc 3FF424AF beq .L127 1746:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** wEPVal = PCD_GET_ENDPOINT(hpcd->Instance, PCD_ENDP0); 2056 .loc 1 1746 9 is_stmt 1 view .LVU674 2057 .LVL218: 1747:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2058 .loc 1 1747 9 view .LVU675 1747:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2059 .loc 1 1747 16 is_stmt 0 view .LVU676 2060 01c0 0388 ldrh r3, [r0] 2061 .LVL219: 1747:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2062 .loc 1 1747 16 view .LVU677 2063 01c2 9AB2 uxth r2, r3 2064 .LVL220: 1749:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { ARM GAS /tmp/ccJPteqL.s page 85 2065 .loc 1 1749 9 is_stmt 1 view .LVU678 1749:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 2066 .loc 1 1749 12 is_stmt 0 view .LVU679 2067 01c4 13F4006F tst r3, #2048 2068 01c8 7FF453AF bne .L128 1767:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 2069 .loc 1 1767 14 is_stmt 1 view .LVU680 1767:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 2070 .loc 1 1767 17 is_stmt 0 view .LVU681 2071 01cc 12F4004F tst r2, #32768 2072 01d0 E5D0 beq .L96 1769:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2073 .loc 1 1769 11 is_stmt 1 view .LVU682 2074 .LBB45: 1769:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2075 .loc 1 1769 11 view .LVU683 1769:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2076 .loc 1 1769 11 view .LVU684 2077 01d2 0388 ldrh r3, [r0] 2078 01d4 23F07003 bic r3, r3, #112 2079 01d8 1B05 lsls r3, r3, #20 2080 01da 1B0D lsrs r3, r3, #20 2081 .LVL221: 1769:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2082 .loc 1 1769 11 view .LVU685 2083 01dc 43F08003 orr r3, r3, #128 2084 .LVL222: 1769:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2085 .loc 1 1769 11 is_stmt 0 view .LVU686 2086 01e0 0380 strh r3, [r0] @ movhi 2087 .LBE45: 1769:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2088 .loc 1 1769 11 is_stmt 1 view .LVU687 1772:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2089 .loc 1 1772 11 view .LVU688 1772:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2090 .loc 1 1772 28 is_stmt 0 view .LVU689 2091 01e2 2868 ldr r0, [r5] 2092 01e4 B0F85030 ldrh r3, [r0, #80] 2093 01e8 95F86821 ldrb r2, [r5, #360] @ zero_extendqisi2 2094 .LVL223: 1772:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2095 .loc 1 1772 28 view .LVU690 2096 01ec D200 lsls r2, r2, #3 2097 01ee 12FA83F3 uxtah r3, r2, r3 2098 01f2 0344 add r3, r3, r0 2099 01f4 B3F80634 ldrh r3, [r3, #1030] 2100 01f8 C3F30903 ubfx r3, r3, #0, #10 1772:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2101 .loc 1 1772 26 view .LVU691 2102 01fc C5F88431 str r3, [r5, #388] 1774:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 2103 .loc 1 1774 11 is_stmt 1 view .LVU692 1774:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 2104 .loc 1 1774 14 is_stmt 0 view .LVU693 2105 0200 8BB1 cbz r3, .L101 1774:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { ARM GAS /tmp/ccJPteqL.s page 86 2106 .loc 1 1774 44 discriminator 1 view .LVU694 2107 0202 D5F87C11 ldr r1, [r5, #380] 1774:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 2108 .loc 1 1774 38 discriminator 1 view .LVU695 2109 0206 71B1 cbz r1, .L101 1776:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->pmaadress, (uint16_t)ep->xfer_count); 2110 .loc 1 1776 13 is_stmt 1 view .LVU696 2111 0208 B5F86E21 ldrh r2, [r5, #366] 2112 020c FFF7FEFF bl USB_ReadPMA 2113 .LVL224: 1779:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2114 .loc 1 1779 13 view .LVU697 1779:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2115 .loc 1 1779 15 is_stmt 0 view .LVU698 2116 0210 D5F87C31 ldr r3, [r5, #380] 1779:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2117 .loc 1 1779 32 view .LVU699 2118 0214 D5F88421 ldr r2, [r5, #388] 1779:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2119 .loc 1 1779 27 view .LVU700 2120 0218 1344 add r3, r3, r2 2121 021a C5F87C31 str r3, [r5, #380] 1785:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** #endif /* USE_HAL_PCD_REGISTER_CALLBACKS */ 2122 .loc 1 1785 13 is_stmt 1 view .LVU701 2123 021e 0021 movs r1, #0 2124 0220 2846 mov r0, r5 2125 0222 FFF7FEFF bl HAL_PCD_DataOutStageCallback 2126 .LVL225: 2127 .L101: 1789:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 2128 .loc 1 1789 11 view .LVU702 1789:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 2129 .loc 1 1789 16 is_stmt 0 view .LVU703 2130 0226 2B68 ldr r3, [r5] 2131 0228 1A88 ldrh r2, [r3] 1789:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 2132 .loc 1 1789 14 view .LVU704 2133 022a 12F4006F tst r2, #2048 2134 022e B6D1 bne .L96 1791:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_SET_EP_RX_STATUS(hpcd->Instance, PCD_ENDP0, USB_EP_RX_VALID); 2135 .loc 1 1791 13 is_stmt 1 view .LVU705 2136 .LBB46: 1791:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_SET_EP_RX_STATUS(hpcd->Instance, PCD_ENDP0, USB_EP_RX_VALID); 2137 .loc 1 1791 13 view .LVU706 2138 .LVL226: 1791:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_SET_EP_RX_STATUS(hpcd->Instance, PCD_ENDP0, USB_EP_RX_VALID); 2139 .loc 1 1791 13 view .LVU707 1791:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_SET_EP_RX_STATUS(hpcd->Instance, PCD_ENDP0, USB_EP_RX_VALID); 2140 .loc 1 1791 13 view .LVU708 2141 0230 B3F85020 ldrh r2, [r3, #80] 2142 0234 13FA82F3 uxtah r3, r3, r2 2143 .LVL227: 1791:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_SET_EP_RX_STATUS(hpcd->Instance, PCD_ENDP0, USB_EP_RX_VALID); 2144 .loc 1 1791 13 view .LVU709 1791:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_SET_EP_RX_STATUS(hpcd->Instance, PCD_ENDP0, USB_EP_RX_VALID); 2145 .loc 1 1791 13 view .LVU710 2146 .LBB41: ARM GAS /tmp/ccJPteqL.s page 87 1791:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_SET_EP_RX_STATUS(hpcd->Instance, PCD_ENDP0, USB_EP_RX_VALID); 2147 .loc 1 1791 13 view .LVU711 1791:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_SET_EP_RX_STATUS(hpcd->Instance, PCD_ENDP0, USB_EP_RX_VALID); 2148 .loc 1 1791 13 view .LVU712 2149 0238 D5F87811 ldr r1, [r5, #376] 2150 023c 3E29 cmp r1, #62 2151 023e 7FF639AF bls .L102 1791:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_SET_EP_RX_STATUS(hpcd->Instance, PCD_ENDP0, USB_EP_RX_VALID); 2152 .loc 1 1791 13 discriminator 1 view .LVU713 1791:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_SET_EP_RX_STATUS(hpcd->Instance, PCD_ENDP0, USB_EP_RX_VALID); 2153 .loc 1 1791 13 discriminator 1 view .LVU714 2154 0242 4A09 lsrs r2, r1, #5 2155 .LVL228: 1791:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_SET_EP_RX_STATUS(hpcd->Instance, PCD_ENDP0, USB_EP_RX_VALID); 2156 .loc 1 1791 13 discriminator 1 view .LVU715 2157 0244 11F01F0F tst r1, #31 2158 0248 00D1 bne .L103 1791:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_SET_EP_RX_STATUS(hpcd->Instance, PCD_ENDP0, USB_EP_RX_VALID); 2159 .loc 1 1791 13 discriminator 3 view .LVU716 2160 024a 013A subs r2, r2, #1 2161 .LVL229: 2162 .L103: 1791:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_SET_EP_RX_STATUS(hpcd->Instance, PCD_ENDP0, USB_EP_RX_VALID); 2163 .loc 1 1791 13 discriminator 5 view .LVU717 2164 024c 6FEAC262 mvn r2, r2, lsl #27 2165 .LVL230: 1791:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_SET_EP_RX_STATUS(hpcd->Instance, PCD_ENDP0, USB_EP_RX_VALID); 2166 .loc 1 1791 13 is_stmt 0 discriminator 5 view .LVU718 2167 0250 6FEA5242 mvn r2, r2, lsr #17 2168 0254 92B2 uxth r2, r2 2169 0256 A3F80624 strh r2, [r3, #1030] @ movhi 1791:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_SET_EP_RX_STATUS(hpcd->Instance, PCD_ENDP0, USB_EP_RX_VALID); 2170 .loc 1 1791 13 is_stmt 1 discriminator 5 view .LVU719 2171 .LVL231: 2172 .L104: 1791:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_SET_EP_RX_STATUS(hpcd->Instance, PCD_ENDP0, USB_EP_RX_VALID); 2173 .loc 1 1791 13 discriminator 13 view .LVU720 2174 .LBE41: 1791:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_SET_EP_RX_STATUS(hpcd->Instance, PCD_ENDP0, USB_EP_RX_VALID); 2175 .loc 1 1791 13 discriminator 13 view .LVU721 2176 .LBE46: 1791:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_SET_EP_RX_STATUS(hpcd->Instance, PCD_ENDP0, USB_EP_RX_VALID); 2177 .loc 1 1791 13 discriminator 13 view .LVU722 1792:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 2178 .loc 1 1792 13 discriminator 13 view .LVU723 2179 .LBB47: 1792:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 2180 .loc 1 1792 13 discriminator 13 view .LVU724 1792:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 2181 .loc 1 1792 13 discriminator 13 view .LVU725 2182 025a 2A68 ldr r2, [r5] 2183 025c 1388 ldrh r3, [r2] 2184 .LVL232: 1792:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 2185 .loc 1 1792 13 is_stmt 0 discriminator 13 view .LVU726 2186 025e 9BB2 uxth r3, r3 2187 0260 23F48043 bic r3, r3, #16384 ARM GAS /tmp/ccJPteqL.s page 88 2188 0264 23F07003 bic r3, r3, #112 2189 .LVL233: 1792:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 2190 .loc 1 1792 13 is_stmt 1 discriminator 13 view .LVU727 1792:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 2191 .loc 1 1792 13 discriminator 13 view .LVU728 1792:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 2192 .loc 1 1792 13 discriminator 13 view .LVU729 1792:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 2193 .loc 1 1792 13 discriminator 13 view .LVU730 2194 0268 83F44053 eor r3, r3, #12288 2195 .LVL234: 1792:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 2196 .loc 1 1792 13 discriminator 13 view .LVU731 2197 026c 43F40043 orr r3, r3, #32768 2198 .LVL235: 1792:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 2199 .loc 1 1792 13 is_stmt 0 discriminator 13 view .LVU732 2200 0270 43F08003 orr r3, r3, #128 2201 0274 1380 strh r3, [r2] @ movhi 2202 0276 92E7 b .L96 2203 .LVL236: 2204 .L125: 1792:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 2205 .loc 1 1792 13 discriminator 13 view .LVU733 2206 .LBE47: 1806:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep = &hpcd->OUT_ep[epindex]; 2207 .loc 1 1806 9 is_stmt 1 view .LVU734 2208 .LBB48: 1806:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep = &hpcd->OUT_ep[epindex]; 2209 .loc 1 1806 9 view .LVU735 1806:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep = &hpcd->OUT_ep[epindex]; 2210 .loc 1 1806 9 view .LVU736 2211 0278 30F82430 ldrh r3, [r0, r4, lsl #2] 2212 027c 23F07003 bic r3, r3, #112 2213 0280 1B05 lsls r3, r3, #20 2214 0282 1B0D lsrs r3, r3, #20 2215 .LVL237: 1806:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep = &hpcd->OUT_ep[epindex]; 2216 .loc 1 1806 9 view .LVU737 2217 0284 43F08003 orr r3, r3, #128 2218 .LVL238: 1806:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep = &hpcd->OUT_ep[epindex]; 2219 .loc 1 1806 9 is_stmt 0 view .LVU738 2220 0288 20F82430 strh r3, [r0, r4, lsl #2] @ movhi 2221 .LBE48: 1806:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep = &hpcd->OUT_ep[epindex]; 2222 .loc 1 1806 9 is_stmt 1 view .LVU739 1807:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2223 .loc 1 1807 9 view .LVU740 1807:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2224 .loc 1 1807 12 is_stmt 0 view .LVU741 2225 028c 04EB8401 add r1, r4, r4, lsl #2 2226 0290 C900 lsls r1, r1, #3 2227 0292 01F5B471 add r1, r1, #360 2228 0296 05EB0108 add r8, r5, r1 2229 .LVL239: ARM GAS /tmp/ccJPteqL.s page 89 1810:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 2230 .loc 1 1810 9 is_stmt 1 view .LVU742 1810:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 2231 .loc 1 1810 15 is_stmt 0 view .LVU743 2232 029a 04EB8403 add r3, r4, r4, lsl #2 2233 029e 05EBC303 add r3, r5, r3, lsl #3 2234 02a2 93F87431 ldrb r3, [r3, #372] @ zero_extendqisi2 1810:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 2235 .loc 1 1810 12 view .LVU744 2236 02a6 002B cmp r3, #0 2237 02a8 40D1 bne .L108 1812:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2238 .loc 1 1812 11 is_stmt 1 view .LVU745 1812:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2239 .loc 1 1812 29 is_stmt 0 view .LVU746 2240 02aa 2868 ldr r0, [r5] 2241 02ac B0F85030 ldrh r3, [r0, #80] 2242 02b0 04EB8402 add r2, r4, r4, lsl #2 2243 02b4 05EBC202 add r2, r5, r2, lsl #3 2244 02b8 92F86821 ldrb r2, [r2, #360] @ zero_extendqisi2 2245 02bc D200 lsls r2, r2, #3 2246 02be 12FA83F3 uxtah r3, r2, r3 2247 02c2 0344 add r3, r3, r0 2248 02c4 B3F80674 ldrh r7, [r3, #1030] 1812:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2249 .loc 1 1812 17 view .LVU747 2250 02c8 C7F30907 ubfx r7, r7, #0, #10 2251 .LVL240: 1814:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 2252 .loc 1 1814 11 is_stmt 1 view .LVU748 1814:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 2253 .loc 1 1814 14 is_stmt 0 view .LVU749 2254 02cc 17BB cbnz r7, .L129 2255 .L109: 1857:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->xfer_buff += count; 2256 .loc 1 1857 9 is_stmt 1 view .LVU750 1857:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->xfer_buff += count; 2257 .loc 1 1857 11 is_stmt 0 view .LVU751 2258 02ce 04EB8403 add r3, r4, r4, lsl #2 2259 02d2 05EBC303 add r3, r5, r3, lsl #3 2260 02d6 D3F88421 ldr r2, [r3, #388] 1857:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->xfer_buff += count; 2261 .loc 1 1857 24 view .LVU752 2262 02da 3A44 add r2, r2, r7 2263 02dc C3F88421 str r2, [r3, #388] 1858:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2264 .loc 1 1858 9 is_stmt 1 view .LVU753 1858:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2265 .loc 1 1858 11 is_stmt 0 view .LVU754 2266 02e0 D3F87C21 ldr r2, [r3, #380] 1858:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2267 .loc 1 1858 23 view .LVU755 2268 02e4 3A44 add r2, r2, r7 2269 02e6 C3F87C21 str r2, [r3, #380] 1860:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 2270 .loc 1 1860 9 is_stmt 1 view .LVU756 1860:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { ARM GAS /tmp/ccJPteqL.s page 90 2271 .loc 1 1860 16 is_stmt 0 view .LVU757 2272 02ea D3F88031 ldr r3, [r3, #384] 1860:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 2273 .loc 1 1860 12 view .LVU758 2274 02ee 3BB1 cbz r3, .L112 1860:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 2275 .loc 1 1860 48 discriminator 1 view .LVU759 2276 02f0 04EB8403 add r3, r4, r4, lsl #2 2277 02f4 05EBC303 add r3, r5, r3, lsl #3 2278 02f8 D3F87831 ldr r3, [r3, #376] 1860:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 2279 .loc 1 1860 34 discriminator 1 view .LVU760 2280 02fc 9F42 cmp r7, r3 2281 02fe 70D2 bcs .L113 2282 .L112: 1866:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** #endif /* USE_HAL_PCD_REGISTER_CALLBACKS */ 2283 .loc 1 1866 11 is_stmt 1 view .LVU761 2284 0300 04EB8403 add r3, r4, r4, lsl #2 2285 0304 05EBC303 add r3, r5, r3, lsl #3 2286 0308 93F86811 ldrb r1, [r3, #360] @ zero_extendqisi2 2287 030c 2846 mov r0, r5 2288 030e FFF7FEFF bl HAL_PCD_DataOutStageCallback 2289 .LVL241: 2290 0312 F3E6 b .L107 2291 .L129: 1816:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 2292 .loc 1 1816 13 view .LVU762 2293 0314 04EB8401 add r1, r4, r4, lsl #2 2294 0318 05EBC101 add r1, r5, r1, lsl #3 2295 031c 3B46 mov r3, r7 2296 031e B1F86E21 ldrh r2, [r1, #366] 2297 0322 D1F87C11 ldr r1, [r1, #380] 2298 0326 FFF7FEFF bl USB_ReadPMA 2299 .LVL242: 2300 032a D0E7 b .L109 2301 .LVL243: 2302 .L108: 1823:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 2303 .loc 1 1823 11 view .LVU763 1823:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 2304 .loc 1 1823 17 is_stmt 0 view .LVU764 2305 032c 04EB8403 add r3, r4, r4, lsl #2 2306 0330 05EBC303 add r3, r5, r3, lsl #3 2307 0334 93F86B31 ldrb r3, [r3, #363] @ zero_extendqisi2 1823:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 2308 .loc 1 1823 14 view .LVU765 2309 0338 022B cmp r3, #2 2310 033a 33D0 beq .L130 1830:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2311 .loc 1 1830 13 is_stmt 1 discriminator 1 view .LVU766 1830:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2312 .loc 1 1830 13 discriminator 1 view .LVU767 1830:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2313 .loc 1 1830 13 discriminator 1 view .LVU768 2314 .LBB49: 1830:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2315 .loc 1 1830 13 discriminator 1 view .LVU769 ARM GAS /tmp/ccJPteqL.s page 91 1830:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2316 .loc 1 1830 13 discriminator 1 view .LVU770 2317 033c 2968 ldr r1, [r5] 2318 033e 04EB8402 add r2, r4, r4, lsl #2 2319 0342 05EBC202 add r2, r5, r2, lsl #3 2320 0346 92F86801 ldrb r0, [r2, #360] @ zero_extendqisi2 2321 034a 31F82030 ldrh r3, [r1, r0, lsl #2] 2322 034e 9BB2 uxth r3, r3 2323 0350 23F4E043 bic r3, r3, #28672 2324 0354 23F07003 bic r3, r3, #112 2325 .LVL244: 1830:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2326 .loc 1 1830 13 discriminator 1 view .LVU771 2327 0358 43F40043 orr r3, r3, #32768 2328 .LVL245: 1830:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2329 .loc 1 1830 13 is_stmt 0 discriminator 1 view .LVU772 2330 035c 43F0C003 orr r3, r3, #192 2331 0360 21F82030 strh r3, [r1, r0, lsl #2] @ movhi 2332 .LBE49: 1830:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2333 .loc 1 1830 13 is_stmt 1 discriminator 1 view .LVU773 1830:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2334 .loc 1 1830 13 discriminator 1 view .LVU774 1830:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2335 .loc 1 1830 13 discriminator 1 view .LVU775 1832:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 2336 .loc 1 1832 13 discriminator 1 view .LVU776 1832:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 2337 .loc 1 1832 18 is_stmt 0 discriminator 1 view .LVU777 2338 0364 2868 ldr r0, [r5] 2339 0366 92F86831 ldrb r3, [r2, #360] @ zero_extendqisi2 2340 036a 30F82320 ldrh r2, [r0, r3, lsl #2] 1832:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 2341 .loc 1 1832 16 discriminator 1 view .LVU778 2342 036e 12F4804F tst r2, #16384 2343 0372 1ED0 beq .L111 1835:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2344 .loc 1 1835 15 is_stmt 1 view .LVU779 1835:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2345 .loc 1 1835 33 is_stmt 0 view .LVU780 2346 0374 B0F85020 ldrh r2, [r0, #80] 2347 0378 DB00 lsls r3, r3, #3 2348 037a 13FA82F3 uxtah r3, r3, r2 2349 037e 0344 add r3, r3, r0 2350 0380 B3F80274 ldrh r7, [r3, #1026] 1835:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2351 .loc 1 1835 21 view .LVU781 2352 0384 C7F30907 ubfx r7, r7, #0, #10 2353 .LVL246: 1837:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 2354 .loc 1 1837 15 is_stmt 1 view .LVU782 1837:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 2355 .loc 1 1837 18 is_stmt 0 view .LVU783 2356 0388 002F cmp r7, #0 2357 038a A0D0 beq .L109 1839:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } ARM GAS /tmp/ccJPteqL.s page 92 2358 .loc 1 1839 17 is_stmt 1 view .LVU784 2359 038c 04EB8401 add r1, r4, r4, lsl #2 2360 0390 05EBC101 add r1, r5, r1, lsl #3 2361 0394 3B46 mov r3, r7 2362 0396 B1F87021 ldrh r2, [r1, #368] 2363 039a D1F87C11 ldr r1, [r1, #380] 2364 039e FFF7FEFF bl USB_ReadPMA 2365 .LVL247: 2366 03a2 94E7 b .L109 2367 .LVL248: 2368 .L130: 1825:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 2369 .loc 1 1825 13 view .LVU785 1825:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 2370 .loc 1 1825 21 is_stmt 0 view .LVU786 2371 03a4 3246 mov r2, r6 2372 03a6 4146 mov r1, r8 2373 03a8 2846 mov r0, r5 2374 03aa FFF7FEFF bl HAL_PCD_EP_DB_Receive 2375 .LVL249: 2376 03ae 0746 mov r7, r0 2377 .LVL250: 1825:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 2378 .loc 1 1825 21 view .LVU787 2379 03b0 8DE7 b .L109 2380 .LVL251: 2381 .L111: 1845:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2382 .loc 1 1845 15 is_stmt 1 view .LVU788 1845:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2383 .loc 1 1845 33 is_stmt 0 view .LVU789 2384 03b2 B0F85020 ldrh r2, [r0, #80] 2385 03b6 DB00 lsls r3, r3, #3 2386 03b8 13FA82F3 uxtah r3, r3, r2 2387 03bc 0344 add r3, r3, r0 2388 03be B3F80674 ldrh r7, [r3, #1030] 1845:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2389 .loc 1 1845 21 view .LVU790 2390 03c2 C7F30907 ubfx r7, r7, #0, #10 2391 .LVL252: 1847:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 2392 .loc 1 1847 15 is_stmt 1 view .LVU791 1847:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 2393 .loc 1 1847 18 is_stmt 0 view .LVU792 2394 03c6 002F cmp r7, #0 2395 03c8 81D0 beq .L109 1849:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 2396 .loc 1 1849 17 is_stmt 1 view .LVU793 2397 03ca 04EB8401 add r1, r4, r4, lsl #2 2398 03ce 05EBC101 add r1, r5, r1, lsl #3 2399 03d2 3B46 mov r3, r7 2400 03d4 B1F87221 ldrh r2, [r1, #370] 2401 03d8 D1F87C11 ldr r1, [r1, #380] 2402 03dc FFF7FEFF bl USB_ReadPMA 2403 .LVL253: 2404 03e0 75E7 b .L109 2405 .LVL254: ARM GAS /tmp/ccJPteqL.s page 93 2406 .L113: 1871:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 2407 .loc 1 1871 11 view .LVU794 1871:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 2408 .loc 1 1871 18 is_stmt 0 view .LVU795 2409 03e2 4146 mov r1, r8 2410 03e4 2868 ldr r0, [r5] 2411 03e6 FFF7FEFF bl USB_EPStartXfer 2412 .LVL255: 2413 03ea 87E6 b .L107 2414 .LVL256: 2415 .L117: 1891:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 2416 .loc 1 1891 15 is_stmt 1 discriminator 2 view .LVU796 2417 03ec 012B cmp r3, #1 2418 03ee 7FF4CEAE bne .L115 1891:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 2419 .loc 1 1891 15 discriminator 16 view .LVU797 2420 .LBB50: 1891:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 2421 .loc 1 1891 15 discriminator 16 view .LVU798 2422 03f2 2A68 ldr r2, [r5] 2423 .LVL257: 1891:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 2424 .loc 1 1891 15 discriminator 16 view .LVU799 1891:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 2425 .loc 1 1891 15 discriminator 16 view .LVU800 2426 03f4 B2F85030 ldrh r3, [r2, #80] 2427 03f8 12FA83F3 uxtah r3, r2, r3 2428 .LVL258: 1891:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 2429 .loc 1 1891 15 discriminator 16 view .LVU801 2430 03fc 621C adds r2, r4, #1 2431 03fe 02EB8202 add r2, r2, r2, lsl #2 2432 0402 15F83220 ldrb r2, [r5, r2, lsl #3] @ zero_extendqisi2 2433 0406 03EBC203 add r3, r3, r2, lsl #3 2434 .LVL259: 1891:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 2435 .loc 1 1891 15 discriminator 16 view .LVU802 2436 040a 0022 movs r2, #0 2437 040c A3F80224 strh r2, [r3, #1026] @ movhi 2438 0410 BDE6 b .L115 2439 .LVL260: 2440 .L116: 1891:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 2441 .loc 1 1891 15 is_stmt 0 discriminator 16 view .LVU803 2442 .LBE50: 1895:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 2443 .loc 1 1895 15 is_stmt 1 view .LVU804 2444 .LBB51: 1895:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 2445 .loc 1 1895 15 view .LVU805 2446 0412 2A68 ldr r2, [r5] 2447 .LVL261: 1895:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 2448 .loc 1 1895 15 view .LVU806 1895:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } ARM GAS /tmp/ccJPteqL.s page 94 2449 .loc 1 1895 15 view .LVU807 2450 0414 631C adds r3, r4, #1 2451 0416 03EB8303 add r3, r3, r3, lsl #2 2452 041a 05EBC303 add r3, r5, r3, lsl #3 2453 041e 5B78 ldrb r3, [r3, #1] @ zero_extendqisi2 2454 0420 E3B9 cbnz r3, .L118 1895:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 2455 .loc 1 1895 15 discriminator 1 view .LVU808 2456 .LBB52: 1895:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 2457 .loc 1 1895 15 discriminator 1 view .LVU809 2458 .LVL262: 1895:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 2459 .loc 1 1895 15 discriminator 1 view .LVU810 1895:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 2460 .loc 1 1895 15 discriminator 1 view .LVU811 2461 0422 B2F85030 ldrh r3, [r2, #80] 2462 0426 12FA83F3 uxtah r3, r2, r3 2463 .LVL263: 1895:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 2464 .loc 1 1895 15 discriminator 1 view .LVU812 2465 042a 621C adds r2, r4, #1 2466 .LVL264: 1895:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 2467 .loc 1 1895 15 is_stmt 0 discriminator 1 view .LVU813 2468 042c 02EB8202 add r2, r2, r2, lsl #2 2469 0430 15F83220 ldrb r2, [r5, r2, lsl #3] @ zero_extendqisi2 2470 0434 03EBC203 add r3, r3, r2, lsl #3 2471 .LVL265: 1895:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 2472 .loc 1 1895 15 is_stmt 1 discriminator 1 view .LVU814 2473 .LBB53: 1895:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 2474 .loc 1 1895 15 discriminator 1 view .LVU815 1895:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 2475 .loc 1 1895 15 discriminator 1 view .LVU816 1895:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 2476 .loc 1 1895 15 discriminator 1 view .LVU817 1895:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 2477 .loc 1 1895 15 discriminator 1 view .LVU818 2478 0438 B3F80624 ldrh r2, [r3, #1030] 2479 043c 92B2 uxth r2, r2 2480 043e 22F4F842 bic r2, r2, #31744 2481 0442 92B2 uxth r2, r2 2482 0444 A3F80624 strh r2, [r3, #1030] @ movhi 2483 .LVL266: 1895:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 2484 .loc 1 1895 15 discriminator 1 view .LVU819 2485 0448 B3F80624 ldrh r2, [r3, #1030] 2486 044c 6FEA4242 mvn r2, r2, lsl #17 2487 0450 6FEA5242 mvn r2, r2, lsr #17 2488 0454 92B2 uxth r2, r2 2489 0456 A3F80624 strh r2, [r3, #1030] @ movhi 2490 045a 98E6 b .L115 2491 .LVL267: 2492 .L118: 1895:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } ARM GAS /tmp/ccJPteqL.s page 95 2493 .loc 1 1895 15 is_stmt 0 discriminator 1 view .LVU820 2494 .LBE53: 2495 .LBE52: 1895:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 2496 .loc 1 1895 15 is_stmt 1 discriminator 2 view .LVU821 2497 045c 012B cmp r3, #1 2498 045e 7FF496AE bne .L115 1895:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 2499 .loc 1 1895 15 discriminator 16 view .LVU822 2500 0462 B2F85030 ldrh r3, [r2, #80] 2501 0466 12FA83F3 uxtah r3, r2, r3 2502 .LVL268: 1895:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 2503 .loc 1 1895 15 discriminator 16 view .LVU823 2504 046a 621C adds r2, r4, #1 2505 046c 02EB8202 add r2, r2, r2, lsl #2 2506 0470 15F83220 ldrb r2, [r5, r2, lsl #3] @ zero_extendqisi2 2507 0474 03EBC203 add r3, r3, r2, lsl #3 2508 .LVL269: 1895:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 2509 .loc 1 1895 15 discriminator 16 view .LVU824 2510 0478 0022 movs r2, #0 2511 047a A3F80624 strh r2, [r3, #1030] @ movhi 2512 047e 86E6 b .L115 2513 .LVL270: 2514 .L114: 1895:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 2515 .loc 1 1895 15 is_stmt 0 discriminator 16 view .LVU825 2516 .LBE51: 1910:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 2517 .loc 1 1910 11 is_stmt 1 view .LVU826 1910:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 2518 .loc 1 1910 14 is_stmt 0 view .LVU827 2519 0480 16F4807F tst r6, #256 2520 0484 3FD1 bne .L119 1913:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2521 .loc 1 1913 13 is_stmt 1 view .LVU828 1913:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2522 .loc 1 1913 35 is_stmt 0 view .LVU829 2523 0486 2868 ldr r0, [r5] 2524 0488 B0F85030 ldrh r3, [r0, #80] 2525 048c 621C adds r2, r4, #1 2526 048e 02EB8202 add r2, r2, r2, lsl #2 2527 0492 15F83260 ldrb r6, [r5, r2, lsl #3] @ zero_extendqisi2 2528 .LVL271: 1913:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2529 .loc 1 1913 35 view .LVU830 2530 0496 F200 lsls r2, r6, #3 2531 0498 12FA83F3 uxtah r3, r2, r3 2532 049c 0344 add r3, r3, r0 2533 049e B3F80234 ldrh r3, [r3, #1026] 1913:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2534 .loc 1 1913 23 view .LVU831 2535 04a2 C3F30903 ubfx r3, r3, #0, #10 2536 .LVL272: 1915:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 2537 .loc 1 1915 13 is_stmt 1 view .LVU832 ARM GAS /tmp/ccJPteqL.s page 96 1915:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 2538 .loc 1 1915 19 is_stmt 0 view .LVU833 2539 04a6 04EB8402 add r2, r4, r4, lsl #2 2540 04aa 05EBC202 add r2, r5, r2, lsl #3 2541 04ae 126C ldr r2, [r2, #64] 1915:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 2542 .loc 1 1915 16 view .LVU834 2543 04b0 9A42 cmp r2, r3 2544 04b2 10D9 bls .L120 1917:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 2545 .loc 1 1917 15 is_stmt 1 view .LVU835 1917:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 2546 .loc 1 1917 28 is_stmt 0 view .LVU836 2547 04b4 04EB8407 add r7, r4, r4, lsl #2 2548 04b8 05EBC707 add r7, r5, r7, lsl #3 2549 04bc D21A subs r2, r2, r3 2550 04be 3A64 str r2, [r7, #64] 2551 .L121: 1925:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 2552 .loc 1 1925 13 is_stmt 1 view .LVU837 1925:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 2553 .loc 1 1925 19 is_stmt 0 view .LVU838 2554 04c0 04EB8402 add r2, r4, r4, lsl #2 2555 04c4 05EBC202 add r2, r5, r2, lsl #3 2556 04c8 126C ldr r2, [r2, #64] 1925:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 2557 .loc 1 1925 16 view .LVU839 2558 04ca 5AB9 cbnz r2, .L122 1931:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** #endif /* USE_HAL_PCD_REGISTER_CALLBACKS */ 2559 .loc 1 1931 15 is_stmt 1 view .LVU840 2560 04cc 3146 mov r1, r6 2561 .LVL273: 1931:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** #endif /* USE_HAL_PCD_REGISTER_CALLBACKS */ 2562 .loc 1 1931 15 is_stmt 0 view .LVU841 2563 04ce 2846 mov r0, r5 2564 04d0 FFF7FEFF bl HAL_PCD_DataInStageCallback 2565 .LVL274: 1931:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** #endif /* USE_HAL_PCD_REGISTER_CALLBACKS */ 2566 .loc 1 1931 15 view .LVU842 2567 04d4 63E6 b .L96 2568 .LVL275: 2569 .L120: 1921:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 2570 .loc 1 1921 15 is_stmt 1 view .LVU843 1921:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 2571 .loc 1 1921 28 is_stmt 0 view .LVU844 2572 04d6 04EB8402 add r2, r4, r4, lsl #2 2573 04da 05EBC202 add r2, r5, r2, lsl #3 2574 04de 0027 movs r7, #0 2575 04e0 1764 str r7, [r2, #64] 2576 04e2 EDE7 b .L121 2577 .L122: 1937:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->xfer_count += TxPctSize; 2578 .loc 1 1937 15 is_stmt 1 view .LVU845 1937:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->xfer_count += TxPctSize; 2579 .loc 1 1937 17 is_stmt 0 view .LVU846 2580 04e4 04EB8402 add r2, r4, r4, lsl #2 ARM GAS /tmp/ccJPteqL.s page 97 2581 04e8 05EBC202 add r2, r5, r2, lsl #3 2582 04ec D66B ldr r6, [r2, #60] 1937:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->xfer_count += TxPctSize; 2583 .loc 1 1937 29 view .LVU847 2584 04ee 1E44 add r6, r6, r3 2585 04f0 D663 str r6, [r2, #60] 1938:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** (void)USB_EPStartXfer(hpcd->Instance, ep); 2586 .loc 1 1938 15 is_stmt 1 view .LVU848 1938:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** (void)USB_EPStartXfer(hpcd->Instance, ep); 2587 .loc 1 1938 17 is_stmt 0 view .LVU849 2588 04f2 526C ldr r2, [r2, #68] 1938:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** (void)USB_EPStartXfer(hpcd->Instance, ep); 2589 .loc 1 1938 30 view .LVU850 2590 04f4 04EB8404 add r4, r4, r4, lsl #2 2591 04f8 05EBC404 add r4, r5, r4, lsl #3 2592 04fc 1344 add r3, r3, r2 2593 .LVL276: 1938:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** (void)USB_EPStartXfer(hpcd->Instance, ep); 2594 .loc 1 1938 30 view .LVU851 2595 04fe 6364 str r3, [r4, #68] 1939:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 2596 .loc 1 1939 15 is_stmt 1 view .LVU852 1939:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 2597 .loc 1 1939 21 is_stmt 0 view .LVU853 2598 0500 FFF7FEFF bl USB_EPStartXfer 2599 .LVL277: 1939:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 2600 .loc 1 1939 21 view .LVU854 2601 0504 4BE6 b .L96 2602 .LVL278: 2603 .L119: 1946:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 2604 .loc 1 1946 13 is_stmt 1 view .LVU855 1946:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 2605 .loc 1 1946 19 is_stmt 0 view .LVU856 2606 0506 3246 mov r2, r6 2607 0508 2846 mov r0, r5 2608 050a FFF7FEFF bl HAL_PCD_EP_DB_Transmit 2609 .LVL279: 1946:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 2610 .loc 1 1946 19 view .LVU857 2611 050e 46E6 b .L96 2612 .LVL280: 2613 .L126: 1954:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 2614 .loc 1 1954 3 is_stmt 1 view .LVU858 1955:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2615 .loc 1 1955 1 is_stmt 0 view .LVU859 2616 0510 0020 movs r0, #0 2617 0512 BDE8F081 pop {r4, r5, r6, r7, r8, pc} 1955:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2618 .loc 1 1955 1 view .LVU860 2619 .cfi_endproc 2620 .LFE361: 2622 .section .text.HAL_PCD_SOFCallback,"ax",%progbits 2623 .align 1 2624 .weak HAL_PCD_SOFCallback ARM GAS /tmp/ccJPteqL.s page 98 2625 .syntax unified 2626 .thumb 2627 .thumb_func 2629 HAL_PCD_SOFCallback: 2630 .LVL281: 2631 .LFB339: 1202:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Prevent unused argument(s) compilation warning */ 2632 .loc 1 1202 1 is_stmt 1 view -0 2633 .cfi_startproc 2634 @ args = 0, pretend = 0, frame = 0 2635 @ frame_needed = 0, uses_anonymous_args = 0 2636 @ link register save eliminated. 1204:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2637 .loc 1 1204 3 view .LVU862 1209:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2638 .loc 1 1209 1 is_stmt 0 view .LVU863 2639 0000 7047 bx lr 2640 .cfi_endproc 2641 .LFE339: 2643 .section .text.HAL_PCD_ResetCallback,"ax",%progbits 2644 .align 1 2645 .weak HAL_PCD_ResetCallback 2646 .syntax unified 2647 .thumb 2648 .thumb_func 2650 HAL_PCD_ResetCallback: 2651 .LVL282: 2652 .LFB340: 1217:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Prevent unused argument(s) compilation warning */ 2653 .loc 1 1217 1 is_stmt 1 view -0 2654 .cfi_startproc 2655 @ args = 0, pretend = 0, frame = 0 2656 @ frame_needed = 0, uses_anonymous_args = 0 2657 @ link register save eliminated. 1219:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2658 .loc 1 1219 3 view .LVU865 1224:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2659 .loc 1 1224 1 is_stmt 0 view .LVU866 2660 0000 7047 bx lr 2661 .cfi_endproc 2662 .LFE340: 2664 .section .text.HAL_PCD_SuspendCallback,"ax",%progbits 2665 .align 1 2666 .weak HAL_PCD_SuspendCallback 2667 .syntax unified 2668 .thumb 2669 .thumb_func 2671 HAL_PCD_SuspendCallback: 2672 .LVL283: 2673 .LFB341: 1232:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Prevent unused argument(s) compilation warning */ 2674 .loc 1 1232 1 is_stmt 1 view -0 2675 .cfi_startproc 2676 @ args = 0, pretend = 0, frame = 0 2677 @ frame_needed = 0, uses_anonymous_args = 0 2678 @ link register save eliminated. 1234:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ARM GAS /tmp/ccJPteqL.s page 99 2679 .loc 1 1234 3 view .LVU868 1239:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2680 .loc 1 1239 1 is_stmt 0 view .LVU869 2681 0000 7047 bx lr 2682 .cfi_endproc 2683 .LFE341: 2685 .section .text.HAL_PCD_ResumeCallback,"ax",%progbits 2686 .align 1 2687 .weak HAL_PCD_ResumeCallback 2688 .syntax unified 2689 .thumb 2690 .thumb_func 2692 HAL_PCD_ResumeCallback: 2693 .LVL284: 2694 .LFB342: 1247:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Prevent unused argument(s) compilation warning */ 2695 .loc 1 1247 1 is_stmt 1 view -0 2696 .cfi_startproc 2697 @ args = 0, pretend = 0, frame = 0 2698 @ frame_needed = 0, uses_anonymous_args = 0 2699 @ link register save eliminated. 1249:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2700 .loc 1 1249 3 view .LVU871 1254:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2701 .loc 1 1254 1 is_stmt 0 view .LVU872 2702 0000 7047 bx lr 2703 .cfi_endproc 2704 .LFE342: 2706 .section .text.HAL_PCD_ISOOUTIncompleteCallback,"ax",%progbits 2707 .align 1 2708 .weak HAL_PCD_ISOOUTIncompleteCallback 2709 .syntax unified 2710 .thumb 2711 .thumb_func 2713 HAL_PCD_ISOOUTIncompleteCallback: 2714 .LVL285: 2715 .LFB343: 1263:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Prevent unused argument(s) compilation warning */ 2716 .loc 1 1263 1 is_stmt 1 view -0 2717 .cfi_startproc 2718 @ args = 0, pretend = 0, frame = 0 2719 @ frame_needed = 0, uses_anonymous_args = 0 2720 @ link register save eliminated. 1265:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** UNUSED(epnum); 2721 .loc 1 1265 3 view .LVU874 1266:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2722 .loc 1 1266 3 view .LVU875 1271:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2723 .loc 1 1271 1 is_stmt 0 view .LVU876 2724 0000 7047 bx lr 2725 .cfi_endproc 2726 .LFE343: 2728 .section .text.HAL_PCD_ISOINIncompleteCallback,"ax",%progbits 2729 .align 1 2730 .weak HAL_PCD_ISOINIncompleteCallback 2731 .syntax unified 2732 .thumb ARM GAS /tmp/ccJPteqL.s page 100 2733 .thumb_func 2735 HAL_PCD_ISOINIncompleteCallback: 2736 .LVL286: 2737 .LFB344: 1280:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Prevent unused argument(s) compilation warning */ 2738 .loc 1 1280 1 is_stmt 1 view -0 2739 .cfi_startproc 2740 @ args = 0, pretend = 0, frame = 0 2741 @ frame_needed = 0, uses_anonymous_args = 0 2742 @ link register save eliminated. 1282:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** UNUSED(epnum); 2743 .loc 1 1282 3 view .LVU878 1283:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2744 .loc 1 1283 3 view .LVU879 1288:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2745 .loc 1 1288 1 is_stmt 0 view .LVU880 2746 0000 7047 bx lr 2747 .cfi_endproc 2748 .LFE344: 2750 .section .text.HAL_PCD_ConnectCallback,"ax",%progbits 2751 .align 1 2752 .weak HAL_PCD_ConnectCallback 2753 .syntax unified 2754 .thumb 2755 .thumb_func 2757 HAL_PCD_ConnectCallback: 2758 .LVL287: 2759 .LFB345: 1296:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Prevent unused argument(s) compilation warning */ 2760 .loc 1 1296 1 is_stmt 1 view -0 2761 .cfi_startproc 2762 @ args = 0, pretend = 0, frame = 0 2763 @ frame_needed = 0, uses_anonymous_args = 0 2764 @ link register save eliminated. 1298:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2765 .loc 1 1298 3 view .LVU882 1303:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2766 .loc 1 1303 1 is_stmt 0 view .LVU883 2767 0000 7047 bx lr 2768 .cfi_endproc 2769 .LFE345: 2771 .section .text.HAL_PCD_DisconnectCallback,"ax",%progbits 2772 .align 1 2773 .weak HAL_PCD_DisconnectCallback 2774 .syntax unified 2775 .thumb 2776 .thumb_func 2778 HAL_PCD_DisconnectCallback: 2779 .LVL288: 2780 .LFB346: 1311:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Prevent unused argument(s) compilation warning */ 2781 .loc 1 1311 1 is_stmt 1 view -0 2782 .cfi_startproc 2783 @ args = 0, pretend = 0, frame = 0 2784 @ frame_needed = 0, uses_anonymous_args = 0 2785 @ link register save eliminated. 1313:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ARM GAS /tmp/ccJPteqL.s page 101 2786 .loc 1 1313 3 view .LVU885 1318:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2787 .loc 1 1318 1 is_stmt 0 view .LVU886 2788 0000 7047 bx lr 2789 .cfi_endproc 2790 .LFE346: 2792 .section .text.HAL_PCD_DevConnect,"ax",%progbits 2793 .align 1 2794 .global HAL_PCD_DevConnect 2795 .syntax unified 2796 .thumb 2797 .thumb_func 2799 HAL_PCD_DevConnect: 2800 .LVL289: 2801 .LFB347: 1345:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __HAL_LOCK(hpcd); 2802 .loc 1 1345 1 is_stmt 1 view -0 2803 .cfi_startproc 2804 @ args = 0, pretend = 0, frame = 0 2805 @ frame_needed = 0, uses_anonymous_args = 0 1346:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** (void)USB_DevConnect(hpcd->Instance); 2806 .loc 1 1346 3 view .LVU888 1346:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** (void)USB_DevConnect(hpcd->Instance); 2807 .loc 1 1346 3 view .LVU889 2808 0000 90F8A832 ldrb r3, [r0, #680] @ zero_extendqisi2 2809 0004 012B cmp r3, #1 2810 0006 0BD0 beq .L141 1345:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __HAL_LOCK(hpcd); 2811 .loc 1 1345 1 is_stmt 0 discriminator 2 view .LVU890 2812 0008 10B5 push {r4, lr} 2813 .LCFI13: 2814 .cfi_def_cfa_offset 8 2815 .cfi_offset 4, -8 2816 .cfi_offset 14, -4 2817 000a 0446 mov r4, r0 1346:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** (void)USB_DevConnect(hpcd->Instance); 2818 .loc 1 1346 3 is_stmt 1 discriminator 2 view .LVU891 2819 000c 0123 movs r3, #1 2820 000e 80F8A832 strb r3, [r0, #680] 1346:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** (void)USB_DevConnect(hpcd->Instance); 2821 .loc 1 1346 3 discriminator 2 view .LVU892 1347:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __HAL_UNLOCK(hpcd); 2822 .loc 1 1347 3 discriminator 2 view .LVU893 1347:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __HAL_UNLOCK(hpcd); 2823 .loc 1 1347 9 is_stmt 0 discriminator 2 view .LVU894 2824 0012 0068 ldr r0, [r0] 2825 .LVL290: 1347:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __HAL_UNLOCK(hpcd); 2826 .loc 1 1347 9 discriminator 2 view .LVU895 2827 0014 FFF7FEFF bl USB_DevConnect 2828 .LVL291: 1348:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2829 .loc 1 1348 3 is_stmt 1 discriminator 2 view .LVU896 1348:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2830 .loc 1 1348 3 discriminator 2 view .LVU897 2831 0018 0020 movs r0, #0 2832 001a 84F8A802 strb r0, [r4, #680] ARM GAS /tmp/ccJPteqL.s page 102 1348:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2833 .loc 1 1348 3 discriminator 2 view .LVU898 1350:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 2834 .loc 1 1350 3 discriminator 2 view .LVU899 1351:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2835 .loc 1 1351 1 is_stmt 0 discriminator 2 view .LVU900 2836 001e 10BD pop {r4, pc} 2837 .LVL292: 2838 .L141: 2839 .LCFI14: 2840 .cfi_def_cfa_offset 0 2841 .cfi_restore 4 2842 .cfi_restore 14 1346:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** (void)USB_DevConnect(hpcd->Instance); 2843 .loc 1 1346 3 view .LVU901 2844 0020 0220 movs r0, #2 2845 .LVL293: 1351:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2846 .loc 1 1351 1 view .LVU902 2847 0022 7047 bx lr 2848 .cfi_endproc 2849 .LFE347: 2851 .section .text.HAL_PCD_DevDisconnect,"ax",%progbits 2852 .align 1 2853 .global HAL_PCD_DevDisconnect 2854 .syntax unified 2855 .thumb 2856 .thumb_func 2858 HAL_PCD_DevDisconnect: 2859 .LVL294: 2860 .LFB348: 1359:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __HAL_LOCK(hpcd); 2861 .loc 1 1359 1 is_stmt 1 view -0 2862 .cfi_startproc 2863 @ args = 0, pretend = 0, frame = 0 2864 @ frame_needed = 0, uses_anonymous_args = 0 1360:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** (void)USB_DevDisconnect(hpcd->Instance); 2865 .loc 1 1360 3 view .LVU904 1360:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** (void)USB_DevDisconnect(hpcd->Instance); 2866 .loc 1 1360 3 view .LVU905 2867 0000 90F8A832 ldrb r3, [r0, #680] @ zero_extendqisi2 2868 0004 012B cmp r3, #1 2869 0006 0BD0 beq .L148 1359:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __HAL_LOCK(hpcd); 2870 .loc 1 1359 1 is_stmt 0 discriminator 2 view .LVU906 2871 0008 10B5 push {r4, lr} 2872 .LCFI15: 2873 .cfi_def_cfa_offset 8 2874 .cfi_offset 4, -8 2875 .cfi_offset 14, -4 2876 000a 0446 mov r4, r0 1360:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** (void)USB_DevDisconnect(hpcd->Instance); 2877 .loc 1 1360 3 is_stmt 1 discriminator 2 view .LVU907 2878 000c 0123 movs r3, #1 2879 000e 80F8A832 strb r3, [r0, #680] 1360:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** (void)USB_DevDisconnect(hpcd->Instance); 2880 .loc 1 1360 3 discriminator 2 view .LVU908 ARM GAS /tmp/ccJPteqL.s page 103 1361:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __HAL_UNLOCK(hpcd); 2881 .loc 1 1361 3 discriminator 2 view .LVU909 1361:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __HAL_UNLOCK(hpcd); 2882 .loc 1 1361 9 is_stmt 0 discriminator 2 view .LVU910 2883 0012 0068 ldr r0, [r0] 2884 .LVL295: 1361:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __HAL_UNLOCK(hpcd); 2885 .loc 1 1361 9 discriminator 2 view .LVU911 2886 0014 FFF7FEFF bl USB_DevDisconnect 2887 .LVL296: 1362:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2888 .loc 1 1362 3 is_stmt 1 discriminator 2 view .LVU912 1362:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2889 .loc 1 1362 3 discriminator 2 view .LVU913 2890 0018 0020 movs r0, #0 2891 001a 84F8A802 strb r0, [r4, #680] 1362:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2892 .loc 1 1362 3 discriminator 2 view .LVU914 1364:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 2893 .loc 1 1364 3 discriminator 2 view .LVU915 1365:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2894 .loc 1 1365 1 is_stmt 0 discriminator 2 view .LVU916 2895 001e 10BD pop {r4, pc} 2896 .LVL297: 2897 .L148: 2898 .LCFI16: 2899 .cfi_def_cfa_offset 0 2900 .cfi_restore 4 2901 .cfi_restore 14 1360:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** (void)USB_DevDisconnect(hpcd->Instance); 2902 .loc 1 1360 3 view .LVU917 2903 0020 0220 movs r0, #2 2904 .LVL298: 1365:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2905 .loc 1 1365 1 view .LVU918 2906 0022 7047 bx lr 2907 .cfi_endproc 2908 .LFE348: 2910 .section .text.HAL_PCD_SetAddress,"ax",%progbits 2911 .align 1 2912 .global HAL_PCD_SetAddress 2913 .syntax unified 2914 .thumb 2915 .thumb_func 2917 HAL_PCD_SetAddress: 2918 .LVL299: 2919 .LFB349: 1374:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __HAL_LOCK(hpcd); 2920 .loc 1 1374 1 is_stmt 1 view -0 2921 .cfi_startproc 2922 @ args = 0, pretend = 0, frame = 0 2923 @ frame_needed = 0, uses_anonymous_args = 0 1375:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->USB_Address = address; 2924 .loc 1 1375 3 view .LVU920 1375:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->USB_Address = address; 2925 .loc 1 1375 3 view .LVU921 2926 0000 90F8A832 ldrb r3, [r0, #680] @ zero_extendqisi2 ARM GAS /tmp/ccJPteqL.s page 104 2927 0004 012B cmp r3, #1 2928 0006 0DD0 beq .L155 1374:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __HAL_LOCK(hpcd); 2929 .loc 1 1374 1 is_stmt 0 discriminator 2 view .LVU922 2930 0008 10B5 push {r4, lr} 2931 .LCFI17: 2932 .cfi_def_cfa_offset 8 2933 .cfi_offset 4, -8 2934 .cfi_offset 14, -4 2935 000a 0446 mov r4, r0 1375:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->USB_Address = address; 2936 .loc 1 1375 3 is_stmt 1 discriminator 2 view .LVU923 2937 000c 0123 movs r3, #1 2938 000e 80F8A832 strb r3, [r0, #680] 1375:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->USB_Address = address; 2939 .loc 1 1375 3 discriminator 2 view .LVU924 1376:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** (void)USB_SetDevAddress(hpcd->Instance, address); 2940 .loc 1 1376 3 discriminator 2 view .LVU925 1376:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** (void)USB_SetDevAddress(hpcd->Instance, address); 2941 .loc 1 1376 21 is_stmt 0 discriminator 2 view .LVU926 2942 0012 80F82410 strb r1, [r0, #36] 1377:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __HAL_UNLOCK(hpcd); 2943 .loc 1 1377 3 is_stmt 1 discriminator 2 view .LVU927 1377:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __HAL_UNLOCK(hpcd); 2944 .loc 1 1377 9 is_stmt 0 discriminator 2 view .LVU928 2945 0016 0068 ldr r0, [r0] 2946 .LVL300: 1377:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __HAL_UNLOCK(hpcd); 2947 .loc 1 1377 9 discriminator 2 view .LVU929 2948 0018 FFF7FEFF bl USB_SetDevAddress 2949 .LVL301: 1378:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2950 .loc 1 1378 3 is_stmt 1 discriminator 2 view .LVU930 1378:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2951 .loc 1 1378 3 discriminator 2 view .LVU931 2952 001c 0020 movs r0, #0 2953 001e 84F8A802 strb r0, [r4, #680] 1378:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2954 .loc 1 1378 3 discriminator 2 view .LVU932 1380:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 2955 .loc 1 1380 3 discriminator 2 view .LVU933 1381:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /** 2956 .loc 1 1381 1 is_stmt 0 discriminator 2 view .LVU934 2957 0022 10BD pop {r4, pc} 2958 .LVL302: 2959 .L155: 2960 .LCFI18: 2961 .cfi_def_cfa_offset 0 2962 .cfi_restore 4 2963 .cfi_restore 14 1375:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->USB_Address = address; 2964 .loc 1 1375 3 view .LVU935 2965 0024 0220 movs r0, #2 2966 .LVL303: 1381:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /** 2967 .loc 1 1381 1 view .LVU936 2968 0026 7047 bx lr ARM GAS /tmp/ccJPteqL.s page 105 2969 .cfi_endproc 2970 .LFE349: 2972 .section .text.HAL_PCD_IRQHandler,"ax",%progbits 2973 .align 1 2974 .global HAL_PCD_IRQHandler 2975 .syntax unified 2976 .thumb 2977 .thumb_func 2979 HAL_PCD_IRQHandler: 2980 .LVL304: 2981 .LFB335: 1009:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** uint32_t wIstr = USB_ReadInterrupts(hpcd->Instance); 2982 .loc 1 1009 1 is_stmt 1 view -0 2983 .cfi_startproc 2984 @ args = 0, pretend = 0, frame = 0 2985 @ frame_needed = 0, uses_anonymous_args = 0 1009:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** uint32_t wIstr = USB_ReadInterrupts(hpcd->Instance); 2986 .loc 1 1009 1 is_stmt 0 view .LVU938 2987 0000 10B5 push {r4, lr} 2988 .LCFI19: 2989 .cfi_def_cfa_offset 8 2990 .cfi_offset 4, -8 2991 .cfi_offset 14, -4 2992 0002 0446 mov r4, r0 1010:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2993 .loc 1 1010 3 is_stmt 1 view .LVU939 1010:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2994 .loc 1 1010 20 is_stmt 0 view .LVU940 2995 0004 0068 ldr r0, [r0] 2996 .LVL305: 1010:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 2997 .loc 1 1010 20 view .LVU941 2998 0006 FFF7FEFF bl USB_ReadInterrupts 2999 .LVL306: 1012:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 3000 .loc 1 1012 3 is_stmt 1 view .LVU942 1012:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 3001 .loc 1 1012 6 is_stmt 0 view .LVU943 3002 000a 10F4004F tst r0, #32768 3003 000e 23D1 bne .L174 1021:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 3004 .loc 1 1021 3 is_stmt 1 view .LVU944 1021:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 3005 .loc 1 1021 6 is_stmt 0 view .LVU945 3006 0010 10F4806F tst r0, #1024 3007 0014 24D1 bne .L175 1036:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 3008 .loc 1 1036 3 is_stmt 1 view .LVU946 1036:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 3009 .loc 1 1036 6 is_stmt 0 view .LVU947 3010 0016 10F4804F tst r0, #16384 3011 001a 32D1 bne .L176 1043:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 3012 .loc 1 1043 3 is_stmt 1 view .LVU948 1043:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 3013 .loc 1 1043 6 is_stmt 0 view .LVU949 3014 001c 10F4005F tst r0, #8192 ARM GAS /tmp/ccJPteqL.s page 106 3015 0020 39D1 bne .L177 1050:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 3016 .loc 1 1050 3 is_stmt 1 view .LVU950 1050:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 3017 .loc 1 1050 6 is_stmt 0 view .LVU951 3018 0022 10F4805F tst r0, #4096 3019 0026 40D1 bne .L178 1076:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 3020 .loc 1 1076 3 is_stmt 1 view .LVU952 1076:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 3021 .loc 1 1076 6 is_stmt 0 view .LVU953 3022 0028 10F4006F tst r0, #2048 3023 002c 67D1 bne .L179 1096:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 3024 .loc 1 1096 3 is_stmt 1 view .LVU954 1096:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 3025 .loc 1 1096 6 is_stmt 0 view .LVU955 3026 002e 10F0800F tst r0, #128 3027 0032 40F08180 bne .L180 1125:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 3028 .loc 1 1125 3 is_stmt 1 view .LVU956 1125:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 3029 .loc 1 1125 6 is_stmt 0 view .LVU957 3030 0036 10F4007F tst r0, #512 3031 003a 40F0AD80 bne .L181 1138:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 3032 .loc 1 1138 3 is_stmt 1 view .LVU958 1138:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 3033 .loc 1 1138 6 is_stmt 0 view .LVU959 3034 003e 10F4807F tst r0, #256 3035 0042 27D0 beq .L160 1141:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 3036 .loc 1 1141 5 is_stmt 1 view .LVU960 3037 0044 2268 ldr r2, [r4] 3038 0046 B2F84430 ldrh r3, [r2, #68] 3039 004a 9BB2 uxth r3, r3 3040 004c 23F48073 bic r3, r3, #256 3041 0050 9BB2 uxth r3, r3 3042 0052 A2F84430 strh r3, [r2, #68] @ movhi 1143:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 3043 .loc 1 1143 5 view .LVU961 3044 0056 1DE0 b .L160 3045 .L174: 1016:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 3046 .loc 1 1016 5 view .LVU962 1016:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 3047 .loc 1 1016 11 is_stmt 0 view .LVU963 3048 0058 2046 mov r0, r4 3049 .LVL307: 1016:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 3050 .loc 1 1016 11 view .LVU964 3051 005a FFF7FEFF bl PCD_EP_ISR_Handler 3052 .LVL308: 1018:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 3053 .loc 1 1018 5 is_stmt 1 view .LVU965 3054 005e 19E0 b .L160 3055 .LVL309: ARM GAS /tmp/ccJPteqL.s page 107 3056 .L175: 1023:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 3057 .loc 1 1023 5 view .LVU966 3058 0060 2268 ldr r2, [r4] 3059 0062 B2F84430 ldrh r3, [r2, #68] 3060 0066 9BB2 uxth r3, r3 3061 0068 23F48063 bic r3, r3, #1024 3062 006c 9BB2 uxth r3, r3 3063 006e A2F84430 strh r3, [r2, #68] @ movhi 1028:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** #endif /* USE_HAL_PCD_REGISTER_CALLBACKS */ 3064 .loc 1 1028 5 view .LVU967 3065 0072 2046 mov r0, r4 3066 .LVL310: 1028:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** #endif /* USE_HAL_PCD_REGISTER_CALLBACKS */ 3067 .loc 1 1028 5 is_stmt 0 view .LVU968 3068 0074 FFF7FEFF bl HAL_PCD_ResetCallback 3069 .LVL311: 1031:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 3070 .loc 1 1031 5 is_stmt 1 view .LVU969 1031:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 3071 .loc 1 1031 11 is_stmt 0 view .LVU970 3072 0078 0021 movs r1, #0 3073 007a 2046 mov r0, r4 3074 007c FFF7FEFF bl HAL_PCD_SetAddress 3075 .LVL312: 1033:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 3076 .loc 1 1033 5 is_stmt 1 view .LVU971 3077 0080 08E0 b .L160 3078 .LVL313: 3079 .L176: 1038:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 3080 .loc 1 1038 5 view .LVU972 3081 0082 2268 ldr r2, [r4] 3082 0084 B2F84430 ldrh r3, [r2, #68] 3083 0088 9BB2 uxth r3, r3 3084 008a 23F48043 bic r3, r3, #16384 3085 008e 9BB2 uxth r3, r3 3086 0090 A2F84430 strh r3, [r2, #68] @ movhi 1040:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 3087 .loc 1 1040 5 view .LVU973 3088 .LVL314: 3089 .L160: 1145:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 3090 .loc 1 1145 1 is_stmt 0 view .LVU974 3091 0094 10BD pop {r4, pc} 3092 .LVL315: 3093 .L177: 1045:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 3094 .loc 1 1045 5 is_stmt 1 view .LVU975 3095 0096 2268 ldr r2, [r4] 3096 0098 B2F84430 ldrh r3, [r2, #68] 3097 009c 9BB2 uxth r3, r3 3098 009e 23F40053 bic r3, r3, #8192 3099 00a2 9BB2 uxth r3, r3 3100 00a4 A2F84430 strh r3, [r2, #68] @ movhi 1047:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 3101 .loc 1 1047 5 view .LVU976 ARM GAS /tmp/ccJPteqL.s page 108 3102 00a8 F4E7 b .L160 3103 .L178: 1052:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->Instance->CNTR &= (uint16_t) ~(USB_CNTR_FSUSP); 3104 .loc 1 1052 5 view .LVU977 1052:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->Instance->CNTR &= (uint16_t) ~(USB_CNTR_FSUSP); 3105 .loc 1 1052 9 is_stmt 0 view .LVU978 3106 00aa 2268 ldr r2, [r4] 1052:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->Instance->CNTR &= (uint16_t) ~(USB_CNTR_FSUSP); 3107 .loc 1 1052 19 view .LVU979 3108 00ac B2F84030 ldrh r3, [r2, #64] 3109 00b0 9BB2 uxth r3, r3 1052:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->Instance->CNTR &= (uint16_t) ~(USB_CNTR_FSUSP); 3110 .loc 1 1052 26 view .LVU980 3111 00b2 23F00403 bic r3, r3, #4 3112 00b6 9BB2 uxth r3, r3 3113 00b8 A2F84030 strh r3, [r2, #64] @ movhi 1053:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 3114 .loc 1 1053 5 is_stmt 1 view .LVU981 1053:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 3115 .loc 1 1053 9 is_stmt 0 view .LVU982 3116 00bc 2268 ldr r2, [r4] 1053:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 3117 .loc 1 1053 19 view .LVU983 3118 00be B2F84030 ldrh r3, [r2, #64] 3119 00c2 9BB2 uxth r3, r3 1053:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 3120 .loc 1 1053 26 view .LVU984 3121 00c4 23F00803 bic r3, r3, #8 3122 00c8 9BB2 uxth r3, r3 3123 00ca A2F84030 strh r3, [r2, #64] @ movhi 1055:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 3124 .loc 1 1055 5 is_stmt 1 view .LVU985 1055:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 3125 .loc 1 1055 13 is_stmt 0 view .LVU986 3126 00ce 94F8E032 ldrb r3, [r4, #736] @ zero_extendqisi2 1055:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 3127 .loc 1 1055 8 view .LVU987 3128 00d2 012B cmp r3, #1 3129 00d4 0CD0 beq .L182 3130 .LVL316: 3131 .L167: 1068:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** #endif /* USE_HAL_PCD_REGISTER_CALLBACKS */ 3132 .loc 1 1068 5 is_stmt 1 view .LVU988 3133 00d6 2046 mov r0, r4 3134 00d8 FFF7FEFF bl HAL_PCD_ResumeCallback 3135 .LVL317: 1071:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 3136 .loc 1 1071 5 view .LVU989 3137 00dc 2268 ldr r2, [r4] 3138 00de B2F84430 ldrh r3, [r2, #68] 3139 00e2 9BB2 uxth r3, r3 3140 00e4 23F48053 bic r3, r3, #4096 3141 00e8 9BB2 uxth r3, r3 3142 00ea A2F84430 strh r3, [r2, #68] @ movhi 1073:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 3143 .loc 1 1073 5 view .LVU990 3144 00ee D1E7 b .L160 ARM GAS /tmp/ccJPteqL.s page 109 3145 .LVL318: 3146 .L182: 1057:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** #if (USE_HAL_PCD_REGISTER_CALLBACKS == 1U) 3147 .loc 1 1057 7 view .LVU991 1057:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** #if (USE_HAL_PCD_REGISTER_CALLBACKS == 1U) 3148 .loc 1 1057 23 is_stmt 0 view .LVU992 3149 00f0 0021 movs r1, #0 3150 00f2 84F8E012 strb r1, [r4, #736] 1061:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** #endif /* USE_HAL_PCD_REGISTER_CALLBACKS */ 3151 .loc 1 1061 7 is_stmt 1 view .LVU993 3152 00f6 2046 mov r0, r4 3153 .LVL319: 1061:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** #endif /* USE_HAL_PCD_REGISTER_CALLBACKS */ 3154 .loc 1 1061 7 is_stmt 0 view .LVU994 3155 00f8 FFF7FEFF bl HAL_PCDEx_LPM_Callback 3156 .LVL320: 3157 00fc EBE7 b .L167 3158 .LVL321: 3159 .L179: 1079:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 3160 .loc 1 1079 5 is_stmt 1 view .LVU995 1079:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 3161 .loc 1 1079 9 is_stmt 0 view .LVU996 3162 00fe 2268 ldr r2, [r4] 1079:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 3163 .loc 1 1079 19 view .LVU997 3164 0100 B2F84030 ldrh r3, [r2, #64] 3165 0104 9BB2 uxth r3, r3 1079:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 3166 .loc 1 1079 26 view .LVU998 3167 0106 43F00803 orr r3, r3, #8 3168 010a A2F84030 strh r3, [r2, #64] @ movhi 1082:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 3169 .loc 1 1082 5 is_stmt 1 view .LVU999 3170 010e 2268 ldr r2, [r4] 3171 0110 B2F84430 ldrh r3, [r2, #68] 3172 0114 9BB2 uxth r3, r3 3173 0116 23F40063 bic r3, r3, #2048 3174 011a 9BB2 uxth r3, r3 3175 011c A2F84430 strh r3, [r2, #68] @ movhi 1084:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 3176 .loc 1 1084 5 view .LVU1000 1084:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 3177 .loc 1 1084 9 is_stmt 0 view .LVU1001 3178 0120 2268 ldr r2, [r4] 1084:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 3179 .loc 1 1084 19 view .LVU1002 3180 0122 B2F84030 ldrh r3, [r2, #64] 3181 0126 9BB2 uxth r3, r3 1084:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 3182 .loc 1 1084 26 view .LVU1003 3183 0128 43F00403 orr r3, r3, #4 3184 012c A2F84030 strh r3, [r2, #64] @ movhi 1089:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** #endif /* USE_HAL_PCD_REGISTER_CALLBACKS */ 3185 .loc 1 1089 5 is_stmt 1 view .LVU1004 3186 0130 2046 mov r0, r4 3187 .LVL322: ARM GAS /tmp/ccJPteqL.s page 110 1089:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** #endif /* USE_HAL_PCD_REGISTER_CALLBACKS */ 3188 .loc 1 1089 5 is_stmt 0 view .LVU1005 3189 0132 FFF7FEFF bl HAL_PCD_SuspendCallback 3190 .LVL323: 1092:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 3191 .loc 1 1092 5 is_stmt 1 view .LVU1006 3192 0136 ADE7 b .L160 3193 .LVL324: 3194 .L180: 1098:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** if (hpcd->LPM_State == LPM_L0) 3195 .loc 1 1098 5 view .LVU1007 3196 0138 2268 ldr r2, [r4] 3197 013a B2F84430 ldrh r3, [r2, #68] 3198 013e 9BB2 uxth r3, r3 3199 0140 23F08003 bic r3, r3, #128 3200 0144 9BB2 uxth r3, r3 3201 0146 A2F84430 strh r3, [r2, #68] @ movhi 1099:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 3202 .loc 1 1099 5 view .LVU1008 1099:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 3203 .loc 1 1099 13 is_stmt 0 view .LVU1009 3204 014a 94F8E032 ldrb r3, [r4, #736] @ zero_extendqisi2 1099:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 3205 .loc 1 1099 8 view .LVU1010 3206 014e FBB9 cbnz r3, .L170 1102:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->Instance->CNTR |= (uint16_t)USB_CNTR_FSUSP; 3207 .loc 1 1102 7 is_stmt 1 view .LVU1011 1102:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->Instance->CNTR |= (uint16_t)USB_CNTR_FSUSP; 3208 .loc 1 1102 11 is_stmt 0 view .LVU1012 3209 0150 2268 ldr r2, [r4] 1102:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->Instance->CNTR |= (uint16_t)USB_CNTR_FSUSP; 3210 .loc 1 1102 21 view .LVU1013 3211 0152 B2F84030 ldrh r3, [r2, #64] 3212 0156 9BB2 uxth r3, r3 1102:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->Instance->CNTR |= (uint16_t)USB_CNTR_FSUSP; 3213 .loc 1 1102 28 view .LVU1014 3214 0158 43F00403 orr r3, r3, #4 3215 015c A2F84030 strh r3, [r2, #64] @ movhi 1103:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 3216 .loc 1 1103 7 is_stmt 1 view .LVU1015 1103:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 3217 .loc 1 1103 11 is_stmt 0 view .LVU1016 3218 0160 2268 ldr r2, [r4] 1103:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 3219 .loc 1 1103 21 view .LVU1017 3220 0162 B2F84030 ldrh r3, [r2, #64] 3221 0166 9BB2 uxth r3, r3 1103:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 3222 .loc 1 1103 28 view .LVU1018 3223 0168 43F00803 orr r3, r3, #8 3224 016c A2F84030 strh r3, [r2, #64] @ movhi 1105:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->BESL = ((uint32_t)hpcd->Instance->LPMCSR & USB_LPMCSR_BESL) >> 2; 3225 .loc 1 1105 7 is_stmt 1 view .LVU1019 1105:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** hpcd->BESL = ((uint32_t)hpcd->Instance->LPMCSR & USB_LPMCSR_BESL) >> 2; 3226 .loc 1 1105 23 is_stmt 0 view .LVU1020 3227 0170 0121 movs r1, #1 3228 0172 84F8E012 strb r1, [r4, #736] ARM GAS /tmp/ccJPteqL.s page 111 1106:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** #if (USE_HAL_PCD_REGISTER_CALLBACKS == 1U) 3229 .loc 1 1106 7 is_stmt 1 view .LVU1021 1106:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** #if (USE_HAL_PCD_REGISTER_CALLBACKS == 1U) 3230 .loc 1 1106 35 is_stmt 0 view .LVU1022 3231 0176 2368 ldr r3, [r4] 1106:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** #if (USE_HAL_PCD_REGISTER_CALLBACKS == 1U) 3232 .loc 1 1106 45 view .LVU1023 3233 0178 B3F85430 ldrh r3, [r3, #84] 1106:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** #if (USE_HAL_PCD_REGISTER_CALLBACKS == 1U) 3234 .loc 1 1106 73 view .LVU1024 3235 017c C3F38D03 ubfx r3, r3, #2, #14 3236 0180 03F03C03 and r3, r3, #60 1106:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** #if (USE_HAL_PCD_REGISTER_CALLBACKS == 1U) 3237 .loc 1 1106 18 view .LVU1025 3238 0184 C4F8E432 str r3, [r4, #740] 1110:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** #endif /* USE_HAL_PCD_REGISTER_CALLBACKS */ 3239 .loc 1 1110 7 is_stmt 1 view .LVU1026 3240 0188 2046 mov r0, r4 3241 .LVL325: 1110:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** #endif /* USE_HAL_PCD_REGISTER_CALLBACKS */ 3242 .loc 1 1110 7 is_stmt 0 view .LVU1027 3243 018a FFF7FEFF bl HAL_PCDEx_LPM_Callback 3244 .LVL326: 3245 018e 81E7 b .L160 3246 .LVL327: 3247 .L170: 1118:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** #endif /* USE_HAL_PCD_REGISTER_CALLBACKS */ 3248 .loc 1 1118 7 is_stmt 1 view .LVU1028 3249 0190 2046 mov r0, r4 3250 .LVL328: 1118:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** #endif /* USE_HAL_PCD_REGISTER_CALLBACKS */ 3251 .loc 1 1118 7 is_stmt 0 view .LVU1029 3252 0192 FFF7FEFF bl HAL_PCD_SuspendCallback 3253 .LVL329: 1122:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 3254 .loc 1 1122 5 is_stmt 1 view .LVU1030 3255 0196 7DE7 b .L160 3256 .LVL330: 3257 .L181: 1127:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 3258 .loc 1 1127 5 view .LVU1031 3259 0198 2268 ldr r2, [r4] 3260 019a B2F84430 ldrh r3, [r2, #68] 3261 019e 9BB2 uxth r3, r3 3262 01a0 23F40073 bic r3, r3, #512 3263 01a4 9BB2 uxth r3, r3 3264 01a6 A2F84430 strh r3, [r2, #68] @ movhi 1132:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** #endif /* USE_HAL_PCD_REGISTER_CALLBACKS */ 3265 .loc 1 1132 5 view .LVU1032 3266 01aa 2046 mov r0, r4 3267 .LVL331: 1132:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** #endif /* USE_HAL_PCD_REGISTER_CALLBACKS */ 3268 .loc 1 1132 5 is_stmt 0 view .LVU1033 3269 01ac FFF7FEFF bl HAL_PCD_SOFCallback 3270 .LVL332: 1135:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 3271 .loc 1 1135 5 is_stmt 1 view .LVU1034 ARM GAS /tmp/ccJPteqL.s page 112 3272 01b0 70E7 b .L160 3273 .cfi_endproc 3274 .LFE335: 3276 .section .text.HAL_PCD_EP_Open,"ax",%progbits 3277 .align 1 3278 .global HAL_PCD_EP_Open 3279 .syntax unified 3280 .thumb 3281 .thumb_func 3283 HAL_PCD_EP_Open: 3284 .LVL333: 3285 .LFB350: 1392:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** HAL_StatusTypeDef ret = HAL_OK; 3286 .loc 1 1392 1 view -0 3287 .cfi_startproc 3288 @ args = 0, pretend = 0, frame = 0 3289 @ frame_needed = 0, uses_anonymous_args = 0 1392:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** HAL_StatusTypeDef ret = HAL_OK; 3290 .loc 1 1392 1 is_stmt 0 view .LVU1036 3291 0000 10B5 push {r4, lr} 3292 .LCFI20: 3293 .cfi_def_cfa_offset 8 3294 .cfi_offset 4, -8 3295 .cfi_offset 14, -4 3296 0002 0446 mov r4, r0 3297 0004 8C46 mov ip, r1 1393:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_EPTypeDef *ep; 3298 .loc 1 1393 3 is_stmt 1 view .LVU1037 3299 .LVL334: 1394:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 3300 .loc 1 1394 3 view .LVU1038 1396:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 3301 .loc 1 1396 3 view .LVU1039 1396:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 3302 .loc 1 1396 6 is_stmt 0 view .LVU1040 3303 0006 11F0800F tst r1, #128 3304 000a 2AD1 bne .L191 1403:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->is_in = 0U; 3305 .loc 1 1403 5 is_stmt 1 view .LVU1041 1403:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->is_in = 0U; 3306 .loc 1 1403 32 is_stmt 0 view .LVU1042 3307 000c 01F00700 and r0, r1, #7 3308 .LVL335: 1403:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->is_in = 0U; 3309 .loc 1 1403 8 view .LVU1043 3310 0010 00EB8001 add r1, r0, r0, lsl #2 3311 .LVL336: 1403:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->is_in = 0U; 3312 .loc 1 1403 8 view .LVU1044 3313 0014 C900 lsls r1, r1, #3 3314 0016 01F5B47E add lr, r1, #360 3315 001a 04EB0E01 add r1, r4, lr 3316 .LVL337: 1404:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 3317 .loc 1 1404 5 is_stmt 1 view .LVU1045 1404:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 3318 .loc 1 1404 15 is_stmt 0 view .LVU1046 ARM GAS /tmp/ccJPteqL.s page 113 3319 001e 00EB8000 add r0, r0, r0, lsl #2 3320 0022 04EBC000 add r0, r4, r0, lsl #3 3321 0026 4FF0000E mov lr, #0 3322 002a 80F869E1 strb lr, [r0, #361] 3323 .L185: 1407:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->maxpacket = ep_mps; 3324 .loc 1 1407 3 is_stmt 1 view .LVU1047 1407:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->maxpacket = ep_mps; 3325 .loc 1 1407 21 is_stmt 0 view .LVU1048 3326 002e 0CF0070C and ip, ip, #7 1407:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->maxpacket = ep_mps; 3327 .loc 1 1407 11 view .LVU1049 3328 0032 81F800C0 strb ip, [r1] 1408:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->type = ep_type; 3329 .loc 1 1408 3 is_stmt 1 view .LVU1050 1408:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->type = ep_type; 3330 .loc 1 1408 17 is_stmt 0 view .LVU1051 3331 0036 0A61 str r2, [r1, #16] 1409:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 3332 .loc 1 1409 3 is_stmt 1 view .LVU1052 1409:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 3333 .loc 1 1409 12 is_stmt 0 view .LVU1053 3334 0038 CB70 strb r3, [r1, #3] 1411:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 3335 .loc 1 1411 3 is_stmt 1 view .LVU1054 1411:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 3336 .loc 1 1411 9 is_stmt 0 view .LVU1055 3337 003a 4A78 ldrb r2, [r1, #1] @ zero_extendqisi2 3338 .LVL338: 1411:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 3339 .loc 1 1411 6 view .LVU1056 3340 003c 0AB1 cbz r2, .L186 1414:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 3341 .loc 1 1414 5 is_stmt 1 view .LVU1057 1414:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 3342 .loc 1 1414 21 is_stmt 0 view .LVU1058 3343 003e A1F80EC0 strh ip, [r1, #14] @ movhi 3344 .L186: 1417:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 3345 .loc 1 1417 3 is_stmt 1 view .LVU1059 1417:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 3346 .loc 1 1417 6 is_stmt 0 view .LVU1060 3347 0042 022B cmp r3, #2 3348 0044 19D0 beq .L192 3349 .LVL339: 3350 .L187: 1422:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** (void)USB_ActivateEndpoint(hpcd->Instance, ep); 3351 .loc 1 1422 3 is_stmt 1 view .LVU1061 1422:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** (void)USB_ActivateEndpoint(hpcd->Instance, ep); 3352 .loc 1 1422 3 view .LVU1062 3353 0046 94F8A832 ldrb r3, [r4, #680] @ zero_extendqisi2 3354 004a 012B cmp r3, #1 3355 004c 18D0 beq .L189 1422:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** (void)USB_ActivateEndpoint(hpcd->Instance, ep); 3356 .loc 1 1422 3 discriminator 2 view .LVU1063 3357 004e 0123 movs r3, #1 3358 0050 84F8A832 strb r3, [r4, #680] ARM GAS /tmp/ccJPteqL.s page 114 3359 .LVL340: 1422:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** (void)USB_ActivateEndpoint(hpcd->Instance, ep); 3360 .loc 1 1422 3 discriminator 2 view .LVU1064 1423:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __HAL_UNLOCK(hpcd); 3361 .loc 1 1423 3 discriminator 2 view .LVU1065 1423:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __HAL_UNLOCK(hpcd); 3362 .loc 1 1423 9 is_stmt 0 discriminator 2 view .LVU1066 3363 0054 2068 ldr r0, [r4] 3364 0056 FFF7FEFF bl USB_ActivateEndpoint 3365 .LVL341: 1424:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 3366 .loc 1 1424 3 is_stmt 1 discriminator 2 view .LVU1067 1424:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 3367 .loc 1 1424 3 discriminator 2 view .LVU1068 3368 005a 0020 movs r0, #0 3369 005c 84F8A802 strb r0, [r4, #680] 1424:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 3370 .loc 1 1424 3 discriminator 2 view .LVU1069 1426:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 3371 .loc 1 1426 3 discriminator 2 view .LVU1070 3372 .L188: 1427:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 3373 .loc 1 1427 1 is_stmt 0 view .LVU1071 3374 0060 10BD pop {r4, pc} 3375 .LVL342: 3376 .L191: 1398:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->is_in = 1U; 3377 .loc 1 1398 5 is_stmt 1 view .LVU1072 1398:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->is_in = 1U; 3378 .loc 1 1398 31 is_stmt 0 view .LVU1073 3379 0062 01F00700 and r0, r1, #7 3380 .LVL343: 1398:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->is_in = 1U; 3381 .loc 1 1398 8 view .LVU1074 3382 0066 0130 adds r0, r0, #1 3383 0068 00EB8001 add r1, r0, r0, lsl #2 3384 .LVL344: 1398:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->is_in = 1U; 3385 .loc 1 1398 8 view .LVU1075 3386 006c 04EBC101 add r1, r4, r1, lsl #3 3387 .LVL345: 1399:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 3388 .loc 1 1399 5 is_stmt 1 view .LVU1076 1399:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 3389 .loc 1 1399 15 is_stmt 0 view .LVU1077 3390 0070 4FF0010E mov lr, #1 3391 0074 81F801E0 strb lr, [r1, #1] 3392 0078 D9E7 b .L185 3393 .LVL346: 3394 .L192: 1419:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 3395 .loc 1 1419 5 is_stmt 1 view .LVU1078 1419:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 3396 .loc 1 1419 24 is_stmt 0 view .LVU1079 3397 007a 0023 movs r3, #0 3398 .LVL347: 1419:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } ARM GAS /tmp/ccJPteqL.s page 115 3399 .loc 1 1419 24 view .LVU1080 3400 007c 0B71 strb r3, [r1, #4] 3401 007e E2E7 b .L187 3402 .L189: 1422:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** (void)USB_ActivateEndpoint(hpcd->Instance, ep); 3403 .loc 1 1422 3 view .LVU1081 3404 0080 0220 movs r0, #2 3405 0082 EDE7 b .L188 3406 .cfi_endproc 3407 .LFE350: 3409 .section .text.HAL_PCD_EP_Close,"ax",%progbits 3410 .align 1 3411 .global HAL_PCD_EP_Close 3412 .syntax unified 3413 .thumb 3414 .thumb_func 3416 HAL_PCD_EP_Close: 3417 .LVL348: 3418 .LFB351: 1436:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_EPTypeDef *ep; 3419 .loc 1 1436 1 is_stmt 1 view -0 3420 .cfi_startproc 3421 @ args = 0, pretend = 0, frame = 0 3422 @ frame_needed = 0, uses_anonymous_args = 0 1436:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_EPTypeDef *ep; 3423 .loc 1 1436 1 is_stmt 0 view .LVU1083 3424 0000 10B5 push {r4, lr} 3425 .LCFI21: 3426 .cfi_def_cfa_offset 8 3427 .cfi_offset 4, -8 3428 .cfi_offset 14, -4 3429 0002 0446 mov r4, r0 3430 0004 0B46 mov r3, r1 1437:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 3431 .loc 1 1437 3 is_stmt 1 view .LVU1084 1439:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 3432 .loc 1 1439 3 view .LVU1085 1439:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 3433 .loc 1 1439 6 is_stmt 0 view .LVU1086 3434 0006 11F0800F tst r1, #128 3435 000a 1FD1 bne .L199 1446:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->is_in = 0U; 3436 .loc 1 1446 5 is_stmt 1 view .LVU1087 1446:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->is_in = 0U; 3437 .loc 1 1446 32 is_stmt 0 view .LVU1088 3438 000c 01F00702 and r2, r1, #7 1446:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->is_in = 0U; 3439 .loc 1 1446 8 view .LVU1089 3440 0010 02EB8201 add r1, r2, r2, lsl #2 3441 .LVL349: 1446:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->is_in = 0U; 3442 .loc 1 1446 8 view .LVU1090 3443 0014 C900 lsls r1, r1, #3 3444 0016 01F5B471 add r1, r1, #360 3445 001a 0144 add r1, r1, r0 3446 .LVL350: 1447:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } ARM GAS /tmp/ccJPteqL.s page 116 3447 .loc 1 1447 5 is_stmt 1 view .LVU1091 1447:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 3448 .loc 1 1447 15 is_stmt 0 view .LVU1092 3449 001c 02EB8202 add r2, r2, r2, lsl #2 3450 0020 00EBC202 add r2, r0, r2, lsl #3 3451 0024 0020 movs r0, #0 3452 .LVL351: 1447:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 3453 .loc 1 1447 15 view .LVU1093 3454 0026 82F86901 strb r0, [r2, #361] 3455 .L195: 1449:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 3456 .loc 1 1449 3 is_stmt 1 view .LVU1094 1449:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 3457 .loc 1 1449 23 is_stmt 0 view .LVU1095 3458 002a 03F00703 and r3, r3, #7 1449:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 3459 .loc 1 1449 13 view .LVU1096 3460 002e 0B70 strb r3, [r1] 1451:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** (void)USB_DeactivateEndpoint(hpcd->Instance, ep); 3461 .loc 1 1451 3 is_stmt 1 view .LVU1097 1451:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** (void)USB_DeactivateEndpoint(hpcd->Instance, ep); 3462 .loc 1 1451 3 view .LVU1098 3463 0030 94F8A832 ldrb r3, [r4, #680] @ zero_extendqisi2 3464 0034 012B cmp r3, #1 3465 0036 13D0 beq .L197 1451:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** (void)USB_DeactivateEndpoint(hpcd->Instance, ep); 3466 .loc 1 1451 3 discriminator 2 view .LVU1099 3467 0038 0123 movs r3, #1 3468 003a 84F8A832 strb r3, [r4, #680] 1451:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** (void)USB_DeactivateEndpoint(hpcd->Instance, ep); 3469 .loc 1 1451 3 discriminator 2 view .LVU1100 1452:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __HAL_UNLOCK(hpcd); 3470 .loc 1 1452 3 discriminator 2 view .LVU1101 1452:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __HAL_UNLOCK(hpcd); 3471 .loc 1 1452 9 is_stmt 0 discriminator 2 view .LVU1102 3472 003e 2068 ldr r0, [r4] 3473 0040 FFF7FEFF bl USB_DeactivateEndpoint 3474 .LVL352: 1453:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** return HAL_OK; 3475 .loc 1 1453 3 is_stmt 1 discriminator 2 view .LVU1103 1453:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** return HAL_OK; 3476 .loc 1 1453 3 discriminator 2 view .LVU1104 3477 0044 0020 movs r0, #0 3478 0046 84F8A802 strb r0, [r4, #680] 1453:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** return HAL_OK; 3479 .loc 1 1453 3 discriminator 2 view .LVU1105 1454:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 3480 .loc 1 1454 3 discriminator 2 view .LVU1106 3481 .L196: 1455:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 3482 .loc 1 1455 1 is_stmt 0 view .LVU1107 3483 004a 10BD pop {r4, pc} 3484 .LVL353: 3485 .L199: 1441:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->is_in = 1U; 3486 .loc 1 1441 5 is_stmt 1 view .LVU1108 ARM GAS /tmp/ccJPteqL.s page 117 1441:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->is_in = 1U; 3487 .loc 1 1441 31 is_stmt 0 view .LVU1109 3488 004c 01F00702 and r2, r1, #7 1441:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->is_in = 1U; 3489 .loc 1 1441 8 view .LVU1110 3490 0050 0132 adds r2, r2, #1 3491 0052 02EB8201 add r1, r2, r2, lsl #2 3492 .LVL354: 1441:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->is_in = 1U; 3493 .loc 1 1441 8 view .LVU1111 3494 0056 00EBC101 add r1, r0, r1, lsl #3 3495 .LVL355: 1442:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 3496 .loc 1 1442 5 is_stmt 1 view .LVU1112 1442:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 3497 .loc 1 1442 15 is_stmt 0 view .LVU1113 3498 005a 0120 movs r0, #1 3499 .LVL356: 1442:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 3500 .loc 1 1442 15 view .LVU1114 3501 005c 4870 strb r0, [r1, #1] 3502 005e E4E7 b .L195 3503 .L197: 1451:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** (void)USB_DeactivateEndpoint(hpcd->Instance, ep); 3504 .loc 1 1451 3 view .LVU1115 3505 0060 0220 movs r0, #2 3506 0062 F2E7 b .L196 3507 .cfi_endproc 3508 .LFE351: 3510 .section .text.HAL_PCD_EP_Receive,"ax",%progbits 3511 .align 1 3512 .global HAL_PCD_EP_Receive 3513 .syntax unified 3514 .thumb 3515 .thumb_func 3517 HAL_PCD_EP_Receive: 3518 .LVL357: 3519 .LFB352: 1467:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_EPTypeDef *ep; 3520 .loc 1 1467 1 is_stmt 1 view -0 3521 .cfi_startproc 3522 @ args = 0, pretend = 0, frame = 0 3523 @ frame_needed = 0, uses_anonymous_args = 0 1467:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_EPTypeDef *ep; 3524 .loc 1 1467 1 is_stmt 0 view .LVU1117 3525 0000 10B5 push {r4, lr} 3526 .LCFI22: 3527 .cfi_def_cfa_offset 8 3528 .cfi_offset 4, -8 3529 .cfi_offset 14, -4 1468:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 3530 .loc 1 1468 3 is_stmt 1 view .LVU1118 1470:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 3531 .loc 1 1470 3 view .LVU1119 3532 0002 01F00704 and r4, r1, #7 1470:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 3533 .loc 1 1470 6 is_stmt 0 view .LVU1120 ARM GAS /tmp/ccJPteqL.s page 118 3534 0006 04EB8401 add r1, r4, r4, lsl #2 3535 .LVL358: 1470:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 3536 .loc 1 1470 6 view .LVU1121 3537 000a C900 lsls r1, r1, #3 3538 000c 01F5B471 add r1, r1, #360 3539 0010 0144 add r1, r1, r0 3540 .LVL359: 1473:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->xfer_len = len; 3541 .loc 1 1473 3 is_stmt 1 view .LVU1122 1473:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->xfer_len = len; 3542 .loc 1 1473 17 is_stmt 0 view .LVU1123 3543 0012 04EB840C add ip, r4, r4, lsl #2 3544 0016 00EBCC0C add ip, r0, ip, lsl #3 3545 001a CCF87C21 str r2, [ip, #380] 1474:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->xfer_count = 0U; 3546 .loc 1 1474 3 is_stmt 1 view .LVU1124 1474:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->xfer_count = 0U; 3547 .loc 1 1474 16 is_stmt 0 view .LVU1125 3548 001e CCF88031 str r3, [ip, #384] 1475:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->is_in = 0U; 3549 .loc 1 1475 3 is_stmt 1 view .LVU1126 1475:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->is_in = 0U; 3550 .loc 1 1475 18 is_stmt 0 view .LVU1127 3551 0022 0023 movs r3, #0 3552 .LVL360: 1475:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->is_in = 0U; 3553 .loc 1 1475 18 view .LVU1128 3554 0024 CCF88431 str r3, [ip, #388] 1476:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->num = ep_addr & EP_ADDR_MSK; 3555 .loc 1 1476 3 is_stmt 1 view .LVU1129 1476:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->num = ep_addr & EP_ADDR_MSK; 3556 .loc 1 1476 13 is_stmt 0 view .LVU1130 3557 0028 8CF86931 strb r3, [ip, #361] 1477:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 3558 .loc 1 1477 3 is_stmt 1 view .LVU1131 1477:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 3559 .loc 1 1477 11 is_stmt 0 view .LVU1132 3560 002c 8CF86841 strb r4, [ip, #360] 1479:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 3561 .loc 1 1479 3 is_stmt 1 view .LVU1133 1479:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 3562 .loc 1 1479 6 is_stmt 0 view .LVU1134 3563 0030 24B9 cbnz r4, .L201 1481:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 3564 .loc 1 1481 5 is_stmt 1 view .LVU1135 1481:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 3565 .loc 1 1481 11 is_stmt 0 view .LVU1136 3566 0032 0068 ldr r0, [r0] 3567 .LVL361: 1481:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 3568 .loc 1 1481 11 view .LVU1137 3569 0034 FFF7FEFF bl USB_EPStartXfer 3570 .LVL362: 3571 .L202: 1488:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 3572 .loc 1 1488 3 is_stmt 1 view .LVU1138 ARM GAS /tmp/ccJPteqL.s page 119 1489:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 3573 .loc 1 1489 1 is_stmt 0 view .LVU1139 3574 0038 0020 movs r0, #0 3575 003a 10BD pop {r4, pc} 3576 .LVL363: 3577 .L201: 1485:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 3578 .loc 1 1485 5 is_stmt 1 view .LVU1140 1485:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 3579 .loc 1 1485 11 is_stmt 0 view .LVU1141 3580 003c 0068 ldr r0, [r0] 3581 .LVL364: 1485:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 3582 .loc 1 1485 11 view .LVU1142 3583 003e FFF7FEFF bl USB_EPStartXfer 3584 .LVL365: 1485:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 3585 .loc 1 1485 11 view .LVU1143 3586 0042 F9E7 b .L202 3587 .cfi_endproc 3588 .LFE352: 3590 .section .text.HAL_PCD_EP_GetRxCount,"ax",%progbits 3591 .align 1 3592 .global HAL_PCD_EP_GetRxCount 3593 .syntax unified 3594 .thumb 3595 .thumb_func 3597 HAL_PCD_EP_GetRxCount: 3598 .LVL366: 3599 .LFB353: 1498:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** return hpcd->OUT_ep[ep_addr & EP_ADDR_MSK].xfer_count; 3600 .loc 1 1498 1 is_stmt 1 view -0 3601 .cfi_startproc 3602 @ args = 0, pretend = 0, frame = 0 3603 @ frame_needed = 0, uses_anonymous_args = 0 3604 @ link register save eliminated. 1499:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 3605 .loc 1 1499 3 view .LVU1145 1499:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 3606 .loc 1 1499 31 is_stmt 0 view .LVU1146 3607 0000 01F00701 and r1, r1, #7 3608 .LVL367: 1499:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 3609 .loc 1 1499 45 view .LVU1147 3610 0004 01EB8101 add r1, r1, r1, lsl #2 3611 0008 00EBC100 add r0, r0, r1, lsl #3 3612 .LVL368: 1500:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /** 3613 .loc 1 1500 1 view .LVU1148 3614 000c D0F88401 ldr r0, [r0, #388] 3615 0010 7047 bx lr 3616 .cfi_endproc 3617 .LFE353: 3619 .section .text.HAL_PCD_EP_Transmit,"ax",%progbits 3620 .align 1 3621 .global HAL_PCD_EP_Transmit 3622 .syntax unified ARM GAS /tmp/ccJPteqL.s page 120 3623 .thumb 3624 .thumb_func 3626 HAL_PCD_EP_Transmit: 3627 .LVL369: 3628 .LFB354: 1510:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_EPTypeDef *ep; 3629 .loc 1 1510 1 is_stmt 1 view -0 3630 .cfi_startproc 3631 @ args = 0, pretend = 0, frame = 0 3632 @ frame_needed = 0, uses_anonymous_args = 0 1510:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_EPTypeDef *ep; 3633 .loc 1 1510 1 is_stmt 0 view .LVU1150 3634 0000 10B5 push {r4, lr} 3635 .LCFI23: 3636 .cfi_def_cfa_offset 8 3637 .cfi_offset 4, -8 3638 .cfi_offset 14, -4 1511:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 3639 .loc 1 1511 3 is_stmt 1 view .LVU1151 1513:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 3640 .loc 1 1513 3 view .LVU1152 3641 0002 01F00704 and r4, r1, #7 1513:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 3642 .loc 1 1513 6 is_stmt 0 view .LVU1153 3643 0006 04F1010C add ip, r4, #1 3644 000a 0CEB8C01 add r1, ip, ip, lsl #2 3645 .LVL370: 1513:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 3646 .loc 1 1513 6 view .LVU1154 3647 000e 00EBC101 add r1, r0, r1, lsl #3 3648 .LVL371: 1516:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->xfer_len = len; 3649 .loc 1 1516 3 is_stmt 1 view .LVU1155 1516:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->xfer_len = len; 3650 .loc 1 1516 17 is_stmt 0 view .LVU1156 3651 0012 04EB840E add lr, r4, r4, lsl #2 3652 0016 00EBCE0E add lr, r0, lr, lsl #3 3653 001a CEF83C20 str r2, [lr, #60] 1517:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->xfer_fill_db = 1U; 3654 .loc 1 1517 3 is_stmt 1 view .LVU1157 1517:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->xfer_fill_db = 1U; 3655 .loc 1 1517 16 is_stmt 0 view .LVU1158 3656 001e CEF84030 str r3, [lr, #64] 1518:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->xfer_len_db = len; 3657 .loc 1 1518 3 is_stmt 1 view .LVU1159 1518:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->xfer_len_db = len; 3658 .loc 1 1518 20 is_stmt 0 view .LVU1160 3659 0022 0122 movs r2, #1 3660 .LVL372: 1518:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->xfer_len_db = len; 3661 .loc 1 1518 20 view .LVU1161 3662 0024 8EF84C20 strb r2, [lr, #76] 1519:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->xfer_count = 0U; 3663 .loc 1 1519 3 is_stmt 1 view .LVU1162 1519:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->xfer_count = 0U; 3664 .loc 1 1519 19 is_stmt 0 view .LVU1163 3665 0028 CEF84830 str r3, [lr, #72] ARM GAS /tmp/ccJPteqL.s page 121 1520:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->is_in = 1U; 3666 .loc 1 1520 3 is_stmt 1 view .LVU1164 1520:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->is_in = 1U; 3667 .loc 1 1520 18 is_stmt 0 view .LVU1165 3668 002c 0023 movs r3, #0 3669 .LVL373: 1520:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->is_in = 1U; 3670 .loc 1 1520 18 view .LVU1166 3671 002e CEF84430 str r3, [lr, #68] 1521:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->num = ep_addr & EP_ADDR_MSK; 3672 .loc 1 1521 3 is_stmt 1 view .LVU1167 1521:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->num = ep_addr & EP_ADDR_MSK; 3673 .loc 1 1521 13 is_stmt 0 view .LVU1168 3674 0032 4A70 strb r2, [r1, #1] 3675 .LVL374: 1522:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 3676 .loc 1 1522 3 is_stmt 1 view .LVU1169 1522:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 3677 .loc 1 1522 11 is_stmt 0 view .LVU1170 3678 0034 0CEB8C0C add ip, ip, ip, lsl #2 3679 0038 00F83C40 strb r4, [r0, ip, lsl #3] 1524:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 3680 .loc 1 1524 3 is_stmt 1 view .LVU1171 1524:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 3681 .loc 1 1524 6 is_stmt 0 view .LVU1172 3682 003c 24B9 cbnz r4, .L206 1526:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 3683 .loc 1 1526 5 is_stmt 1 view .LVU1173 1526:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 3684 .loc 1 1526 11 is_stmt 0 view .LVU1174 3685 003e 0068 ldr r0, [r0] 3686 .LVL375: 1526:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 3687 .loc 1 1526 11 view .LVU1175 3688 0040 FFF7FEFF bl USB_EPStartXfer 3689 .LVL376: 3690 .L207: 1533:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 3691 .loc 1 1533 3 is_stmt 1 view .LVU1176 1534:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 3692 .loc 1 1534 1 is_stmt 0 view .LVU1177 3693 0044 0020 movs r0, #0 3694 0046 10BD pop {r4, pc} 3695 .LVL377: 3696 .L206: 1530:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 3697 .loc 1 1530 5 is_stmt 1 view .LVU1178 1530:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 3698 .loc 1 1530 11 is_stmt 0 view .LVU1179 3699 0048 0068 ldr r0, [r0] 3700 .LVL378: 1530:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 3701 .loc 1 1530 11 view .LVU1180 3702 004a FFF7FEFF bl USB_EPStartXfer 3703 .LVL379: 1530:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 3704 .loc 1 1530 11 view .LVU1181 ARM GAS /tmp/ccJPteqL.s page 122 3705 004e F9E7 b .L207 3706 .cfi_endproc 3707 .LFE354: 3709 .section .text.HAL_PCD_EP_SetStall,"ax",%progbits 3710 .align 1 3711 .global HAL_PCD_EP_SetStall 3712 .syntax unified 3713 .thumb 3714 .thumb_func 3716 HAL_PCD_EP_SetStall: 3717 .LVL380: 3718 .LFB355: 1543:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_EPTypeDef *ep; 3719 .loc 1 1543 1 is_stmt 1 view -0 3720 .cfi_startproc 3721 @ args = 0, pretend = 0, frame = 0 3722 @ frame_needed = 0, uses_anonymous_args = 0 1543:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_EPTypeDef *ep; 3723 .loc 1 1543 1 is_stmt 0 view .LVU1183 3724 0000 0B46 mov r3, r1 1544:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 3725 .loc 1 1544 3 is_stmt 1 view .LVU1184 1546:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 3726 .loc 1 1546 3 view .LVU1185 3727 0002 01F00702 and r2, r1, #7 1546:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 3728 .loc 1 1546 53 is_stmt 0 view .LVU1186 3729 0006 4168 ldr r1, [r0, #4] 3730 .LVL381: 1546:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 3731 .loc 1 1546 6 view .LVU1187 3732 0008 8A42 cmp r2, r1 3733 000a 2AD8 bhi .L213 1543:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_EPTypeDef *ep; 3734 .loc 1 1543 1 view .LVU1188 3735 000c 10B5 push {r4, lr} 3736 .LCFI24: 3737 .cfi_def_cfa_offset 8 3738 .cfi_offset 4, -8 3739 .cfi_offset 14, -4 3740 000e 0446 mov r4, r0 1551:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 3741 .loc 1 1551 3 is_stmt 1 view .LVU1189 1551:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 3742 .loc 1 1551 6 is_stmt 0 view .LVU1190 3743 0010 13F0800F tst r3, #128 3744 0014 1DD1 bne .L219 1558:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->is_in = 0U; 3745 .loc 1 1558 5 is_stmt 1 view .LVU1191 1558:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->is_in = 0U; 3746 .loc 1 1558 8 is_stmt 0 view .LVU1192 3747 0016 03EB8301 add r1, r3, r3, lsl #2 3748 001a C900 lsls r1, r1, #3 3749 001c 01F5B471 add r1, r1, #360 3750 0020 0144 add r1, r1, r0 3751 .LVL382: 1559:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } ARM GAS /tmp/ccJPteqL.s page 123 3752 .loc 1 1559 5 is_stmt 1 view .LVU1193 1559:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 3753 .loc 1 1559 15 is_stmt 0 view .LVU1194 3754 0022 03EB8303 add r3, r3, r3, lsl #2 3755 0026 00EBC303 add r3, r0, r3, lsl #3 3756 002a 0020 movs r0, #0 3757 .LVL383: 1559:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 3758 .loc 1 1559 15 view .LVU1195 3759 002c 83F86901 strb r0, [r3, #361] 3760 .L212: 1562:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->num = ep_addr & EP_ADDR_MSK; 3761 .loc 1 1562 3 is_stmt 1 view .LVU1196 1562:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->num = ep_addr & EP_ADDR_MSK; 3762 .loc 1 1562 16 is_stmt 0 view .LVU1197 3763 0030 0123 movs r3, #1 3764 0032 8B70 strb r3, [r1, #2] 1563:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 3765 .loc 1 1563 3 is_stmt 1 view .LVU1198 1563:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 3766 .loc 1 1563 11 is_stmt 0 view .LVU1199 3767 0034 0A70 strb r2, [r1] 1565:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 3768 .loc 1 1565 3 is_stmt 1 view .LVU1200 1565:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 3769 .loc 1 1565 3 view .LVU1201 3770 0036 94F8A832 ldrb r3, [r4, #680] @ zero_extendqisi2 3771 003a 012B cmp r3, #1 3772 003c 13D0 beq .L214 1565:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 3773 .loc 1 1565 3 discriminator 2 view .LVU1202 3774 003e 0123 movs r3, #1 3775 0040 84F8A832 strb r3, [r4, #680] 1565:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 3776 .loc 1 1565 3 discriminator 2 view .LVU1203 1567:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 3777 .loc 1 1567 3 discriminator 2 view .LVU1204 1567:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 3778 .loc 1 1567 9 is_stmt 0 discriminator 2 view .LVU1205 3779 0044 2068 ldr r0, [r4] 3780 0046 FFF7FEFF bl USB_EPSetStall 3781 .LVL384: 1569:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 3782 .loc 1 1569 3 is_stmt 1 discriminator 2 view .LVU1206 1569:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 3783 .loc 1 1569 3 discriminator 2 view .LVU1207 3784 004a 0020 movs r0, #0 3785 004c 84F8A802 strb r0, [r4, #680] 1569:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 3786 .loc 1 1569 3 discriminator 2 view .LVU1208 1571:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 3787 .loc 1 1571 3 discriminator 2 view .LVU1209 3788 .L210: 1572:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 3789 .loc 1 1572 1 is_stmt 0 view .LVU1210 3790 0050 10BD pop {r4, pc} 3791 .LVL385: ARM GAS /tmp/ccJPteqL.s page 124 3792 .L219: 1553:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->is_in = 1U; 3793 .loc 1 1553 5 is_stmt 1 view .LVU1211 1553:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->is_in = 1U; 3794 .loc 1 1553 8 is_stmt 0 view .LVU1212 3795 0052 531C adds r3, r2, #1 3796 0054 03EB8301 add r1, r3, r3, lsl #2 3797 0058 00EBC101 add r1, r0, r1, lsl #3 3798 .LVL386: 1554:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 3799 .loc 1 1554 5 is_stmt 1 view .LVU1213 1554:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 3800 .loc 1 1554 15 is_stmt 0 view .LVU1214 3801 005c 0120 movs r0, #1 3802 .LVL387: 1554:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 3803 .loc 1 1554 15 view .LVU1215 3804 005e 4870 strb r0, [r1, #1] 3805 0060 E6E7 b .L212 3806 .LVL388: 3807 .L213: 3808 .LCFI25: 3809 .cfi_def_cfa_offset 0 3810 .cfi_restore 4 3811 .cfi_restore 14 1548:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 3812 .loc 1 1548 12 view .LVU1216 3813 0062 0120 movs r0, #1 3814 .LVL389: 1572:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 3815 .loc 1 1572 1 view .LVU1217 3816 0064 7047 bx lr 3817 .LVL390: 3818 .L214: 3819 .LCFI26: 3820 .cfi_def_cfa_offset 8 3821 .cfi_offset 4, -8 3822 .cfi_offset 14, -4 1565:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 3823 .loc 1 1565 3 view .LVU1218 3824 0066 0220 movs r0, #2 3825 0068 F2E7 b .L210 3826 .cfi_endproc 3827 .LFE355: 3829 .section .text.HAL_PCD_EP_ClrStall,"ax",%progbits 3830 .align 1 3831 .global HAL_PCD_EP_ClrStall 3832 .syntax unified 3833 .thumb 3834 .thumb_func 3836 HAL_PCD_EP_ClrStall: 3837 .LVL391: 3838 .LFB356: 1581:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_EPTypeDef *ep; 3839 .loc 1 1581 1 is_stmt 1 view -0 3840 .cfi_startproc 3841 @ args = 0, pretend = 0, frame = 0 ARM GAS /tmp/ccJPteqL.s page 125 3842 @ frame_needed = 0, uses_anonymous_args = 0 1581:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_EPTypeDef *ep; 3843 .loc 1 1581 1 is_stmt 0 view .LVU1220 3844 0000 0B46 mov r3, r1 1582:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 3845 .loc 1 1582 3 is_stmt 1 view .LVU1221 1584:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 3846 .loc 1 1584 3 view .LVU1222 1584:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 3847 .loc 1 1584 26 is_stmt 0 view .LVU1223 3848 0002 01F00F01 and r1, r1, #15 3849 .LVL392: 1584:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 3850 .loc 1 1584 47 view .LVU1224 3851 0006 4268 ldr r2, [r0, #4] 1584:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 3852 .loc 1 1584 6 view .LVU1225 3853 0008 9142 cmp r1, r2 3854 000a 30D8 bhi .L224 1581:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** PCD_EPTypeDef *ep; 3855 .loc 1 1581 1 view .LVU1226 3856 000c 10B5 push {r4, lr} 3857 .LCFI27: 3858 .cfi_def_cfa_offset 8 3859 .cfi_offset 4, -8 3860 .cfi_offset 14, -4 3861 000e 0446 mov r4, r0 1589:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 3862 .loc 1 1589 3 is_stmt 1 view .LVU1227 1589:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** { 3863 .loc 1 1589 6 is_stmt 0 view .LVU1228 3864 0010 13F0800F tst r3, #128 3865 0014 21D1 bne .L230 1596:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->is_in = 0U; 3866 .loc 1 1596 5 is_stmt 1 view .LVU1229 1596:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->is_in = 0U; 3867 .loc 1 1596 32 is_stmt 0 view .LVU1230 3868 0016 03F00702 and r2, r3, #7 1596:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->is_in = 0U; 3869 .loc 1 1596 8 view .LVU1231 3870 001a 02EB8201 add r1, r2, r2, lsl #2 3871 001e C900 lsls r1, r1, #3 3872 0020 01F5B471 add r1, r1, #360 3873 0024 0144 add r1, r1, r0 3874 .LVL393: 1597:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 3875 .loc 1 1597 5 is_stmt 1 view .LVU1232 1597:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 3876 .loc 1 1597 15 is_stmt 0 view .LVU1233 3877 0026 02EB8202 add r2, r2, r2, lsl #2 3878 002a 00EBC202 add r2, r0, r2, lsl #3 3879 002e 0020 movs r0, #0 3880 .LVL394: 1597:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 3881 .loc 1 1597 15 view .LVU1234 3882 0030 82F86901 strb r0, [r2, #361] 3883 .L223: ARM GAS /tmp/ccJPteqL.s page 126 1600:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->num = ep_addr & EP_ADDR_MSK; 3884 .loc 1 1600 3 is_stmt 1 view .LVU1235 1600:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->num = ep_addr & EP_ADDR_MSK; 3885 .loc 1 1600 16 is_stmt 0 view .LVU1236 3886 0034 0022 movs r2, #0 3887 0036 8A70 strb r2, [r1, #2] 1601:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 3888 .loc 1 1601 3 is_stmt 1 view .LVU1237 1601:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 3889 .loc 1 1601 21 is_stmt 0 view .LVU1238 3890 0038 03F00703 and r3, r3, #7 1601:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 3891 .loc 1 1601 11 view .LVU1239 3892 003c 0B70 strb r3, [r1] 1603:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** (void)USB_EPClearStall(hpcd->Instance, ep); 3893 .loc 1 1603 3 is_stmt 1 view .LVU1240 1603:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** (void)USB_EPClearStall(hpcd->Instance, ep); 3894 .loc 1 1603 3 view .LVU1241 3895 003e 94F8A832 ldrb r3, [r4, #680] @ zero_extendqisi2 3896 0042 012B cmp r3, #1 3897 0044 15D0 beq .L225 1603:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** (void)USB_EPClearStall(hpcd->Instance, ep); 3898 .loc 1 1603 3 discriminator 2 view .LVU1242 3899 0046 0123 movs r3, #1 3900 0048 84F8A832 strb r3, [r4, #680] 1603:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** (void)USB_EPClearStall(hpcd->Instance, ep); 3901 .loc 1 1603 3 discriminator 2 view .LVU1243 1604:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __HAL_UNLOCK(hpcd); 3902 .loc 1 1604 3 discriminator 2 view .LVU1244 1604:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** __HAL_UNLOCK(hpcd); 3903 .loc 1 1604 9 is_stmt 0 discriminator 2 view .LVU1245 3904 004c 2068 ldr r0, [r4] 3905 004e FFF7FEFF bl USB_EPClearStall 3906 .LVL395: 1605:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 3907 .loc 1 1605 3 is_stmt 1 discriminator 2 view .LVU1246 1605:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 3908 .loc 1 1605 3 discriminator 2 view .LVU1247 3909 0052 0020 movs r0, #0 3910 0054 84F8A802 strb r0, [r4, #680] 1605:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 3911 .loc 1 1605 3 discriminator 2 view .LVU1248 1607:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 3912 .loc 1 1607 3 discriminator 2 view .LVU1249 3913 .L221: 1608:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 3914 .loc 1 1608 1 is_stmt 0 view .LVU1250 3915 0058 10BD pop {r4, pc} 3916 .LVL396: 3917 .L230: 1591:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->is_in = 1U; 3918 .loc 1 1591 5 is_stmt 1 view .LVU1251 1591:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->is_in = 1U; 3919 .loc 1 1591 31 is_stmt 0 view .LVU1252 3920 005a 03F00702 and r2, r3, #7 1591:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ep->is_in = 1U; 3921 .loc 1 1591 8 view .LVU1253 ARM GAS /tmp/ccJPteqL.s page 127 3922 005e 0132 adds r2, r2, #1 3923 0060 02EB8201 add r1, r2, r2, lsl #2 3924 0064 00EBC101 add r1, r0, r1, lsl #3 3925 .LVL397: 1592:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 3926 .loc 1 1592 5 is_stmt 1 view .LVU1254 1592:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 3927 .loc 1 1592 15 is_stmt 0 view .LVU1255 3928 0068 0120 movs r0, #1 3929 .LVL398: 1592:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 3930 .loc 1 1592 15 view .LVU1256 3931 006a 4870 strb r0, [r1, #1] 3932 006c E2E7 b .L223 3933 .LVL399: 3934 .L224: 3935 .LCFI28: 3936 .cfi_def_cfa_offset 0 3937 .cfi_restore 4 3938 .cfi_restore 14 1586:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 3939 .loc 1 1586 12 view .LVU1257 3940 006e 0120 movs r0, #1 3941 .LVL400: 1608:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 3942 .loc 1 1608 1 view .LVU1258 3943 0070 7047 bx lr 3944 .LVL401: 3945 .L225: 3946 .LCFI29: 3947 .cfi_def_cfa_offset 8 3948 .cfi_offset 4, -8 3949 .cfi_offset 14, -4 1603:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** (void)USB_EPClearStall(hpcd->Instance, ep); 3950 .loc 1 1603 3 view .LVU1259 3951 0072 0220 movs r0, #2 3952 0074 F0E7 b .L221 3953 .cfi_endproc 3954 .LFE356: 3956 .section .text.HAL_PCD_EP_Flush,"ax",%progbits 3957 .align 1 3958 .global HAL_PCD_EP_Flush 3959 .syntax unified 3960 .thumb 3961 .thumb_func 3963 HAL_PCD_EP_Flush: 3964 .LVL402: 3965 .LFB357: 1617:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** /* Prevent unused argument(s) compilation warning */ 3966 .loc 1 1617 1 is_stmt 1 view -0 3967 .cfi_startproc 3968 @ args = 0, pretend = 0, frame = 0 3969 @ frame_needed = 0, uses_anonymous_args = 0 3970 @ link register save eliminated. 1619:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** UNUSED(ep_addr); 3971 .loc 1 1619 3 view .LVU1261 1620:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** ARM GAS /tmp/ccJPteqL.s page 128 3972 .loc 1 1620 3 view .LVU1262 1622:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 3973 .loc 1 1622 3 view .LVU1263 1623:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 3974 .loc 1 1623 1 is_stmt 0 view .LVU1264 3975 0000 0020 movs r0, #0 3976 .LVL403: 1623:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 3977 .loc 1 1623 1 view .LVU1265 3978 0002 7047 bx lr 3979 .cfi_endproc 3980 .LFE357: 3982 .section .text.HAL_PCD_ActivateRemoteWakeup,"ax",%progbits 3983 .align 1 3984 .global HAL_PCD_ActivateRemoteWakeup 3985 .syntax unified 3986 .thumb 3987 .thumb_func 3989 HAL_PCD_ActivateRemoteWakeup: 3990 .LVL404: 3991 .LFB358: 1631:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** return (USB_ActivateRemoteWakeup(hpcd->Instance)); 3992 .loc 1 1631 1 is_stmt 1 view -0 3993 .cfi_startproc 3994 @ args = 0, pretend = 0, frame = 0 3995 @ frame_needed = 0, uses_anonymous_args = 0 1631:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** return (USB_ActivateRemoteWakeup(hpcd->Instance)); 3996 .loc 1 1631 1 is_stmt 0 view .LVU1267 3997 0000 08B5 push {r3, lr} 3998 .LCFI30: 3999 .cfi_def_cfa_offset 8 4000 .cfi_offset 3, -8 4001 .cfi_offset 14, -4 1632:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 4002 .loc 1 1632 3 is_stmt 1 view .LVU1268 1632:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 4003 .loc 1 1632 11 is_stmt 0 view .LVU1269 4004 0002 0068 ldr r0, [r0] 4005 .LVL405: 1632:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 4006 .loc 1 1632 11 view .LVU1270 4007 0004 FFF7FEFF bl USB_ActivateRemoteWakeup 4008 .LVL406: 1633:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 4009 .loc 1 1633 1 view .LVU1271 4010 0008 08BD pop {r3, pc} 4011 .cfi_endproc 4012 .LFE358: 4014 .section .text.HAL_PCD_DeActivateRemoteWakeup,"ax",%progbits 4015 .align 1 4016 .global HAL_PCD_DeActivateRemoteWakeup 4017 .syntax unified 4018 .thumb 4019 .thumb_func 4021 HAL_PCD_DeActivateRemoteWakeup: 4022 .LVL407: 4023 .LFB359: ARM GAS /tmp/ccJPteqL.s page 129 1641:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** return (USB_DeActivateRemoteWakeup(hpcd->Instance)); 4024 .loc 1 1641 1 is_stmt 1 view -0 4025 .cfi_startproc 4026 @ args = 0, pretend = 0, frame = 0 4027 @ frame_needed = 0, uses_anonymous_args = 0 1641:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** return (USB_DeActivateRemoteWakeup(hpcd->Instance)); 4028 .loc 1 1641 1 is_stmt 0 view .LVU1273 4029 0000 08B5 push {r3, lr} 4030 .LCFI31: 4031 .cfi_def_cfa_offset 8 4032 .cfi_offset 3, -8 4033 .cfi_offset 14, -4 1642:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 4034 .loc 1 1642 3 is_stmt 1 view .LVU1274 1642:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 4035 .loc 1 1642 11 is_stmt 0 view .LVU1275 4036 0002 0068 ldr r0, [r0] 4037 .LVL408: 1642:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 4038 .loc 1 1642 11 view .LVU1276 4039 0004 FFF7FEFF bl USB_DeActivateRemoteWakeup 4040 .LVL409: 1643:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 4041 .loc 1 1643 1 view .LVU1277 4042 0008 08BD pop {r3, pc} 4043 .cfi_endproc 4044 .LFE359: 4046 .section .text.HAL_PCD_GetState,"ax",%progbits 4047 .align 1 4048 .global HAL_PCD_GetState 4049 .syntax unified 4050 .thumb 4051 .thumb_func 4053 HAL_PCD_GetState: 4054 .LVL410: 4055 .LFB360: 1670:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** return hpcd->State; 4056 .loc 1 1670 1 is_stmt 1 view -0 4057 .cfi_startproc 4058 @ args = 0, pretend = 0, frame = 0 4059 @ frame_needed = 0, uses_anonymous_args = 0 4060 @ link register save eliminated. 1671:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 4061 .loc 1 1671 3 view .LVU1279 1671:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** } 4062 .loc 1 1671 14 is_stmt 0 view .LVU1280 4063 0000 90F8A902 ldrb r0, [r0, #681] @ zero_extendqisi2 4064 .LVL411: 1672:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd.c **** 4065 .loc 1 1672 1 view .LVU1281 4066 0004 7047 bx lr 4067 .cfi_endproc 4068 .LFE360: 4070 .text 4071 .Letext0: 4072 .file 2 "/usr/lib/gcc/arm-none-eabi/12.2.1/include/stdint.h" 4073 .file 3 "Drivers/CMSIS/Device/ST/STM32G4xx/Include/stm32g431xx.h" ARM GAS /tmp/ccJPteqL.s page 130 4074 .file 4 "Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_def.h" 4075 .file 5 "Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_ll_usb.h" 4076 .file 6 "Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_pcd.h" 4077 .file 7 "Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_pcd_ex.h" ARM GAS /tmp/ccJPteqL.s page 131 DEFINED SYMBOLS *ABS*:00000000 stm32g4xx_hal_pcd.c /tmp/ccJPteqL.s:21 .text.HAL_PCD_EP_DB_Receive:00000000 $t /tmp/ccJPteqL.s:26 .text.HAL_PCD_EP_DB_Receive:00000000 HAL_PCD_EP_DB_Receive /tmp/ccJPteqL.s:275 .text.HAL_PCD_MspInit:00000000 $t /tmp/ccJPteqL.s:281 .text.HAL_PCD_MspInit:00000000 HAL_PCD_MspInit /tmp/ccJPteqL.s:296 .text.HAL_PCD_Init:00000000 $t /tmp/ccJPteqL.s:302 .text.HAL_PCD_Init:00000000 HAL_PCD_Init /tmp/ccJPteqL.s:508 .text.HAL_PCD_MspDeInit:00000000 $t /tmp/ccJPteqL.s:514 .text.HAL_PCD_MspDeInit:00000000 HAL_PCD_MspDeInit /tmp/ccJPteqL.s:529 .text.HAL_PCD_DeInit:00000000 $t /tmp/ccJPteqL.s:535 .text.HAL_PCD_DeInit:00000000 HAL_PCD_DeInit /tmp/ccJPteqL.s:597 .text.HAL_PCD_Start:00000000 $t /tmp/ccJPteqL.s:603 .text.HAL_PCD_Start:00000000 HAL_PCD_Start /tmp/ccJPteqL.s:660 .text.HAL_PCD_Stop:00000000 $t /tmp/ccJPteqL.s:666 .text.HAL_PCD_Stop:00000000 HAL_PCD_Stop /tmp/ccJPteqL.s:723 .text.HAL_PCD_DataOutStageCallback:00000000 $t /tmp/ccJPteqL.s:729 .text.HAL_PCD_DataOutStageCallback:00000000 HAL_PCD_DataOutStageCallback /tmp/ccJPteqL.s:745 .text.HAL_PCD_DataInStageCallback:00000000 $t /tmp/ccJPteqL.s:751 .text.HAL_PCD_DataInStageCallback:00000000 HAL_PCD_DataInStageCallback /tmp/ccJPteqL.s:767 .text.HAL_PCD_EP_DB_Transmit:00000000 $t /tmp/ccJPteqL.s:772 .text.HAL_PCD_EP_DB_Transmit:00000000 HAL_PCD_EP_DB_Transmit /tmp/ccJPteqL.s:1707 .text.HAL_PCD_SetupStageCallback:00000000 $t /tmp/ccJPteqL.s:1713 .text.HAL_PCD_SetupStageCallback:00000000 HAL_PCD_SetupStageCallback /tmp/ccJPteqL.s:1728 .text.PCD_EP_ISR_Handler:00000000 $t /tmp/ccJPteqL.s:1733 .text.PCD_EP_ISR_Handler:00000000 PCD_EP_ISR_Handler /tmp/ccJPteqL.s:2623 .text.HAL_PCD_SOFCallback:00000000 $t /tmp/ccJPteqL.s:2629 .text.HAL_PCD_SOFCallback:00000000 HAL_PCD_SOFCallback /tmp/ccJPteqL.s:2644 .text.HAL_PCD_ResetCallback:00000000 $t /tmp/ccJPteqL.s:2650 .text.HAL_PCD_ResetCallback:00000000 HAL_PCD_ResetCallback /tmp/ccJPteqL.s:2665 .text.HAL_PCD_SuspendCallback:00000000 $t /tmp/ccJPteqL.s:2671 .text.HAL_PCD_SuspendCallback:00000000 HAL_PCD_SuspendCallback /tmp/ccJPteqL.s:2686 .text.HAL_PCD_ResumeCallback:00000000 $t /tmp/ccJPteqL.s:2692 .text.HAL_PCD_ResumeCallback:00000000 HAL_PCD_ResumeCallback /tmp/ccJPteqL.s:2707 .text.HAL_PCD_ISOOUTIncompleteCallback:00000000 $t /tmp/ccJPteqL.s:2713 .text.HAL_PCD_ISOOUTIncompleteCallback:00000000 HAL_PCD_ISOOUTIncompleteCallback /tmp/ccJPteqL.s:2729 .text.HAL_PCD_ISOINIncompleteCallback:00000000 $t /tmp/ccJPteqL.s:2735 .text.HAL_PCD_ISOINIncompleteCallback:00000000 HAL_PCD_ISOINIncompleteCallback /tmp/ccJPteqL.s:2751 .text.HAL_PCD_ConnectCallback:00000000 $t /tmp/ccJPteqL.s:2757 .text.HAL_PCD_ConnectCallback:00000000 HAL_PCD_ConnectCallback /tmp/ccJPteqL.s:2772 .text.HAL_PCD_DisconnectCallback:00000000 $t /tmp/ccJPteqL.s:2778 .text.HAL_PCD_DisconnectCallback:00000000 HAL_PCD_DisconnectCallback /tmp/ccJPteqL.s:2793 .text.HAL_PCD_DevConnect:00000000 $t /tmp/ccJPteqL.s:2799 .text.HAL_PCD_DevConnect:00000000 HAL_PCD_DevConnect /tmp/ccJPteqL.s:2852 .text.HAL_PCD_DevDisconnect:00000000 $t /tmp/ccJPteqL.s:2858 .text.HAL_PCD_DevDisconnect:00000000 HAL_PCD_DevDisconnect /tmp/ccJPteqL.s:2911 .text.HAL_PCD_SetAddress:00000000 $t /tmp/ccJPteqL.s:2917 .text.HAL_PCD_SetAddress:00000000 HAL_PCD_SetAddress /tmp/ccJPteqL.s:2973 .text.HAL_PCD_IRQHandler:00000000 $t /tmp/ccJPteqL.s:2979 .text.HAL_PCD_IRQHandler:00000000 HAL_PCD_IRQHandler /tmp/ccJPteqL.s:3277 .text.HAL_PCD_EP_Open:00000000 $t /tmp/ccJPteqL.s:3283 .text.HAL_PCD_EP_Open:00000000 HAL_PCD_EP_Open /tmp/ccJPteqL.s:3410 .text.HAL_PCD_EP_Close:00000000 $t /tmp/ccJPteqL.s:3416 .text.HAL_PCD_EP_Close:00000000 HAL_PCD_EP_Close /tmp/ccJPteqL.s:3511 .text.HAL_PCD_EP_Receive:00000000 $t /tmp/ccJPteqL.s:3517 .text.HAL_PCD_EP_Receive:00000000 HAL_PCD_EP_Receive /tmp/ccJPteqL.s:3591 .text.HAL_PCD_EP_GetRxCount:00000000 $t ARM GAS /tmp/ccJPteqL.s page 132 /tmp/ccJPteqL.s:3597 .text.HAL_PCD_EP_GetRxCount:00000000 HAL_PCD_EP_GetRxCount /tmp/ccJPteqL.s:3620 .text.HAL_PCD_EP_Transmit:00000000 $t /tmp/ccJPteqL.s:3626 .text.HAL_PCD_EP_Transmit:00000000 HAL_PCD_EP_Transmit /tmp/ccJPteqL.s:3710 .text.HAL_PCD_EP_SetStall:00000000 $t /tmp/ccJPteqL.s:3716 .text.HAL_PCD_EP_SetStall:00000000 HAL_PCD_EP_SetStall /tmp/ccJPteqL.s:3830 .text.HAL_PCD_EP_ClrStall:00000000 $t /tmp/ccJPteqL.s:3836 .text.HAL_PCD_EP_ClrStall:00000000 HAL_PCD_EP_ClrStall /tmp/ccJPteqL.s:3957 .text.HAL_PCD_EP_Flush:00000000 $t /tmp/ccJPteqL.s:3963 .text.HAL_PCD_EP_Flush:00000000 HAL_PCD_EP_Flush /tmp/ccJPteqL.s:3983 .text.HAL_PCD_ActivateRemoteWakeup:00000000 $t /tmp/ccJPteqL.s:3989 .text.HAL_PCD_ActivateRemoteWakeup:00000000 HAL_PCD_ActivateRemoteWakeup /tmp/ccJPteqL.s:4015 .text.HAL_PCD_DeActivateRemoteWakeup:00000000 $t /tmp/ccJPteqL.s:4021 .text.HAL_PCD_DeActivateRemoteWakeup:00000000 HAL_PCD_DeActivateRemoteWakeup /tmp/ccJPteqL.s:4047 .text.HAL_PCD_GetState:00000000 $t /tmp/ccJPteqL.s:4053 .text.HAL_PCD_GetState:00000000 HAL_PCD_GetState UNDEFINED SYMBOLS USB_ReadPMA USB_DisableGlobalInt USB_DevInit HAL_PCDEx_ActivateLPM USB_StopDevice USB_EnableGlobalInt USB_DevConnect USB_DevDisconnect USB_WritePMA USB_EPStartXfer USB_SetDevAddress USB_ReadInterrupts HAL_PCDEx_LPM_Callback USB_ActivateEndpoint USB_DeactivateEndpoint USB_EPSetStall USB_EPClearStall USB_ActivateRemoteWakeup USB_DeActivateRemoteWakeup