ARM GAS /tmp/ccYuHakw.s page 1
1 .cpu cortex-m0
2 .eabi_attribute 20, 1
3 .eabi_attribute 21, 1
4 .eabi_attribute 23, 3
5 .eabi_attribute 24, 1
6 .eabi_attribute 25, 1
7 .eabi_attribute 26, 1
8 .eabi_attribute 30, 1
9 .eabi_attribute 34, 0
10 .eabi_attribute 18, 4
11 .file "stm32f0xx_hal_pcd.c"
12 .text
13 .Ltext0:
14 .cfi_sections .debug_frame
15 .section .text.HAL_PCD_MspInit,"ax",%progbits
16 .align 1
17 .weak HAL_PCD_MspInit
18 .syntax unified
19 .code 16
20 .thumb_func
21 .fpu softvfp
23 HAL_PCD_MspInit:
24 .LFB42:
25 .file 1 "Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c"
1:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /**
2:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** ******************************************************************************
3:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @file stm32f0xx_hal_pcd.c
4:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @author MCD Application Team
5:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @brief PCD HAL module driver.
6:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * This file provides firmware functions to manage the following
7:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * functionalities of the USB Peripheral Controller:
8:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * + Initialization and de-initialization functions
9:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * + IO operation functions
10:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * + Peripheral Control functions
11:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * + Peripheral State functions
12:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** *
13:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** @verbatim
14:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** ==============================================================================
15:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** ##### How to use this driver #####
16:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** ==============================================================================
17:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** [..]
18:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** The PCD HAL driver can be used as follows:
19:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
20:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** (#) Declare a PCD_HandleTypeDef handle structure, for example:
21:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** PCD_HandleTypeDef hpcd;
22:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
23:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** (#) Fill parameters of Init structure in HCD handle
24:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
25:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** (#) Call HAL_PCD_Init() API to initialize the PCD peripheral (Core, Device core, ...)
26:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
27:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** (#) Initialize the PCD low level resources through the HAL_PCD_MspInit() API:
28:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** (##) Enable the PCD/USB Low Level interface clock using
29:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** (+++) __HAL_RCC_USB_CLK_ENABLE(); For USB Device only FS peripheral
30:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
31:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** (##) Initialize the related GPIO clocks
32:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** (##) Configure PCD pin-out
33:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** (##) Configure PCD NVIC interrupt
ARM GAS /tmp/ccYuHakw.s page 2
34:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
35:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** (#)Associate the Upper USB device stack to the HAL PCD Driver:
36:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** (##) hpcd.pData = pdev;
37:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
38:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** (#)Enable PCD transmission and reception:
39:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** (##) HAL_PCD_Start();
40:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
41:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** @endverbatim
42:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** ******************************************************************************
43:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @attention
44:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** *
45:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** *
© Copyright (c) 2016 STMicroelectronics.
46:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * All rights reserved.
47:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** *
48:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * This software component is licensed by ST under BSD 3-Clause license,
49:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * the "License"; You may not use this file except in compliance with the
50:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * License. You may obtain a copy of the License at:
51:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * opensource.org/licenses/BSD-3-Clause
52:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** *
53:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** ******************************************************************************
54:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** */
55:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
56:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Includes ------------------------------------------------------------------*/
57:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** #include "stm32f0xx_hal.h"
58:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
59:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /** @addtogroup STM32F0xx_HAL_Driver
60:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @{
61:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** */
62:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
63:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /** @defgroup PCD PCD
64:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @brief PCD HAL module driver
65:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @{
66:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** */
67:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
68:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** #ifdef HAL_PCD_MODULE_ENABLED
69:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
70:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** #if defined (USB)
71:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
72:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Private types -------------------------------------------------------------*/
73:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Private variables ---------------------------------------------------------*/
74:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Private constants ---------------------------------------------------------*/
75:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Private macros ------------------------------------------------------------*/
76:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /** @defgroup PCD_Private_Macros PCD Private Macros
77:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @{
78:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** */
79:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** #define PCD_MIN(a, b) (((a) < (b)) ? (a) : (b))
80:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** #define PCD_MAX(a, b) (((a) > (b)) ? (a) : (b))
81:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /**
82:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @}
83:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** */
84:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
85:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Private functions prototypes ----------------------------------------------*/
86:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /** @defgroup PCD_Private_Functions PCD Private Functions
87:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @{
88:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** */
89:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
90:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** static HAL_StatusTypeDef PCD_EP_ISR_Handler(PCD_HandleTypeDef *hpcd);
ARM GAS /tmp/ccYuHakw.s page 3
91:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
92:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /**
93:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @}
94:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** */
95:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
96:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Exported functions --------------------------------------------------------*/
97:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /** @defgroup PCD_Exported_Functions PCD Exported Functions
98:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @{
99:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** */
100:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
101:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /** @defgroup PCD_Exported_Functions_Group1 Initialization and de-initialization functions
102:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @brief Initialization and Configuration functions
103:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** *
104:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** @verbatim
105:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** ===============================================================================
106:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** ##### Initialization and de-initialization functions #####
107:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** ===============================================================================
108:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** [..] This section provides functions allowing to:
109:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
110:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** @endverbatim
111:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @{
112:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** */
113:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
114:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /**
115:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @brief Initializes the PCD according to the specified
116:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * parameters in the PCD_InitTypeDef and initialize the associated handle.
117:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @param hpcd PCD handle
118:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @retval HAL status
119:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** */
120:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** HAL_StatusTypeDef HAL_PCD_Init(PCD_HandleTypeDef *hpcd)
121:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
122:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** uint8_t i;
123:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
124:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Check the PCD handle allocation */
125:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** if (hpcd == NULL)
126:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
127:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** return HAL_ERROR;
128:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
129:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
130:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Check the parameters */
131:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** assert_param(IS_PCD_ALL_INSTANCE(hpcd->Instance));
132:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
133:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** if (hpcd->State == HAL_PCD_STATE_RESET)
134:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
135:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Allocate lock resource and initialize it */
136:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->Lock = HAL_UNLOCKED;
137:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
138:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** #if (USE_HAL_PCD_REGISTER_CALLBACKS == 1U)
139:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->SOFCallback = HAL_PCD_SOFCallback;
140:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->SetupStageCallback = HAL_PCD_SetupStageCallback;
141:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->ResetCallback = HAL_PCD_ResetCallback;
142:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->SuspendCallback = HAL_PCD_SuspendCallback;
143:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->ResumeCallback = HAL_PCD_ResumeCallback;
144:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->ConnectCallback = HAL_PCD_ConnectCallback;
145:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->DisconnectCallback = HAL_PCD_DisconnectCallback;
146:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->DataOutStageCallback = HAL_PCD_DataOutStageCallback;
147:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->DataInStageCallback = HAL_PCD_DataInStageCallback;
ARM GAS /tmp/ccYuHakw.s page 4
148:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->ISOOUTIncompleteCallback = HAL_PCD_ISOOUTIncompleteCallback;
149:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->ISOINIncompleteCallback = HAL_PCD_ISOINIncompleteCallback;
150:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->LPMCallback = HAL_PCDEx_LPM_Callback;
151:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->BCDCallback = HAL_PCDEx_BCD_Callback;
152:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
153:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** if (hpcd->MspInitCallback == NULL)
154:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
155:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->MspInitCallback = HAL_PCD_MspInit;
156:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
157:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
158:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Init the low level hardware */
159:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->MspInitCallback(hpcd);
160:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** #else
161:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Init the low level hardware : GPIO, CLOCK, NVIC... */
162:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** HAL_PCD_MspInit(hpcd);
163:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** #endif /* (USE_HAL_PCD_REGISTER_CALLBACKS) */
164:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
165:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
166:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->State = HAL_PCD_STATE_BUSY;
167:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
168:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Disable the Interrupts */
169:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** __HAL_PCD_DISABLE(hpcd);
170:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
171:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Init endpoints structures */
172:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** for (i = 0U; i < hpcd->Init.dev_endpoints; i++)
173:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
174:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Init ep structure */
175:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->IN_ep[i].is_in = 1U;
176:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->IN_ep[i].num = i;
177:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->IN_ep[i].tx_fifo_num = i;
178:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Control until ep is activated */
179:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->IN_ep[i].type = EP_TYPE_CTRL;
180:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->IN_ep[i].maxpacket = 0U;
181:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->IN_ep[i].xfer_buff = 0U;
182:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->IN_ep[i].xfer_len = 0U;
183:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
184:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
185:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** for (i = 0U; i < hpcd->Init.dev_endpoints; i++)
186:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
187:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->OUT_ep[i].is_in = 0U;
188:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->OUT_ep[i].num = i;
189:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Control until ep is activated */
190:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->OUT_ep[i].type = EP_TYPE_CTRL;
191:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->OUT_ep[i].maxpacket = 0U;
192:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->OUT_ep[i].xfer_buff = 0U;
193:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->OUT_ep[i].xfer_len = 0U;
194:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
195:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
196:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Init Device */
197:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** (void)USB_DevInit(hpcd->Instance, hpcd->Init);
198:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
199:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->USB_Address = 0U;
200:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->State = HAL_PCD_STATE_READY;
201:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
202:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Activate LPM */
203:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** if (hpcd->Init.lpm_enable == 1U)
204:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
ARM GAS /tmp/ccYuHakw.s page 5
205:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** (void)HAL_PCDEx_ActivateLPM(hpcd);
206:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
207:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
208:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** return HAL_OK;
209:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
210:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
211:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /**
212:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @brief DeInitializes the PCD peripheral.
213:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @param hpcd PCD handle
214:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @retval HAL status
215:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** */
216:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** HAL_StatusTypeDef HAL_PCD_DeInit(PCD_HandleTypeDef *hpcd)
217:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
218:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Check the PCD handle allocation */
219:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** if (hpcd == NULL)
220:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
221:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** return HAL_ERROR;
222:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
223:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
224:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->State = HAL_PCD_STATE_BUSY;
225:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
226:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Stop Device */
227:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** (void)HAL_PCD_Stop(hpcd);
228:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
229:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** #if (USE_HAL_PCD_REGISTER_CALLBACKS == 1U)
230:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** if (hpcd->MspDeInitCallback == NULL)
231:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
232:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->MspDeInitCallback = HAL_PCD_MspDeInit; /* Legacy weak MspDeInit */
233:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
234:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
235:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* DeInit the low level hardware */
236:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->MspDeInitCallback(hpcd);
237:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** #else
238:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* DeInit the low level hardware: CLOCK, NVIC.*/
239:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** HAL_PCD_MspDeInit(hpcd);
240:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** #endif /* USE_HAL_PCD_REGISTER_CALLBACKS */
241:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
242:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->State = HAL_PCD_STATE_RESET;
243:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
244:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** return HAL_OK;
245:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
246:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
247:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /**
248:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @brief Initializes the PCD MSP.
249:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @param hpcd PCD handle
250:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @retval None
251:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** */
252:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** __weak void HAL_PCD_MspInit(PCD_HandleTypeDef *hpcd)
253:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
26 .loc 1 253 0
27 .cfi_startproc
28 @ args = 0, pretend = 0, frame = 0
29 @ frame_needed = 0, uses_anonymous_args = 0
30 @ link register save eliminated.
31 .LVL0:
254:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Prevent unused argument(s) compilation warning */
255:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** UNUSED(hpcd);
ARM GAS /tmp/ccYuHakw.s page 6
256:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
257:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* NOTE : This function should not be modified, when the callback is needed,
258:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** the HAL_PCD_MspInit could be implemented in the user file
259:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** */
260:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
32 .loc 1 260 0
33 @ sp needed
34 0000 7047 bx lr
35 .cfi_endproc
36 .LFE42:
38 .section .text.HAL_PCD_Init,"ax",%progbits
39 .align 1
40 .global HAL_PCD_Init
41 .syntax unified
42 .code 16
43 .thumb_func
44 .fpu softvfp
46 HAL_PCD_Init:
47 .LFB40:
121:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** uint8_t i;
48 .loc 1 121 0
49 .cfi_startproc
50 @ args = 0, pretend = 0, frame = 0
51 @ frame_needed = 0, uses_anonymous_args = 0
52 .LVL1:
53 0000 30B5 push {r4, r5, lr}
54 .LCFI0:
55 .cfi_def_cfa_offset 12
56 .cfi_offset 4, -12
57 .cfi_offset 5, -8
58 .cfi_offset 14, -4
59 0002 87B0 sub sp, sp, #28
60 .LCFI1:
61 .cfi_def_cfa_offset 40
62 0004 041E subs r4, r0, #0
125:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
63 .loc 1 125 0
64 0006 61D0 beq .L9
133:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
65 .loc 1 133 0
66 0008 314B ldr r3, .L13
67 000a C35C ldrb r3, [r0, r3]
68 000c 002B cmp r3, #0
69 000e 07D0 beq .L11
70 .LVL2:
71 .L4:
166:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
72 .loc 1 166 0
73 0010 2F4B ldr r3, .L13
74 0012 0322 movs r2, #3
75 0014 E254 strb r2, [r4, r3]
169:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
76 .loc 1 169 0
77 0016 2068 ldr r0, [r4]
78 0018 FFF7FEFF bl USB_DisableGlobalInt
79 .LVL3:
172:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
ARM GAS /tmp/ccYuHakw.s page 7
80 .loc 1 172 0
81 001c 0023 movs r3, #0
82 001e 1AE0 b .L5
83 .LVL4:
84 .L11:
136:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
85 .loc 1 136 0
86 0020 8A23 movs r3, #138
87 0022 9B00 lsls r3, r3, #2
88 0024 0022 movs r2, #0
89 0026 C254 strb r2, [r0, r3]
162:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** #endif /* (USE_HAL_PCD_REGISTER_CALLBACKS) */
90 .loc 1 162 0
91 0028 FFF7FEFF bl HAL_PCD_MspInit
92 .LVL5:
93 002c F0E7 b .L4
94 .LVL6:
95 .L6:
175:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->IN_ep[i].num = i;
96 .loc 1 175 0 discriminator 3
97 002e 5A01 lsls r2, r3, #5
98 0030 A218 adds r2, r4, r2
99 0032 1100 movs r1, r2
100 0034 2931 adds r1, r1, #41
101 0036 0120 movs r0, #1
102 0038 0870 strb r0, [r1]
176:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->IN_ep[i].tx_fifo_num = i;
103 .loc 1 176 0 discriminator 3
104 003a 0139 subs r1, r1, #1
105 003c 0B70 strb r3, [r1]
177:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Control until ep is activated */
106 .loc 1 177 0 discriminator 3
107 003e D386 strh r3, [r2, #54]
179:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->IN_ep[i].maxpacket = 0U;
108 .loc 1 179 0 discriminator 3
109 0040 1000 movs r0, r2
110 0042 2B30 adds r0, r0, #43
111 0044 0021 movs r1, #0
112 0046 0170 strb r1, [r0]
180:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->IN_ep[i].xfer_buff = 0U;
113 .loc 1 180 0 discriminator 3
114 0048 9163 str r1, [r2, #56]
181:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->IN_ep[i].xfer_len = 0U;
115 .loc 1 181 0 discriminator 3
116 004a D163 str r1, [r2, #60]
182:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
117 .loc 1 182 0 discriminator 3
118 004c 9A1C adds r2, r3, #2
119 004e 5201 lsls r2, r2, #5
120 0050 1151 str r1, [r2, r4]
172:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
121 .loc 1 172 0 discriminator 3
122 0052 0133 adds r3, r3, #1
123 .LVL7:
124 0054 DBB2 uxtb r3, r3
125 .LVL8:
126 .L5:
ARM GAS /tmp/ccYuHakw.s page 8
172:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
127 .loc 1 172 0 is_stmt 0 discriminator 1
128 0056 6068 ldr r0, [r4, #4]
129 0058 8342 cmp r3, r0
130 005a E8D3 bcc .L6
185:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
131 .loc 1 185 0 is_stmt 1
132 005c 0022 movs r2, #0
133 005e 15E0 b .L7
134 .LVL9:
135 .L8:
187:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->OUT_ep[i].num = i;
136 .loc 1 187 0 discriminator 3
137 0060 5301 lsls r3, r2, #5
138 0062 E318 adds r3, r4, r3
139 0064 1D00 movs r5, r3
140 0066 2A35 adds r5, r5, #42
141 0068 FF35 adds r5, r5, #255
142 006a 0021 movs r1, #0
143 006c 2970 strb r1, [r5]
188:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Control until ep is activated */
144 .loc 1 188 0 discriminator 3
145 006e 013D subs r5, r5, #1
146 0070 2A70 strb r2, [r5]
190:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->OUT_ep[i].maxpacket = 0U;
147 .loc 1 190 0 discriminator 3
148 0072 0335 adds r5, r5, #3
149 0074 2970 strb r1, [r5]
191:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->OUT_ep[i].xfer_buff = 0U;
150 .loc 1 191 0 discriminator 3
151 0076 0D35 adds r5, r5, #13
152 0078 2960 str r1, [r5]
192:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->OUT_ep[i].xfer_len = 0U;
153 .loc 1 192 0 discriminator 3
154 007a 3D33 adds r3, r3, #61
155 007c FF33 adds r3, r3, #255
156 007e 1960 str r1, [r3]
193:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
157 .loc 1 193 0 discriminator 3
158 0080 1300 movs r3, r2
159 0082 0A33 adds r3, r3, #10
160 0084 5B01 lsls r3, r3, #5
161 0086 1951 str r1, [r3, r4]
185:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
162 .loc 1 185 0 discriminator 3
163 0088 0132 adds r2, r2, #1
164 .LVL10:
165 008a D2B2 uxtb r2, r2
166 .LVL11:
167 .L7:
185:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
168 .loc 1 185 0 is_stmt 0 discriminator 1
169 008c 9042 cmp r0, r2
170 008e E7D8 bhi .L8
197:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
171 .loc 1 197 0 is_stmt 1
172 0090 6A46 mov r2, sp
ARM GAS /tmp/ccYuHakw.s page 9
173 .LVL12:
174 0092 2300 movs r3, r4
175 0094 1033 adds r3, r3, #16
176 0096 23CB ldmia r3!, {r0, r1, r5}
177 0098 23C2 stmia r2!, {r0, r1, r5}
178 009a 03CB ldmia r3!, {r0, r1}
179 009c 03C2 stmia r2!, {r0, r1}
180 009e 6168 ldr r1, [r4, #4]
181 00a0 A268 ldr r2, [r4, #8]
182 00a2 E368 ldr r3, [r4, #12]
183 00a4 2068 ldr r0, [r4]
184 00a6 FFF7FEFF bl USB_DevInit
185 .LVL13:
199:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->State = HAL_PCD_STATE_READY;
186 .loc 1 199 0
187 00aa 2423 movs r3, #36
188 00ac 0022 movs r2, #0
189 00ae E254 strb r2, [r4, r3]
200:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
190 .loc 1 200 0
191 00b0 074B ldr r3, .L13
192 00b2 0132 adds r2, r2, #1
193 00b4 E254 strb r2, [r4, r3]
203:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
194 .loc 1 203 0
195 00b6 E369 ldr r3, [r4, #28]
196 00b8 012B cmp r3, #1
197 00ba 02D0 beq .L12
208:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
198 .loc 1 208 0
199 00bc 0020 movs r0, #0
200 .L3:
209:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
201 .loc 1 209 0
202 00be 07B0 add sp, sp, #28
203 @ sp needed
204 .LVL14:
205 00c0 30BD pop {r4, r5, pc}
206 .LVL15:
207 .L12:
205:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
208 .loc 1 205 0
209 00c2 2000 movs r0, r4
210 00c4 FFF7FEFF bl HAL_PCDEx_ActivateLPM
211 .LVL16:
208:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
212 .loc 1 208 0
213 00c8 0020 movs r0, #0
214 00ca F8E7 b .L3
215 .LVL17:
216 .L9:
127:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
217 .loc 1 127 0
218 00cc 0120 movs r0, #1
219 .LVL18:
220 00ce F6E7 b .L3
221 .L14:
ARM GAS /tmp/ccYuHakw.s page 10
222 .align 2
223 .L13:
224 00d0 29020000 .word 553
225 .cfi_endproc
226 .LFE40:
228 .section .text.HAL_PCD_MspDeInit,"ax",%progbits
229 .align 1
230 .weak HAL_PCD_MspDeInit
231 .syntax unified
232 .code 16
233 .thumb_func
234 .fpu softvfp
236 HAL_PCD_MspDeInit:
237 .LFB43:
261:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
262:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /**
263:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @brief DeInitializes PCD MSP.
264:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @param hpcd PCD handle
265:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @retval None
266:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** */
267:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** __weak void HAL_PCD_MspDeInit(PCD_HandleTypeDef *hpcd)
268:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
238 .loc 1 268 0
239 .cfi_startproc
240 @ args = 0, pretend = 0, frame = 0
241 @ frame_needed = 0, uses_anonymous_args = 0
242 @ link register save eliminated.
243 .LVL19:
269:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Prevent unused argument(s) compilation warning */
270:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** UNUSED(hpcd);
271:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
272:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* NOTE : This function should not be modified, when the callback is needed,
273:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** the HAL_PCD_MspDeInit could be implemented in the user file
274:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** */
275:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
244 .loc 1 275 0
245 @ sp needed
246 0000 7047 bx lr
247 .cfi_endproc
248 .LFE43:
250 .section .text.HAL_PCD_Start,"ax",%progbits
251 .align 1
252 .global HAL_PCD_Start
253 .syntax unified
254 .code 16
255 .thumb_func
256 .fpu softvfp
258 HAL_PCD_Start:
259 .LFB44:
276:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
277:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** #if (USE_HAL_PCD_REGISTER_CALLBACKS == 1U)
278:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /**
279:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @brief Register a User USB PCD Callback
280:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * To be used instead of the weak predefined callback
281:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @param hpcd USB PCD handle
282:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @param CallbackID ID of the callback to be registered
283:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * This parameter can be one of the following values:
ARM GAS /tmp/ccYuHakw.s page 11
284:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @arg @ref HAL_PCD_SOF_CB_ID USB PCD SOF callback ID
285:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @arg @ref HAL_PCD_SETUPSTAGE_CB_ID USB PCD Setup callback ID
286:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @arg @ref HAL_PCD_RESET_CB_ID USB PCD Reset callback ID
287:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @arg @ref HAL_PCD_SUSPEND_CB_ID USB PCD Suspend callback ID
288:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @arg @ref HAL_PCD_RESUME_CB_ID USB PCD Resume callback ID
289:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @arg @ref HAL_PCD_CONNECT_CB_ID USB PCD Connect callback ID
290:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @arg @ref HAL_PCD_DISCONNECT_CB_ID OTG PCD Disconnect callback ID
291:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @arg @ref HAL_PCD_MSPINIT_CB_ID MspDeInit callback ID
292:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @arg @ref HAL_PCD_MSPDEINIT_CB_ID MspDeInit callback ID
293:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @param pCallback pointer to the Callback function
294:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @retval HAL status
295:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** */
296:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** HAL_StatusTypeDef HAL_PCD_RegisterCallback(PCD_HandleTypeDef *hpcd, HAL_PCD_CallbackIDTypeDef Callb
297:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
298:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** HAL_StatusTypeDef status = HAL_OK;
299:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
300:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** if (pCallback == NULL)
301:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
302:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Update the error code */
303:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->ErrorCode |= HAL_PCD_ERROR_INVALID_CALLBACK;
304:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** return HAL_ERROR;
305:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
306:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Process locked */
307:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** __HAL_LOCK(hpcd);
308:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
309:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** if (hpcd->State == HAL_PCD_STATE_READY)
310:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
311:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** switch (CallbackID)
312:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
313:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** case HAL_PCD_SOF_CB_ID :
314:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->SOFCallback = pCallback;
315:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** break;
316:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
317:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** case HAL_PCD_SETUPSTAGE_CB_ID :
318:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->SetupStageCallback = pCallback;
319:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** break;
320:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
321:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** case HAL_PCD_RESET_CB_ID :
322:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->ResetCallback = pCallback;
323:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** break;
324:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
325:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** case HAL_PCD_SUSPEND_CB_ID :
326:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->SuspendCallback = pCallback;
327:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** break;
328:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
329:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** case HAL_PCD_RESUME_CB_ID :
330:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->ResumeCallback = pCallback;
331:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** break;
332:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
333:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** case HAL_PCD_CONNECT_CB_ID :
334:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->ConnectCallback = pCallback;
335:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** break;
336:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
337:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** case HAL_PCD_DISCONNECT_CB_ID :
338:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->DisconnectCallback = pCallback;
339:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** break;
340:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
ARM GAS /tmp/ccYuHakw.s page 12
341:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** case HAL_PCD_MSPINIT_CB_ID :
342:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->MspInitCallback = pCallback;
343:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** break;
344:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
345:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** case HAL_PCD_MSPDEINIT_CB_ID :
346:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->MspDeInitCallback = pCallback;
347:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** break;
348:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
349:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** default :
350:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Update the error code */
351:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->ErrorCode |= HAL_PCD_ERROR_INVALID_CALLBACK;
352:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Return error status */
353:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** status = HAL_ERROR;
354:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** break;
355:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
356:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
357:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** else if (hpcd->State == HAL_PCD_STATE_RESET)
358:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
359:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** switch (CallbackID)
360:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
361:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** case HAL_PCD_MSPINIT_CB_ID :
362:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->MspInitCallback = pCallback;
363:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** break;
364:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
365:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** case HAL_PCD_MSPDEINIT_CB_ID :
366:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->MspDeInitCallback = pCallback;
367:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** break;
368:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
369:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** default :
370:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Update the error code */
371:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->ErrorCode |= HAL_PCD_ERROR_INVALID_CALLBACK;
372:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Return error status */
373:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** status = HAL_ERROR;
374:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** break;
375:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
376:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
377:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** else
378:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
379:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Update the error code */
380:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->ErrorCode |= HAL_PCD_ERROR_INVALID_CALLBACK;
381:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Return error status */
382:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** status = HAL_ERROR;
383:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
384:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
385:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Release Lock */
386:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** __HAL_UNLOCK(hpcd);
387:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** return status;
388:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
389:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
390:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /**
391:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @brief Unregister an USB PCD Callback
392:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * USB PCD callabck is redirected to the weak predefined callback
393:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @param hpcd USB PCD handle
394:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @param CallbackID ID of the callback to be unregistered
395:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * This parameter can be one of the following values:
396:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @arg @ref HAL_PCD_SOF_CB_ID USB PCD SOF callback ID
397:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @arg @ref HAL_PCD_SETUPSTAGE_CB_ID USB PCD Setup callback ID
ARM GAS /tmp/ccYuHakw.s page 13
398:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @arg @ref HAL_PCD_RESET_CB_ID USB PCD Reset callback ID
399:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @arg @ref HAL_PCD_SUSPEND_CB_ID USB PCD Suspend callback ID
400:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @arg @ref HAL_PCD_RESUME_CB_ID USB PCD Resume callback ID
401:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @arg @ref HAL_PCD_CONNECT_CB_ID USB PCD Connect callback ID
402:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @arg @ref HAL_PCD_DISCONNECT_CB_ID OTG PCD Disconnect callback ID
403:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @arg @ref HAL_PCD_MSPINIT_CB_ID MspDeInit callback ID
404:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @arg @ref HAL_PCD_MSPDEINIT_CB_ID MspDeInit callback ID
405:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @retval HAL status
406:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** */
407:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** HAL_StatusTypeDef HAL_PCD_UnRegisterCallback(PCD_HandleTypeDef *hpcd, HAL_PCD_CallbackIDTypeDef Cal
408:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
409:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** HAL_StatusTypeDef status = HAL_OK;
410:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
411:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Process locked */
412:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** __HAL_LOCK(hpcd);
413:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
414:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Setup Legacy weak Callbacks */
415:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** if (hpcd->State == HAL_PCD_STATE_READY)
416:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
417:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** switch (CallbackID)
418:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
419:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** case HAL_PCD_SOF_CB_ID :
420:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->SOFCallback = HAL_PCD_SOFCallback;
421:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** break;
422:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
423:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** case HAL_PCD_SETUPSTAGE_CB_ID :
424:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->SetupStageCallback = HAL_PCD_SetupStageCallback;
425:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** break;
426:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
427:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** case HAL_PCD_RESET_CB_ID :
428:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->ResetCallback = HAL_PCD_ResetCallback;
429:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** break;
430:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
431:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** case HAL_PCD_SUSPEND_CB_ID :
432:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->SuspendCallback = HAL_PCD_SuspendCallback;
433:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** break;
434:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
435:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** case HAL_PCD_RESUME_CB_ID :
436:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->ResumeCallback = HAL_PCD_ResumeCallback;
437:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** break;
438:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
439:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** case HAL_PCD_CONNECT_CB_ID :
440:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->ConnectCallback = HAL_PCD_ConnectCallback;
441:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** break;
442:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
443:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** case HAL_PCD_DISCONNECT_CB_ID :
444:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->DisconnectCallback = HAL_PCD_DisconnectCallback;
445:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** break;
446:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
447:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** case HAL_PCD_MSPINIT_CB_ID :
448:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->MspInitCallback = HAL_PCD_MspInit;
449:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** break;
450:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
451:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** case HAL_PCD_MSPDEINIT_CB_ID :
452:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->MspDeInitCallback = HAL_PCD_MspDeInit;
453:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** break;
454:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
ARM GAS /tmp/ccYuHakw.s page 14
455:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** default :
456:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Update the error code */
457:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->ErrorCode |= HAL_PCD_ERROR_INVALID_CALLBACK;
458:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
459:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Return error status */
460:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** status = HAL_ERROR;
461:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** break;
462:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
463:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
464:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** else if (hpcd->State == HAL_PCD_STATE_RESET)
465:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
466:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** switch (CallbackID)
467:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
468:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** case HAL_PCD_MSPINIT_CB_ID :
469:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->MspInitCallback = HAL_PCD_MspInit;
470:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** break;
471:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
472:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** case HAL_PCD_MSPDEINIT_CB_ID :
473:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->MspDeInitCallback = HAL_PCD_MspDeInit;
474:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** break;
475:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
476:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** default :
477:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Update the error code */
478:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->ErrorCode |= HAL_PCD_ERROR_INVALID_CALLBACK;
479:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
480:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Return error status */
481:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** status = HAL_ERROR;
482:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** break;
483:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
484:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
485:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** else
486:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
487:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Update the error code */
488:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->ErrorCode |= HAL_PCD_ERROR_INVALID_CALLBACK;
489:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
490:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Return error status */
491:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** status = HAL_ERROR;
492:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
493:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
494:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Release Lock */
495:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** __HAL_UNLOCK(hpcd);
496:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** return status;
497:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
498:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
499:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /**
500:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @brief Register USB PCD Data OUT Stage Callback
501:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * To be used instead of the weak HAL_PCD_DataOutStageCallback() predefined callback
502:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @param hpcd PCD handle
503:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @param pCallback pointer to the USB PCD Data OUT Stage Callback function
504:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @retval HAL status
505:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** */
506:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** HAL_StatusTypeDef HAL_PCD_RegisterDataOutStageCallback(PCD_HandleTypeDef *hpcd, pPCD_DataOutStageCa
507:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
508:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** HAL_StatusTypeDef status = HAL_OK;
509:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
510:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** if (pCallback == NULL)
511:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
ARM GAS /tmp/ccYuHakw.s page 15
512:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Update the error code */
513:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->ErrorCode |= HAL_PCD_ERROR_INVALID_CALLBACK;
514:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
515:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** return HAL_ERROR;
516:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
517:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
518:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Process locked */
519:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** __HAL_LOCK(hpcd);
520:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
521:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** if (hpcd->State == HAL_PCD_STATE_READY)
522:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
523:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->DataOutStageCallback = pCallback;
524:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
525:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** else
526:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
527:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Update the error code */
528:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->ErrorCode |= HAL_PCD_ERROR_INVALID_CALLBACK;
529:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
530:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Return error status */
531:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** status = HAL_ERROR;
532:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
533:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
534:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Release Lock */
535:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** __HAL_UNLOCK(hpcd);
536:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
537:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** return status;
538:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
539:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
540:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /**
541:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @brief UnRegister the USB PCD Data OUT Stage Callback
542:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * USB PCD Data OUT Stage Callback is redirected to the weak HAL_PCD_DataOutStageCallback(
543:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @param hpcd PCD handle
544:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @retval HAL status
545:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** */
546:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** HAL_StatusTypeDef HAL_PCD_UnRegisterDataOutStageCallback(PCD_HandleTypeDef *hpcd)
547:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
548:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** HAL_StatusTypeDef status = HAL_OK;
549:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
550:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Process locked */
551:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** __HAL_LOCK(hpcd);
552:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
553:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** if (hpcd->State == HAL_PCD_STATE_READY)
554:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
555:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->DataOutStageCallback = HAL_PCD_DataOutStageCallback; /* Legacy weak DataOutStageCallback
556:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
557:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** else
558:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
559:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Update the error code */
560:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->ErrorCode |= HAL_PCD_ERROR_INVALID_CALLBACK;
561:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
562:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Return error status */
563:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** status = HAL_ERROR;
564:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
565:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
566:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Release Lock */
567:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** __HAL_UNLOCK(hpcd);
568:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
ARM GAS /tmp/ccYuHakw.s page 16
569:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** return status;
570:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
571:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
572:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /**
573:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @brief Register USB PCD Data IN Stage Callback
574:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * To be used instead of the weak HAL_PCD_DataInStageCallback() predefined callback
575:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @param hpcd PCD handle
576:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @param pCallback pointer to the USB PCD Data IN Stage Callback function
577:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @retval HAL status
578:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** */
579:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** HAL_StatusTypeDef HAL_PCD_RegisterDataInStageCallback(PCD_HandleTypeDef *hpcd, pPCD_DataInStageCall
580:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
581:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** HAL_StatusTypeDef status = HAL_OK;
582:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
583:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** if (pCallback == NULL)
584:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
585:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Update the error code */
586:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->ErrorCode |= HAL_PCD_ERROR_INVALID_CALLBACK;
587:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
588:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** return HAL_ERROR;
589:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
590:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
591:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Process locked */
592:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** __HAL_LOCK(hpcd);
593:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
594:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** if (hpcd->State == HAL_PCD_STATE_READY)
595:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
596:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->DataInStageCallback = pCallback;
597:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
598:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** else
599:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
600:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Update the error code */
601:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->ErrorCode |= HAL_PCD_ERROR_INVALID_CALLBACK;
602:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
603:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Return error status */
604:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** status = HAL_ERROR;
605:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
606:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
607:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Release Lock */
608:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** __HAL_UNLOCK(hpcd);
609:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
610:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** return status;
611:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
612:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
613:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /**
614:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @brief UnRegister the USB PCD Data IN Stage Callback
615:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * USB PCD Data OUT Stage Callback is redirected to the weak HAL_PCD_DataInStageCallback()
616:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @param hpcd PCD handle
617:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @retval HAL status
618:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** */
619:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** HAL_StatusTypeDef HAL_PCD_UnRegisterDataInStageCallback(PCD_HandleTypeDef *hpcd)
620:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
621:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** HAL_StatusTypeDef status = HAL_OK;
622:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
623:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Process locked */
624:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** __HAL_LOCK(hpcd);
625:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
ARM GAS /tmp/ccYuHakw.s page 17
626:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** if (hpcd->State == HAL_PCD_STATE_READY)
627:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
628:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->DataInStageCallback = HAL_PCD_DataInStageCallback; /* Legacy weak DataInStageCallback */
629:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
630:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** else
631:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
632:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Update the error code */
633:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->ErrorCode |= HAL_PCD_ERROR_INVALID_CALLBACK;
634:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
635:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Return error status */
636:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** status = HAL_ERROR;
637:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
638:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
639:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Release Lock */
640:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** __HAL_UNLOCK(hpcd);
641:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
642:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** return status;
643:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
644:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
645:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /**
646:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @brief Register USB PCD Iso OUT incomplete Callback
647:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * To be used instead of the weak HAL_PCD_ISOOUTIncompleteCallback() predefined callback
648:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @param hpcd PCD handle
649:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @param pCallback pointer to the USB PCD Iso OUT incomplete Callback function
650:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @retval HAL status
651:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** */
652:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** HAL_StatusTypeDef HAL_PCD_RegisterIsoOutIncpltCallback(PCD_HandleTypeDef *hpcd, pPCD_IsoOutIncpltCa
653:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
654:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** HAL_StatusTypeDef status = HAL_OK;
655:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
656:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** if (pCallback == NULL)
657:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
658:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Update the error code */
659:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->ErrorCode |= HAL_PCD_ERROR_INVALID_CALLBACK;
660:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
661:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** return HAL_ERROR;
662:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
663:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
664:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Process locked */
665:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** __HAL_LOCK(hpcd);
666:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
667:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** if (hpcd->State == HAL_PCD_STATE_READY)
668:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
669:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->ISOOUTIncompleteCallback = pCallback;
670:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
671:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** else
672:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
673:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Update the error code */
674:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->ErrorCode |= HAL_PCD_ERROR_INVALID_CALLBACK;
675:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
676:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Return error status */
677:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** status = HAL_ERROR;
678:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
679:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
680:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Release Lock */
681:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** __HAL_UNLOCK(hpcd);
682:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
ARM GAS /tmp/ccYuHakw.s page 18
683:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** return status;
684:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
685:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
686:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /**
687:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @brief UnRegister the USB PCD Iso OUT incomplete Callback
688:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * USB PCD Iso OUT incomplete Callback is redirected to the weak HAL_PCD_ISOOUTIncompleteC
689:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @param hpcd PCD handle
690:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @retval HAL status
691:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** */
692:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** HAL_StatusTypeDef HAL_PCD_UnRegisterIsoOutIncpltCallback(PCD_HandleTypeDef *hpcd)
693:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
694:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** HAL_StatusTypeDef status = HAL_OK;
695:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
696:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Process locked */
697:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** __HAL_LOCK(hpcd);
698:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
699:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** if (hpcd->State == HAL_PCD_STATE_READY)
700:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
701:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->ISOOUTIncompleteCallback = HAL_PCD_ISOOUTIncompleteCallback; /* Legacy weak ISOOUTIncompl
702:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
703:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** else
704:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
705:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Update the error code */
706:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->ErrorCode |= HAL_PCD_ERROR_INVALID_CALLBACK;
707:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
708:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Return error status */
709:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** status = HAL_ERROR;
710:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
711:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
712:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Release Lock */
713:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** __HAL_UNLOCK(hpcd);
714:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
715:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** return status;
716:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
717:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
718:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /**
719:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @brief Register USB PCD Iso IN incomplete Callback
720:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * To be used instead of the weak HAL_PCD_ISOINIncompleteCallback() predefined callback
721:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @param hpcd PCD handle
722:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @param pCallback pointer to the USB PCD Iso IN incomplete Callback function
723:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @retval HAL status
724:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** */
725:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** HAL_StatusTypeDef HAL_PCD_RegisterIsoInIncpltCallback(PCD_HandleTypeDef *hpcd, pPCD_IsoInIncpltCall
726:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
727:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** HAL_StatusTypeDef status = HAL_OK;
728:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
729:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** if (pCallback == NULL)
730:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
731:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Update the error code */
732:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->ErrorCode |= HAL_PCD_ERROR_INVALID_CALLBACK;
733:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
734:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** return HAL_ERROR;
735:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
736:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
737:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Process locked */
738:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** __HAL_LOCK(hpcd);
739:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
ARM GAS /tmp/ccYuHakw.s page 19
740:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** if (hpcd->State == HAL_PCD_STATE_READY)
741:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
742:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->ISOINIncompleteCallback = pCallback;
743:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
744:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** else
745:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
746:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Update the error code */
747:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->ErrorCode |= HAL_PCD_ERROR_INVALID_CALLBACK;
748:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
749:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Return error status */
750:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** status = HAL_ERROR;
751:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
752:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
753:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Release Lock */
754:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** __HAL_UNLOCK(hpcd);
755:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
756:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** return status;
757:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
758:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
759:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /**
760:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @brief UnRegister the USB PCD Iso IN incomplete Callback
761:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * USB PCD Iso IN incomplete Callback is redirected to the weak HAL_PCD_ISOINIncompleteCal
762:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @param hpcd PCD handle
763:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @retval HAL status
764:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** */
765:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** HAL_StatusTypeDef HAL_PCD_UnRegisterIsoInIncpltCallback(PCD_HandleTypeDef *hpcd)
766:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
767:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** HAL_StatusTypeDef status = HAL_OK;
768:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
769:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Process locked */
770:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** __HAL_LOCK(hpcd);
771:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
772:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** if (hpcd->State == HAL_PCD_STATE_READY)
773:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
774:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->ISOINIncompleteCallback = HAL_PCD_ISOINIncompleteCallback; /* Legacy weak ISOINIncomplete
775:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
776:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** else
777:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
778:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Update the error code */
779:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->ErrorCode |= HAL_PCD_ERROR_INVALID_CALLBACK;
780:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
781:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Return error status */
782:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** status = HAL_ERROR;
783:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
784:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
785:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Release Lock */
786:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** __HAL_UNLOCK(hpcd);
787:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
788:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** return status;
789:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
790:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
791:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /**
792:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @brief Register USB PCD BCD Callback
793:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * To be used instead of the weak HAL_PCDEx_BCD_Callback() predefined callback
794:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @param hpcd PCD handle
795:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @param pCallback pointer to the USB PCD BCD Callback function
796:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @retval HAL status
ARM GAS /tmp/ccYuHakw.s page 20
797:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** */
798:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** HAL_StatusTypeDef HAL_PCD_RegisterBcdCallback(PCD_HandleTypeDef *hpcd, pPCD_BcdCallbackTypeDef pCal
799:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
800:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** HAL_StatusTypeDef status = HAL_OK;
801:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
802:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** if (pCallback == NULL)
803:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
804:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Update the error code */
805:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->ErrorCode |= HAL_PCD_ERROR_INVALID_CALLBACK;
806:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
807:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** return HAL_ERROR;
808:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
809:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
810:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Process locked */
811:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** __HAL_LOCK(hpcd);
812:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
813:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** if (hpcd->State == HAL_PCD_STATE_READY)
814:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
815:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->BCDCallback = pCallback;
816:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
817:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** else
818:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
819:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Update the error code */
820:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->ErrorCode |= HAL_PCD_ERROR_INVALID_CALLBACK;
821:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
822:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Return error status */
823:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** status = HAL_ERROR;
824:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
825:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
826:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Release Lock */
827:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** __HAL_UNLOCK(hpcd);
828:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
829:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** return status;
830:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
831:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
832:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /**
833:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @brief UnRegister the USB PCD BCD Callback
834:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * USB BCD Callback is redirected to the weak HAL_PCDEx_BCD_Callback() predefined callback
835:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @param hpcd PCD handle
836:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @retval HAL status
837:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** */
838:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** HAL_StatusTypeDef HAL_PCD_UnRegisterBcdCallback(PCD_HandleTypeDef *hpcd)
839:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
840:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** HAL_StatusTypeDef status = HAL_OK;
841:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
842:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Process locked */
843:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** __HAL_LOCK(hpcd);
844:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
845:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** if (hpcd->State == HAL_PCD_STATE_READY)
846:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
847:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->BCDCallback = HAL_PCDEx_BCD_Callback; /* Legacy weak HAL_PCDEx_BCD_Callback */
848:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
849:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** else
850:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
851:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Update the error code */
852:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->ErrorCode |= HAL_PCD_ERROR_INVALID_CALLBACK;
853:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
ARM GAS /tmp/ccYuHakw.s page 21
854:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Return error status */
855:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** status = HAL_ERROR;
856:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
857:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
858:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Release Lock */
859:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** __HAL_UNLOCK(hpcd);
860:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
861:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** return status;
862:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
863:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
864:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /**
865:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @brief Register USB PCD LPM Callback
866:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * To be used instead of the weak HAL_PCDEx_LPM_Callback() predefined callback
867:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @param hpcd PCD handle
868:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @param pCallback pointer to the USB PCD LPM Callback function
869:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @retval HAL status
870:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** */
871:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** HAL_StatusTypeDef HAL_PCD_RegisterLpmCallback(PCD_HandleTypeDef *hpcd, pPCD_LpmCallbackTypeDef pCal
872:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
873:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** HAL_StatusTypeDef status = HAL_OK;
874:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
875:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** if (pCallback == NULL)
876:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
877:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Update the error code */
878:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->ErrorCode |= HAL_PCD_ERROR_INVALID_CALLBACK;
879:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
880:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** return HAL_ERROR;
881:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
882:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
883:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Process locked */
884:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** __HAL_LOCK(hpcd);
885:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
886:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** if (hpcd->State == HAL_PCD_STATE_READY)
887:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
888:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->LPMCallback = pCallback;
889:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
890:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** else
891:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
892:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Update the error code */
893:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->ErrorCode |= HAL_PCD_ERROR_INVALID_CALLBACK;
894:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
895:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Return error status */
896:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** status = HAL_ERROR;
897:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
898:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
899:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Release Lock */
900:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** __HAL_UNLOCK(hpcd);
901:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
902:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** return status;
903:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
904:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
905:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /**
906:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @brief UnRegister the USB PCD LPM Callback
907:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * USB LPM Callback is redirected to the weak HAL_PCDEx_LPM_Callback() predefined callback
908:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @param hpcd PCD handle
909:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @retval HAL status
910:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** */
ARM GAS /tmp/ccYuHakw.s page 22
911:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** HAL_StatusTypeDef HAL_PCD_UnRegisterLpmCallback(PCD_HandleTypeDef *hpcd)
912:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
913:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** HAL_StatusTypeDef status = HAL_OK;
914:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
915:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Process locked */
916:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** __HAL_LOCK(hpcd);
917:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
918:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** if (hpcd->State == HAL_PCD_STATE_READY)
919:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
920:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->LPMCallback = HAL_PCDEx_LPM_Callback; /* Legacy weak HAL_PCDEx_LPM_Callback */
921:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
922:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** else
923:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
924:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Update the error code */
925:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->ErrorCode |= HAL_PCD_ERROR_INVALID_CALLBACK;
926:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
927:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Return error status */
928:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** status = HAL_ERROR;
929:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
930:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
931:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Release Lock */
932:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** __HAL_UNLOCK(hpcd);
933:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
934:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** return status;
935:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
936:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** #endif /* USE_HAL_PCD_REGISTER_CALLBACKS */
937:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
938:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /**
939:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @}
940:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** */
941:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
942:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /** @defgroup PCD_Exported_Functions_Group2 Input and Output operation functions
943:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @brief Data transfers functions
944:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** *
945:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** @verbatim
946:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** ===============================================================================
947:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** ##### IO operation functions #####
948:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** ===============================================================================
949:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** [..]
950:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** This subsection provides a set of functions allowing to manage the PCD data
951:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** transfers.
952:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
953:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** @endverbatim
954:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @{
955:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** */
956:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
957:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /**
958:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @brief Start the USB device
959:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @param hpcd PCD handle
960:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @retval HAL status
961:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** */
962:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** HAL_StatusTypeDef HAL_PCD_Start(PCD_HandleTypeDef *hpcd)
963:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
260 .loc 1 963 0
261 .cfi_startproc
262 @ args = 0, pretend = 0, frame = 0
263 @ frame_needed = 0, uses_anonymous_args = 0
ARM GAS /tmp/ccYuHakw.s page 23
264 .LVL20:
265 0000 70B5 push {r4, r5, r6, lr}
266 .LCFI2:
267 .cfi_def_cfa_offset 16
268 .cfi_offset 4, -16
269 .cfi_offset 5, -12
270 .cfi_offset 6, -8
271 .cfi_offset 14, -4
272 0002 0400 movs r4, r0
964:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** __HAL_LOCK(hpcd);
273 .loc 1 964 0
274 0004 8A23 movs r3, #138
275 0006 9B00 lsls r3, r3, #2
276 0008 C35C ldrb r3, [r0, r3]
277 000a 012B cmp r3, #1
278 000c 0DD0 beq .L18
279 .loc 1 964 0 is_stmt 0 discriminator 2
280 000e 8A25 movs r5, #138
281 0010 AD00 lsls r5, r5, #2
282 0012 0123 movs r3, #1
283 0014 4355 strb r3, [r0, r5]
965:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** (void)USB_DevConnect(hpcd->Instance);
284 .loc 1 965 0 is_stmt 1 discriminator 2
285 0016 0068 ldr r0, [r0]
286 .LVL21:
287 0018 FFF7FEFF bl USB_DevConnect
288 .LVL22:
966:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** __HAL_PCD_ENABLE(hpcd);
289 .loc 1 966 0 discriminator 2
290 001c 2068 ldr r0, [r4]
291 001e FFF7FEFF bl USB_EnableGlobalInt
292 .LVL23:
967:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** __HAL_UNLOCK(hpcd);
293 .loc 1 967 0 discriminator 2
294 0022 0023 movs r3, #0
295 0024 6355 strb r3, [r4, r5]
968:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** return HAL_OK;
296 .loc 1 968 0 discriminator 2
297 0026 0020 movs r0, #0
298 .L17:
969:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
299 .loc 1 969 0
300 @ sp needed
301 .LVL24:
302 0028 70BD pop {r4, r5, r6, pc}
303 .LVL25:
304 .L18:
964:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** (void)USB_DevConnect(hpcd->Instance);
305 .loc 1 964 0
306 002a 0220 movs r0, #2
307 .LVL26:
308 002c FCE7 b .L17
309 .cfi_endproc
310 .LFE44:
312 .section .text.HAL_PCD_Stop,"ax",%progbits
313 .align 1
314 .global HAL_PCD_Stop
ARM GAS /tmp/ccYuHakw.s page 24
315 .syntax unified
316 .code 16
317 .thumb_func
318 .fpu softvfp
320 HAL_PCD_Stop:
321 .LFB45:
970:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
971:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /**
972:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @brief Stop the USB device.
973:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @param hpcd PCD handle
974:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @retval HAL status
975:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** */
976:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** HAL_StatusTypeDef HAL_PCD_Stop(PCD_HandleTypeDef *hpcd)
977:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
322 .loc 1 977 0
323 .cfi_startproc
324 @ args = 0, pretend = 0, frame = 0
325 @ frame_needed = 0, uses_anonymous_args = 0
326 .LVL27:
327 0000 70B5 push {r4, r5, r6, lr}
328 .LCFI3:
329 .cfi_def_cfa_offset 16
330 .cfi_offset 4, -16
331 .cfi_offset 5, -12
332 .cfi_offset 6, -8
333 .cfi_offset 14, -4
334 0002 0400 movs r4, r0
978:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** __HAL_LOCK(hpcd);
335 .loc 1 978 0
336 0004 8A23 movs r3, #138
337 0006 9B00 lsls r3, r3, #2
338 0008 C35C ldrb r3, [r0, r3]
339 000a 012B cmp r3, #1
340 000c 0DD0 beq .L21
341 .loc 1 978 0 is_stmt 0 discriminator 2
342 000e 8A25 movs r5, #138
343 0010 AD00 lsls r5, r5, #2
344 0012 0123 movs r3, #1
345 0014 4355 strb r3, [r0, r5]
979:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** __HAL_PCD_DISABLE(hpcd);
346 .loc 1 979 0 is_stmt 1 discriminator 2
347 0016 0068 ldr r0, [r0]
348 .LVL28:
349 0018 FFF7FEFF bl USB_DisableGlobalInt
350 .LVL29:
980:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
981:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** (void)USB_StopDevice(hpcd->Instance);
351 .loc 1 981 0 discriminator 2
352 001c 2068 ldr r0, [r4]
353 001e FFF7FEFF bl USB_StopDevice
354 .LVL30:
982:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
983:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** __HAL_UNLOCK(hpcd);
355 .loc 1 983 0 discriminator 2
356 0022 0023 movs r3, #0
357 0024 6355 strb r3, [r4, r5]
984:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
ARM GAS /tmp/ccYuHakw.s page 25
985:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** return HAL_OK;
358 .loc 1 985 0 discriminator 2
359 0026 0020 movs r0, #0
360 .L20:
986:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
361 .loc 1 986 0
362 @ sp needed
363 .LVL31:
364 0028 70BD pop {r4, r5, r6, pc}
365 .LVL32:
366 .L21:
978:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** __HAL_PCD_DISABLE(hpcd);
367 .loc 1 978 0
368 002a 0220 movs r0, #2
369 .LVL33:
370 002c FCE7 b .L20
371 .cfi_endproc
372 .LFE45:
374 .section .text.HAL_PCD_DeInit,"ax",%progbits
375 .align 1
376 .global HAL_PCD_DeInit
377 .syntax unified
378 .code 16
379 .thumb_func
380 .fpu softvfp
382 HAL_PCD_DeInit:
383 .LFB41:
217:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Check the PCD handle allocation */
384 .loc 1 217 0
385 .cfi_startproc
386 @ args = 0, pretend = 0, frame = 0
387 @ frame_needed = 0, uses_anonymous_args = 0
388 .LVL34:
389 0000 70B5 push {r4, r5, r6, lr}
390 .LCFI4:
391 .cfi_def_cfa_offset 16
392 .cfi_offset 4, -16
393 .cfi_offset 5, -12
394 .cfi_offset 6, -8
395 .cfi_offset 14, -4
396 0002 041E subs r4, r0, #0
219:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
397 .loc 1 219 0
398 0004 0BD0 beq .L24
224:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
399 .loc 1 224 0
400 0006 074D ldr r5, .L25
401 0008 0323 movs r3, #3
402 000a 4355 strb r3, [r0, r5]
227:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
403 .loc 1 227 0
404 000c FFF7FEFF bl HAL_PCD_Stop
405 .LVL35:
239:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** #endif /* USE_HAL_PCD_REGISTER_CALLBACKS */
406 .loc 1 239 0
407 0010 2000 movs r0, r4
408 0012 FFF7FEFF bl HAL_PCD_MspDeInit
ARM GAS /tmp/ccYuHakw.s page 26
409 .LVL36:
242:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
410 .loc 1 242 0
411 0016 0023 movs r3, #0
412 0018 6355 strb r3, [r4, r5]
244:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
413 .loc 1 244 0
414 001a 0020 movs r0, #0
415 .L23:
245:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
416 .loc 1 245 0
417 @ sp needed
418 .LVL37:
419 001c 70BD pop {r4, r5, r6, pc}
420 .LVL38:
421 .L24:
221:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
422 .loc 1 221 0
423 001e 0120 movs r0, #1
424 .LVL39:
425 0020 FCE7 b .L23
426 .L26:
427 0022 C046 .align 2
428 .L25:
429 0024 29020000 .word 553
430 .cfi_endproc
431 .LFE41:
433 .section .text.HAL_PCD_DataOutStageCallback,"ax",%progbits
434 .align 1
435 .weak HAL_PCD_DataOutStageCallback
436 .syntax unified
437 .code 16
438 .thumb_func
439 .fpu softvfp
441 HAL_PCD_DataOutStageCallback:
442 .LFB47:
987:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
988:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
989:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /**
990:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @brief This function handles PCD interrupt request.
991:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @param hpcd PCD handle
992:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @retval HAL status
993:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** */
994:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** void HAL_PCD_IRQHandler(PCD_HandleTypeDef *hpcd)
995:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
996:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** if (__HAL_PCD_GET_FLAG(hpcd, USB_ISTR_CTR))
997:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
998:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* servicing of the endpoint correct transfer interrupt */
999:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* clear of the CTR flag into the sub */
1000:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** (void)PCD_EP_ISR_Handler(hpcd);
1001:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
1002:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1003:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** if (__HAL_PCD_GET_FLAG(hpcd, USB_ISTR_RESET))
1004:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
1005:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** __HAL_PCD_CLEAR_FLAG(hpcd, USB_ISTR_RESET);
1006:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1007:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** #if (USE_HAL_PCD_REGISTER_CALLBACKS == 1U)
ARM GAS /tmp/ccYuHakw.s page 27
1008:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->ResetCallback(hpcd);
1009:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** #else
1010:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** HAL_PCD_ResetCallback(hpcd);
1011:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** #endif /* USE_HAL_PCD_REGISTER_CALLBACKS */
1012:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1013:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** (void)HAL_PCD_SetAddress(hpcd, 0U);
1014:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
1015:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1016:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** if (__HAL_PCD_GET_FLAG(hpcd, USB_ISTR_PMAOVR))
1017:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
1018:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** __HAL_PCD_CLEAR_FLAG(hpcd, USB_ISTR_PMAOVR);
1019:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
1020:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1021:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** if (__HAL_PCD_GET_FLAG(hpcd, USB_ISTR_ERR))
1022:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
1023:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** __HAL_PCD_CLEAR_FLAG(hpcd, USB_ISTR_ERR);
1024:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
1025:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1026:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** if (__HAL_PCD_GET_FLAG(hpcd, USB_ISTR_WKUP))
1027:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
1028:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->Instance->CNTR &= (uint16_t) ~(USB_CNTR_LPMODE);
1029:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->Instance->CNTR &= (uint16_t) ~(USB_CNTR_FSUSP);
1030:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1031:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** if (hpcd->LPM_State == LPM_L1)
1032:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
1033:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->LPM_State = LPM_L0;
1034:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** #if (USE_HAL_PCD_REGISTER_CALLBACKS == 1U)
1035:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->LPMCallback(hpcd, PCD_LPM_L0_ACTIVE);
1036:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** #else
1037:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** HAL_PCDEx_LPM_Callback(hpcd, PCD_LPM_L0_ACTIVE);
1038:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** #endif /* USE_HAL_PCD_REGISTER_CALLBACKS */
1039:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
1040:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1041:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** #if (USE_HAL_PCD_REGISTER_CALLBACKS == 1U)
1042:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->ResumeCallback(hpcd);
1043:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** #else
1044:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** HAL_PCD_ResumeCallback(hpcd);
1045:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** #endif /* USE_HAL_PCD_REGISTER_CALLBACKS */
1046:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1047:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** __HAL_PCD_CLEAR_FLAG(hpcd, USB_ISTR_WKUP);
1048:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
1049:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1050:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** if (__HAL_PCD_GET_FLAG(hpcd, USB_ISTR_SUSP))
1051:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
1052:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Force low-power mode in the macrocell */
1053:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->Instance->CNTR |= USB_CNTR_FSUSP;
1054:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1055:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* clear of the ISTR bit must be done after setting of CNTR_FSUSP */
1056:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** __HAL_PCD_CLEAR_FLAG(hpcd, USB_ISTR_SUSP);
1057:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1058:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->Instance->CNTR |= USB_CNTR_LPMODE;
1059:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1060:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** if (__HAL_PCD_GET_FLAG(hpcd, USB_ISTR_WKUP) == 0U)
1061:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
1062:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** #if (USE_HAL_PCD_REGISTER_CALLBACKS == 1U)
1063:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->SuspendCallback(hpcd);
1064:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** #else
ARM GAS /tmp/ccYuHakw.s page 28
1065:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** HAL_PCD_SuspendCallback(hpcd);
1066:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** #endif /* USE_HAL_PCD_REGISTER_CALLBACKS */
1067:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
1068:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
1069:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1070:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Handle LPM Interrupt */
1071:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** if (__HAL_PCD_GET_FLAG(hpcd, USB_ISTR_L1REQ))
1072:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
1073:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** __HAL_PCD_CLEAR_FLAG(hpcd, USB_ISTR_L1REQ);
1074:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** if (hpcd->LPM_State == LPM_L0)
1075:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
1076:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Force suspend and low-power mode before going to L1 state*/
1077:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->Instance->CNTR |= USB_CNTR_LPMODE;
1078:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->Instance->CNTR |= USB_CNTR_FSUSP;
1079:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1080:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->LPM_State = LPM_L1;
1081:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->BESL = ((uint32_t)hpcd->Instance->LPMCSR & USB_LPMCSR_BESL) >> 2;
1082:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** #if (USE_HAL_PCD_REGISTER_CALLBACKS == 1U)
1083:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->LPMCallback(hpcd, PCD_LPM_L1_ACTIVE);
1084:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** #else
1085:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** HAL_PCDEx_LPM_Callback(hpcd, PCD_LPM_L1_ACTIVE);
1086:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** #endif /* USE_HAL_PCD_REGISTER_CALLBACKS */
1087:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
1088:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** else
1089:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
1090:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** #if (USE_HAL_PCD_REGISTER_CALLBACKS == 1U)
1091:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->SuspendCallback(hpcd);
1092:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** #else
1093:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** HAL_PCD_SuspendCallback(hpcd);
1094:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** #endif /* USE_HAL_PCD_REGISTER_CALLBACKS */
1095:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
1096:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
1097:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1098:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** if (__HAL_PCD_GET_FLAG(hpcd, USB_ISTR_SOF))
1099:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
1100:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** __HAL_PCD_CLEAR_FLAG(hpcd, USB_ISTR_SOF);
1101:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1102:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** #if (USE_HAL_PCD_REGISTER_CALLBACKS == 1U)
1103:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->SOFCallback(hpcd);
1104:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** #else
1105:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** HAL_PCD_SOFCallback(hpcd);
1106:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** #endif /* USE_HAL_PCD_REGISTER_CALLBACKS */
1107:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
1108:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1109:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** if (__HAL_PCD_GET_FLAG(hpcd, USB_ISTR_ESOF))
1110:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
1111:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* clear ESOF flag in ISTR */
1112:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** __HAL_PCD_CLEAR_FLAG(hpcd, USB_ISTR_ESOF);
1113:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
1114:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
1115:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1116:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1117:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /**
1118:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @brief Data OUT stage callback.
1119:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @param hpcd PCD handle
1120:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @param epnum endpoint number
1121:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @retval None
ARM GAS /tmp/ccYuHakw.s page 29
1122:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** */
1123:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** __weak void HAL_PCD_DataOutStageCallback(PCD_HandleTypeDef *hpcd, uint8_t epnum)
1124:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
443 .loc 1 1124 0
444 .cfi_startproc
445 @ args = 0, pretend = 0, frame = 0
446 @ frame_needed = 0, uses_anonymous_args = 0
447 @ link register save eliminated.
448 .LVL40:
1125:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Prevent unused argument(s) compilation warning */
1126:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** UNUSED(hpcd);
1127:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** UNUSED(epnum);
1128:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1129:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* NOTE : This function should not be modified, when the callback is needed,
1130:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** the HAL_PCD_DataOutStageCallback could be implemented in the user file
1131:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** */
1132:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
449 .loc 1 1132 0
450 @ sp needed
451 0000 7047 bx lr
452 .cfi_endproc
453 .LFE47:
455 .section .text.HAL_PCD_DataInStageCallback,"ax",%progbits
456 .align 1
457 .weak HAL_PCD_DataInStageCallback
458 .syntax unified
459 .code 16
460 .thumb_func
461 .fpu softvfp
463 HAL_PCD_DataInStageCallback:
464 .LFB48:
1133:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1134:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /**
1135:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @brief Data IN stage callback
1136:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @param hpcd PCD handle
1137:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @param epnum endpoint number
1138:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @retval None
1139:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** */
1140:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** __weak void HAL_PCD_DataInStageCallback(PCD_HandleTypeDef *hpcd, uint8_t epnum)
1141:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
465 .loc 1 1141 0
466 .cfi_startproc
467 @ args = 0, pretend = 0, frame = 0
468 @ frame_needed = 0, uses_anonymous_args = 0
469 @ link register save eliminated.
470 .LVL41:
1142:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Prevent unused argument(s) compilation warning */
1143:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** UNUSED(hpcd);
1144:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** UNUSED(epnum);
1145:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1146:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* NOTE : This function should not be modified, when the callback is needed,
1147:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** the HAL_PCD_DataInStageCallback could be implemented in the user file
1148:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** */
1149:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
471 .loc 1 1149 0
472 @ sp needed
473 0000 7047 bx lr
ARM GAS /tmp/ccYuHakw.s page 30
474 .cfi_endproc
475 .LFE48:
477 .section .text.HAL_PCD_SetupStageCallback,"ax",%progbits
478 .align 1
479 .weak HAL_PCD_SetupStageCallback
480 .syntax unified
481 .code 16
482 .thumb_func
483 .fpu softvfp
485 HAL_PCD_SetupStageCallback:
486 .LFB49:
1150:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /**
1151:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @brief Setup stage callback
1152:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @param hpcd PCD handle
1153:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @retval None
1154:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** */
1155:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** __weak void HAL_PCD_SetupStageCallback(PCD_HandleTypeDef *hpcd)
1156:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
487 .loc 1 1156 0
488 .cfi_startproc
489 @ args = 0, pretend = 0, frame = 0
490 @ frame_needed = 0, uses_anonymous_args = 0
491 @ link register save eliminated.
492 .LVL42:
1157:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Prevent unused argument(s) compilation warning */
1158:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** UNUSED(hpcd);
1159:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1160:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* NOTE : This function should not be modified, when the callback is needed,
1161:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** the HAL_PCD_SetupStageCallback could be implemented in the user file
1162:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** */
1163:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
493 .loc 1 1163 0
494 @ sp needed
495 0000 7047 bx lr
496 .cfi_endproc
497 .LFE49:
499 .section .text.HAL_PCD_SOFCallback,"ax",%progbits
500 .align 1
501 .weak HAL_PCD_SOFCallback
502 .syntax unified
503 .code 16
504 .thumb_func
505 .fpu softvfp
507 HAL_PCD_SOFCallback:
508 .LFB50:
1164:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1165:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /**
1166:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @brief USB Start Of Frame callback.
1167:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @param hpcd PCD handle
1168:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @retval None
1169:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** */
1170:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** __weak void HAL_PCD_SOFCallback(PCD_HandleTypeDef *hpcd)
1171:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
509 .loc 1 1171 0
510 .cfi_startproc
511 @ args = 0, pretend = 0, frame = 0
512 @ frame_needed = 0, uses_anonymous_args = 0
ARM GAS /tmp/ccYuHakw.s page 31
513 @ link register save eliminated.
514 .LVL43:
1172:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Prevent unused argument(s) compilation warning */
1173:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** UNUSED(hpcd);
1174:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1175:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* NOTE : This function should not be modified, when the callback is needed,
1176:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** the HAL_PCD_SOFCallback could be implemented in the user file
1177:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** */
1178:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
515 .loc 1 1178 0
516 @ sp needed
517 0000 7047 bx lr
518 .cfi_endproc
519 .LFE50:
521 .section .text.HAL_PCD_ResetCallback,"ax",%progbits
522 .align 1
523 .weak HAL_PCD_ResetCallback
524 .syntax unified
525 .code 16
526 .thumb_func
527 .fpu softvfp
529 HAL_PCD_ResetCallback:
530 .LFB51:
1179:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1180:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /**
1181:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @brief USB Reset callback.
1182:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @param hpcd PCD handle
1183:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @retval None
1184:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** */
1185:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** __weak void HAL_PCD_ResetCallback(PCD_HandleTypeDef *hpcd)
1186:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
531 .loc 1 1186 0
532 .cfi_startproc
533 @ args = 0, pretend = 0, frame = 0
534 @ frame_needed = 0, uses_anonymous_args = 0
535 @ link register save eliminated.
536 .LVL44:
1187:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Prevent unused argument(s) compilation warning */
1188:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** UNUSED(hpcd);
1189:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1190:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* NOTE : This function should not be modified, when the callback is needed,
1191:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** the HAL_PCD_ResetCallback could be implemented in the user file
1192:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** */
1193:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
537 .loc 1 1193 0
538 @ sp needed
539 0000 7047 bx lr
540 .cfi_endproc
541 .LFE51:
543 .section .text.HAL_PCD_SuspendCallback,"ax",%progbits
544 .align 1
545 .weak HAL_PCD_SuspendCallback
546 .syntax unified
547 .code 16
548 .thumb_func
549 .fpu softvfp
551 HAL_PCD_SuspendCallback:
ARM GAS /tmp/ccYuHakw.s page 32
552 .LFB52:
1194:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1195:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /**
1196:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @brief Suspend event callback.
1197:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @param hpcd PCD handle
1198:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @retval None
1199:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** */
1200:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** __weak void HAL_PCD_SuspendCallback(PCD_HandleTypeDef *hpcd)
1201:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
553 .loc 1 1201 0
554 .cfi_startproc
555 @ args = 0, pretend = 0, frame = 0
556 @ frame_needed = 0, uses_anonymous_args = 0
557 @ link register save eliminated.
558 .LVL45:
1202:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Prevent unused argument(s) compilation warning */
1203:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** UNUSED(hpcd);
1204:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1205:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* NOTE : This function should not be modified, when the callback is needed,
1206:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** the HAL_PCD_SuspendCallback could be implemented in the user file
1207:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** */
1208:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
559 .loc 1 1208 0
560 @ sp needed
561 0000 7047 bx lr
562 .cfi_endproc
563 .LFE52:
565 .section .text.HAL_PCD_ResumeCallback,"ax",%progbits
566 .align 1
567 .weak HAL_PCD_ResumeCallback
568 .syntax unified
569 .code 16
570 .thumb_func
571 .fpu softvfp
573 HAL_PCD_ResumeCallback:
574 .LFB53:
1209:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1210:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /**
1211:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @brief Resume event callback.
1212:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @param hpcd PCD handle
1213:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @retval None
1214:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** */
1215:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** __weak void HAL_PCD_ResumeCallback(PCD_HandleTypeDef *hpcd)
1216:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
575 .loc 1 1216 0
576 .cfi_startproc
577 @ args = 0, pretend = 0, frame = 0
578 @ frame_needed = 0, uses_anonymous_args = 0
579 @ link register save eliminated.
580 .LVL46:
1217:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Prevent unused argument(s) compilation warning */
1218:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** UNUSED(hpcd);
1219:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1220:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* NOTE : This function should not be modified, when the callback is needed,
1221:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** the HAL_PCD_ResumeCallback could be implemented in the user file
1222:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** */
1223:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
ARM GAS /tmp/ccYuHakw.s page 33
581 .loc 1 1223 0
582 @ sp needed
583 0000 7047 bx lr
584 .cfi_endproc
585 .LFE53:
587 .section .text.HAL_PCD_ISOOUTIncompleteCallback,"ax",%progbits
588 .align 1
589 .weak HAL_PCD_ISOOUTIncompleteCallback
590 .syntax unified
591 .code 16
592 .thumb_func
593 .fpu softvfp
595 HAL_PCD_ISOOUTIncompleteCallback:
596 .LFB54:
1224:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1225:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /**
1226:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @brief Incomplete ISO OUT callback.
1227:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @param hpcd PCD handle
1228:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @param epnum endpoint number
1229:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @retval None
1230:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** */
1231:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** __weak void HAL_PCD_ISOOUTIncompleteCallback(PCD_HandleTypeDef *hpcd, uint8_t epnum)
1232:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
597 .loc 1 1232 0
598 .cfi_startproc
599 @ args = 0, pretend = 0, frame = 0
600 @ frame_needed = 0, uses_anonymous_args = 0
601 @ link register save eliminated.
602 .LVL47:
1233:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Prevent unused argument(s) compilation warning */
1234:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** UNUSED(hpcd);
1235:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** UNUSED(epnum);
1236:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1237:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* NOTE : This function should not be modified, when the callback is needed,
1238:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** the HAL_PCD_ISOOUTIncompleteCallback could be implemented in the user file
1239:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** */
1240:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
603 .loc 1 1240 0
604 @ sp needed
605 0000 7047 bx lr
606 .cfi_endproc
607 .LFE54:
609 .section .text.HAL_PCD_ISOINIncompleteCallback,"ax",%progbits
610 .align 1
611 .weak HAL_PCD_ISOINIncompleteCallback
612 .syntax unified
613 .code 16
614 .thumb_func
615 .fpu softvfp
617 HAL_PCD_ISOINIncompleteCallback:
618 .LFB55:
1241:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1242:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /**
1243:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @brief Incomplete ISO IN callback.
1244:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @param hpcd PCD handle
1245:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @param epnum endpoint number
1246:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @retval None
ARM GAS /tmp/ccYuHakw.s page 34
1247:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** */
1248:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** __weak void HAL_PCD_ISOINIncompleteCallback(PCD_HandleTypeDef *hpcd, uint8_t epnum)
1249:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
619 .loc 1 1249 0
620 .cfi_startproc
621 @ args = 0, pretend = 0, frame = 0
622 @ frame_needed = 0, uses_anonymous_args = 0
623 @ link register save eliminated.
624 .LVL48:
1250:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Prevent unused argument(s) compilation warning */
1251:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** UNUSED(hpcd);
1252:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** UNUSED(epnum);
1253:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1254:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* NOTE : This function should not be modified, when the callback is needed,
1255:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** the HAL_PCD_ISOINIncompleteCallback could be implemented in the user file
1256:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** */
1257:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
625 .loc 1 1257 0
626 @ sp needed
627 0000 7047 bx lr
628 .cfi_endproc
629 .LFE55:
631 .section .text.HAL_PCD_ConnectCallback,"ax",%progbits
632 .align 1
633 .weak HAL_PCD_ConnectCallback
634 .syntax unified
635 .code 16
636 .thumb_func
637 .fpu softvfp
639 HAL_PCD_ConnectCallback:
640 .LFB56:
1258:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1259:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /**
1260:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @brief Connection event callback.
1261:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @param hpcd PCD handle
1262:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @retval None
1263:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** */
1264:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** __weak void HAL_PCD_ConnectCallback(PCD_HandleTypeDef *hpcd)
1265:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
641 .loc 1 1265 0
642 .cfi_startproc
643 @ args = 0, pretend = 0, frame = 0
644 @ frame_needed = 0, uses_anonymous_args = 0
645 @ link register save eliminated.
646 .LVL49:
1266:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Prevent unused argument(s) compilation warning */
1267:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** UNUSED(hpcd);
1268:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1269:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* NOTE : This function should not be modified, when the callback is needed,
1270:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** the HAL_PCD_ConnectCallback could be implemented in the user file
1271:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** */
1272:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
647 .loc 1 1272 0
648 @ sp needed
649 0000 7047 bx lr
650 .cfi_endproc
651 .LFE56:
ARM GAS /tmp/ccYuHakw.s page 35
653 .section .text.HAL_PCD_DisconnectCallback,"ax",%progbits
654 .align 1
655 .weak HAL_PCD_DisconnectCallback
656 .syntax unified
657 .code 16
658 .thumb_func
659 .fpu softvfp
661 HAL_PCD_DisconnectCallback:
662 .LFB57:
1273:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1274:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /**
1275:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @brief Disconnection event callback.
1276:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @param hpcd PCD handle
1277:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @retval None
1278:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** */
1279:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** __weak void HAL_PCD_DisconnectCallback(PCD_HandleTypeDef *hpcd)
1280:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
663 .loc 1 1280 0
664 .cfi_startproc
665 @ args = 0, pretend = 0, frame = 0
666 @ frame_needed = 0, uses_anonymous_args = 0
667 @ link register save eliminated.
668 .LVL50:
1281:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Prevent unused argument(s) compilation warning */
1282:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** UNUSED(hpcd);
1283:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1284:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* NOTE : This function should not be modified, when the callback is needed,
1285:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** the HAL_PCD_DisconnectCallback could be implemented in the user file
1286:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** */
1287:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
669 .loc 1 1287 0
670 @ sp needed
671 0000 7047 bx lr
672 .cfi_endproc
673 .LFE57:
675 .section .text.HAL_PCD_DevConnect,"ax",%progbits
676 .align 1
677 .global HAL_PCD_DevConnect
678 .syntax unified
679 .code 16
680 .thumb_func
681 .fpu softvfp
683 HAL_PCD_DevConnect:
684 .LFB58:
1288:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1289:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /**
1290:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @}
1291:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** */
1292:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1293:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /** @defgroup PCD_Exported_Functions_Group3 Peripheral Control functions
1294:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @brief management functions
1295:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** *
1296:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** @verbatim
1297:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** ===============================================================================
1298:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** ##### Peripheral Control functions #####
1299:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** ===============================================================================
1300:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** [..]
ARM GAS /tmp/ccYuHakw.s page 36
1301:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** This subsection provides a set of functions allowing to control the PCD data
1302:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** transfers.
1303:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1304:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** @endverbatim
1305:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @{
1306:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** */
1307:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1308:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /**
1309:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @brief Connect the USB device
1310:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @param hpcd PCD handle
1311:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @retval HAL status
1312:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** */
1313:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** HAL_StatusTypeDef HAL_PCD_DevConnect(PCD_HandleTypeDef *hpcd)
1314:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
685 .loc 1 1314 0
686 .cfi_startproc
687 @ args = 0, pretend = 0, frame = 0
688 @ frame_needed = 0, uses_anonymous_args = 0
689 .LVL51:
690 0000 70B5 push {r4, r5, r6, lr}
691 .LCFI5:
692 .cfi_def_cfa_offset 16
693 .cfi_offset 4, -16
694 .cfi_offset 5, -12
695 .cfi_offset 6, -8
696 .cfi_offset 14, -4
697 0002 0400 movs r4, r0
1315:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** __HAL_LOCK(hpcd);
698 .loc 1 1315 0
699 0004 8A23 movs r3, #138
700 0006 9B00 lsls r3, r3, #2
701 0008 C35C ldrb r3, [r0, r3]
702 000a 012B cmp r3, #1
703 000c 0AD0 beq .L40
704 .loc 1 1315 0 is_stmt 0 discriminator 2
705 000e 8A25 movs r5, #138
706 0010 AD00 lsls r5, r5, #2
707 0012 0123 movs r3, #1
708 0014 4355 strb r3, [r0, r5]
1316:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** (void)USB_DevConnect(hpcd->Instance);
709 .loc 1 1316 0 is_stmt 1 discriminator 2
710 0016 0068 ldr r0, [r0]
711 .LVL52:
712 0018 FFF7FEFF bl USB_DevConnect
713 .LVL53:
1317:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** __HAL_UNLOCK(hpcd);
714 .loc 1 1317 0 discriminator 2
715 001c 0023 movs r3, #0
716 001e 6355 strb r3, [r4, r5]
1318:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** return HAL_OK;
717 .loc 1 1318 0 discriminator 2
718 0020 0020 movs r0, #0
719 .L39:
1319:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
720 .loc 1 1319 0
721 @ sp needed
722 .LVL54:
ARM GAS /tmp/ccYuHakw.s page 37
723 0022 70BD pop {r4, r5, r6, pc}
724 .LVL55:
725 .L40:
1315:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** (void)USB_DevConnect(hpcd->Instance);
726 .loc 1 1315 0
727 0024 0220 movs r0, #2
728 .LVL56:
729 0026 FCE7 b .L39
730 .cfi_endproc
731 .LFE58:
733 .section .text.HAL_PCD_DevDisconnect,"ax",%progbits
734 .align 1
735 .global HAL_PCD_DevDisconnect
736 .syntax unified
737 .code 16
738 .thumb_func
739 .fpu softvfp
741 HAL_PCD_DevDisconnect:
742 .LFB59:
1320:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1321:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /**
1322:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @brief Disconnect the USB device.
1323:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @param hpcd PCD handle
1324:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @retval HAL status
1325:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** */
1326:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** HAL_StatusTypeDef HAL_PCD_DevDisconnect(PCD_HandleTypeDef *hpcd)
1327:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
743 .loc 1 1327 0
744 .cfi_startproc
745 @ args = 0, pretend = 0, frame = 0
746 @ frame_needed = 0, uses_anonymous_args = 0
747 .LVL57:
748 0000 70B5 push {r4, r5, r6, lr}
749 .LCFI6:
750 .cfi_def_cfa_offset 16
751 .cfi_offset 4, -16
752 .cfi_offset 5, -12
753 .cfi_offset 6, -8
754 .cfi_offset 14, -4
755 0002 0400 movs r4, r0
1328:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** __HAL_LOCK(hpcd);
756 .loc 1 1328 0
757 0004 8A23 movs r3, #138
758 0006 9B00 lsls r3, r3, #2
759 0008 C35C ldrb r3, [r0, r3]
760 000a 012B cmp r3, #1
761 000c 0AD0 beq .L43
762 .loc 1 1328 0 is_stmt 0 discriminator 2
763 000e 8A25 movs r5, #138
764 0010 AD00 lsls r5, r5, #2
765 0012 0123 movs r3, #1
766 0014 4355 strb r3, [r0, r5]
1329:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** (void)USB_DevDisconnect(hpcd->Instance);
767 .loc 1 1329 0 is_stmt 1 discriminator 2
768 0016 0068 ldr r0, [r0]
769 .LVL58:
770 0018 FFF7FEFF bl USB_DevDisconnect
ARM GAS /tmp/ccYuHakw.s page 38
771 .LVL59:
1330:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** __HAL_UNLOCK(hpcd);
772 .loc 1 1330 0 discriminator 2
773 001c 0023 movs r3, #0
774 001e 6355 strb r3, [r4, r5]
1331:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** return HAL_OK;
775 .loc 1 1331 0 discriminator 2
776 0020 0020 movs r0, #0
777 .L42:
1332:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
778 .loc 1 1332 0
779 @ sp needed
780 .LVL60:
781 0022 70BD pop {r4, r5, r6, pc}
782 .LVL61:
783 .L43:
1328:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** (void)USB_DevDisconnect(hpcd->Instance);
784 .loc 1 1328 0
785 0024 0220 movs r0, #2
786 .LVL62:
787 0026 FCE7 b .L42
788 .cfi_endproc
789 .LFE59:
791 .section .text.HAL_PCD_SetAddress,"ax",%progbits
792 .align 1
793 .global HAL_PCD_SetAddress
794 .syntax unified
795 .code 16
796 .thumb_func
797 .fpu softvfp
799 HAL_PCD_SetAddress:
800 .LFB60:
1333:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1334:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /**
1335:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @brief Set the USB Device address.
1336:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @param hpcd PCD handle
1337:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @param address new device address
1338:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @retval HAL status
1339:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** */
1340:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** HAL_StatusTypeDef HAL_PCD_SetAddress(PCD_HandleTypeDef *hpcd, uint8_t address)
1341:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
801 .loc 1 1341 0
802 .cfi_startproc
803 @ args = 0, pretend = 0, frame = 0
804 @ frame_needed = 0, uses_anonymous_args = 0
805 .LVL63:
806 0000 70B5 push {r4, r5, r6, lr}
807 .LCFI7:
808 .cfi_def_cfa_offset 16
809 .cfi_offset 4, -16
810 .cfi_offset 5, -12
811 .cfi_offset 6, -8
812 .cfi_offset 14, -4
813 0002 0400 movs r4, r0
1342:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** __HAL_LOCK(hpcd);
814 .loc 1 1342 0
815 0004 8A23 movs r3, #138
ARM GAS /tmp/ccYuHakw.s page 39
816 0006 9B00 lsls r3, r3, #2
817 0008 C35C ldrb r3, [r0, r3]
818 000a 012B cmp r3, #1
819 000c 0CD0 beq .L46
820 .loc 1 1342 0 is_stmt 0 discriminator 2
821 000e 8A25 movs r5, #138
822 0010 AD00 lsls r5, r5, #2
823 0012 0123 movs r3, #1
824 0014 4355 strb r3, [r0, r5]
1343:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->USB_Address = address;
825 .loc 1 1343 0 is_stmt 1 discriminator 2
826 0016 2333 adds r3, r3, #35
827 0018 C154 strb r1, [r0, r3]
1344:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** (void)USB_SetDevAddress(hpcd->Instance, address);
828 .loc 1 1344 0 discriminator 2
829 001a 0068 ldr r0, [r0]
830 .LVL64:
831 001c FFF7FEFF bl USB_SetDevAddress
832 .LVL65:
1345:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** __HAL_UNLOCK(hpcd);
833 .loc 1 1345 0 discriminator 2
834 0020 0023 movs r3, #0
835 0022 6355 strb r3, [r4, r5]
1346:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** return HAL_OK;
836 .loc 1 1346 0 discriminator 2
837 0024 0020 movs r0, #0
838 .L45:
1347:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
839 .loc 1 1347 0
840 @ sp needed
841 .LVL66:
842 0026 70BD pop {r4, r5, r6, pc}
843 .LVL67:
844 .L46:
1342:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->USB_Address = address;
845 .loc 1 1342 0
846 0028 0220 movs r0, #2
847 .LVL68:
848 002a FCE7 b .L45
849 .cfi_endproc
850 .LFE60:
852 .section .text.HAL_PCD_EP_Open,"ax",%progbits
853 .align 1
854 .global HAL_PCD_EP_Open
855 .syntax unified
856 .code 16
857 .thumb_func
858 .fpu softvfp
860 HAL_PCD_EP_Open:
861 .LFB61:
1348:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /**
1349:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @brief Open and configure an endpoint.
1350:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @param hpcd PCD handle
1351:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @param ep_addr endpoint address
1352:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @param ep_mps endpoint max packet size
1353:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @param ep_type endpoint type
1354:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @retval HAL status
ARM GAS /tmp/ccYuHakw.s page 40
1355:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** */
1356:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** HAL_StatusTypeDef HAL_PCD_EP_Open(PCD_HandleTypeDef *hpcd, uint8_t ep_addr, uint16_t ep_mps, uint8_
1357:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
862 .loc 1 1357 0
863 .cfi_startproc
864 @ args = 0, pretend = 0, frame = 0
865 @ frame_needed = 0, uses_anonymous_args = 0
866 .LVL69:
867 0000 70B5 push {r4, r5, r6, lr}
868 .LCFI8:
869 .cfi_def_cfa_offset 16
870 .cfi_offset 4, -16
871 .cfi_offset 5, -12
872 .cfi_offset 6, -8
873 .cfi_offset 14, -4
874 0002 0500 movs r5, r0
875 .LVL70:
1358:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** HAL_StatusTypeDef ret = HAL_OK;
1359:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** PCD_EPTypeDef *ep;
1360:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1361:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** if ((ep_addr & 0x80U) == 0x80U)
876 .loc 1 1361 0
877 0004 48B2 sxtb r0, r1
878 .LVL71:
879 0006 0028 cmp r0, #0
880 0008 27DB blt .L54
1362:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
1363:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** ep = &hpcd->IN_ep[ep_addr & EP_ADDR_MSK];
1364:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** ep->is_in = 1U;
1365:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
1366:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** else
1367:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
1368:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** ep = &hpcd->OUT_ep[ep_addr & EP_ADDR_MSK];
881 .loc 1 1368 0
882 000a 0724 movs r4, #7
883 000c 0C40 ands r4, r1
884 000e 6401 lsls r4, r4, #5
885 0010 2000 movs r0, r4
886 0012 2930 adds r0, r0, #41
887 0014 FF30 adds r0, r0, #255
888 0016 2818 adds r0, r5, r0
889 .LVL72:
1369:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** ep->is_in = 0U;
890 .loc 1 1369 0
891 0018 2C19 adds r4, r5, r4
892 001a 2A34 adds r4, r4, #42
893 001c FF34 adds r4, r4, #255
894 001e 0026 movs r6, #0
895 0020 2670 strb r6, [r4]
896 .L49:
1370:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
1371:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1372:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** ep->num = ep_addr & EP_ADDR_MSK;
897 .loc 1 1372 0
898 0022 0724 movs r4, #7
899 0024 2140 ands r1, r4
900 .LVL73:
ARM GAS /tmp/ccYuHakw.s page 41
901 0026 0170 strb r1, [r0]
1373:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** ep->maxpacket = ep_mps;
902 .loc 1 1373 0
903 0028 0261 str r2, [r0, #16]
1374:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** ep->type = ep_type;
904 .loc 1 1374 0
905 002a C370 strb r3, [r0, #3]
1375:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1376:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** if (ep->is_in != 0U)
906 .loc 1 1376 0
907 002c 4278 ldrb r2, [r0, #1]
908 .LVL74:
909 002e 002A cmp r2, #0
910 0030 00D0 beq .L50
1377:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
1378:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Assign a Tx FIFO */
1379:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** ep->tx_fifo_num = ep->num;
911 .loc 1 1379 0
912 0032 C181 strh r1, [r0, #14]
913 .L50:
1380:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
1381:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Set initial data PID. */
1382:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** if (ep_type == EP_TYPE_BULK)
914 .loc 1 1382 0
915 0034 022B cmp r3, #2
916 0036 1BD0 beq .L55
917 .LVL75:
918 .L51:
1383:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
1384:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** ep->data_pid_start = 0U;
1385:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
1386:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1387:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** __HAL_LOCK(hpcd);
919 .loc 1 1387 0
920 0038 8A23 movs r3, #138
921 003a 9B00 lsls r3, r3, #2
922 003c EB5C ldrb r3, [r5, r3]
923 003e 012B cmp r3, #1
924 0040 19D0 beq .L53
925 .loc 1 1387 0 is_stmt 0 discriminator 2
926 0042 8A24 movs r4, #138
927 0044 A400 lsls r4, r4, #2
928 0046 0123 movs r3, #1
929 0048 2B55 strb r3, [r5, r4]
930 .LVL76:
1388:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** (void)USB_ActivateEndpoint(hpcd->Instance, ep);
931 .loc 1 1388 0 is_stmt 1 discriminator 2
932 004a 0100 movs r1, r0
933 004c 2868 ldr r0, [r5]
934 .LVL77:
935 004e FFF7FEFF bl USB_ActivateEndpoint
936 .LVL78:
1389:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** __HAL_UNLOCK(hpcd);
937 .loc 1 1389 0 discriminator 2
938 0052 0023 movs r3, #0
939 0054 2B55 strb r3, [r5, r4]
1390:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
ARM GAS /tmp/ccYuHakw.s page 42
1391:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** return ret;
940 .loc 1 1391 0 discriminator 2
941 0056 0020 movs r0, #0
942 .L52:
1392:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
943 .loc 1 1392 0
944 @ sp needed
945 .LVL79:
946 0058 70BD pop {r4, r5, r6, pc}
947 .LVL80:
948 .L54:
1363:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** ep->is_in = 1U;
949 .loc 1 1363 0
950 005a 0724 movs r4, #7
951 005c 0C40 ands r4, r1
952 005e 6401 lsls r4, r4, #5
953 0060 2000 movs r0, r4
954 0062 2830 adds r0, r0, #40
955 0064 2818 adds r0, r5, r0
956 .LVL81:
1364:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
957 .loc 1 1364 0
958 0066 2C19 adds r4, r5, r4
959 0068 2934 adds r4, r4, #41
960 006a 0126 movs r6, #1
961 006c 2670 strb r6, [r4]
962 006e D8E7 b .L49
963 .LVL82:
964 .L55:
1384:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
965 .loc 1 1384 0
966 0070 0023 movs r3, #0
967 .LVL83:
968 0072 0371 strb r3, [r0, #4]
969 0074 E0E7 b .L51
970 .L53:
1387:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** (void)USB_ActivateEndpoint(hpcd->Instance, ep);
971 .loc 1 1387 0
972 0076 0220 movs r0, #2
973 .LVL84:
974 0078 EEE7 b .L52
975 .cfi_endproc
976 .LFE61:
978 .section .text.HAL_PCD_EP_Close,"ax",%progbits
979 .align 1
980 .global HAL_PCD_EP_Close
981 .syntax unified
982 .code 16
983 .thumb_func
984 .fpu softvfp
986 HAL_PCD_EP_Close:
987 .LFB62:
1393:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1394:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /**
1395:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @brief Deactivate an endpoint.
1396:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @param hpcd PCD handle
1397:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @param ep_addr endpoint address
ARM GAS /tmp/ccYuHakw.s page 43
1398:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @retval HAL status
1399:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** */
1400:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** HAL_StatusTypeDef HAL_PCD_EP_Close(PCD_HandleTypeDef *hpcd, uint8_t ep_addr)
1401:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
988 .loc 1 1401 0
989 .cfi_startproc
990 @ args = 0, pretend = 0, frame = 0
991 @ frame_needed = 0, uses_anonymous_args = 0
992 .LVL85:
993 0000 70B5 push {r4, r5, r6, lr}
994 .LCFI9:
995 .cfi_def_cfa_offset 16
996 .cfi_offset 4, -16
997 .cfi_offset 5, -12
998 .cfi_offset 6, -8
999 .cfi_offset 14, -4
1000 0002 0400 movs r4, r0
1402:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** PCD_EPTypeDef *ep;
1403:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1404:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** if ((ep_addr & 0x80U) == 0x80U)
1001 .loc 1 1404 0
1002 0004 4BB2 sxtb r3, r1
1003 0006 002B cmp r3, #0
1004 0008 1FDB blt .L61
1405:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
1406:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** ep = &hpcd->IN_ep[ep_addr & EP_ADDR_MSK];
1407:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** ep->is_in = 1U;
1408:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
1409:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** else
1410:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
1411:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** ep = &hpcd->OUT_ep[ep_addr & EP_ADDR_MSK];
1005 .loc 1 1411 0
1006 000a 0723 movs r3, #7
1007 000c 0B40 ands r3, r1
1008 000e 5B01 lsls r3, r3, #5
1009 0010 1A00 movs r2, r3
1010 0012 2932 adds r2, r2, #41
1011 0014 FF32 adds r2, r2, #255
1012 0016 8218 adds r2, r0, r2
1013 .LVL86:
1412:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** ep->is_in = 0U;
1014 .loc 1 1412 0
1015 0018 C318 adds r3, r0, r3
1016 001a 2A33 adds r3, r3, #42
1017 001c FF33 adds r3, r3, #255
1018 001e 0020 movs r0, #0
1019 .LVL87:
1020 0020 1870 strb r0, [r3]
1021 .L58:
1413:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
1414:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** ep->num = ep_addr & EP_ADDR_MSK;
1022 .loc 1 1414 0
1023 0022 0723 movs r3, #7
1024 0024 1940 ands r1, r3
1025 .LVL88:
1026 0026 1170 strb r1, [r2]
1415:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
ARM GAS /tmp/ccYuHakw.s page 44
1416:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** __HAL_LOCK(hpcd);
1027 .loc 1 1416 0
1028 0028 8A23 movs r3, #138
1029 002a 9B00 lsls r3, r3, #2
1030 002c E35C ldrb r3, [r4, r3]
1031 002e 012B cmp r3, #1
1032 0030 16D0 beq .L60
1033 .loc 1 1416 0 is_stmt 0 discriminator 2
1034 0032 8A25 movs r5, #138
1035 0034 AD00 lsls r5, r5, #2
1036 0036 0123 movs r3, #1
1037 0038 6355 strb r3, [r4, r5]
1417:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** (void)USB_DeactivateEndpoint(hpcd->Instance, ep);
1038 .loc 1 1417 0 is_stmt 1 discriminator 2
1039 003a 1100 movs r1, r2
1040 003c 2068 ldr r0, [r4]
1041 003e FFF7FEFF bl USB_DeactivateEndpoint
1042 .LVL89:
1418:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** __HAL_UNLOCK(hpcd);
1043 .loc 1 1418 0 discriminator 2
1044 0042 0023 movs r3, #0
1045 0044 6355 strb r3, [r4, r5]
1419:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** return HAL_OK;
1046 .loc 1 1419 0 discriminator 2
1047 0046 0020 movs r0, #0
1048 .L59:
1420:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
1049 .loc 1 1420 0
1050 @ sp needed
1051 .LVL90:
1052 0048 70BD pop {r4, r5, r6, pc}
1053 .LVL91:
1054 .L61:
1406:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** ep->is_in = 1U;
1055 .loc 1 1406 0
1056 004a 0723 movs r3, #7
1057 004c 0B40 ands r3, r1
1058 004e 5B01 lsls r3, r3, #5
1059 0050 1A00 movs r2, r3
1060 0052 2832 adds r2, r2, #40
1061 0054 8218 adds r2, r0, r2
1062 .LVL92:
1407:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
1063 .loc 1 1407 0
1064 0056 C318 adds r3, r0, r3
1065 0058 2933 adds r3, r3, #41
1066 005a 0120 movs r0, #1
1067 .LVL93:
1068 005c 1870 strb r0, [r3]
1069 005e E0E7 b .L58
1070 .LVL94:
1071 .L60:
1416:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** (void)USB_DeactivateEndpoint(hpcd->Instance, ep);
1072 .loc 1 1416 0
1073 0060 0220 movs r0, #2
1074 0062 F1E7 b .L59
1075 .cfi_endproc
ARM GAS /tmp/ccYuHakw.s page 45
1076 .LFE62:
1078 .section .text.HAL_PCD_EP_Receive,"ax",%progbits
1079 .align 1
1080 .global HAL_PCD_EP_Receive
1081 .syntax unified
1082 .code 16
1083 .thumb_func
1084 .fpu softvfp
1086 HAL_PCD_EP_Receive:
1087 .LFB63:
1421:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1422:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1423:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /**
1424:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @brief Receive an amount of data.
1425:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @param hpcd PCD handle
1426:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @param ep_addr endpoint address
1427:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @param pBuf pointer to the reception buffer
1428:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @param len amount of data to be received
1429:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @retval HAL status
1430:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** */
1431:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** HAL_StatusTypeDef HAL_PCD_EP_Receive(PCD_HandleTypeDef *hpcd, uint8_t ep_addr, uint8_t *pBuf, uint3
1432:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
1088 .loc 1 1432 0
1089 .cfi_startproc
1090 @ args = 0, pretend = 0, frame = 0
1091 @ frame_needed = 0, uses_anonymous_args = 0
1092 .LVL95:
1093 0000 70B5 push {r4, r5, r6, lr}
1094 .LCFI10:
1095 .cfi_def_cfa_offset 16
1096 .cfi_offset 4, -16
1097 .cfi_offset 5, -12
1098 .cfi_offset 6, -8
1099 .cfi_offset 14, -4
1100 0002 0725 movs r5, #7
1101 0004 0D40 ands r5, r1
1433:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** PCD_EPTypeDef *ep;
1434:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1435:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** ep = &hpcd->OUT_ep[ep_addr & EP_ADDR_MSK];
1102 .loc 1 1435 0
1103 0006 6C01 lsls r4, r5, #5
1104 0008 2100 movs r1, r4
1105 .LVL96:
1106 000a 2931 adds r1, r1, #41
1107 000c FF31 adds r1, r1, #255
1108 000e 4118 adds r1, r0, r1
1109 .LVL97:
1436:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1437:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /*setup and start the Xfer */
1438:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** ep->xfer_buff = pBuf;
1110 .loc 1 1438 0
1111 0010 0419 adds r4, r0, r4
1112 0012 2600 movs r6, r4
1113 0014 3D36 adds r6, r6, #61
1114 0016 FF36 adds r6, r6, #255
1115 0018 3260 str r2, [r6]
1439:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** ep->xfer_len = len;
ARM GAS /tmp/ccYuHakw.s page 46
1116 .loc 1 1439 0
1117 001a 2A00 movs r2, r5
1118 .LVL98:
1119 001c 0A32 adds r2, r2, #10
1120 001e 5201 lsls r2, r2, #5
1121 0020 1350 str r3, [r2, r0]
1122 .LVL99:
1440:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** ep->xfer_count = 0U;
1123 .loc 1 1440 0
1124 0022 8218 adds r2, r0, r2
1125 0024 0023 movs r3, #0
1126 .LVL100:
1127 0026 5360 str r3, [r2, #4]
1441:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** ep->is_in = 0U;
1128 .loc 1 1441 0
1129 0028 2200 movs r2, r4
1130 .LVL101:
1131 002a 2A32 adds r2, r2, #42
1132 002c FF32 adds r2, r2, #255
1133 002e 1370 strb r3, [r2]
1134 .LVL102:
1442:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** ep->num = ep_addr & EP_ADDR_MSK;
1135 .loc 1 1442 0
1136 0030 2934 adds r4, r4, #41
1137 0032 FF34 adds r4, r4, #255
1138 0034 2570 strb r5, [r4]
1443:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1444:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** if ((ep_addr & EP_ADDR_MSK) == 0U)
1139 .loc 1 1444 0
1140 0036 002D cmp r5, #0
1141 0038 04D0 beq .L65
1445:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
1446:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** (void)USB_EP0StartXfer(hpcd->Instance, ep);
1447:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
1448:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** else
1449:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
1450:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** (void)USB_EPStartXfer(hpcd->Instance, ep);
1142 .loc 1 1450 0
1143 003a 0068 ldr r0, [r0]
1144 .LVL103:
1145 003c FFF7FEFF bl USB_EPStartXfer
1146 .LVL104:
1147 .L64:
1451:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
1452:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1453:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** return HAL_OK;
1454:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
1148 .loc 1 1454 0
1149 0040 0020 movs r0, #0
1150 @ sp needed
1151 .LVL105:
1152 0042 70BD pop {r4, r5, r6, pc}
1153 .LVL106:
1154 .L65:
1446:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
1155 .loc 1 1446 0
1156 0044 0068 ldr r0, [r0]
ARM GAS /tmp/ccYuHakw.s page 47
1157 .LVL107:
1158 0046 FFF7FEFF bl USB_EPStartXfer
1159 .LVL108:
1160 004a F9E7 b .L64
1161 .cfi_endproc
1162 .LFE63:
1164 .section .text.HAL_PCD_EP_GetRxCount,"ax",%progbits
1165 .align 1
1166 .global HAL_PCD_EP_GetRxCount
1167 .syntax unified
1168 .code 16
1169 .thumb_func
1170 .fpu softvfp
1172 HAL_PCD_EP_GetRxCount:
1173 .LFB64:
1455:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1456:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /**
1457:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @brief Get Received Data Size
1458:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @param hpcd PCD handle
1459:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @param ep_addr endpoint address
1460:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @retval Data Size
1461:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** */
1462:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** uint32_t HAL_PCD_EP_GetRxCount(PCD_HandleTypeDef *hpcd, uint8_t ep_addr)
1463:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
1174 .loc 1 1463 0
1175 .cfi_startproc
1176 @ args = 0, pretend = 0, frame = 0
1177 @ frame_needed = 0, uses_anonymous_args = 0
1178 @ link register save eliminated.
1179 .LVL109:
1180 0000 0B00 movs r3, r1
1464:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** return hpcd->OUT_ep[ep_addr & EP_ADDR_MSK].xfer_count;
1181 .loc 1 1464 0
1182 0002 0721 movs r1, #7
1183 .LVL110:
1184 0004 1940 ands r1, r3
1185 0006 0A31 adds r1, r1, #10
1186 0008 4901 lsls r1, r1, #5
1187 000a 4018 adds r0, r0, r1
1188 .LVL111:
1189 000c 4068 ldr r0, [r0, #4]
1465:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
1190 .loc 1 1465 0
1191 @ sp needed
1192 000e 7047 bx lr
1193 .cfi_endproc
1194 .LFE64:
1196 .section .text.HAL_PCD_EP_Transmit,"ax",%progbits
1197 .align 1
1198 .global HAL_PCD_EP_Transmit
1199 .syntax unified
1200 .code 16
1201 .thumb_func
1202 .fpu softvfp
1204 HAL_PCD_EP_Transmit:
1205 .LFB65:
1466:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /**
ARM GAS /tmp/ccYuHakw.s page 48
1467:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @brief Send an amount of data
1468:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @param hpcd PCD handle
1469:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @param ep_addr endpoint address
1470:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @param pBuf pointer to the transmission buffer
1471:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @param len amount of data to be sent
1472:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @retval HAL status
1473:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** */
1474:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** HAL_StatusTypeDef HAL_PCD_EP_Transmit(PCD_HandleTypeDef *hpcd, uint8_t ep_addr, uint8_t *pBuf, uint
1475:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
1206 .loc 1 1475 0
1207 .cfi_startproc
1208 @ args = 0, pretend = 0, frame = 0
1209 @ frame_needed = 0, uses_anonymous_args = 0
1210 .LVL112:
1211 0000 70B5 push {r4, r5, r6, lr}
1212 .LCFI11:
1213 .cfi_def_cfa_offset 16
1214 .cfi_offset 4, -16
1215 .cfi_offset 5, -12
1216 .cfi_offset 6, -8
1217 .cfi_offset 14, -4
1218 0002 0725 movs r5, #7
1219 0004 0D40 ands r5, r1
1476:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** PCD_EPTypeDef *ep;
1477:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1478:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** ep = &hpcd->IN_ep[ep_addr & EP_ADDR_MSK];
1220 .loc 1 1478 0
1221 0006 6C01 lsls r4, r5, #5
1222 0008 2100 movs r1, r4
1223 .LVL113:
1224 000a 2831 adds r1, r1, #40
1225 000c 4118 adds r1, r0, r1
1226 .LVL114:
1479:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1480:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /*setup and start the Xfer */
1481:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** ep->xfer_buff = pBuf;
1227 .loc 1 1481 0
1228 000e 0419 adds r4, r0, r4
1229 0010 E263 str r2, [r4, #60]
1482:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** ep->xfer_len = len;
1230 .loc 1 1482 0
1231 0012 AA1C adds r2, r5, #2
1232 .LVL115:
1233 0014 5201 lsls r2, r2, #5
1234 0016 1350 str r3, [r2, r0]
1235 .LVL116:
1483:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** ep->xfer_count = 0U;
1236 .loc 1 1483 0
1237 0018 8218 adds r2, r0, r2
1238 001a 0023 movs r3, #0
1239 .LVL117:
1240 001c 5360 str r3, [r2, #4]
1484:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** ep->is_in = 1U;
1241 .loc 1 1484 0
1242 001e 2300 movs r3, r4
1243 0020 2933 adds r3, r3, #41
1244 0022 0122 movs r2, #1
ARM GAS /tmp/ccYuHakw.s page 49
1245 .LVL118:
1246 0024 1A70 strb r2, [r3]
1247 .LVL119:
1485:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** ep->num = ep_addr & EP_ADDR_MSK;
1248 .loc 1 1485 0
1249 0026 2834 adds r4, r4, #40
1250 0028 2570 strb r5, [r4]
1486:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1487:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** if ((ep_addr & EP_ADDR_MSK) == 0U)
1251 .loc 1 1487 0
1252 002a 002D cmp r5, #0
1253 002c 04D0 beq .L70
1488:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
1489:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** (void)USB_EP0StartXfer(hpcd->Instance, ep);
1490:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
1491:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** else
1492:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
1493:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** (void)USB_EPStartXfer(hpcd->Instance, ep);
1254 .loc 1 1493 0
1255 002e 0068 ldr r0, [r0]
1256 .LVL120:
1257 0030 FFF7FEFF bl USB_EPStartXfer
1258 .LVL121:
1259 .L69:
1494:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
1495:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1496:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** return HAL_OK;
1497:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
1260 .loc 1 1497 0
1261 0034 0020 movs r0, #0
1262 @ sp needed
1263 .LVL122:
1264 0036 70BD pop {r4, r5, r6, pc}
1265 .LVL123:
1266 .L70:
1489:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
1267 .loc 1 1489 0
1268 0038 0068 ldr r0, [r0]
1269 .LVL124:
1270 003a FFF7FEFF bl USB_EPStartXfer
1271 .LVL125:
1272 003e F9E7 b .L69
1273 .cfi_endproc
1274 .LFE65:
1276 .section .text.PCD_EP_ISR_Handler,"ax",%progbits
1277 .align 1
1278 .syntax unified
1279 .code 16
1280 .thumb_func
1281 .fpu softvfp
1283 PCD_EP_ISR_Handler:
1284 .LFB72:
1498:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1499:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /**
1500:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @brief Set a STALL condition over an endpoint
1501:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @param hpcd PCD handle
1502:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @param ep_addr endpoint address
ARM GAS /tmp/ccYuHakw.s page 50
1503:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @retval HAL status
1504:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** */
1505:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** HAL_StatusTypeDef HAL_PCD_EP_SetStall(PCD_HandleTypeDef *hpcd, uint8_t ep_addr)
1506:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
1507:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** PCD_EPTypeDef *ep;
1508:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1509:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** if (((uint32_t)ep_addr & EP_ADDR_MSK) > hpcd->Init.dev_endpoints)
1510:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
1511:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** return HAL_ERROR;
1512:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
1513:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1514:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** if ((0x80U & ep_addr) == 0x80U)
1515:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
1516:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** ep = &hpcd->IN_ep[ep_addr & EP_ADDR_MSK];
1517:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** ep->is_in = 1U;
1518:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
1519:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** else
1520:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
1521:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** ep = &hpcd->OUT_ep[ep_addr];
1522:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** ep->is_in = 0U;
1523:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
1524:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1525:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** ep->is_stall = 1U;
1526:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** ep->num = ep_addr & EP_ADDR_MSK;
1527:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1528:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** __HAL_LOCK(hpcd);
1529:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1530:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** (void)USB_EPSetStall(hpcd->Instance, ep);
1531:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** if ((ep_addr & EP_ADDR_MSK) == 0U)
1532:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
1533:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** (void)USB_EP0_OutStart(hpcd->Instance, (uint8_t *)hpcd->Setup);
1534:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
1535:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** __HAL_UNLOCK(hpcd);
1536:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1537:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** return HAL_OK;
1538:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
1539:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1540:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /**
1541:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @brief Clear a STALL condition over in an endpoint
1542:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @param hpcd PCD handle
1543:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @param ep_addr endpoint address
1544:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @retval HAL status
1545:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** */
1546:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** HAL_StatusTypeDef HAL_PCD_EP_ClrStall(PCD_HandleTypeDef *hpcd, uint8_t ep_addr)
1547:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
1548:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** PCD_EPTypeDef *ep;
1549:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1550:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** if (((uint32_t)ep_addr & 0x0FU) > hpcd->Init.dev_endpoints)
1551:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
1552:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** return HAL_ERROR;
1553:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
1554:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1555:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** if ((0x80U & ep_addr) == 0x80U)
1556:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
1557:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** ep = &hpcd->IN_ep[ep_addr & EP_ADDR_MSK];
1558:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** ep->is_in = 1U;
1559:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
ARM GAS /tmp/ccYuHakw.s page 51
1560:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** else
1561:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
1562:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** ep = &hpcd->OUT_ep[ep_addr & EP_ADDR_MSK];
1563:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** ep->is_in = 0U;
1564:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
1565:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1566:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** ep->is_stall = 0U;
1567:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** ep->num = ep_addr & EP_ADDR_MSK;
1568:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1569:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** __HAL_LOCK(hpcd);
1570:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** (void)USB_EPClearStall(hpcd->Instance, ep);
1571:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** __HAL_UNLOCK(hpcd);
1572:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1573:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** return HAL_OK;
1574:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
1575:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1576:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /**
1577:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @brief Flush an endpoint
1578:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @param hpcd PCD handle
1579:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @param ep_addr endpoint address
1580:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @retval HAL status
1581:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** */
1582:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** HAL_StatusTypeDef HAL_PCD_EP_Flush(PCD_HandleTypeDef *hpcd, uint8_t ep_addr)
1583:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
1584:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Prevent unused argument(s) compilation warning */
1585:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** UNUSED(hpcd);
1586:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** UNUSED(ep_addr);
1587:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1588:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** return HAL_OK;
1589:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
1590:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1591:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /**
1592:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @brief Activate remote wakeup signalling
1593:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @param hpcd PCD handle
1594:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @retval HAL status
1595:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** */
1596:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** HAL_StatusTypeDef HAL_PCD_ActivateRemoteWakeup(PCD_HandleTypeDef *hpcd)
1597:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
1598:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** return (USB_ActivateRemoteWakeup(hpcd->Instance));
1599:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
1600:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1601:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /**
1602:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @brief De-activate remote wakeup signalling.
1603:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @param hpcd PCD handle
1604:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @retval HAL status
1605:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** */
1606:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** HAL_StatusTypeDef HAL_PCD_DeActivateRemoteWakeup(PCD_HandleTypeDef *hpcd)
1607:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
1608:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** return (USB_DeActivateRemoteWakeup(hpcd->Instance));
1609:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
1610:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1611:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /**
1612:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @}
1613:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** */
1614:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1615:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /** @defgroup PCD_Exported_Functions_Group4 Peripheral State functions
1616:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @brief Peripheral State functions
ARM GAS /tmp/ccYuHakw.s page 52
1617:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** *
1618:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** @verbatim
1619:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** ===============================================================================
1620:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** ##### Peripheral State functions #####
1621:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** ===============================================================================
1622:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** [..]
1623:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** This subsection permits to get in run-time the status of the peripheral
1624:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** and the data flow.
1625:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1626:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** @endverbatim
1627:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @{
1628:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** */
1629:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1630:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /**
1631:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @brief Return the PCD handle state.
1632:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @param hpcd PCD handle
1633:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @retval HAL state
1634:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** */
1635:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** PCD_StateTypeDef HAL_PCD_GetState(PCD_HandleTypeDef *hpcd)
1636:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
1637:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** return hpcd->State;
1638:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
1639:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1640:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /**
1641:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @}
1642:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** */
1643:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1644:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /**
1645:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @}
1646:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** */
1647:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1648:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Private functions ---------------------------------------------------------*/
1649:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /** @addtogroup PCD_Private_Functions
1650:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @{
1651:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** */
1652:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1653:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1654:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /**
1655:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @brief This function handles PCD Endpoint interrupt request.
1656:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @param hpcd PCD handle
1657:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** * @retval HAL status
1658:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** */
1659:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** static HAL_StatusTypeDef PCD_EP_ISR_Handler(PCD_HandleTypeDef *hpcd)
1660:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
1285 .loc 1 1660 0
1286 .cfi_startproc
1287 @ args = 0, pretend = 0, frame = 0
1288 @ frame_needed = 0, uses_anonymous_args = 0
1289 .LVL126:
1290 0000 F0B5 push {r4, r5, r6, r7, lr}
1291 .LCFI12:
1292 .cfi_def_cfa_offset 20
1293 .cfi_offset 4, -20
1294 .cfi_offset 5, -16
1295 .cfi_offset 6, -12
1296 .cfi_offset 7, -8
1297 .cfi_offset 14, -4
ARM GAS /tmp/ccYuHakw.s page 53
1298 0002 C646 mov lr, r8
1299 0004 00B5 push {lr}
1300 .LCFI13:
1301 .cfi_def_cfa_offset 24
1302 .cfi_offset 8, -24
1303 0006 0500 movs r5, r0
1304 .LVL127:
1305 .L72:
1661:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** PCD_EPTypeDef *ep;
1662:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** uint16_t count;
1663:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** uint16_t wIstr;
1664:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** uint16_t wEPVal;
1665:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** uint8_t epindex;
1666:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1667:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* stay in loop while pending interrupts */
1668:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** while ((hpcd->Instance->ISTR & USB_ISTR_CTR) != 0U)
1306 .loc 1 1668 0
1307 0008 2868 ldr r0, [r5]
1308 000a 4423 movs r3, #68
1309 000c C35A ldrh r3, [r0, r3]
1310 000e 1BB2 sxth r3, r3
1311 0010 002B cmp r3, #0
1312 0012 00DB blt .LCB1072
1313 0014 AAE1 b .L92 @long jump
1314 .LCB1072:
1669:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
1670:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** wIstr = hpcd->Instance->ISTR;
1315 .loc 1 1670 0
1316 0016 4423 movs r3, #68
1317 0018 C35A ldrh r3, [r0, r3]
1318 001a 9BB2 uxth r3, r3
1319 .LVL128:
1671:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* extract highest priority endpoint number */
1672:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** epindex = (uint8_t)(wIstr & USB_ISTR_EP_ID);
1320 .loc 1 1672 0
1321 001c 0F24 movs r4, #15
1322 001e 1C40 ands r4, r3
1323 .LVL129:
1673:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1674:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** if (epindex == 0U)
1324 .loc 1 1674 0
1325 0020 00D0 beq .LCB1083
1326 0022 BCE0 b .L73 @long jump
1327 .LCB1083:
1675:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
1676:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Decode and service control endpoint interrupt */
1677:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1678:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* DIR bit = origin of the interrupt */
1679:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** if ((wIstr & USB_ISTR_DIR) == 0U)
1328 .loc 1 1679 0
1329 0024 DB06 lsls r3, r3, #27
1330 0026 51D5 bpl .L93
1331 .LVL130:
1680:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
1681:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* DIR = 0 */
1682:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1683:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* DIR = 0 => IN int */
ARM GAS /tmp/ccYuHakw.s page 54
1684:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* DIR = 0 implies that (EP_CTR_TX = 1) always */
1685:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** PCD_CLEAR_TX_EP_CTR(hpcd->Instance, PCD_ENDP0);
1686:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** ep = &hpcd->IN_ep[0];
1687:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1688:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** ep->xfer_count = PCD_GET_EP_TX_CNT(hpcd->Instance, ep->num);
1689:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** ep->xfer_buff += ep->xfer_count;
1690:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1691:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* TX COMPLETE */
1692:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** #if (USE_HAL_PCD_REGISTER_CALLBACKS == 1U)
1693:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->DataInStageCallback(hpcd, 0U);
1694:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** #else
1695:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** HAL_PCD_DataInStageCallback(hpcd, 0U);
1696:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** #endif /* USE_HAL_PCD_REGISTER_CALLBACKS */
1697:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1698:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** if ((hpcd->USB_Address > 0U) && (ep->xfer_len == 0U))
1699:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
1700:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->Instance->DADDR = ((uint16_t)hpcd->USB_Address | USB_DADDR_EF);
1701:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->USB_Address = 0U;
1702:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
1703:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
1704:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** else
1705:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
1706:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* DIR = 1 */
1707:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1708:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* DIR = 1 & CTR_RX => SETUP or OUT int */
1709:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* DIR = 1 & (CTR_TX | CTR_RX) => 2 int pending */
1710:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** ep = &hpcd->OUT_ep[0];
1711:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** wEPVal = PCD_GET_ENDPOINT(hpcd->Instance, PCD_ENDP0);
1332 .loc 1 1711 0
1333 0028 0388 ldrh r3, [r0]
1334 002a 9BB2 uxth r3, r3
1335 .LVL131:
1712:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1713:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** if ((wEPVal & USB_EP_SETUP) != 0U)
1336 .loc 1 1713 0
1337 002c 1A05 lsls r2, r3, #20
1338 002e 00D5 bpl .LCB1098
1339 0030 7FE0 b .L94 @long jump
1340 .LCB1098:
1714:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
1715:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Get SETUP Packet*/
1716:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** ep->xfer_count = PCD_GET_EP_RX_CNT(hpcd->Instance, ep->num);
1717:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1718:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** USB_ReadPMA(hpcd->Instance, (uint8_t *)hpcd->Setup,
1719:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** ep->pmaadress, (uint16_t)ep->xfer_count);
1720:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1721:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* SETUP bit kept frozen while CTR_RX = 1*/
1722:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** PCD_CLEAR_RX_EP_CTR(hpcd->Instance, PCD_ENDP0);
1723:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1724:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Process SETUP Packet*/
1725:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** #if (USE_HAL_PCD_REGISTER_CALLBACKS == 1U)
1726:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->SetupStageCallback(hpcd);
1727:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** #else
1728:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** HAL_PCD_SetupStageCallback(hpcd);
1729:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** #endif /* USE_HAL_PCD_REGISTER_CALLBACKS */
1730:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
1731:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
ARM GAS /tmp/ccYuHakw.s page 55
1732:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** else if ((wEPVal & USB_EP_CTR_RX) != 0U)
1341 .loc 1 1732 0
1342 0032 1BB2 sxth r3, r3
1343 0034 002B cmp r3, #0
1344 0036 E7DA bge .L72
1345 .LBB2:
1733:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
1734:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** PCD_CLEAR_RX_EP_CTR(hpcd->Instance, PCD_ENDP0);
1346 .loc 1 1734 0
1347 0038 0388 ldrh r3, [r0]
1348 .LVL132:
1349 003a CE4A ldr r2, .L97
1350 003c 1340 ands r3, r2
1351 .LVL133:
1352 003e 8022 movs r2, #128
1353 0040 1343 orrs r3, r2
1354 .LVL134:
1355 0042 0380 strh r3, [r0]
1356 .LBE2:
1735:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1736:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Get Control Data OUT Packet*/
1737:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** ep->xfer_count = PCD_GET_EP_RX_CNT(hpcd->Instance, ep->num);
1357 .loc 1 1737 0
1358 0044 2868 ldr r0, [r5]
1359 0046 5023 movs r3, #80
1360 0048 C35A ldrh r3, [r0, r3]
1361 004a 9422 movs r2, #148
1362 004c 5200 lsls r2, r2, #1
1363 004e AA5C ldrb r2, [r5, r2]
1364 0050 D200 lsls r2, r2, #3
1365 0052 9B18 adds r3, r3, r2
1366 0054 1B18 adds r3, r3, r0
1367 0056 C84A ldr r2, .L97+4
1368 0058 9446 mov ip, r2
1369 005a 6344 add r3, r3, ip
1370 005c 1B88 ldrh r3, [r3]
1371 005e 9B05 lsls r3, r3, #22
1372 0060 9B0D lsrs r3, r3, #22
1373 0062 2A00 movs r2, r5
1374 0064 2932 adds r2, r2, #41
1375 0066 FF32 adds r2, r2, #255
1376 0068 D361 str r3, [r2, #28]
1738:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1739:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** if ((ep->xfer_count != 0U) && (ep->xfer_buff != 0U))
1377 .loc 1 1739 0
1378 006a 002B cmp r3, #0
1379 006c 0FD0 beq .L77
1380 .loc 1 1739 0 is_stmt 0 discriminator 1
1381 006e 5169 ldr r1, [r2, #20]
1382 0070 0029 cmp r1, #0
1383 0072 0CD0 beq .L77
1740:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
1741:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** USB_ReadPMA(hpcd->Instance, ep->xfer_buff,
1384 .loc 1 1741 0 is_stmt 1
1385 0074 1400 movs r4, r2
1386 .LVL135:
1387 0076 D288 ldrh r2, [r2, #6]
ARM GAS /tmp/ccYuHakw.s page 56
1388 0078 FFF7FEFF bl USB_ReadPMA
1389 .LVL136:
1742:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** ep->pmaadress, (uint16_t)ep->xfer_count);
1743:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1744:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** ep->xfer_buff += ep->xfer_count;
1390 .loc 1 1744 0
1391 007c 6369 ldr r3, [r4, #20]
1392 007e E269 ldr r2, [r4, #28]
1393 0080 9446 mov ip, r2
1394 0082 6344 add r3, r3, ip
1395 0084 6361 str r3, [r4, #20]
1745:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1746:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Process Control Data OUT Packet*/
1747:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** #if (USE_HAL_PCD_REGISTER_CALLBACKS == 1U)
1748:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->DataOutStageCallback(hpcd, 0U);
1749:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** #else
1750:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** HAL_PCD_DataOutStageCallback(hpcd, 0U);
1396 .loc 1 1750 0
1397 0086 0021 movs r1, #0
1398 0088 2800 movs r0, r5
1399 008a FFF7FEFF bl HAL_PCD_DataOutStageCallback
1400 .LVL137:
1401 .L77:
1402 .LBB3:
1751:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** #endif /* USE_HAL_PCD_REGISTER_CALLBACKS */
1752:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
1753:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1754:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** PCD_SET_EP_RX_CNT(hpcd->Instance, PCD_ENDP0, ep->maxpacket);
1403 .loc 1 1754 0
1404 008e 2B68 ldr r3, [r5]
1405 .LVL138:
1406 0090 5022 movs r2, #80
1407 0092 9A5A ldrh r2, [r3, r2]
1408 0094 9B18 adds r3, r3, r2
1409 .LVL139:
1410 0096 B84A ldr r2, .L97+4
1411 0098 9446 mov ip, r2
1412 009a 6344 add r3, r3, ip
1413 .LVL140:
1414 .LBB4:
1415 009c 2A00 movs r2, r5
1416 009e 2932 adds r2, r2, #41
1417 00a0 FF32 adds r2, r2, #255
1418 00a2 1269 ldr r2, [r2, #16]
1419 00a4 002A cmp r2, #0
1420 00a6 67D1 bne .L78
1421 .loc 1 1754 0 is_stmt 0 discriminator 1
1422 00a8 1A88 ldrh r2, [r3]
1423 00aa B449 ldr r1, .L97+8
1424 00ac 1140 ands r1, r2
1425 00ae B44A ldr r2, .L97+12
1426 00b0 0A43 orrs r2, r1
1427 00b2 1A80 strh r2, [r3]
1428 .L79:
1429 .LBE4:
1430 .LBE3:
1431 .LBB6:
ARM GAS /tmp/ccYuHakw.s page 57
1755:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** PCD_SET_EP_RX_STATUS(hpcd->Instance, PCD_ENDP0, USB_EP_RX_VALID);
1432 .loc 1 1755 0 is_stmt 1
1433 00b4 2968 ldr r1, [r5]
1434 00b6 0A88 ldrh r2, [r1]
1435 00b8 B24B ldr r3, .L97+16
1436 .LVL141:
1437 00ba 1A40 ands r2, r3
1438 .LVL142:
1439 00bc C023 movs r3, #192
1440 00be 9B01 lsls r3, r3, #6
1441 00c0 5A40 eors r2, r3
1442 .LVL143:
1443 00c2 B14B ldr r3, .L97+20
1444 00c4 1343 orrs r3, r2
1445 00c6 9BB2 uxth r3, r3
1446 00c8 0B80 strh r3, [r1]
1447 00ca 9DE7 b .L72
1448 .LVL144:
1449 .L93:
1450 .LBE6:
1451 .LBB7:
1685:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** ep = &hpcd->IN_ep[0];
1452 .loc 1 1685 0
1453 00cc 0388 ldrh r3, [r0]
1454 00ce AF4A ldr r2, .L97+24
1455 00d0 1A40 ands r2, r3
1456 .LVL145:
1457 00d2 AB4B ldr r3, .L97+12
1458 00d4 1343 orrs r3, r2
1459 00d6 9BB2 uxth r3, r3
1460 00d8 0380 strh r3, [r0]
1461 .LVL146:
1462 .LBE7:
1688:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** ep->xfer_buff += ep->xfer_count;
1463 .loc 1 1688 0
1464 00da 2968 ldr r1, [r5]
1465 00dc 5023 movs r3, #80
1466 00de CB5A ldrh r3, [r1, r3]
1467 00e0 2822 movs r2, #40
1468 .LVL147:
1469 00e2 AA5C ldrb r2, [r5, r2]
1470 00e4 D200 lsls r2, r2, #3
1471 00e6 9B18 adds r3, r3, r2
1472 00e8 5B18 adds r3, r3, r1
1473 00ea A94A ldr r2, .L97+28
1474 00ec 9446 mov ip, r2
1475 00ee 6344 add r3, r3, ip
1476 00f0 1B88 ldrh r3, [r3]
1477 00f2 9B05 lsls r3, r3, #22
1478 00f4 9B0D lsrs r3, r3, #22
1479 00f6 6B64 str r3, [r5, #68]
1689:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1480 .loc 1 1689 0
1481 00f8 EA6B ldr r2, [r5, #60]
1482 00fa 9446 mov ip, r2
1483 00fc 6344 add r3, r3, ip
1484 00fe EB63 str r3, [r5, #60]
ARM GAS /tmp/ccYuHakw.s page 58
1695:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** #endif /* USE_HAL_PCD_REGISTER_CALLBACKS */
1485 .loc 1 1695 0
1486 0100 0021 movs r1, #0
1487 0102 2800 movs r0, r5
1488 0104 FFF7FEFF bl HAL_PCD_DataInStageCallback
1489 .LVL148:
1698:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
1490 .loc 1 1698 0
1491 0108 2423 movs r3, #36
1492 010a EB5C ldrb r3, [r5, r3]
1493 010c 002B cmp r3, #0
1494 010e 00D1 bne .LCB1270
1495 0110 7AE7 b .L72 @long jump
1496 .LCB1270:
1698:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
1497 .loc 1 1698 0 is_stmt 0 discriminator 1
1498 0112 2B6C ldr r3, [r5, #64]
1499 0114 002B cmp r3, #0
1500 0116 00D0 beq .LCB1274
1501 0118 76E7 b .L72 @long jump
1502 .LCB1274:
1700:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->USB_Address = 0U;
1503 .loc 1 1700 0 is_stmt 1
1504 011a 2422 movs r2, #36
1505 011c AB5C ldrb r3, [r5, r2]
1506 011e 8021 movs r1, #128
1507 0120 4942 rsbs r1, r1, #0
1508 0122 0B43 orrs r3, r1
1509 0124 DBB2 uxtb r3, r3
1510 0126 CC31 adds r1, r1, #204
1511 0128 2868 ldr r0, [r5]
1512 012a 4352 strh r3, [r0, r1]
1701:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
1513 .loc 1 1701 0
1514 012c 0023 movs r3, #0
1515 012e AB54 strb r3, [r5, r2]
1516 0130 6AE7 b .L72
1517 .LVL149:
1518 .L94:
1716:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1519 .loc 1 1716 0
1520 0132 5023 movs r3, #80
1521 .LVL150:
1522 0134 C35A ldrh r3, [r0, r3]
1523 0136 9422 movs r2, #148
1524 0138 5200 lsls r2, r2, #1
1525 013a AA5C ldrb r2, [r5, r2]
1526 013c D200 lsls r2, r2, #3
1527 013e 9B18 adds r3, r3, r2
1528 0140 1B18 adds r3, r3, r0
1529 0142 8D4A ldr r2, .L97+4
1530 0144 9446 mov ip, r2
1531 0146 6344 add r3, r3, ip
1532 0148 1B88 ldrh r3, [r3]
1533 014a 9B05 lsls r3, r3, #22
1534 014c 9B0D lsrs r3, r3, #22
1535 014e 2A00 movs r2, r5
ARM GAS /tmp/ccYuHakw.s page 59
1536 0150 2932 adds r2, r2, #41
1537 0152 FF32 adds r2, r2, #255
1538 0154 D361 str r3, [r2, #28]
1718:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** ep->pmaadress, (uint16_t)ep->xfer_count);
1539 .loc 1 1718 0
1540 0156 8C21 movs r1, #140
1541 0158 8900 lsls r1, r1, #2
1542 015a 6918 adds r1, r5, r1
1543 015c D288 ldrh r2, [r2, #6]
1544 015e FFF7FEFF bl USB_ReadPMA
1545 .LVL151:
1546 .LBB8:
1722:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1547 .loc 1 1722 0
1548 0162 2A68 ldr r2, [r5]
1549 0164 1388 ldrh r3, [r2]
1550 0166 8349 ldr r1, .L97
1551 0168 0B40 ands r3, r1
1552 .LVL152:
1553 016a 8021 movs r1, #128
1554 016c 0B43 orrs r3, r1
1555 .LVL153:
1556 016e 1380 strh r3, [r2]
1557 .LBE8:
1728:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** #endif /* USE_HAL_PCD_REGISTER_CALLBACKS */
1558 .loc 1 1728 0
1559 0170 2800 movs r0, r5
1560 0172 FFF7FEFF bl HAL_PCD_SetupStageCallback
1561 .LVL154:
1562 0176 47E7 b .L72
1563 .LVL155:
1564 .L78:
1565 .LBB9:
1566 .LBB5:
1754:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** PCD_SET_EP_RX_STATUS(hpcd->Instance, PCD_ENDP0, USB_EP_RX_VALID);
1567 .loc 1 1754 0 discriminator 2
1568 0178 3E2A cmp r2, #62
1569 017a 06D8 bhi .L80
1754:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** PCD_SET_EP_RX_STATUS(hpcd->Instance, PCD_ENDP0, USB_EP_RX_VALID);
1570 .loc 1 1754 0 is_stmt 0 discriminator 3
1571 017c 5108 lsrs r1, r2, #1
1572 .LVL156:
1573 017e D207 lsls r2, r2, #31
1574 0180 00D5 bpl .L81
1754:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** PCD_SET_EP_RX_STATUS(hpcd->Instance, PCD_ENDP0, USB_EP_RX_VALID);
1575 .loc 1 1754 0 discriminator 5
1576 0182 0131 adds r1, r1, #1
1577 .LVL157:
1578 .L81:
1754:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** PCD_SET_EP_RX_STATUS(hpcd->Instance, PCD_ENDP0, USB_EP_RX_VALID);
1579 .loc 1 1754 0 discriminator 7
1580 0184 8902 lsls r1, r1, #10
1581 .LVL158:
1582 0186 1980 strh r1, [r3]
1583 0188 94E7 b .L79
1584 .L80:
1754:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** PCD_SET_EP_RX_STATUS(hpcd->Instance, PCD_ENDP0, USB_EP_RX_VALID);
ARM GAS /tmp/ccYuHakw.s page 60
1585 .loc 1 1754 0 discriminator 4
1586 018a 5109 lsrs r1, r2, #5
1587 .LVL159:
1588 018c D206 lsls r2, r2, #27
1589 018e 00D1 bne .L82
1754:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** PCD_SET_EP_RX_STATUS(hpcd->Instance, PCD_ENDP0, USB_EP_RX_VALID);
1590 .loc 1 1754 0 discriminator 8
1591 0190 0139 subs r1, r1, #1
1592 .LVL160:
1593 .L82:
1754:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** PCD_SET_EP_RX_STATUS(hpcd->Instance, PCD_ENDP0, USB_EP_RX_VALID);
1594 .loc 1 1754 0 discriminator 10
1595 0192 8902 lsls r1, r1, #10
1596 .LVL161:
1597 0194 89B2 uxth r1, r1
1598 0196 7A4A ldr r2, .L97+12
1599 0198 1143 orrs r1, r2
1600 019a 1980 strh r1, [r3]
1601 019c 8AE7 b .L79
1602 .LVL162:
1603 .L73:
1604 .LBE5:
1605 .LBE9:
1756:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
1757:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
1758:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
1759:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** else
1760:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
1761:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Decode and service non control endpoints interrupt */
1762:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1763:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* process related endpoint register */
1764:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** wEPVal = PCD_GET_ENDPOINT(hpcd->Instance, epindex);
1606 .loc 1 1764 0 is_stmt 1
1607 019e A300 lsls r3, r4, #2
1608 .LVL163:
1609 01a0 9846 mov r8, r3
1610 01a2 4044 add r0, r0, r8
1611 01a4 0688 ldrh r6, [r0]
1612 01a6 B6B2 uxth r6, r6
1613 .LVL164:
1765:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** if ((wEPVal & USB_EP_CTR_RX) != 0U)
1614 .loc 1 1765 0
1615 01a8 33B2 sxth r3, r6
1616 01aa 002B cmp r3, #0
1617 01ac 30DB blt .L95
1618 .L83:
1766:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
1767:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* clear int flag */
1768:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** PCD_CLEAR_RX_EP_CTR(hpcd->Instance, epindex);
1769:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** ep = &hpcd->OUT_ep[epindex];
1770:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1771:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* OUT double Buffering*/
1772:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** if (ep->doublebuffer == 0U)
1773:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
1774:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** count = (uint16_t)PCD_GET_EP_RX_CNT(hpcd->Instance, ep->num);
1775:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** if (count != 0U)
1776:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
ARM GAS /tmp/ccYuHakw.s page 61
1777:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** USB_ReadPMA(hpcd->Instance, ep->xfer_buff, ep->pmaadress, count);
1778:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
1779:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
1780:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** else
1781:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
1782:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** if ((PCD_GET_ENDPOINT(hpcd->Instance, ep->num) & USB_EP_DTOG_RX) != 0U)
1783:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
1784:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /*read from endpoint BUF0Addr buffer*/
1785:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** count = (uint16_t)PCD_GET_EP_DBUF0_CNT(hpcd->Instance, ep->num);
1786:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** if (count != 0U)
1787:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
1788:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** USB_ReadPMA(hpcd->Instance, ep->xfer_buff, ep->pmaaddr0, count);
1789:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
1790:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
1791:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** else
1792:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
1793:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /*read from endpoint BUF1Addr buffer*/
1794:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** count = (uint16_t)PCD_GET_EP_DBUF1_CNT(hpcd->Instance, ep->num);
1795:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** if (count != 0U)
1796:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
1797:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** USB_ReadPMA(hpcd->Instance, ep->xfer_buff, ep->pmaaddr1, count);
1798:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
1799:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
1800:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* free EP OUT Buffer */
1801:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** PCD_FreeUserBuffer(hpcd->Instance, ep->num, 0U);
1802:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
1803:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /*multi-packet on the NON control OUT endpoint*/
1804:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** ep->xfer_count += count;
1805:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** ep->xfer_buff += count;
1806:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1807:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** if ((ep->xfer_len == 0U) || (count < ep->maxpacket))
1808:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
1809:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* RX COMPLETE */
1810:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** #if (USE_HAL_PCD_REGISTER_CALLBACKS == 1U)
1811:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->DataOutStageCallback(hpcd, ep->num);
1812:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** #else
1813:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** HAL_PCD_DataOutStageCallback(hpcd, ep->num);
1814:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** #endif /* USE_HAL_PCD_REGISTER_CALLBACKS */
1815:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
1816:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** else
1817:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
1818:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** (void)HAL_PCD_EP_Receive(hpcd, ep->num, ep->xfer_buff, ep->xfer_len);
1819:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
1820:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1821:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** } /* if((wEPVal & EP_CTR_RX) */
1822:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1823:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** if ((wEPVal & USB_EP_CTR_TX) != 0U)
1619 .loc 1 1823 0
1620 01ae 3306 lsls r3, r6, #24
1621 01b0 00D4 bmi .LCB1430
1622 01b2 29E7 b .L72 @long jump
1623 .LCB1430:
1624 .LVL165:
1625 .LBB10:
1824:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
1825:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** ep = &hpcd->IN_ep[epindex];
1826:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
ARM GAS /tmp/ccYuHakw.s page 62
1827:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* clear int flag */
1828:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** PCD_CLEAR_TX_EP_CTR(hpcd->Instance, epindex);
1626 .loc 1 1828 0
1627 01b4 2B68 ldr r3, [r5]
1628 01b6 4344 add r3, r3, r8
1629 01b8 1A00 movs r2, r3
1630 01ba 1B88 ldrh r3, [r3]
1631 01bc 7349 ldr r1, .L97+24
1632 01be 1940 ands r1, r3
1633 .LVL166:
1634 01c0 6F4B ldr r3, .L97+12
1635 01c2 0B43 orrs r3, r1
1636 01c4 9BB2 uxth r3, r3
1637 01c6 1380 strh r3, [r2]
1638 .LBE10:
1829:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1830:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /*multi-packet on the NON control IN endpoint*/
1831:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** ep->xfer_count = PCD_GET_EP_TX_CNT(hpcd->Instance, ep->num);
1639 .loc 1 1831 0
1640 01c8 2868 ldr r0, [r5]
1641 01ca 5023 movs r3, #80
1642 01cc C35A ldrh r3, [r0, r3]
1643 01ce 6101 lsls r1, r4, #5
1644 .LVL167:
1645 01d0 6918 adds r1, r5, r1
1646 01d2 0A00 movs r2, r1
1647 01d4 2832 adds r2, r2, #40
1648 .LVL168:
1649 01d6 1278 ldrb r2, [r2]
1650 .LVL169:
1651 01d8 D200 lsls r2, r2, #3
1652 01da 9B18 adds r3, r3, r2
1653 01dc 1B18 adds r3, r3, r0
1654 01de 6C4A ldr r2, .L97+28
1655 01e0 9446 mov ip, r2
1656 01e2 6344 add r3, r3, ip
1657 01e4 1A88 ldrh r2, [r3]
1658 01e6 9205 lsls r2, r2, #22
1659 01e8 920D lsrs r2, r2, #22
1660 01ea A31C adds r3, r4, #2
1661 01ec 5B01 lsls r3, r3, #5
1662 01ee E818 adds r0, r5, r3
1663 01f0 4260 str r2, [r0, #4]
1832:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** ep->xfer_buff += ep->xfer_count;
1664 .loc 1 1832 0
1665 01f2 C86B ldr r0, [r1, #60]
1666 01f4 8446 mov ip, r0
1667 01f6 6244 add r2, r2, ip
1668 01f8 CA63 str r2, [r1, #60]
1833:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1834:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Zero Length Packet? */
1835:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** if (ep->xfer_len == 0U)
1669 .loc 1 1835 0
1670 01fa 5B59 ldr r3, [r3, r5]
1671 01fc 002B cmp r3, #0
1672 01fe 00D0 beq .LCB1481
1673 0200 ACE0 b .L90 @long jump
ARM GAS /tmp/ccYuHakw.s page 63
1674 .LCB1481:
1836:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
1837:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* TX COMPLETE */
1838:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** #if (USE_HAL_PCD_REGISTER_CALLBACKS == 1U)
1839:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->DataInStageCallback(hpcd, ep->num);
1840:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** #else
1841:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** HAL_PCD_DataInStageCallback(hpcd, ep->num);
1675 .loc 1 1841 0
1676 0202 0C00 movs r4, r1
1677 .LVL170:
1678 0204 2834 adds r4, r4, #40
1679 .LVL171:
1680 0206 2178 ldrb r1, [r4]
1681 0208 2800 movs r0, r5
1682 020a FFF7FEFF bl HAL_PCD_DataInStageCallback
1683 .LVL172:
1684 020e FBE6 b .L72
1685 .LVL173:
1686 .L95:
1687 .LBB11:
1768:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** ep = &hpcd->OUT_ep[epindex];
1688 .loc 1 1768 0
1689 0210 0388 ldrh r3, [r0]
1690 0212 584A ldr r2, .L97
1691 0214 1340 ands r3, r2
1692 .LVL174:
1693 0216 8022 movs r2, #128
1694 0218 1343 orrs r3, r2
1695 .LVL175:
1696 021a 0380 strh r3, [r0]
1697 .LVL176:
1698 .LBE11:
1772:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
1699 .loc 1 1772 0
1700 021c 6301 lsls r3, r4, #5
1701 021e EB18 adds r3, r5, r3
1702 0220 3533 adds r3, r3, #53
1703 0222 FF33 adds r3, r3, #255
1704 0224 1B78 ldrb r3, [r3]
1705 0226 002B cmp r3, #0
1706 0228 1ED1 bne .L84
1774:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** if (count != 0U)
1707 .loc 1 1774 0
1708 022a 2868 ldr r0, [r5]
1709 022c 5033 adds r3, r3, #80
1710 022e C35A ldrh r3, [r0, r3]
1711 0230 6201 lsls r2, r4, #5
1712 0232 AA18 adds r2, r5, r2
1713 0234 2932 adds r2, r2, #41
1714 0236 FF32 adds r2, r2, #255
1715 0238 1278 ldrb r2, [r2]
1716 023a D200 lsls r2, r2, #3
1717 023c 9B18 adds r3, r3, r2
1718 023e 1B18 adds r3, r3, r0
1719 0240 4D4A ldr r2, .L97+4
1720 0242 9446 mov ip, r2
1721 0244 6344 add r3, r3, ip
ARM GAS /tmp/ccYuHakw.s page 64
1722 0246 1F88 ldrh r7, [r3]
1723 0248 BF05 lsls r7, r7, #22
1724 024a BF0D lsrs r7, r7, #22
1725 .LVL177:
1775:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
1726 .loc 1 1775 0
1727 024c 33D0 beq .L85
1777:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
1728 .loc 1 1777 0
1729 024e 6301 lsls r3, r4, #5
1730 0250 EB18 adds r3, r5, r3
1731 0252 1A00 movs r2, r3
1732 0254 2F32 adds r2, r2, #47
1733 0256 FF32 adds r2, r2, #255
1734 0258 1288 ldrh r2, [r2]
1735 025a 3D33 adds r3, r3, #61
1736 025c FF33 adds r3, r3, #255
1737 025e 1968 ldr r1, [r3]
1738 0260 3B00 movs r3, r7
1739 0262 FFF7FEFF bl USB_ReadPMA
1740 .LVL178:
1741 0266 26E0 b .L85
1742 .LVL179:
1743 .L84:
1782:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
1744 .loc 1 1782 0
1745 0268 2868 ldr r0, [r5]
1746 026a 6301 lsls r3, r4, #5
1747 026c EB18 adds r3, r5, r3
1748 026e 2933 adds r3, r3, #41
1749 0270 FF33 adds r3, r3, #255
1750 0272 1B78 ldrb r3, [r3]
1751 0274 9A00 lsls r2, r3, #2
1752 0276 8218 adds r2, r0, r2
1753 0278 1288 ldrh r2, [r2]
1754 027a 5204 lsls r2, r2, #17
1755 027c 4BD5 bpl .L86
1785:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** if (count != 0U)
1756 .loc 1 1785 0
1757 027e 5022 movs r2, #80
1758 0280 825A ldrh r2, [r0, r2]
1759 0282 DB00 lsls r3, r3, #3
1760 0284 D318 adds r3, r2, r3
1761 0286 1B18 adds r3, r3, r0
1762 0288 414A ldr r2, .L97+28
1763 028a 9446 mov ip, r2
1764 028c 6344 add r3, r3, ip
1765 028e 1F88 ldrh r7, [r3]
1766 0290 BF05 lsls r7, r7, #22
1767 0292 BF0D lsrs r7, r7, #22
1768 .LVL180:
1786:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
1769 .loc 1 1786 0
1770 0294 32D1 bne .L96
1771 .L87:
1772 .LBB12:
1801:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
ARM GAS /tmp/ccYuHakw.s page 65
1773 .loc 1 1801 0 discriminator 1
1774 0296 6301 lsls r3, r4, #5
1775 0298 EB18 adds r3, r5, r3
1776 029a 2933 adds r3, r3, #41
1777 029c FF33 adds r3, r3, #255
1778 029e 1A78 ldrb r2, [r3]
1779 02a0 9200 lsls r2, r2, #2
1780 02a2 2B68 ldr r3, [r5]
1781 02a4 9C46 mov ip, r3
1782 02a6 6244 add r2, r2, ip
1783 02a8 1388 ldrh r3, [r2]
1784 02aa 3A49 ldr r1, .L97+32
1785 02ac 1940 ands r1, r3
1786 .LVL181:
1787 02ae 3A4B ldr r3, .L97+36
1788 02b0 0B43 orrs r3, r1
1789 02b2 9BB2 uxth r3, r3
1790 02b4 1380 strh r3, [r2]
1791 .LVL182:
1792 .L85:
1793 .LBE12:
1804:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** ep->xfer_buff += count;
1794 .loc 1 1804 0
1795 02b6 3900 movs r1, r7
1796 02b8 2000 movs r0, r4
1797 02ba 0A30 adds r0, r0, #10
1798 02bc 4001 lsls r0, r0, #5
1799 02be 2A18 adds r2, r5, r0
1800 02c0 5368 ldr r3, [r2, #4]
1801 02c2 DB19 adds r3, r3, r7
1802 02c4 5360 str r3, [r2, #4]
1805:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
1803 .loc 1 1805 0
1804 02c6 6301 lsls r3, r4, #5
1805 02c8 EB18 adds r3, r5, r3
1806 02ca 3D33 adds r3, r3, #61
1807 02cc FF33 adds r3, r3, #255
1808 02ce 1A68 ldr r2, [r3]
1809 02d0 9446 mov ip, r2
1810 02d2 6744 add r7, r7, ip
1811 .LVL183:
1812 02d4 1F60 str r7, [r3]
1807:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
1813 .loc 1 1807 0
1814 02d6 4359 ldr r3, [r0, r5]
1815 02d8 002B cmp r3, #0
1816 02da 06D0 beq .L88
1807:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
1817 .loc 1 1807 0 is_stmt 0 discriminator 1
1818 02dc 6201 lsls r2, r4, #5
1819 02de AA18 adds r2, r5, r2
1820 02e0 3932 adds r2, r2, #57
1821 02e2 FF32 adds r2, r2, #255
1822 02e4 1268 ldr r2, [r2]
1823 02e6 9142 cmp r1, r2
1824 02e8 2ED2 bcs .L89
1825 .L88:
ARM GAS /tmp/ccYuHakw.s page 66
1813:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** #endif /* USE_HAL_PCD_REGISTER_CALLBACKS */
1826 .loc 1 1813 0 is_stmt 1
1827 02ea 6301 lsls r3, r4, #5
1828 02ec EB18 adds r3, r5, r3
1829 02ee 2933 adds r3, r3, #41
1830 02f0 FF33 adds r3, r3, #255
1831 02f2 1978 ldrb r1, [r3]
1832 02f4 2800 movs r0, r5
1833 02f6 FFF7FEFF bl HAL_PCD_DataOutStageCallback
1834 .LVL184:
1835 02fa 58E7 b .L83
1836 .LVL185:
1837 .L96:
1788:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
1838 .loc 1 1788 0
1839 02fc 6301 lsls r3, r4, #5
1840 02fe EB18 adds r3, r5, r3
1841 0300 1A00 movs r2, r3
1842 0302 3132 adds r2, r2, #49
1843 0304 FF32 adds r2, r2, #255
1844 0306 1288 ldrh r2, [r2]
1845 0308 3D33 adds r3, r3, #61
1846 030a FF33 adds r3, r3, #255
1847 030c 1968 ldr r1, [r3]
1848 030e 3B00 movs r3, r7
1849 0310 FFF7FEFF bl USB_ReadPMA
1850 .LVL186:
1851 0314 BFE7 b .L87
1852 .LVL187:
1853 .L86:
1794:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** if (count != 0U)
1854 .loc 1 1794 0
1855 0316 5022 movs r2, #80
1856 0318 825A ldrh r2, [r0, r2]
1857 031a DB00 lsls r3, r3, #3
1858 031c D318 adds r3, r2, r3
1859 031e 1B18 adds r3, r3, r0
1860 0320 154A ldr r2, .L97+4
1861 0322 9446 mov ip, r2
1862 0324 6344 add r3, r3, ip
1863 0326 1F88 ldrh r7, [r3]
1864 0328 BF05 lsls r7, r7, #22
1865 032a BF0D lsrs r7, r7, #22
1866 .LVL188:
1795:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
1867 .loc 1 1795 0
1868 032c B3D0 beq .L87
1797:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
1869 .loc 1 1797 0
1870 032e 6301 lsls r3, r4, #5
1871 0330 EB18 adds r3, r5, r3
1872 0332 1A00 movs r2, r3
1873 0334 3332 adds r2, r2, #51
1874 0336 FF32 adds r2, r2, #255
1875 0338 1288 ldrh r2, [r2]
1876 033a 3D33 adds r3, r3, #61
1877 033c FF33 adds r3, r3, #255
ARM GAS /tmp/ccYuHakw.s page 67
1878 033e 1968 ldr r1, [r3]
1879 0340 3B00 movs r3, r7
1880 0342 FFF7FEFF bl USB_ReadPMA
1881 .LVL189:
1882 0346 A6E7 b .L87
1883 .LVL190:
1884 .L89:
1818:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
1885 .loc 1 1818 0
1886 0348 6201 lsls r2, r4, #5
1887 034a AA18 adds r2, r5, r2
1888 034c 2932 adds r2, r2, #41
1889 034e FF32 adds r2, r2, #255
1890 0350 1178 ldrb r1, [r2]
1891 0352 3A00 movs r2, r7
1892 0354 2800 movs r0, r5
1893 0356 FFF7FEFF bl HAL_PCD_EP_Receive
1894 .LVL191:
1895 035a 28E7 b .L83
1896 .LVL192:
1897 .L90:
1842:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** #endif /* USE_HAL_PCD_REGISTER_CALLBACKS */
1843:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
1844:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** else
1845:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
1846:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** (void)HAL_PCD_EP_Transmit(hpcd, ep->num, ep->xfer_buff, ep->xfer_len);
1898 .loc 1 1846 0
1899 035c 6401 lsls r4, r4, #5
1900 .LVL193:
1901 035e 2C19 adds r4, r5, r4
1902 0360 2834 adds r4, r4, #40
1903 0362 2178 ldrb r1, [r4]
1904 0364 2800 movs r0, r5
1905 0366 FFF7FEFF bl HAL_PCD_EP_Transmit
1906 .LVL194:
1907 036a 4DE6 b .L72
1908 .LVL195:
1909 .L92:
1847:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
1848:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
1849:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
1850:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
1851:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** return HAL_OK;
1852:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
1910 .loc 1 1852 0
1911 036c 0020 movs r0, #0
1912 @ sp needed
1913 .LVL196:
1914 036e 04BC pop {r2}
1915 0370 9046 mov r8, r2
1916 0372 F0BD pop {r4, r5, r6, r7, pc}
1917 .L98:
1918 .align 2
1919 .L97:
1920 0374 8F0F0000 .word 3983
1921 0378 06040000 .word 1030
1922 037c FF83FFFF .word -31745
ARM GAS /tmp/ccYuHakw.s page 68
1923 0380 0080FFFF .word -32768
1924 0384 8FBFFFFF .word -16497
1925 0388 8080FFFF .word -32640
1926 038c 0F8FFFFF .word -28913
1927 0390 02040000 .word 1026
1928 0394 8F8FFFFF .word -28785
1929 0398 C080FFFF .word -32576
1930 .cfi_endproc
1931 .LFE72:
1933 .section .text.HAL_PCD_IRQHandler,"ax",%progbits
1934 .align 1
1935 .global HAL_PCD_IRQHandler
1936 .syntax unified
1937 .code 16
1938 .thumb_func
1939 .fpu softvfp
1941 HAL_PCD_IRQHandler:
1942 .LFB46:
995:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** if (__HAL_PCD_GET_FLAG(hpcd, USB_ISTR_CTR))
1943 .loc 1 995 0
1944 .cfi_startproc
1945 @ args = 0, pretend = 0, frame = 0
1946 @ frame_needed = 0, uses_anonymous_args = 0
1947 .LVL197:
1948 0000 70B5 push {r4, r5, r6, lr}
1949 .LCFI14:
1950 .cfi_def_cfa_offset 16
1951 .cfi_offset 4, -16
1952 .cfi_offset 5, -12
1953 .cfi_offset 6, -8
1954 .cfi_offset 14, -4
1955 0002 0400 movs r4, r0
996:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
1956 .loc 1 996 0
1957 0004 0068 ldr r0, [r0]
1958 .LVL198:
1959 0006 FFF7FEFF bl USB_ReadInterrupts
1960 .LVL199:
1961 000a 0304 lsls r3, r0, #16
1962 000c 00D5 bpl .LCB1807
1963 000e 7BE0 b .L111 @long jump
1964 .LCB1807:
1965 .L100:
1003:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
1966 .loc 1 1003 0
1967 0010 2068 ldr r0, [r4]
1968 0012 FFF7FEFF bl USB_ReadInterrupts
1969 .LVL200:
1970 0016 4305 lsls r3, r0, #21
1971 0018 00D5 bpl .LCB1816
1972 001a 79E0 b .L112 @long jump
1973 .LCB1816:
1974 .L101:
1016:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
1975 .loc 1 1016 0
1976 001c 2068 ldr r0, [r4]
1977 001e FFF7FEFF bl USB_ReadInterrupts
ARM GAS /tmp/ccYuHakw.s page 69
1978 .LVL201:
1979 0022 4304 lsls r3, r0, #17
1980 0024 05D5 bpl .L102
1018:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
1981 .loc 1 1018 0
1982 0026 2168 ldr r1, [r4]
1983 0028 4422 movs r2, #68
1984 002a 8B5A ldrh r3, [r1, r2]
1985 002c 5848 ldr r0, .L116
1986 002e 0340 ands r3, r0
1987 0030 8B52 strh r3, [r1, r2]
1988 .L102:
1021:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
1989 .loc 1 1021 0
1990 0032 2068 ldr r0, [r4]
1991 0034 FFF7FEFF bl USB_ReadInterrupts
1992 .LVL202:
1993 0038 8304 lsls r3, r0, #18
1994 003a 05D5 bpl .L103
1023:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
1995 .loc 1 1023 0
1996 003c 2168 ldr r1, [r4]
1997 003e 4422 movs r2, #68
1998 0040 8B5A ldrh r3, [r1, r2]
1999 0042 5448 ldr r0, .L116+4
2000 0044 0340 ands r3, r0
2001 0046 8B52 strh r3, [r1, r2]
2002 .L103:
1026:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
2003 .loc 1 1026 0
2004 0048 2068 ldr r0, [r4]
2005 004a FFF7FEFF bl USB_ReadInterrupts
2006 .LVL203:
2007 004e C304 lsls r3, r0, #19
2008 0050 18D5 bpl .L104
1028:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->Instance->CNTR &= (uint16_t) ~(USB_CNTR_FSUSP);
2009 .loc 1 1028 0
2010 0052 2168 ldr r1, [r4]
2011 0054 4023 movs r3, #64
2012 0056 CA5A ldrh r2, [r1, r3]
2013 0058 0420 movs r0, #4
2014 005a 8243 bics r2, r0
2015 005c CA52 strh r2, [r1, r3]
1029:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
2016 .loc 1 1029 0
2017 005e 2168 ldr r1, [r4]
2018 0060 CA5A ldrh r2, [r1, r3]
2019 0062 0430 adds r0, r0, #4
2020 0064 8243 bics r2, r0
2021 0066 CA52 strh r2, [r1, r3]
1031:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
2022 .loc 1 1031 0
2023 0068 9823 movs r3, #152
2024 006a 9B00 lsls r3, r3, #2
2025 006c E35C ldrb r3, [r4, r3]
2026 006e 012B cmp r3, #1
2027 0070 5CD0 beq .L113
ARM GAS /tmp/ccYuHakw.s page 70
2028 .L105:
1044:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** #endif /* USE_HAL_PCD_REGISTER_CALLBACKS */
2029 .loc 1 1044 0
2030 0072 2000 movs r0, r4
2031 0074 FFF7FEFF bl HAL_PCD_ResumeCallback
2032 .LVL204:
1047:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
2033 .loc 1 1047 0
2034 0078 2168 ldr r1, [r4]
2035 007a 4422 movs r2, #68
2036 007c 8B5A ldrh r3, [r1, r2]
2037 007e 4648 ldr r0, .L116+8
2038 0080 0340 ands r3, r0
2039 0082 8B52 strh r3, [r1, r2]
2040 .L104:
1050:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
2041 .loc 1 1050 0
2042 0084 2068 ldr r0, [r4]
2043 0086 FFF7FEFF bl USB_ReadInterrupts
2044 .LVL205:
2045 008a 0305 lsls r3, r0, #20
2046 008c 57D4 bmi .L114
2047 .L106:
1071:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
2048 .loc 1 1071 0
2049 008e 2068 ldr r0, [r4]
2050 0090 FFF7FEFF bl USB_ReadInterrupts
2051 .LVL206:
2052 0094 0306 lsls r3, r0, #24
2053 0096 26D5 bpl .L107
1073:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** if (hpcd->LPM_State == LPM_L0)
2054 .loc 1 1073 0
2055 0098 2168 ldr r1, [r4]
2056 009a 4422 movs r2, #68
2057 009c 8B5A ldrh r3, [r1, r2]
2058 009e 8020 movs r0, #128
2059 00a0 8343 bics r3, r0
2060 00a2 8B52 strh r3, [r1, r2]
1074:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
2061 .loc 1 1074 0
2062 00a4 9823 movs r3, #152
2063 00a6 9B00 lsls r3, r3, #2
2064 00a8 E35C ldrb r3, [r4, r3]
2065 00aa 002B cmp r3, #0
2066 00ac 62D1 bne .L108
1077:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->Instance->CNTR |= USB_CNTR_FSUSP;
2067 .loc 1 1077 0
2068 00ae 2168 ldr r1, [r4]
2069 00b0 4033 adds r3, r3, #64
2070 00b2 CA5A ldrh r2, [r1, r3]
2071 00b4 0420 movs r0, #4
2072 00b6 0243 orrs r2, r0
2073 00b8 CA52 strh r2, [r1, r3]
1078:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
2074 .loc 1 1078 0
2075 00ba 2168 ldr r1, [r4]
2076 00bc CA5A ldrh r2, [r1, r3]
ARM GAS /tmp/ccYuHakw.s page 71
2077 00be 0820 movs r0, #8
2078 00c0 0243 orrs r2, r0
2079 00c2 CA52 strh r2, [r1, r3]
1080:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** hpcd->BESL = ((uint32_t)hpcd->Instance->LPMCSR & USB_LPMCSR_BESL) >> 2;
2080 .loc 1 1080 0
2081 00c4 9823 movs r3, #152
2082 00c6 9B00 lsls r3, r3, #2
2083 00c8 0122 movs r2, #1
2084 00ca E254 strb r2, [r4, r3]
1081:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** #if (USE_HAL_PCD_REGISTER_CALLBACKS == 1U)
2085 .loc 1 1081 0
2086 00cc 5423 movs r3, #84
2087 00ce 2268 ldr r2, [r4]
2088 00d0 D25A ldrh r2, [r2, r3]
2089 00d2 9208 lsrs r2, r2, #2
2090 00d4 183B subs r3, r3, #24
2091 00d6 1340 ands r3, r2
2092 00d8 9922 movs r2, #153
2093 00da 9200 lsls r2, r2, #2
2094 00dc A350 str r3, [r4, r2]
1085:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** #endif /* USE_HAL_PCD_REGISTER_CALLBACKS */
2095 .loc 1 1085 0
2096 00de 0121 movs r1, #1
2097 00e0 2000 movs r0, r4
2098 00e2 FFF7FEFF bl HAL_PCDEx_LPM_Callback
2099 .LVL207:
2100 .L107:
1098:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
2101 .loc 1 1098 0
2102 00e6 2068 ldr r0, [r4]
2103 00e8 FFF7FEFF bl USB_ReadInterrupts
2104 .LVL208:
2105 00ec 8305 lsls r3, r0, #22
2106 00ee 45D4 bmi .L115
2107 .L109:
1109:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
2108 .loc 1 1109 0
2109 00f0 2068 ldr r0, [r4]
2110 00f2 FFF7FEFF bl USB_ReadInterrupts
2111 .LVL209:
2112 00f6 C305 lsls r3, r0, #23
2113 00f8 05D5 bpl .L99
1112:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
2114 .loc 1 1112 0
2115 00fa 2168 ldr r1, [r4]
2116 00fc 4422 movs r2, #68
2117 00fe 8B5A ldrh r3, [r1, r2]
2118 0100 2648 ldr r0, .L116+12
2119 0102 0340 ands r3, r0
2120 0104 8B52 strh r3, [r1, r2]
2121 .L99:
1114:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
2122 .loc 1 1114 0
2123 @ sp needed
2124 .LVL210:
2125 0106 70BD pop {r4, r5, r6, pc}
2126 .LVL211:
ARM GAS /tmp/ccYuHakw.s page 72
2127 .L111:
1000:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
2128 .loc 1 1000 0
2129 0108 2000 movs r0, r4
2130 010a FFF7FEFF bl PCD_EP_ISR_Handler
2131 .LVL212:
2132 010e 7FE7 b .L100
2133 .L112:
1005:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
2134 .loc 1 1005 0
2135 0110 2168 ldr r1, [r4]
2136 0112 4422 movs r2, #68
2137 0114 8B5A ldrh r3, [r1, r2]
2138 0116 2248 ldr r0, .L116+16
2139 0118 0340 ands r3, r0
2140 011a 8B52 strh r3, [r1, r2]
1010:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** #endif /* USE_HAL_PCD_REGISTER_CALLBACKS */
2141 .loc 1 1010 0
2142 011c 2000 movs r0, r4
2143 011e FFF7FEFF bl HAL_PCD_ResetCallback
2144 .LVL213:
1013:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
2145 .loc 1 1013 0
2146 0122 0021 movs r1, #0
2147 0124 2000 movs r0, r4
2148 0126 FFF7FEFF bl HAL_PCD_SetAddress
2149 .LVL214:
2150 012a 77E7 b .L101
2151 .L113:
1033:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** #if (USE_HAL_PCD_REGISTER_CALLBACKS == 1U)
2152 .loc 1 1033 0
2153 012c 9823 movs r3, #152
2154 012e 9B00 lsls r3, r3, #2
2155 0130 0022 movs r2, #0
2156 0132 E254 strb r2, [r4, r3]
1037:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** #endif /* USE_HAL_PCD_REGISTER_CALLBACKS */
2157 .loc 1 1037 0
2158 0134 0021 movs r1, #0
2159 0136 2000 movs r0, r4
2160 0138 FFF7FEFF bl HAL_PCDEx_LPM_Callback
2161 .LVL215:
2162 013c 99E7 b .L105
2163 .L114:
1053:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
2164 .loc 1 1053 0
2165 013e 2168 ldr r1, [r4]
2166 0140 4023 movs r3, #64
2167 0142 CA5A ldrh r2, [r1, r3]
2168 0144 0820 movs r0, #8
2169 0146 0243 orrs r2, r0
2170 0148 CA52 strh r2, [r1, r3]
1056:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
2171 .loc 1 1056 0
2172 014a 2068 ldr r0, [r4]
2173 014c 4421 movs r1, #68
2174 014e 425A ldrh r2, [r0, r1]
2175 0150 144D ldr r5, .L116+20
ARM GAS /tmp/ccYuHakw.s page 73
2176 0152 2A40 ands r2, r5
2177 0154 4252 strh r2, [r0, r1]
1058:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
2178 .loc 1 1058 0
2179 0156 2168 ldr r1, [r4]
2180 0158 CA5A ldrh r2, [r1, r3]
2181 015a 0420 movs r0, #4
2182 015c 0243 orrs r2, r0
2183 015e CA52 strh r2, [r1, r3]
1060:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
2184 .loc 1 1060 0
2185 0160 2068 ldr r0, [r4]
2186 0162 FFF7FEFF bl USB_ReadInterrupts
2187 .LVL216:
2188 0166 C304 lsls r3, r0, #19
2189 0168 00D5 bpl .LCB2071
2190 016a 90E7 b .L106 @long jump
2191 .LCB2071:
1065:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** #endif /* USE_HAL_PCD_REGISTER_CALLBACKS */
2192 .loc 1 1065 0
2193 016c 2000 movs r0, r4
2194 016e FFF7FEFF bl HAL_PCD_SuspendCallback
2195 .LVL217:
2196 0172 8CE7 b .L106
2197 .L108:
1093:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** #endif /* USE_HAL_PCD_REGISTER_CALLBACKS */
2198 .loc 1 1093 0
2199 0174 2000 movs r0, r4
2200 0176 FFF7FEFF bl HAL_PCD_SuspendCallback
2201 .LVL218:
2202 017a B4E7 b .L107
2203 .L115:
1100:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
2204 .loc 1 1100 0
2205 017c 2168 ldr r1, [r4]
2206 017e 4422 movs r2, #68
2207 0180 8B5A ldrh r3, [r1, r2]
2208 0182 0948 ldr r0, .L116+24
2209 0184 0340 ands r3, r0
2210 0186 8B52 strh r3, [r1, r2]
1105:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** #endif /* USE_HAL_PCD_REGISTER_CALLBACKS */
2211 .loc 1 1105 0
2212 0188 2000 movs r0, r4
2213 018a FFF7FEFF bl HAL_PCD_SOFCallback
2214 .LVL219:
2215 018e AFE7 b .L109
2216 .L117:
2217 .align 2
2218 .L116:
2219 0190 FFBFFFFF .word -16385
2220 0194 FFDFFFFF .word -8193
2221 0198 FFEFFFFF .word -4097
2222 019c FFFEFFFF .word -257
2223 01a0 FFFBFFFF .word -1025
2224 01a4 FFF7FFFF .word -2049
2225 01a8 FFFDFFFF .word -513
2226 .cfi_endproc
ARM GAS /tmp/ccYuHakw.s page 74
2227 .LFE46:
2229 .section .text.HAL_PCD_EP_SetStall,"ax",%progbits
2230 .align 1
2231 .global HAL_PCD_EP_SetStall
2232 .syntax unified
2233 .code 16
2234 .thumb_func
2235 .fpu softvfp
2237 HAL_PCD_EP_SetStall:
2238 .LFB66:
1506:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** PCD_EPTypeDef *ep;
2239 .loc 1 1506 0
2240 .cfi_startproc
2241 @ args = 0, pretend = 0, frame = 0
2242 @ frame_needed = 0, uses_anonymous_args = 0
2243 .LVL220:
2244 0000 70B5 push {r4, r5, r6, lr}
2245 .LCFI15:
2246 .cfi_def_cfa_offset 16
2247 .cfi_offset 4, -16
2248 .cfi_offset 5, -12
2249 .cfi_offset 6, -8
2250 .cfi_offset 14, -4
2251 0002 0500 movs r5, r0
2252 0004 0724 movs r4, #7
2253 0006 0C40 ands r4, r1
1509:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
2254 .loc 1 1509 0
2255 0008 4368 ldr r3, [r0, #4]
2256 000a 9C42 cmp r4, r3
2257 000c 33D8 bhi .L123
1514:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
2258 .loc 1 1514 0
2259 000e 4BB2 sxtb r3, r1
2260 0010 002B cmp r3, #0
2261 0012 20DB blt .L125
1521:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** ep->is_in = 0U;
2262 .loc 1 1521 0
2263 0014 4B01 lsls r3, r1, #5
2264 0016 1900 movs r1, r3
2265 .LVL221:
2266 0018 2931 adds r1, r1, #41
2267 001a FF31 adds r1, r1, #255
2268 001c 4118 adds r1, r0, r1
2269 .LVL222:
1522:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
2270 .loc 1 1522 0
2271 001e C318 adds r3, r0, r3
2272 0020 2A33 adds r3, r3, #42
2273 0022 FF33 adds r3, r3, #255
2274 0024 0022 movs r2, #0
2275 0026 1A70 strb r2, [r3]
2276 .L121:
1525:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** ep->num = ep_addr & EP_ADDR_MSK;
2277 .loc 1 1525 0
2278 0028 0123 movs r3, #1
2279 002a 8B70 strb r3, [r1, #2]
ARM GAS /tmp/ccYuHakw.s page 75
1526:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
2280 .loc 1 1526 0
2281 002c 0C70 strb r4, [r1]
1528:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
2282 .loc 1 1528 0
2283 002e 8A23 movs r3, #138
2284 0030 9B00 lsls r3, r3, #2
2285 0032 EB5C ldrb r3, [r5, r3]
2286 0034 012B cmp r3, #1
2287 0036 20D0 beq .L124
1528:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
2288 .loc 1 1528 0 is_stmt 0 discriminator 2
2289 0038 8A23 movs r3, #138
2290 003a 9B00 lsls r3, r3, #2
2291 003c 0122 movs r2, #1
2292 003e EA54 strb r2, [r5, r3]
1530:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** if ((ep_addr & EP_ADDR_MSK) == 0U)
2293 .loc 1 1530 0 is_stmt 1 discriminator 2
2294 0040 2868 ldr r0, [r5]
2295 .LVL223:
2296 0042 FFF7FEFF bl USB_EPSetStall
2297 .LVL224:
1531:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
2298 .loc 1 1531 0 discriminator 2
2299 0046 002C cmp r4, #0
2300 0048 0ED0 beq .L126
2301 .L122:
1535:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
2302 .loc 1 1535 0
2303 004a 8A23 movs r3, #138
2304 004c 9B00 lsls r3, r3, #2
2305 004e 0022 movs r2, #0
2306 0050 EA54 strb r2, [r5, r3]
1537:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
2307 .loc 1 1537 0
2308 0052 0020 movs r0, #0
2309 0054 10E0 b .L119
2310 .LVL225:
2311 .L125:
1516:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** ep->is_in = 1U;
2312 .loc 1 1516 0
2313 0056 6301 lsls r3, r4, #5
2314 0058 1900 movs r1, r3
2315 .LVL226:
2316 005a 2831 adds r1, r1, #40
2317 005c 4118 adds r1, r0, r1
2318 .LVL227:
1517:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
2319 .loc 1 1517 0
2320 005e C318 adds r3, r0, r3
2321 0060 2933 adds r3, r3, #41
2322 0062 0122 movs r2, #1
2323 0064 1A70 strb r2, [r3]
2324 0066 DFE7 b .L121
2325 .LVL228:
2326 .L126:
1533:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
ARM GAS /tmp/ccYuHakw.s page 76
2327 .loc 1 1533 0
2328 0068 8C23 movs r3, #140
2329 006a 9B00 lsls r3, r3, #2
2330 006c E918 adds r1, r5, r3
2331 006e 2868 ldr r0, [r5]
2332 0070 FFF7FEFF bl USB_EP0_OutStart
2333 .LVL229:
2334 0074 E9E7 b .L122
2335 .LVL230:
2336 .L123:
1511:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
2337 .loc 1 1511 0
2338 0076 0120 movs r0, #1
2339 .LVL231:
2340 .L119:
1538:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
2341 .loc 1 1538 0
2342 @ sp needed
2343 .LVL232:
2344 0078 70BD pop {r4, r5, r6, pc}
2345 .LVL233:
2346 .L124:
1528:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
2347 .loc 1 1528 0
2348 007a 0220 movs r0, #2
2349 .LVL234:
2350 007c FCE7 b .L119
2351 .cfi_endproc
2352 .LFE66:
2354 .section .text.HAL_PCD_EP_ClrStall,"ax",%progbits
2355 .align 1
2356 .global HAL_PCD_EP_ClrStall
2357 .syntax unified
2358 .code 16
2359 .thumb_func
2360 .fpu softvfp
2362 HAL_PCD_EP_ClrStall:
2363 .LFB67:
1547:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** PCD_EPTypeDef *ep;
2364 .loc 1 1547 0
2365 .cfi_startproc
2366 @ args = 0, pretend = 0, frame = 0
2367 @ frame_needed = 0, uses_anonymous_args = 0
2368 .LVL235:
2369 0000 70B5 push {r4, r5, r6, lr}
2370 .LCFI16:
2371 .cfi_def_cfa_offset 16
2372 .cfi_offset 4, -16
2373 .cfi_offset 5, -12
2374 .cfi_offset 6, -8
2375 .cfi_offset 14, -4
2376 0002 0400 movs r4, r0
1550:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
2377 .loc 1 1550 0
2378 0004 0F23 movs r3, #15
2379 0006 0B40 ands r3, r1
2380 0008 4268 ldr r2, [r0, #4]
ARM GAS /tmp/ccYuHakw.s page 77
2381 000a 9342 cmp r3, r2
2382 000c 2FD8 bhi .L131
1555:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** {
2383 .loc 1 1555 0
2384 000e 4BB2 sxtb r3, r1
2385 0010 002B cmp r3, #0
2386 0012 21DB blt .L133
1562:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** ep->is_in = 0U;
2387 .loc 1 1562 0
2388 0014 0723 movs r3, #7
2389 0016 0B40 ands r3, r1
2390 0018 5B01 lsls r3, r3, #5
2391 001a 1A00 movs r2, r3
2392 001c 2932 adds r2, r2, #41
2393 001e FF32 adds r2, r2, #255
2394 0020 8218 adds r2, r0, r2
2395 .LVL236:
1563:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
2396 .loc 1 1563 0
2397 0022 C318 adds r3, r0, r3
2398 0024 2A33 adds r3, r3, #42
2399 0026 FF33 adds r3, r3, #255
2400 0028 0020 movs r0, #0
2401 .LVL237:
2402 002a 1870 strb r0, [r3]
2403 .L130:
1566:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** ep->num = ep_addr & EP_ADDR_MSK;
2404 .loc 1 1566 0
2405 002c 0023 movs r3, #0
2406 002e 9370 strb r3, [r2, #2]
1567:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
2407 .loc 1 1567 0
2408 0030 0733 adds r3, r3, #7
2409 0032 1940 ands r1, r3
2410 .LVL238:
2411 0034 1170 strb r1, [r2]
1569:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** (void)USB_EPClearStall(hpcd->Instance, ep);
2412 .loc 1 1569 0
2413 0036 8A23 movs r3, #138
2414 0038 9B00 lsls r3, r3, #2
2415 003a E35C ldrb r3, [r4, r3]
2416 003c 012B cmp r3, #1
2417 003e 18D0 beq .L132
1569:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** (void)USB_EPClearStall(hpcd->Instance, ep);
2418 .loc 1 1569 0 is_stmt 0 discriminator 2
2419 0040 8A25 movs r5, #138
2420 0042 AD00 lsls r5, r5, #2
2421 0044 0123 movs r3, #1
2422 0046 6355 strb r3, [r4, r5]
1570:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** __HAL_UNLOCK(hpcd);
2423 .loc 1 1570 0 is_stmt 1 discriminator 2
2424 0048 1100 movs r1, r2
2425 004a 2068 ldr r0, [r4]
2426 004c FFF7FEFF bl USB_EPClearStall
2427 .LVL239:
1571:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
2428 .loc 1 1571 0 discriminator 2
ARM GAS /tmp/ccYuHakw.s page 78
2429 0050 0023 movs r3, #0
2430 0052 6355 strb r3, [r4, r5]
1573:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
2431 .loc 1 1573 0 discriminator 2
2432 0054 0020 movs r0, #0
2433 0056 0BE0 b .L128
2434 .LVL240:
2435 .L133:
1557:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** ep->is_in = 1U;
2436 .loc 1 1557 0
2437 0058 0723 movs r3, #7
2438 005a 0B40 ands r3, r1
2439 005c 5B01 lsls r3, r3, #5
2440 005e 1A00 movs r2, r3
2441 0060 2832 adds r2, r2, #40
2442 0062 8218 adds r2, r0, r2
2443 .LVL241:
1558:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
2444 .loc 1 1558 0
2445 0064 C318 adds r3, r0, r3
2446 0066 2933 adds r3, r3, #41
2447 0068 0120 movs r0, #1
2448 .LVL242:
2449 006a 1870 strb r0, [r3]
2450 006c DEE7 b .L130
2451 .LVL243:
2452 .L131:
1552:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
2453 .loc 1 1552 0
2454 006e 0120 movs r0, #1
2455 .LVL244:
2456 .L128:
1574:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
2457 .loc 1 1574 0
2458 @ sp needed
2459 .LVL245:
2460 0070 70BD pop {r4, r5, r6, pc}
2461 .LVL246:
2462 .L132:
1569:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** (void)USB_EPClearStall(hpcd->Instance, ep);
2463 .loc 1 1569 0
2464 0072 0220 movs r0, #2
2465 0074 FCE7 b .L128
2466 .cfi_endproc
2467 .LFE67:
2469 .section .text.HAL_PCD_EP_Flush,"ax",%progbits
2470 .align 1
2471 .global HAL_PCD_EP_Flush
2472 .syntax unified
2473 .code 16
2474 .thumb_func
2475 .fpu softvfp
2477 HAL_PCD_EP_Flush:
2478 .LFB68:
1583:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** /* Prevent unused argument(s) compilation warning */
2479 .loc 1 1583 0
2480 .cfi_startproc
ARM GAS /tmp/ccYuHakw.s page 79
2481 @ args = 0, pretend = 0, frame = 0
2482 @ frame_needed = 0, uses_anonymous_args = 0
2483 @ link register save eliminated.
2484 .LVL247:
1589:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
2485 .loc 1 1589 0
2486 0000 0020 movs r0, #0
2487 .LVL248:
2488 @ sp needed
2489 0002 7047 bx lr
2490 .cfi_endproc
2491 .LFE68:
2493 .section .text.HAL_PCD_ActivateRemoteWakeup,"ax",%progbits
2494 .align 1
2495 .global HAL_PCD_ActivateRemoteWakeup
2496 .syntax unified
2497 .code 16
2498 .thumb_func
2499 .fpu softvfp
2501 HAL_PCD_ActivateRemoteWakeup:
2502 .LFB69:
1597:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** return (USB_ActivateRemoteWakeup(hpcd->Instance));
2503 .loc 1 1597 0
2504 .cfi_startproc
2505 @ args = 0, pretend = 0, frame = 0
2506 @ frame_needed = 0, uses_anonymous_args = 0
2507 .LVL249:
2508 0000 10B5 push {r4, lr}
2509 .LCFI17:
2510 .cfi_def_cfa_offset 8
2511 .cfi_offset 4, -8
2512 .cfi_offset 14, -4
1598:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
2513 .loc 1 1598 0
2514 0002 0068 ldr r0, [r0]
2515 .LVL250:
2516 0004 FFF7FEFF bl USB_ActivateRemoteWakeup
2517 .LVL251:
1599:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
2518 .loc 1 1599 0
2519 @ sp needed
2520 0008 10BD pop {r4, pc}
2521 .cfi_endproc
2522 .LFE69:
2524 .section .text.HAL_PCD_DeActivateRemoteWakeup,"ax",%progbits
2525 .align 1
2526 .global HAL_PCD_DeActivateRemoteWakeup
2527 .syntax unified
2528 .code 16
2529 .thumb_func
2530 .fpu softvfp
2532 HAL_PCD_DeActivateRemoteWakeup:
2533 .LFB70:
1607:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** return (USB_DeActivateRemoteWakeup(hpcd->Instance));
2534 .loc 1 1607 0
2535 .cfi_startproc
2536 @ args = 0, pretend = 0, frame = 0
ARM GAS /tmp/ccYuHakw.s page 80
2537 @ frame_needed = 0, uses_anonymous_args = 0
2538 .LVL252:
2539 0000 10B5 push {r4, lr}
2540 .LCFI18:
2541 .cfi_def_cfa_offset 8
2542 .cfi_offset 4, -8
2543 .cfi_offset 14, -4
1608:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
2544 .loc 1 1608 0
2545 0002 0068 ldr r0, [r0]
2546 .LVL253:
2547 0004 FFF7FEFF bl USB_DeActivateRemoteWakeup
2548 .LVL254:
1609:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
2549 .loc 1 1609 0
2550 @ sp needed
2551 0008 10BD pop {r4, pc}
2552 .cfi_endproc
2553 .LFE70:
2555 .section .text.HAL_PCD_GetState,"ax",%progbits
2556 .align 1
2557 .global HAL_PCD_GetState
2558 .syntax unified
2559 .code 16
2560 .thumb_func
2561 .fpu softvfp
2563 HAL_PCD_GetState:
2564 .LFB71:
1636:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** return hpcd->State;
2565 .loc 1 1636 0
2566 .cfi_startproc
2567 @ args = 0, pretend = 0, frame = 0
2568 @ frame_needed = 0, uses_anonymous_args = 0
2569 @ link register save eliminated.
2570 .LVL255:
1637:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c **** }
2571 .loc 1 1637 0
2572 0000 014B ldr r3, .L138
2573 0002 C05C ldrb r0, [r0, r3]
2574 .LVL256:
2575 0004 C0B2 uxtb r0, r0
1638:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pcd.c ****
2576 .loc 1 1638 0
2577 @ sp needed
2578 0006 7047 bx lr
2579 .L139:
2580 .align 2
2581 .L138:
2582 0008 29020000 .word 553
2583 .cfi_endproc
2584 .LFE71:
2586 .text
2587 .Letext0:
2588 .file 2 "/usr/include/newlib/machine/_default_types.h"
2589 .file 3 "/usr/include/newlib/sys/_stdint.h"
2590 .file 4 "Drivers/CMSIS/Device/ST/STM32F0xx/Include/system_stm32f0xx.h"
2591 .file 5 "Drivers/CMSIS/Device/ST/STM32F0xx/Include/stm32f072xb.h"
ARM GAS /tmp/ccYuHakw.s page 81
2592 .file 6 "Drivers/STM32F0xx_HAL_Driver/Inc/stm32f0xx_hal_def.h"
2593 .file 7 "Drivers/STM32F0xx_HAL_Driver/Inc/stm32f0xx_ll_usb.h"
2594 .file 8 "Drivers/STM32F0xx_HAL_Driver/Inc/stm32f0xx_hal_pcd.h"
2595 .file 9 "Drivers/STM32F0xx_HAL_Driver/Inc/stm32f0xx_hal.h"
2596 .file 10 "Drivers/STM32F0xx_HAL_Driver/Inc/stm32f0xx_hal_pcd_ex.h"
ARM GAS /tmp/ccYuHakw.s page 82
DEFINED SYMBOLS
*ABS*:0000000000000000 stm32f0xx_hal_pcd.c
/tmp/ccYuHakw.s:16 .text.HAL_PCD_MspInit:0000000000000000 $t
/tmp/ccYuHakw.s:23 .text.HAL_PCD_MspInit:0000000000000000 HAL_PCD_MspInit
/tmp/ccYuHakw.s:39 .text.HAL_PCD_Init:0000000000000000 $t
/tmp/ccYuHakw.s:46 .text.HAL_PCD_Init:0000000000000000 HAL_PCD_Init
/tmp/ccYuHakw.s:224 .text.HAL_PCD_Init:00000000000000d0 $d
/tmp/ccYuHakw.s:229 .text.HAL_PCD_MspDeInit:0000000000000000 $t
/tmp/ccYuHakw.s:236 .text.HAL_PCD_MspDeInit:0000000000000000 HAL_PCD_MspDeInit
/tmp/ccYuHakw.s:251 .text.HAL_PCD_Start:0000000000000000 $t
/tmp/ccYuHakw.s:258 .text.HAL_PCD_Start:0000000000000000 HAL_PCD_Start
/tmp/ccYuHakw.s:313 .text.HAL_PCD_Stop:0000000000000000 $t
/tmp/ccYuHakw.s:320 .text.HAL_PCD_Stop:0000000000000000 HAL_PCD_Stop
/tmp/ccYuHakw.s:375 .text.HAL_PCD_DeInit:0000000000000000 $t
/tmp/ccYuHakw.s:382 .text.HAL_PCD_DeInit:0000000000000000 HAL_PCD_DeInit
/tmp/ccYuHakw.s:429 .text.HAL_PCD_DeInit:0000000000000024 $d
/tmp/ccYuHakw.s:434 .text.HAL_PCD_DataOutStageCallback:0000000000000000 $t
/tmp/ccYuHakw.s:441 .text.HAL_PCD_DataOutStageCallback:0000000000000000 HAL_PCD_DataOutStageCallback
/tmp/ccYuHakw.s:456 .text.HAL_PCD_DataInStageCallback:0000000000000000 $t
/tmp/ccYuHakw.s:463 .text.HAL_PCD_DataInStageCallback:0000000000000000 HAL_PCD_DataInStageCallback
/tmp/ccYuHakw.s:478 .text.HAL_PCD_SetupStageCallback:0000000000000000 $t
/tmp/ccYuHakw.s:485 .text.HAL_PCD_SetupStageCallback:0000000000000000 HAL_PCD_SetupStageCallback
/tmp/ccYuHakw.s:500 .text.HAL_PCD_SOFCallback:0000000000000000 $t
/tmp/ccYuHakw.s:507 .text.HAL_PCD_SOFCallback:0000000000000000 HAL_PCD_SOFCallback
/tmp/ccYuHakw.s:522 .text.HAL_PCD_ResetCallback:0000000000000000 $t
/tmp/ccYuHakw.s:529 .text.HAL_PCD_ResetCallback:0000000000000000 HAL_PCD_ResetCallback
/tmp/ccYuHakw.s:544 .text.HAL_PCD_SuspendCallback:0000000000000000 $t
/tmp/ccYuHakw.s:551 .text.HAL_PCD_SuspendCallback:0000000000000000 HAL_PCD_SuspendCallback
/tmp/ccYuHakw.s:566 .text.HAL_PCD_ResumeCallback:0000000000000000 $t
/tmp/ccYuHakw.s:573 .text.HAL_PCD_ResumeCallback:0000000000000000 HAL_PCD_ResumeCallback
/tmp/ccYuHakw.s:588 .text.HAL_PCD_ISOOUTIncompleteCallback:0000000000000000 $t
/tmp/ccYuHakw.s:595 .text.HAL_PCD_ISOOUTIncompleteCallback:0000000000000000 HAL_PCD_ISOOUTIncompleteCallback
/tmp/ccYuHakw.s:610 .text.HAL_PCD_ISOINIncompleteCallback:0000000000000000 $t
/tmp/ccYuHakw.s:617 .text.HAL_PCD_ISOINIncompleteCallback:0000000000000000 HAL_PCD_ISOINIncompleteCallback
/tmp/ccYuHakw.s:632 .text.HAL_PCD_ConnectCallback:0000000000000000 $t
/tmp/ccYuHakw.s:639 .text.HAL_PCD_ConnectCallback:0000000000000000 HAL_PCD_ConnectCallback
/tmp/ccYuHakw.s:654 .text.HAL_PCD_DisconnectCallback:0000000000000000 $t
/tmp/ccYuHakw.s:661 .text.HAL_PCD_DisconnectCallback:0000000000000000 HAL_PCD_DisconnectCallback
/tmp/ccYuHakw.s:676 .text.HAL_PCD_DevConnect:0000000000000000 $t
/tmp/ccYuHakw.s:683 .text.HAL_PCD_DevConnect:0000000000000000 HAL_PCD_DevConnect
/tmp/ccYuHakw.s:734 .text.HAL_PCD_DevDisconnect:0000000000000000 $t
/tmp/ccYuHakw.s:741 .text.HAL_PCD_DevDisconnect:0000000000000000 HAL_PCD_DevDisconnect
/tmp/ccYuHakw.s:792 .text.HAL_PCD_SetAddress:0000000000000000 $t
/tmp/ccYuHakw.s:799 .text.HAL_PCD_SetAddress:0000000000000000 HAL_PCD_SetAddress
/tmp/ccYuHakw.s:853 .text.HAL_PCD_EP_Open:0000000000000000 $t
/tmp/ccYuHakw.s:860 .text.HAL_PCD_EP_Open:0000000000000000 HAL_PCD_EP_Open
/tmp/ccYuHakw.s:979 .text.HAL_PCD_EP_Close:0000000000000000 $t
/tmp/ccYuHakw.s:986 .text.HAL_PCD_EP_Close:0000000000000000 HAL_PCD_EP_Close
/tmp/ccYuHakw.s:1079 .text.HAL_PCD_EP_Receive:0000000000000000 $t
/tmp/ccYuHakw.s:1086 .text.HAL_PCD_EP_Receive:0000000000000000 HAL_PCD_EP_Receive
/tmp/ccYuHakw.s:1165 .text.HAL_PCD_EP_GetRxCount:0000000000000000 $t
/tmp/ccYuHakw.s:1172 .text.HAL_PCD_EP_GetRxCount:0000000000000000 HAL_PCD_EP_GetRxCount
/tmp/ccYuHakw.s:1197 .text.HAL_PCD_EP_Transmit:0000000000000000 $t
/tmp/ccYuHakw.s:1204 .text.HAL_PCD_EP_Transmit:0000000000000000 HAL_PCD_EP_Transmit
/tmp/ccYuHakw.s:1277 .text.PCD_EP_ISR_Handler:0000000000000000 $t
/tmp/ccYuHakw.s:1283 .text.PCD_EP_ISR_Handler:0000000000000000 PCD_EP_ISR_Handler
/tmp/ccYuHakw.s:1920 .text.PCD_EP_ISR_Handler:0000000000000374 $d
ARM GAS /tmp/ccYuHakw.s page 83
/tmp/ccYuHakw.s:1934 .text.HAL_PCD_IRQHandler:0000000000000000 $t
/tmp/ccYuHakw.s:1941 .text.HAL_PCD_IRQHandler:0000000000000000 HAL_PCD_IRQHandler
/tmp/ccYuHakw.s:2219 .text.HAL_PCD_IRQHandler:0000000000000190 $d
/tmp/ccYuHakw.s:2230 .text.HAL_PCD_EP_SetStall:0000000000000000 $t
/tmp/ccYuHakw.s:2237 .text.HAL_PCD_EP_SetStall:0000000000000000 HAL_PCD_EP_SetStall
/tmp/ccYuHakw.s:2355 .text.HAL_PCD_EP_ClrStall:0000000000000000 $t
/tmp/ccYuHakw.s:2362 .text.HAL_PCD_EP_ClrStall:0000000000000000 HAL_PCD_EP_ClrStall
/tmp/ccYuHakw.s:2470 .text.HAL_PCD_EP_Flush:0000000000000000 $t
/tmp/ccYuHakw.s:2477 .text.HAL_PCD_EP_Flush:0000000000000000 HAL_PCD_EP_Flush
/tmp/ccYuHakw.s:2494 .text.HAL_PCD_ActivateRemoteWakeup:0000000000000000 $t
/tmp/ccYuHakw.s:2501 .text.HAL_PCD_ActivateRemoteWakeup:0000000000000000 HAL_PCD_ActivateRemoteWakeup
/tmp/ccYuHakw.s:2525 .text.HAL_PCD_DeActivateRemoteWakeup:0000000000000000 $t
/tmp/ccYuHakw.s:2532 .text.HAL_PCD_DeActivateRemoteWakeup:0000000000000000 HAL_PCD_DeActivateRemoteWakeup
/tmp/ccYuHakw.s:2556 .text.HAL_PCD_GetState:0000000000000000 $t
/tmp/ccYuHakw.s:2563 .text.HAL_PCD_GetState:0000000000000000 HAL_PCD_GetState
/tmp/ccYuHakw.s:2582 .text.HAL_PCD_GetState:0000000000000008 $d
UNDEFINED SYMBOLS
USB_DisableGlobalInt
USB_DevInit
HAL_PCDEx_ActivateLPM
USB_DevConnect
USB_EnableGlobalInt
USB_StopDevice
USB_DevDisconnect
USB_SetDevAddress
USB_ActivateEndpoint
USB_DeactivateEndpoint
USB_EPStartXfer
USB_ReadPMA
USB_ReadInterrupts
HAL_PCDEx_LPM_Callback
USB_EPSetStall
USB_EP0_OutStart
USB_EPClearStall
USB_ActivateRemoteWakeup
USB_DeActivateRemoteWakeup