ARM GAS /tmp/ccmPatq2.s page 1
1 .cpu cortex-m7
2 .eabi_attribute 28, 1
3 .eabi_attribute 20, 1
4 .eabi_attribute 21, 1
5 .eabi_attribute 23, 3
6 .eabi_attribute 24, 1
7 .eabi_attribute 25, 1
8 .eabi_attribute 26, 1
9 .eabi_attribute 30, 1
10 .eabi_attribute 34, 1
11 .eabi_attribute 18, 4
12 .file "stm32h7xx_hal_pcd_ex.c"
13 .text
14 .Ltext0:
15 .cfi_sections .debug_frame
16 .section .text.HAL_PCDEx_SetTxFiFo,"ax",%progbits
17 .align 1
18 .global HAL_PCDEx_SetTxFiFo
19 .arch armv7e-m
20 .syntax unified
21 .thumb
22 .thumb_func
23 .fpu fpv5-d16
25 HAL_PCDEx_SetTxFiFo:
26 .LVL0:
27 .LFB141:
28 .file 1 "Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c"
1:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** /**
2:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** ******************************************************************************
3:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** * @file stm32h7xx_hal_pcd_ex.c
4:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** * @author MCD Application Team
5:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** * @brief PCD Extended HAL module driver.
6:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** * This file provides firmware functions to manage the following
7:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** * functionalities of the USB Peripheral Controller:
8:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** * + Extended features functions
9:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** *
10:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** ******************************************************************************
11:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** * @attention
12:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** *
13:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** *
© Copyright (c) 2017 STMicroelectronics.
14:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** * All rights reserved.
15:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** *
16:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** * This software component is licensed by ST under BSD 3-Clause license,
17:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** * the "License"; You may not use this file except in compliance with the
18:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** * License. You may obtain a copy of the License at:
19:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** * opensource.org/licenses/BSD-3-Clause
20:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** *
21:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** ******************************************************************************
22:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** */
23:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c ****
24:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** /* Includes ------------------------------------------------------------------*/
25:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** #include "stm32h7xx_hal.h"
26:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c ****
27:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** /** @addtogroup STM32H7xx_HAL_Driver
28:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** * @{
29:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** */
30:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c ****
ARM GAS /tmp/ccmPatq2.s page 2
31:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** /** @defgroup PCDEx PCDEx
32:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** * @brief PCD Extended HAL module driver
33:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** * @{
34:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** */
35:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c ****
36:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** #ifdef HAL_PCD_MODULE_ENABLED
37:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c ****
38:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** #if defined (USB_OTG_FS) || defined (USB_OTG_HS)
39:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** /* Private types -------------------------------------------------------------*/
40:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** /* Private variables ---------------------------------------------------------*/
41:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** /* Private constants ---------------------------------------------------------*/
42:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** /* Private macros ------------------------------------------------------------*/
43:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** /* Private functions ---------------------------------------------------------*/
44:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** /* Exported functions --------------------------------------------------------*/
45:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c ****
46:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** /** @defgroup PCDEx_Exported_Functions PCDEx Exported Functions
47:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** * @{
48:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** */
49:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c ****
50:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** /** @defgroup PCDEx_Exported_Functions_Group1 Peripheral Control functions
51:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** * @brief PCDEx control functions
52:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** *
53:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** @verbatim
54:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** ===============================================================================
55:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** ##### Extended features functions #####
56:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** ===============================================================================
57:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** [..] This section provides functions allowing to:
58:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** (+) Update FIFO configuration
59:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c ****
60:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** @endverbatim
61:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** * @{
62:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** */
63:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** #if defined (USB_OTG_FS) || defined (USB_OTG_HS)
64:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** /**
65:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** * @brief Set Tx FIFO
66:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** * @param hpcd PCD handle
67:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** * @param fifo The number of Tx fifo
68:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** * @param size Fifo size
69:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** * @retval HAL status
70:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** */
71:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** HAL_StatusTypeDef HAL_PCDEx_SetTxFiFo(PCD_HandleTypeDef *hpcd, uint8_t fifo, uint16_t size)
72:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** {
29 .loc 1 72 1 view -0
30 .cfi_startproc
31 @ args = 0, pretend = 0, frame = 0
32 @ frame_needed = 0, uses_anonymous_args = 0
33 @ link register save eliminated.
34 .loc 1 72 1 is_stmt 0 view .LVU1
35 0000 10B4 push {r4}
36 .LCFI0:
37 .cfi_def_cfa_offset 4
38 .cfi_offset 4, -4
73:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** uint8_t i;
39 .loc 1 73 3 is_stmt 1 view .LVU2
74:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** uint32_t Tx_Offset;
40 .loc 1 74 3 view .LVU3
75:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c ****
ARM GAS /tmp/ccmPatq2.s page 3
76:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** /* TXn min size = 16 words. (n : Transmit FIFO index)
77:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** When a TxFIFO is not used, the Configuration should be as follows:
78:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** case 1 : n > m and Txn is not used (n,m : Transmit FIFO indexes)
79:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** --> Txm can use the space allocated for Txn.
80:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** case2 : n < m and Txn is not used (n,m : Transmit FIFO indexes)
81:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** --> Txn should be configured with the minimum space of 16 words
82:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** The FIFO is used optimally when used TxFIFOs are allocated in the top
83:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** of the FIFO.Ex: use EP1 and EP2 as IN instead of EP1 and EP3 as IN ones.
84:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** When DMA is used 3n * FIFO locations should be reserved for internal DMA registers */
85:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c ****
86:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** Tx_Offset = hpcd->Instance->GRXFSIZ;
41 .loc 1 86 3 view .LVU4
42 .loc 1 86 19 is_stmt 0 view .LVU5
43 0002 0468 ldr r4, [r0]
44 .loc 1 86 13 view .LVU6
45 0004 606A ldr r0, [r4, #36]
46 .LVL1:
87:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c ****
88:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** if (fifo == 0U)
47 .loc 1 88 3 is_stmt 1 view .LVU7
48 .loc 1 88 6 is_stmt 0 view .LVU8
49 0006 31B9 cbnz r1, .L2
89:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** {
90:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** hpcd->Instance->DIEPTXF0_HNPTXFSIZ = ((uint32_t)size << 16) | Tx_Offset;
50 .loc 1 90 5 is_stmt 1 view .LVU9
51 .loc 1 90 65 is_stmt 0 view .LVU10
52 0008 40EA0240 orr r0, r0, r2, lsl #16
53 .LVL2:
54 .loc 1 90 40 view .LVU11
55 000c A062 str r0, [r4, #40]
56 .LVL3:
57 .L3:
91:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** }
92:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** else
93:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** {
94:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** Tx_Offset += (hpcd->Instance->DIEPTXF0_HNPTXFSIZ) >> 16;
95:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** for (i = 0U; i < (fifo - 1U); i++)
96:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** {
97:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** Tx_Offset += (hpcd->Instance->DIEPTXF[i] >> 16);
98:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** }
99:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c ****
100:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** /* Multiply Tx_Size by 2 to get higher performance */
101:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** hpcd->Instance->DIEPTXF[fifo - 1U] = ((uint32_t)size << 16) | Tx_Offset;
102:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** }
103:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c ****
104:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** return HAL_OK;
58 .loc 1 104 3 is_stmt 1 view .LVU12
105:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** }
59 .loc 1 105 1 is_stmt 0 view .LVU13
60 000e 0020 movs r0, #0
61 0010 5DF8044B ldr r4, [sp], #4
62 .LCFI1:
63 .cfi_remember_state
64 .cfi_restore 4
65 .cfi_def_cfa_offset 0
66 0014 7047 bx lr
67 .LVL4:
ARM GAS /tmp/ccmPatq2.s page 4
68 .L2:
69 .LCFI2:
70 .cfi_restore_state
71 .loc 1 105 1 view .LVU14
72 0016 8C46 mov ip, r1
94:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** for (i = 0U; i < (fifo - 1U); i++)
73 .loc 1 94 5 is_stmt 1 view .LVU15
94:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** for (i = 0U; i < (fifo - 1U); i++)
74 .loc 1 94 33 is_stmt 0 view .LVU16
75 0018 A36A ldr r3, [r4, #40]
94:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** for (i = 0U; i < (fifo - 1U); i++)
76 .loc 1 94 15 view .LVU17
77 001a 00EB1340 add r0, r0, r3, lsr #16
78 .LVL5:
95:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** {
79 .loc 1 95 5 is_stmt 1 view .LVU18
95:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** {
80 .loc 1 95 12 is_stmt 0 view .LVU19
81 001e 0023 movs r3, #0
95:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** {
82 .loc 1 95 5 view .LVU20
83 0020 08E0 b .L4
84 .LVL6:
85 .L5:
97:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** }
86 .loc 1 97 7 is_stmt 1 discriminator 3 view .LVU21
97:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** }
87 .loc 1 97 44 is_stmt 0 discriminator 3 view .LVU22
88 0022 03F14001 add r1, r3, #64
89 0026 04EB8101 add r1, r4, r1, lsl #2
90 002a 4968 ldr r1, [r1, #4]
97:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** }
91 .loc 1 97 17 discriminator 3 view .LVU23
92 002c 00EB1140 add r0, r0, r1, lsr #16
93 .LVL7:
95:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** {
94 .loc 1 95 35 is_stmt 1 discriminator 3 view .LVU24
95:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** {
95 .loc 1 95 36 is_stmt 0 discriminator 3 view .LVU25
96 0030 0133 adds r3, r3, #1
97 .LVL8:
95:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** {
98 .loc 1 95 36 discriminator 3 view .LVU26
99 0032 DBB2 uxtb r3, r3
100 .LVL9:
101 .L4:
95:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** {
102 .loc 1 95 18 is_stmt 1 discriminator 1 view .LVU27
95:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** {
103 .loc 1 95 28 is_stmt 0 discriminator 1 view .LVU28
104 0034 0CF1FF31 add r1, ip, #-1
95:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** {
105 .loc 1 95 5 discriminator 1 view .LVU29
106 0038 8B42 cmp r3, r1
107 003a F2D3 bcc .L5
101:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** }
108 .loc 1 101 5 is_stmt 1 view .LVU30
ARM GAS /tmp/ccmPatq2.s page 5
101:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** }
109 .loc 1 101 65 is_stmt 0 view .LVU31
110 003c 40EA0240 orr r0, r0, r2, lsl #16
111 .LVL10:
101:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** }
112 .loc 1 101 40 view .LVU32
113 0040 0CF13F01 add r1, ip, #63
114 0044 04EB8101 add r1, r4, r1, lsl #2
115 0048 4860 str r0, [r1, #4]
116 004a E0E7 b .L3
117 .cfi_endproc
118 .LFE141:
120 .section .text.HAL_PCDEx_SetRxFiFo,"ax",%progbits
121 .align 1
122 .global HAL_PCDEx_SetRxFiFo
123 .syntax unified
124 .thumb
125 .thumb_func
126 .fpu fpv5-d16
128 HAL_PCDEx_SetRxFiFo:
129 .LVL11:
130 .LFB142:
106:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c ****
107:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** /**
108:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** * @brief Set Rx FIFO
109:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** * @param hpcd PCD handle
110:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** * @param size Size of Rx fifo
111:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** * @retval HAL status
112:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** */
113:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** HAL_StatusTypeDef HAL_PCDEx_SetRxFiFo(PCD_HandleTypeDef *hpcd, uint16_t size)
114:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** {
131 .loc 1 114 1 is_stmt 1 view -0
132 .cfi_startproc
133 @ args = 0, pretend = 0, frame = 0
134 @ frame_needed = 0, uses_anonymous_args = 0
135 @ link register save eliminated.
115:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** hpcd->Instance->GRXFSIZ = size;
136 .loc 1 115 3 view .LVU34
137 .loc 1 115 7 is_stmt 0 view .LVU35
138 0000 0368 ldr r3, [r0]
139 .loc 1 115 27 view .LVU36
140 0002 5962 str r1, [r3, #36]
116:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c ****
117:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** return HAL_OK;
141 .loc 1 117 3 is_stmt 1 view .LVU37
118:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** }
142 .loc 1 118 1 is_stmt 0 view .LVU38
143 0004 0020 movs r0, #0
144 .LVL12:
145 .loc 1 118 1 view .LVU39
146 0006 7047 bx lr
147 .cfi_endproc
148 .LFE142:
150 .section .text.HAL_PCDEx_ActivateLPM,"ax",%progbits
151 .align 1
152 .global HAL_PCDEx_ActivateLPM
153 .syntax unified
ARM GAS /tmp/ccmPatq2.s page 6
154 .thumb
155 .thumb_func
156 .fpu fpv5-d16
158 HAL_PCDEx_ActivateLPM:
159 .LVL13:
160 .LFB143:
119:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c ****
120:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** /**
121:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** * @brief Activate LPM feature.
122:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** * @param hpcd PCD handle
123:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** * @retval HAL status
124:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** */
125:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** HAL_StatusTypeDef HAL_PCDEx_ActivateLPM(PCD_HandleTypeDef *hpcd)
126:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** {
161 .loc 1 126 1 is_stmt 1 view -0
162 .cfi_startproc
163 @ args = 0, pretend = 0, frame = 0
164 @ frame_needed = 0, uses_anonymous_args = 0
165 @ link register save eliminated.
166 .loc 1 126 1 is_stmt 0 view .LVU41
167 0000 0346 mov r3, r0
127:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** USB_OTG_GlobalTypeDef *USBx = hpcd->Instance;
168 .loc 1 127 3 is_stmt 1 view .LVU42
169 .loc 1 127 26 is_stmt 0 view .LVU43
170 0002 0268 ldr r2, [r0]
171 .LVL14:
128:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c ****
129:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** hpcd->lpm_active = 1U;
172 .loc 1 129 3 is_stmt 1 view .LVU44
173 .loc 1 129 20 is_stmt 0 view .LVU45
174 0004 0121 movs r1, #1
175 0006 C0F8FC13 str r1, [r0, #1020]
130:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** hpcd->LPM_State = LPM_L0;
176 .loc 1 130 3 is_stmt 1 view .LVU46
177 .loc 1 130 19 is_stmt 0 view .LVU47
178 000a 0020 movs r0, #0
179 .LVL15:
180 .loc 1 130 19 view .LVU48
181 000c 83F8F403 strb r0, [r3, #1012]
131:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** USBx->GINTMSK |= USB_OTG_GINTMSK_LPMINTM;
182 .loc 1 131 3 is_stmt 1 view .LVU49
183 .loc 1 131 17 is_stmt 0 view .LVU50
184 0010 9369 ldr r3, [r2, #24]
185 .LVL16:
186 .loc 1 131 17 view .LVU51
187 0012 43F00063 orr r3, r3, #134217728
188 0016 9361 str r3, [r2, #24]
132:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** USBx->GLPMCFG |= (USB_OTG_GLPMCFG_LPMEN | USB_OTG_GLPMCFG_LPMACK | USB_OTG_GLPMCFG_ENBESL);
189 .loc 1 132 3 is_stmt 1 view .LVU52
190 .loc 1 132 17 is_stmt 0 view .LVU53
191 0018 516D ldr r1, [r2, #84]
192 001a 024B ldr r3, .L9
193 001c 0B43 orrs r3, r3, r1
194 001e 5365 str r3, [r2, #84]
133:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c ****
134:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** return HAL_OK;
195 .loc 1 134 3 is_stmt 1 view .LVU54
ARM GAS /tmp/ccmPatq2.s page 7
135:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** }
196 .loc 1 135 1 is_stmt 0 view .LVU55
197 0020 7047 bx lr
198 .L10:
199 0022 00BF .align 2
200 .L9:
201 0024 03000010 .word 268435459
202 .cfi_endproc
203 .LFE143:
205 .section .text.HAL_PCDEx_DeActivateLPM,"ax",%progbits
206 .align 1
207 .global HAL_PCDEx_DeActivateLPM
208 .syntax unified
209 .thumb
210 .thumb_func
211 .fpu fpv5-d16
213 HAL_PCDEx_DeActivateLPM:
214 .LVL17:
215 .LFB144:
136:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c ****
137:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** /**
138:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** * @brief Deactivate LPM feature.
139:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** * @param hpcd PCD handle
140:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** * @retval HAL status
141:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** */
142:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** HAL_StatusTypeDef HAL_PCDEx_DeActivateLPM(PCD_HandleTypeDef *hpcd)
143:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** {
216 .loc 1 143 1 is_stmt 1 view -0
217 .cfi_startproc
218 @ args = 0, pretend = 0, frame = 0
219 @ frame_needed = 0, uses_anonymous_args = 0
220 @ link register save eliminated.
221 .loc 1 143 1 is_stmt 0 view .LVU57
222 0000 0246 mov r2, r0
144:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** USB_OTG_GlobalTypeDef *USBx = hpcd->Instance;
223 .loc 1 144 3 is_stmt 1 view .LVU58
224 .loc 1 144 26 is_stmt 0 view .LVU59
225 0002 0368 ldr r3, [r0]
226 .LVL18:
145:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c ****
146:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** hpcd->lpm_active = 0U;
227 .loc 1 146 3 is_stmt 1 view .LVU60
228 .loc 1 146 20 is_stmt 0 view .LVU61
229 0004 0020 movs r0, #0
230 .LVL19:
231 .loc 1 146 20 view .LVU62
232 0006 C2F8FC03 str r0, [r2, #1020]
147:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** USBx->GINTMSK &= ~USB_OTG_GINTMSK_LPMINTM;
233 .loc 1 147 3 is_stmt 1 view .LVU63
234 .loc 1 147 17 is_stmt 0 view .LVU64
235 000a 9A69 ldr r2, [r3, #24]
236 .LVL20:
237 .loc 1 147 17 view .LVU65
238 000c 22F00062 bic r2, r2, #134217728
239 0010 9A61 str r2, [r3, #24]
148:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** USBx->GLPMCFG &= ~(USB_OTG_GLPMCFG_LPMEN | USB_OTG_GLPMCFG_LPMACK | USB_OTG_GLPMCFG_ENBESL);
240 .loc 1 148 3 is_stmt 1 view .LVU66
ARM GAS /tmp/ccmPatq2.s page 8
241 .loc 1 148 17 is_stmt 0 view .LVU67
242 0012 596D ldr r1, [r3, #84]
243 0014 014A ldr r2, .L12
244 0016 0A40 ands r2, r2, r1
245 0018 5A65 str r2, [r3, #84]
149:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c ****
150:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** return HAL_OK;
246 .loc 1 150 3 is_stmt 1 view .LVU68
151:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** }
247 .loc 1 151 1 is_stmt 0 view .LVU69
248 001a 7047 bx lr
249 .L13:
250 .align 2
251 .L12:
252 001c FCFFFFEF .word -268435460
253 .cfi_endproc
254 .LFE144:
256 .section .text.HAL_PCDEx_ActivateBCD,"ax",%progbits
257 .align 1
258 .global HAL_PCDEx_ActivateBCD
259 .syntax unified
260 .thumb
261 .thumb_func
262 .fpu fpv5-d16
264 HAL_PCDEx_ActivateBCD:
265 .LVL21:
266 .LFB146:
152:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c ****
153:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c ****
154:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** /**
155:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** * @brief Handle BatteryCharging Process.
156:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** * @param hpcd PCD handle
157:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** * @retval HAL status
158:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** */
159:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** void HAL_PCDEx_BCD_VBUSDetect(PCD_HandleTypeDef *hpcd)
160:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** {
161:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** USB_OTG_GlobalTypeDef *USBx = hpcd->Instance;
162:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** uint32_t tickstart = HAL_GetTick();
163:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c ****
164:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** /* Enable DCD : Data Contact Detect */
165:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** USBx->GCCFG |= USB_OTG_GCCFG_DCDEN;
166:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c ****
167:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** /* Wait Detect flag or a timeout is happen*/
168:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** while ((USBx->GCCFG & USB_OTG_GCCFG_DCDET) == 0U)
169:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** {
170:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** /* Check for the Timeout */
171:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** if ((HAL_GetTick() - tickstart) > 1000U)
172:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** {
173:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** #if (USE_HAL_PCD_REGISTER_CALLBACKS == 1U)
174:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** hpcd->BCDCallback(hpcd, PCD_BCD_ERROR);
175:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** #else
176:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** HAL_PCDEx_BCD_Callback(hpcd, PCD_BCD_ERROR);
177:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** #endif /* USE_HAL_PCD_REGISTER_CALLBACKS */
178:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c ****
179:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** return;
180:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** }
181:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** }
ARM GAS /tmp/ccmPatq2.s page 9
182:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c ****
183:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** /* Right response got */
184:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** HAL_Delay(200U);
185:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c ****
186:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** /* Check Detect flag*/
187:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** if ((USBx->GCCFG & USB_OTG_GCCFG_DCDET) == USB_OTG_GCCFG_DCDET)
188:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** {
189:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** #if (USE_HAL_PCD_REGISTER_CALLBACKS == 1U)
190:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** hpcd->BCDCallback(hpcd, PCD_BCD_CONTACT_DETECTION);
191:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** #else
192:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** HAL_PCDEx_BCD_Callback(hpcd, PCD_BCD_CONTACT_DETECTION);
193:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** #endif /* USE_HAL_PCD_REGISTER_CALLBACKS */
194:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** }
195:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c ****
196:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** /*Primary detection: checks if connected to Standard Downstream Port
197:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** (without charging capability) */
198:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** USBx->GCCFG &= ~ USB_OTG_GCCFG_DCDEN;
199:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** HAL_Delay(50U);
200:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** USBx->GCCFG |= USB_OTG_GCCFG_PDEN;
201:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** HAL_Delay(50U);
202:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c ****
203:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** if ((USBx->GCCFG & USB_OTG_GCCFG_PDET) == 0U)
204:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** {
205:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** /* Case of Standard Downstream Port */
206:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** #if (USE_HAL_PCD_REGISTER_CALLBACKS == 1U)
207:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** hpcd->BCDCallback(hpcd, PCD_BCD_STD_DOWNSTREAM_PORT);
208:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** #else
209:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** HAL_PCDEx_BCD_Callback(hpcd, PCD_BCD_STD_DOWNSTREAM_PORT);
210:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** #endif /* USE_HAL_PCD_REGISTER_CALLBACKS */
211:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** }
212:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** else
213:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** {
214:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** /* start secondary detection to check connection to Charging Downstream
215:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** Port or Dedicated Charging Port */
216:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** USBx->GCCFG &= ~ USB_OTG_GCCFG_PDEN;
217:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** HAL_Delay(50U);
218:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** USBx->GCCFG |= USB_OTG_GCCFG_SDEN;
219:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** HAL_Delay(50U);
220:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c ****
221:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** if ((USBx->GCCFG & USB_OTG_GCCFG_SDET) == USB_OTG_GCCFG_SDET)
222:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** {
223:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** /* case Dedicated Charging Port */
224:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** #if (USE_HAL_PCD_REGISTER_CALLBACKS == 1U)
225:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** hpcd->BCDCallback(hpcd, PCD_BCD_DEDICATED_CHARGING_PORT);
226:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** #else
227:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** HAL_PCDEx_BCD_Callback(hpcd, PCD_BCD_DEDICATED_CHARGING_PORT);
228:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** #endif /* USE_HAL_PCD_REGISTER_CALLBACKS */
229:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** }
230:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** else
231:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** {
232:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** /* case Charging Downstream Port */
233:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** #if (USE_HAL_PCD_REGISTER_CALLBACKS == 1U)
234:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** hpcd->BCDCallback(hpcd, PCD_BCD_CHARGING_DOWNSTREAM_PORT);
235:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** #else
236:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** HAL_PCDEx_BCD_Callback(hpcd, PCD_BCD_CHARGING_DOWNSTREAM_PORT);
237:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** #endif /* USE_HAL_PCD_REGISTER_CALLBACKS */
238:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** }
ARM GAS /tmp/ccmPatq2.s page 10
239:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** }
240:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c ****
241:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** /* Battery Charging capability discovery finished */
242:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** (void)HAL_PCDEx_DeActivateBCD(hpcd);
243:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c ****
244:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** #if (USE_HAL_PCD_REGISTER_CALLBACKS == 1U)
245:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** hpcd->BCDCallback(hpcd, PCD_BCD_DISCOVERY_COMPLETED);
246:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** #else
247:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** HAL_PCDEx_BCD_Callback(hpcd, PCD_BCD_DISCOVERY_COMPLETED);
248:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** #endif /* USE_HAL_PCD_REGISTER_CALLBACKS */
249:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** }
250:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c ****
251:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** /**
252:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** * @brief Activate BatteryCharging feature.
253:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** * @param hpcd PCD handle
254:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** * @retval HAL status
255:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** */
256:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** HAL_StatusTypeDef HAL_PCDEx_ActivateBCD(PCD_HandleTypeDef *hpcd)
257:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** {
267 .loc 1 257 1 is_stmt 1 view -0
268 .cfi_startproc
269 @ args = 0, pretend = 0, frame = 0
270 @ frame_needed = 0, uses_anonymous_args = 0
271 @ link register save eliminated.
258:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** USB_OTG_GlobalTypeDef *USBx = hpcd->Instance;
272 .loc 1 258 3 view .LVU71
273 .loc 1 258 26 is_stmt 0 view .LVU72
274 0000 0368 ldr r3, [r0]
275 .LVL22:
259:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c ****
260:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** USBx->GCCFG &= ~(USB_OTG_GCCFG_PDEN);
276 .loc 1 260 3 is_stmt 1 view .LVU73
277 .loc 1 260 15 is_stmt 0 view .LVU74
278 0002 9A6B ldr r2, [r3, #56]
279 0004 22F40022 bic r2, r2, #524288
280 0008 9A63 str r2, [r3, #56]
261:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** USBx->GCCFG &= ~(USB_OTG_GCCFG_SDEN);
281 .loc 1 261 3 is_stmt 1 view .LVU75
282 .loc 1 261 15 is_stmt 0 view .LVU76
283 000a 9A6B ldr r2, [r3, #56]
284 000c 22F48012 bic r2, r2, #1048576
285 0010 9A63 str r2, [r3, #56]
262:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c ****
263:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** /* Power Down USB tranceiver */
264:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** USBx->GCCFG &= ~(USB_OTG_GCCFG_PWRDWN);
286 .loc 1 264 3 is_stmt 1 view .LVU77
287 .loc 1 264 15 is_stmt 0 view .LVU78
288 0012 9A6B ldr r2, [r3, #56]
289 0014 22F48032 bic r2, r2, #65536
290 0018 9A63 str r2, [r3, #56]
265:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c ****
266:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** /* Enable Battery charging */
267:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** USBx->GCCFG |= USB_OTG_GCCFG_BCDEN;
291 .loc 1 267 3 is_stmt 1 view .LVU79
292 .loc 1 267 15 is_stmt 0 view .LVU80
293 001a 9A6B ldr r2, [r3, #56]
294 001c 42F40032 orr r2, r2, #131072
ARM GAS /tmp/ccmPatq2.s page 11
295 0020 9A63 str r2, [r3, #56]
268:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c ****
269:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** hpcd->battery_charging_active = 1U;
296 .loc 1 269 3 is_stmt 1 view .LVU81
297 .loc 1 269 33 is_stmt 0 view .LVU82
298 0022 0123 movs r3, #1
299 .LVL23:
300 .loc 1 269 33 view .LVU83
301 0024 C0F80034 str r3, [r0, #1024]
270:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c ****
271:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** return HAL_OK;
302 .loc 1 271 3 is_stmt 1 view .LVU84
272:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** }
303 .loc 1 272 1 is_stmt 0 view .LVU85
304 0028 0020 movs r0, #0
305 .LVL24:
306 .loc 1 272 1 view .LVU86
307 002a 7047 bx lr
308 .cfi_endproc
309 .LFE146:
311 .section .text.HAL_PCDEx_DeActivateBCD,"ax",%progbits
312 .align 1
313 .global HAL_PCDEx_DeActivateBCD
314 .syntax unified
315 .thumb
316 .thumb_func
317 .fpu fpv5-d16
319 HAL_PCDEx_DeActivateBCD:
320 .LVL25:
321 .LFB147:
273:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c ****
274:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** /**
275:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** * @brief Deactivate BatteryCharging feature.
276:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** * @param hpcd PCD handle
277:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** * @retval HAL status
278:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** */
279:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** HAL_StatusTypeDef HAL_PCDEx_DeActivateBCD(PCD_HandleTypeDef *hpcd)
280:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** {
322 .loc 1 280 1 is_stmt 1 view -0
323 .cfi_startproc
324 @ args = 0, pretend = 0, frame = 0
325 @ frame_needed = 0, uses_anonymous_args = 0
326 @ link register save eliminated.
327 .loc 1 280 1 is_stmt 0 view .LVU88
328 0000 0246 mov r2, r0
281:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** USB_OTG_GlobalTypeDef *USBx = hpcd->Instance;
329 .loc 1 281 3 is_stmt 1 view .LVU89
330 .loc 1 281 26 is_stmt 0 view .LVU90
331 0002 0368 ldr r3, [r0]
332 .LVL26:
282:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c ****
283:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** USBx->GCCFG &= ~(USB_OTG_GCCFG_SDEN);
333 .loc 1 283 3 is_stmt 1 view .LVU91
334 .loc 1 283 15 is_stmt 0 view .LVU92
335 0004 996B ldr r1, [r3, #56]
336 0006 21F48011 bic r1, r1, #1048576
337 000a 9963 str r1, [r3, #56]
ARM GAS /tmp/ccmPatq2.s page 12
284:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** USBx->GCCFG &= ~(USB_OTG_GCCFG_PDEN);
338 .loc 1 284 3 is_stmt 1 view .LVU93
339 .loc 1 284 15 is_stmt 0 view .LVU94
340 000c 996B ldr r1, [r3, #56]
341 000e 21F40021 bic r1, r1, #524288
342 0012 9963 str r1, [r3, #56]
285:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c ****
286:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** /* Disable Battery charging */
287:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** USBx->GCCFG &= ~(USB_OTG_GCCFG_BCDEN);
343 .loc 1 287 3 is_stmt 1 view .LVU95
344 .loc 1 287 15 is_stmt 0 view .LVU96
345 0014 996B ldr r1, [r3, #56]
346 0016 21F40031 bic r1, r1, #131072
347 001a 9963 str r1, [r3, #56]
288:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c ****
289:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** hpcd->battery_charging_active = 0U;
348 .loc 1 289 3 is_stmt 1 view .LVU97
349 .loc 1 289 33 is_stmt 0 view .LVU98
350 001c 0020 movs r0, #0
351 .LVL27:
352 .loc 1 289 33 view .LVU99
353 001e C2F80004 str r0, [r2, #1024]
290:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c ****
291:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** return HAL_OK;
354 .loc 1 291 3 is_stmt 1 view .LVU100
292:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** }
355 .loc 1 292 1 is_stmt 0 view .LVU101
356 0022 7047 bx lr
357 .cfi_endproc
358 .LFE147:
360 .section .text.HAL_PCDEx_LPM_Callback,"ax",%progbits
361 .align 1
362 .weak HAL_PCDEx_LPM_Callback
363 .syntax unified
364 .thumb
365 .thumb_func
366 .fpu fpv5-d16
368 HAL_PCDEx_LPM_Callback:
369 .LVL28:
370 .LFB148:
293:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c ****
294:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** #endif /* defined (USB_OTG_FS) || defined (USB_OTG_HS) */
295:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c ****
296:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** /**
297:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** * @brief Send LPM message to user layer callback.
298:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** * @param hpcd PCD handle
299:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** * @param msg LPM message
300:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** * @retval HAL status
301:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** */
302:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** __weak void HAL_PCDEx_LPM_Callback(PCD_HandleTypeDef *hpcd, PCD_LPM_MsgTypeDef msg)
303:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** {
371 .loc 1 303 1 is_stmt 1 view -0
372 .cfi_startproc
373 @ args = 0, pretend = 0, frame = 0
374 @ frame_needed = 0, uses_anonymous_args = 0
375 @ link register save eliminated.
304:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** /* Prevent unused argument(s) compilation warning */
ARM GAS /tmp/ccmPatq2.s page 13
305:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** UNUSED(hpcd);
376 .loc 1 305 3 view .LVU103
306:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** UNUSED(msg);
377 .loc 1 306 3 view .LVU104
307:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c ****
308:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** /* NOTE : This function should not be modified, when the callback is needed,
309:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** the HAL_PCDEx_LPM_Callback could be implemented in the user file
310:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** */
311:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** }
378 .loc 1 311 1 is_stmt 0 view .LVU105
379 0000 7047 bx lr
380 .cfi_endproc
381 .LFE148:
383 .section .text.HAL_PCDEx_BCD_Callback,"ax",%progbits
384 .align 1
385 .weak HAL_PCDEx_BCD_Callback
386 .syntax unified
387 .thumb
388 .thumb_func
389 .fpu fpv5-d16
391 HAL_PCDEx_BCD_Callback:
392 .LVL29:
393 .LFB149:
312:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c ****
313:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** /**
314:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** * @brief Send BatteryCharging message to user layer callback.
315:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** * @param hpcd PCD handle
316:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** * @param msg LPM message
317:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** * @retval HAL status
318:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** */
319:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** __weak void HAL_PCDEx_BCD_Callback(PCD_HandleTypeDef *hpcd, PCD_BCD_MsgTypeDef msg)
320:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** {
394 .loc 1 320 1 is_stmt 1 view -0
395 .cfi_startproc
396 @ args = 0, pretend = 0, frame = 0
397 @ frame_needed = 0, uses_anonymous_args = 0
398 @ link register save eliminated.
321:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** /* Prevent unused argument(s) compilation warning */
322:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** UNUSED(hpcd);
399 .loc 1 322 3 view .LVU107
323:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** UNUSED(msg);
400 .loc 1 323 3 view .LVU108
324:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c ****
325:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** /* NOTE : This function should not be modified, when the callback is needed,
326:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** the HAL_PCDEx_BCD_Callback could be implemented in the user file
327:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** */
328:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** }
401 .loc 1 328 1 is_stmt 0 view .LVU109
402 0000 7047 bx lr
403 .cfi_endproc
404 .LFE149:
406 .section .text.HAL_PCDEx_BCD_VBUSDetect,"ax",%progbits
407 .align 1
408 .global HAL_PCDEx_BCD_VBUSDetect
409 .syntax unified
410 .thumb
411 .thumb_func
ARM GAS /tmp/ccmPatq2.s page 14
412 .fpu fpv5-d16
414 HAL_PCDEx_BCD_VBUSDetect:
415 .LVL30:
416 .LFB145:
160:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** USB_OTG_GlobalTypeDef *USBx = hpcd->Instance;
417 .loc 1 160 1 is_stmt 1 view -0
418 .cfi_startproc
419 @ args = 0, pretend = 0, frame = 0
420 @ frame_needed = 0, uses_anonymous_args = 0
160:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** USB_OTG_GlobalTypeDef *USBx = hpcd->Instance;
421 .loc 1 160 1 is_stmt 0 view .LVU111
422 0000 70B5 push {r4, r5, r6, lr}
423 .LCFI3:
424 .cfi_def_cfa_offset 16
425 .cfi_offset 4, -16
426 .cfi_offset 5, -12
427 .cfi_offset 6, -8
428 .cfi_offset 14, -4
429 0002 0646 mov r6, r0
161:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** uint32_t tickstart = HAL_GetTick();
430 .loc 1 161 3 is_stmt 1 view .LVU112
161:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** uint32_t tickstart = HAL_GetTick();
431 .loc 1 161 26 is_stmt 0 view .LVU113
432 0004 0468 ldr r4, [r0]
433 .LVL31:
162:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c ****
434 .loc 1 162 3 is_stmt 1 view .LVU114
162:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c ****
435 .loc 1 162 24 is_stmt 0 view .LVU115
436 0006 FFF7FEFF bl HAL_GetTick
437 .LVL32:
162:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c ****
438 .loc 1 162 24 view .LVU116
439 000a 0546 mov r5, r0
440 .LVL33:
165:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c ****
441 .loc 1 165 3 is_stmt 1 view .LVU117
165:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c ****
442 .loc 1 165 15 is_stmt 0 view .LVU118
443 000c A36B ldr r3, [r4, #56]
444 000e 43F48023 orr r3, r3, #262144
445 0012 A363 str r3, [r4, #56]
168:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** {
446 .loc 1 168 3 is_stmt 1 view .LVU119
447 .LVL34:
448 .L19:
168:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** {
449 .loc 1 168 9 view .LVU120
168:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** {
450 .loc 1 168 15 is_stmt 0 view .LVU121
451 0014 A36B ldr r3, [r4, #56]
168:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** {
452 .loc 1 168 9 view .LVU122
453 0016 13F0010F tst r3, #1
454 001a 0AD1 bne .L27
171:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** {
455 .loc 1 171 5 is_stmt 1 view .LVU123
ARM GAS /tmp/ccmPatq2.s page 15
171:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** {
456 .loc 1 171 10 is_stmt 0 view .LVU124
457 001c FFF7FEFF bl HAL_GetTick
458 .LVL35:
171:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** {
459 .loc 1 171 24 view .LVU125
460 0020 401B subs r0, r0, r5
171:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** {
461 .loc 1 171 8 view .LVU126
462 0022 B0F57A7F cmp r0, #1000
463 0026 F5D9 bls .L19
176:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** #endif /* USE_HAL_PCD_REGISTER_CALLBACKS */
464 .loc 1 176 7 is_stmt 1 view .LVU127
465 0028 FF21 movs r1, #255
466 002a 3046 mov r0, r6
467 002c FFF7FEFF bl HAL_PCDEx_BCD_Callback
468 .LVL36:
179:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** }
469 .loc 1 179 7 view .LVU128
470 0030 23E0 b .L18
471 .L27:
184:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c ****
472 .loc 1 184 3 view .LVU129
473 0032 C820 movs r0, #200
474 0034 FFF7FEFF bl HAL_Delay
475 .LVL37:
187:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** {
476 .loc 1 187 3 view .LVU130
187:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** {
477 .loc 1 187 12 is_stmt 0 view .LVU131
478 0038 A36B ldr r3, [r4, #56]
187:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** {
479 .loc 1 187 6 view .LVU132
480 003a 13F0010F tst r3, #1
481 003e 1DD1 bne .L28
482 .L22:
198:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** HAL_Delay(50U);
483 .loc 1 198 3 is_stmt 1 view .LVU133
198:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** HAL_Delay(50U);
484 .loc 1 198 15 is_stmt 0 view .LVU134
485 0040 A36B ldr r3, [r4, #56]
486 0042 23F48023 bic r3, r3, #262144
487 0046 A363 str r3, [r4, #56]
199:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** USBx->GCCFG |= USB_OTG_GCCFG_PDEN;
488 .loc 1 199 3 is_stmt 1 view .LVU135
489 0048 3220 movs r0, #50
490 004a FFF7FEFF bl HAL_Delay
491 .LVL38:
200:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** HAL_Delay(50U);
492 .loc 1 200 3 view .LVU136
200:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** HAL_Delay(50U);
493 .loc 1 200 15 is_stmt 0 view .LVU137
494 004e A36B ldr r3, [r4, #56]
495 0050 43F40023 orr r3, r3, #524288
496 0054 A363 str r3, [r4, #56]
201:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c ****
497 .loc 1 201 3 is_stmt 1 view .LVU138
ARM GAS /tmp/ccmPatq2.s page 16
498 0056 3220 movs r0, #50
499 0058 FFF7FEFF bl HAL_Delay
500 .LVL39:
203:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** {
501 .loc 1 203 3 view .LVU139
203:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** {
502 .loc 1 203 12 is_stmt 0 view .LVU140
503 005c A36B ldr r3, [r4, #56]
203:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** {
504 .loc 1 203 6 view .LVU141
505 005e 13F0020F tst r3, #2
506 0062 10D1 bne .L23
209:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** #endif /* USE_HAL_PCD_REGISTER_CALLBACKS */
507 .loc 1 209 5 is_stmt 1 view .LVU142
508 0064 FD21 movs r1, #253
509 0066 3046 mov r0, r6
510 0068 FFF7FEFF bl HAL_PCDEx_BCD_Callback
511 .LVL40:
512 .L24:
242:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c ****
513 .loc 1 242 3 view .LVU143
242:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c ****
514 .loc 1 242 9 is_stmt 0 view .LVU144
515 006c 3046 mov r0, r6
516 006e FFF7FEFF bl HAL_PCDEx_DeActivateBCD
517 .LVL41:
247:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** #endif /* USE_HAL_PCD_REGISTER_CALLBACKS */
518 .loc 1 247 3 is_stmt 1 view .LVU145
519 0072 0021 movs r1, #0
520 0074 3046 mov r0, r6
521 0076 FFF7FEFF bl HAL_PCDEx_BCD_Callback
522 .LVL42:
523 .L18:
249:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c ****
524 .loc 1 249 1 is_stmt 0 view .LVU146
525 007a 70BD pop {r4, r5, r6, pc}
526 .LVL43:
527 .L28:
192:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** #endif /* USE_HAL_PCD_REGISTER_CALLBACKS */
528 .loc 1 192 5 is_stmt 1 view .LVU147
529 007c FE21 movs r1, #254
530 007e 3046 mov r0, r6
531 0080 FFF7FEFF bl HAL_PCDEx_BCD_Callback
532 .LVL44:
533 0084 DCE7 b .L22
534 .L23:
216:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** HAL_Delay(50U);
535 .loc 1 216 5 view .LVU148
216:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** HAL_Delay(50U);
536 .loc 1 216 17 is_stmt 0 view .LVU149
537 0086 A36B ldr r3, [r4, #56]
538 0088 23F40023 bic r3, r3, #524288
539 008c A363 str r3, [r4, #56]
217:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** USBx->GCCFG |= USB_OTG_GCCFG_SDEN;
540 .loc 1 217 5 is_stmt 1 view .LVU150
541 008e 3220 movs r0, #50
542 0090 FFF7FEFF bl HAL_Delay
ARM GAS /tmp/ccmPatq2.s page 17
543 .LVL45:
218:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** HAL_Delay(50U);
544 .loc 1 218 5 view .LVU151
218:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** HAL_Delay(50U);
545 .loc 1 218 17 is_stmt 0 view .LVU152
546 0094 A36B ldr r3, [r4, #56]
547 0096 43F48013 orr r3, r3, #1048576
548 009a A363 str r3, [r4, #56]
219:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c ****
549 .loc 1 219 5 is_stmt 1 view .LVU153
550 009c 3220 movs r0, #50
551 009e FFF7FEFF bl HAL_Delay
552 .LVL46:
221:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** {
553 .loc 1 221 5 view .LVU154
221:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** {
554 .loc 1 221 14 is_stmt 0 view .LVU155
555 00a2 A36B ldr r3, [r4, #56]
221:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** {
556 .loc 1 221 8 view .LVU156
557 00a4 13F0040F tst r3, #4
558 00a8 04D0 beq .L25
227:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** #endif /* USE_HAL_PCD_REGISTER_CALLBACKS */
559 .loc 1 227 7 is_stmt 1 view .LVU157
560 00aa FB21 movs r1, #251
561 00ac 3046 mov r0, r6
562 00ae FFF7FEFF bl HAL_PCDEx_BCD_Callback
563 .LVL47:
564 00b2 DBE7 b .L24
565 .L25:
236:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.c **** #endif /* USE_HAL_PCD_REGISTER_CALLBACKS */
566 .loc 1 236 7 view .LVU158
567 00b4 FC21 movs r1, #252
568 00b6 3046 mov r0, r6
569 00b8 FFF7FEFF bl HAL_PCDEx_BCD_Callback
570 .LVL48:
571 00bc D6E7 b .L24
572 .cfi_endproc
573 .LFE145:
575 .text
576 .Letext0:
577 .file 2 "/usr/arm-none-eabi/include/machine/_default_types.h"
578 .file 3 "/usr/arm-none-eabi/include/sys/_stdint.h"
579 .file 4 "Drivers/CMSIS/Device/ST/STM32H7xx/Include/stm32h750xx.h"
580 .file 5 "Drivers/STM32H7xx_HAL_Driver/Inc/stm32h7xx_hal_def.h"
581 .file 6 "Drivers/STM32H7xx_HAL_Driver/Inc/stm32h7xx_ll_usb.h"
582 .file 7 "Drivers/STM32H7xx_HAL_Driver/Inc/stm32h7xx_hal_pcd.h"
583 .file 8 "Drivers/STM32H7xx_HAL_Driver/Inc/stm32h7xx_hal.h"
ARM GAS /tmp/ccmPatq2.s page 18
DEFINED SYMBOLS
*ABS*:0000000000000000 stm32h7xx_hal_pcd_ex.c
/tmp/ccmPatq2.s:17 .text.HAL_PCDEx_SetTxFiFo:0000000000000000 $t
/tmp/ccmPatq2.s:25 .text.HAL_PCDEx_SetTxFiFo:0000000000000000 HAL_PCDEx_SetTxFiFo
/tmp/ccmPatq2.s:121 .text.HAL_PCDEx_SetRxFiFo:0000000000000000 $t
/tmp/ccmPatq2.s:128 .text.HAL_PCDEx_SetRxFiFo:0000000000000000 HAL_PCDEx_SetRxFiFo
/tmp/ccmPatq2.s:151 .text.HAL_PCDEx_ActivateLPM:0000000000000000 $t
/tmp/ccmPatq2.s:158 .text.HAL_PCDEx_ActivateLPM:0000000000000000 HAL_PCDEx_ActivateLPM
/tmp/ccmPatq2.s:201 .text.HAL_PCDEx_ActivateLPM:0000000000000024 $d
/tmp/ccmPatq2.s:206 .text.HAL_PCDEx_DeActivateLPM:0000000000000000 $t
/tmp/ccmPatq2.s:213 .text.HAL_PCDEx_DeActivateLPM:0000000000000000 HAL_PCDEx_DeActivateLPM
/tmp/ccmPatq2.s:252 .text.HAL_PCDEx_DeActivateLPM:000000000000001c $d
/tmp/ccmPatq2.s:257 .text.HAL_PCDEx_ActivateBCD:0000000000000000 $t
/tmp/ccmPatq2.s:264 .text.HAL_PCDEx_ActivateBCD:0000000000000000 HAL_PCDEx_ActivateBCD
/tmp/ccmPatq2.s:312 .text.HAL_PCDEx_DeActivateBCD:0000000000000000 $t
/tmp/ccmPatq2.s:319 .text.HAL_PCDEx_DeActivateBCD:0000000000000000 HAL_PCDEx_DeActivateBCD
/tmp/ccmPatq2.s:361 .text.HAL_PCDEx_LPM_Callback:0000000000000000 $t
/tmp/ccmPatq2.s:368 .text.HAL_PCDEx_LPM_Callback:0000000000000000 HAL_PCDEx_LPM_Callback
/tmp/ccmPatq2.s:384 .text.HAL_PCDEx_BCD_Callback:0000000000000000 $t
/tmp/ccmPatq2.s:391 .text.HAL_PCDEx_BCD_Callback:0000000000000000 HAL_PCDEx_BCD_Callback
/tmp/ccmPatq2.s:407 .text.HAL_PCDEx_BCD_VBUSDetect:0000000000000000 $t
/tmp/ccmPatq2.s:414 .text.HAL_PCDEx_BCD_VBUSDetect:0000000000000000 HAL_PCDEx_BCD_VBUSDetect
UNDEFINED SYMBOLS
HAL_GetTick
HAL_Delay