Files
squeow/squeow_sw/build/stm32g4xx_hal_pcd_ex.lst
2023-07-02 17:09:41 +02:00

971 lines
58 KiB
Plaintext
Raw Blame History

This file contains invisible Unicode characters
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
ARM GAS /tmp/ccXnw0bT.s page 1
1 .cpu cortex-m4
2 .arch armv7e-m
3 .fpu fpv4-sp-d16
4 .eabi_attribute 27, 1
5 .eabi_attribute 28, 1
6 .eabi_attribute 20, 1
7 .eabi_attribute 21, 1
8 .eabi_attribute 23, 3
9 .eabi_attribute 24, 1
10 .eabi_attribute 25, 1
11 .eabi_attribute 26, 1
12 .eabi_attribute 30, 1
13 .eabi_attribute 34, 1
14 .eabi_attribute 18, 4
15 .file "stm32g4xx_hal_pcd_ex.c"
16 .text
17 .Ltext0:
18 .cfi_sections .debug_frame
19 .file 1 "Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c"
20 .section .text.HAL_PCDEx_PMAConfig,"ax",%progbits
21 .align 1
22 .global HAL_PCDEx_PMAConfig
23 .syntax unified
24 .thumb
25 .thumb_func
27 HAL_PCDEx_PMAConfig:
28 .LVL0:
29 .LFB329:
1:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** /**
2:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** ******************************************************************************
3:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** * @file stm32g4xx_hal_pcd_ex.c
4:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** * @author MCD Application Team
5:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** * @brief PCD Extended HAL module driver.
6:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** * This file provides firmware functions to manage the following
7:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** * functionalities of the USB Peripheral Controller:
8:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** * + Extended features functions
9:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** *
10:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** ******************************************************************************
11:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** * @attention
12:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** *
13:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** * Copyright (c) 2019 STMicroelectronics.
14:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** * All rights reserved.
15:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** *
16:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** * This software is licensed under terms that can be found in the LICENSE file
17:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** * in the root directory of this software component.
18:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** * If no LICENSE file comes with this software, it is provided AS-IS.
19:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** *
20:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** ******************************************************************************
21:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** */
22:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c ****
23:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** /* Includes ------------------------------------------------------------------*/
24:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** #include "stm32g4xx_hal.h"
25:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c ****
26:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** /** @addtogroup STM32G4xx_HAL_Driver
27:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** * @{
28:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** */
29:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c ****
ARM GAS /tmp/ccXnw0bT.s page 2
30:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** /** @defgroup PCDEx PCDEx
31:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** * @brief PCD Extended HAL module driver
32:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** * @{
33:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** */
34:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c ****
35:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** #ifdef HAL_PCD_MODULE_ENABLED
36:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c ****
37:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** #if defined (USB)
38:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** /* Private types -------------------------------------------------------------*/
39:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** /* Private variables ---------------------------------------------------------*/
40:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** /* Private constants ---------------------------------------------------------*/
41:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** /* Private macros ------------------------------------------------------------*/
42:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** /* Private functions ---------------------------------------------------------*/
43:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** /* Exported functions --------------------------------------------------------*/
44:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c ****
45:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** /** @defgroup PCDEx_Exported_Functions PCDEx Exported Functions
46:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** * @{
47:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** */
48:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c ****
49:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** /** @defgroup PCDEx_Exported_Functions_Group1 Peripheral Control functions
50:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** * @brief PCDEx control functions
51:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** *
52:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** @verbatim
53:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** ===============================================================================
54:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** ##### Extended features functions #####
55:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** ===============================================================================
56:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** [..] This section provides functions allowing to:
57:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** (+) Update FIFO configuration
58:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c ****
59:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** @endverbatim
60:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** * @{
61:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** */
62:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c ****
63:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** /**
64:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** * @brief Configure PMA for EP
65:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** * @param hpcd Device instance
66:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** * @param ep_addr endpoint address
67:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** * @param ep_kind endpoint Kind
68:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** * USB_SNG_BUF: Single Buffer used
69:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** * USB_DBL_BUF: Double Buffer used
70:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** * @param pmaadress: EP address in The PMA: In case of single buffer endpoint
71:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** * this parameter is 16-bit value providing the address
72:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** * in PMA allocated to endpoint.
73:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** * In case of double buffer endpoint this parameter
74:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** * is a 32-bit value providing the endpoint buffer 0 address
75:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** * in the LSB part of 32-bit value and endpoint buffer 1 address
76:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** * in the MSB part of 32-bit value.
77:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** * @retval HAL status
78:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** */
79:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c ****
80:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** HAL_StatusTypeDef HAL_PCDEx_PMAConfig(PCD_HandleTypeDef *hpcd, uint16_t ep_addr,
81:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** uint16_t ep_kind, uint32_t pmaadress)
82:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** {
30 .loc 1 82 1 view -0
31 .cfi_startproc
32 @ args = 0, pretend = 0, frame = 0
33 @ frame_needed = 0, uses_anonymous_args = 0
ARM GAS /tmp/ccXnw0bT.s page 3
34 @ link register save eliminated.
83:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** PCD_EPTypeDef *ep;
35 .loc 1 83 3 view .LVU1
84:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c ****
85:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** /* initialize ep structure*/
86:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** if ((0x80U & ep_addr) == 0x80U)
36 .loc 1 86 3 view .LVU2
37 .loc 1 86 6 is_stmt 0 view .LVU3
38 0000 11F0800F tst r1, #128
39 0004 0BD0 beq .L2
87:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** {
88:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** ep = &hpcd->IN_ep[ep_addr & EP_ADDR_MSK];
40 .loc 1 88 5 is_stmt 1 view .LVU4
41 .loc 1 88 31 is_stmt 0 view .LVU5
42 0006 01F00701 and r1, r1, #7
43 .LVL1:
44 .loc 1 88 8 view .LVU6
45 000a 0131 adds r1, r1, #1
46 000c 01EB8101 add r1, r1, r1, lsl #2
47 0010 00EBC100 add r0, r0, r1, lsl #3
48 .LVL2:
49 .L3:
89:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** }
90:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** else
91:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** {
92:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** ep = &hpcd->OUT_ep[ep_addr];
93:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** }
94:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c ****
95:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** /* Here we check if the endpoint is single or double Buffer*/
96:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** if (ep_kind == PCD_SNG_BUF)
50 .loc 1 96 3 is_stmt 1 view .LVU7
51 .loc 1 96 6 is_stmt 0 view .LVU8
52 0014 52B9 cbnz r2, .L4
97:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** {
98:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** /* Single Buffer */
99:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** ep->doublebuffer = 0U;
53 .loc 1 99 5 is_stmt 1 view .LVU9
54 .loc 1 99 22 is_stmt 0 view .LVU10
55 0016 0273 strb r2, [r0, #12]
100:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** /* Configure the PMA */
101:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** ep->pmaadress = (uint16_t)pmaadress;
56 .loc 1 101 5 is_stmt 1 view .LVU11
57 .loc 1 101 19 is_stmt 0 view .LVU12
58 0018 C380 strh r3, [r0, #6] @ movhi
59 .LVL3:
60 .L5:
102:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** }
103:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** #if (USE_USB_DOUBLE_BUFFER == 1U)
104:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** else /* USB_DBL_BUF */
105:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** {
106:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** /* Double Buffer Endpoint */
107:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** ep->doublebuffer = 1U;
108:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** /* Configure the PMA */
109:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** ep->pmaaddr0 = (uint16_t)(pmaadress & 0xFFFFU);
110:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** ep->pmaaddr1 = (uint16_t)((pmaadress & 0xFFFF0000U) >> 16);
111:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** }
112:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** #endif /* (USE_USB_DOUBLE_BUFFER == 1U) */
ARM GAS /tmp/ccXnw0bT.s page 4
113:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c ****
114:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** return HAL_OK;
61 .loc 1 114 3 is_stmt 1 view .LVU13
115:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** }
62 .loc 1 115 1 is_stmt 0 view .LVU14
63 001a 0020 movs r0, #0
64 .LVL4:
65 .loc 1 115 1 view .LVU15
66 001c 7047 bx lr
67 .LVL5:
68 .L2:
92:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** }
69 .loc 1 92 5 is_stmt 1 view .LVU16
92:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** }
70 .loc 1 92 8 is_stmt 0 view .LVU17
71 001e 01EB8101 add r1, r1, r1, lsl #2
72 .LVL6:
92:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** }
73 .loc 1 92 8 view .LVU18
74 0022 C900 lsls r1, r1, #3
75 0024 01F5B471 add r1, r1, #360
76 0028 0844 add r0, r0, r1
77 .LVL7:
92:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** }
78 .loc 1 92 8 view .LVU19
79 002a F3E7 b .L3
80 .L4:
107:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** /* Configure the PMA */
81 .loc 1 107 5 is_stmt 1 view .LVU20
107:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** /* Configure the PMA */
82 .loc 1 107 22 is_stmt 0 view .LVU21
83 002c 0122 movs r2, #1
84 .LVL8:
107:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** /* Configure the PMA */
85 .loc 1 107 22 view .LVU22
86 002e 0273 strb r2, [r0, #12]
109:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** ep->pmaaddr1 = (uint16_t)((pmaadress & 0xFFFF0000U) >> 16);
87 .loc 1 109 5 is_stmt 1 view .LVU23
109:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** ep->pmaaddr1 = (uint16_t)((pmaadress & 0xFFFF0000U) >> 16);
88 .loc 1 109 18 is_stmt 0 view .LVU24
89 0030 0381 strh r3, [r0, #8] @ movhi
110:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** }
90 .loc 1 110 5 is_stmt 1 view .LVU25
110:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** }
91 .loc 1 110 20 is_stmt 0 view .LVU26
92 0032 1B0C lsrs r3, r3, #16
93 .LVL9:
110:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** }
94 .loc 1 110 18 view .LVU27
95 0034 4381 strh r3, [r0, #10] @ movhi
96 0036 F0E7 b .L5
97 .cfi_endproc
98 .LFE329:
100 .section .text.HAL_PCDEx_ActivateBCD,"ax",%progbits
101 .align 1
102 .global HAL_PCDEx_ActivateBCD
103 .syntax unified
ARM GAS /tmp/ccXnw0bT.s page 5
104 .thumb
105 .thumb_func
107 HAL_PCDEx_ActivateBCD:
108 .LVL10:
109 .LFB330:
116:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c ****
117:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** /**
118:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** * @brief Activate BatteryCharging feature.
119:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** * @param hpcd PCD handle
120:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** * @retval HAL status
121:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** */
122:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** HAL_StatusTypeDef HAL_PCDEx_ActivateBCD(PCD_HandleTypeDef *hpcd)
123:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** {
110 .loc 1 123 1 is_stmt 1 view -0
111 .cfi_startproc
112 @ args = 0, pretend = 0, frame = 0
113 @ frame_needed = 0, uses_anonymous_args = 0
114 @ link register save eliminated.
124:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** USB_TypeDef *USBx = hpcd->Instance;
115 .loc 1 124 3 view .LVU29
116 .loc 1 124 16 is_stmt 0 view .LVU30
117 0000 0368 ldr r3, [r0]
118 .LVL11:
125:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** hpcd->battery_charging_active = 1U;
119 .loc 1 125 3 is_stmt 1 view .LVU31
120 .loc 1 125 33 is_stmt 0 view .LVU32
121 0002 0122 movs r2, #1
122 0004 C0F8EC22 str r2, [r0, #748]
126:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c ****
127:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** /* Enable BCD feature */
128:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** USBx->BCDR |= USB_BCDR_BCDEN;
123 .loc 1 128 3 is_stmt 1 view .LVU33
124 .loc 1 128 7 is_stmt 0 view .LVU34
125 0008 B3F85820 ldrh r2, [r3, #88]
126 000c 92B2 uxth r2, r2
127 .loc 1 128 14 view .LVU35
128 000e 42F00102 orr r2, r2, #1
129 0012 A3F85820 strh r2, [r3, #88] @ movhi
129:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c ****
130:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** /* Enable DCD : Data Contact Detect */
131:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** USBx->BCDR &= ~(USB_BCDR_PDEN);
130 .loc 1 131 3 is_stmt 1 view .LVU36
131 .loc 1 131 7 is_stmt 0 view .LVU37
132 0016 B3F85820 ldrh r2, [r3, #88]
133 001a 92B2 uxth r2, r2
134 .loc 1 131 14 view .LVU38
135 001c 22F00402 bic r2, r2, #4
136 0020 92B2 uxth r2, r2
137 0022 A3F85820 strh r2, [r3, #88] @ movhi
132:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** USBx->BCDR &= ~(USB_BCDR_SDEN);
138 .loc 1 132 3 is_stmt 1 view .LVU39
139 .loc 1 132 7 is_stmt 0 view .LVU40
140 0026 B3F85820 ldrh r2, [r3, #88]
141 002a 92B2 uxth r2, r2
142 .loc 1 132 14 view .LVU41
143 002c 22F00802 bic r2, r2, #8
144 0030 92B2 uxth r2, r2
ARM GAS /tmp/ccXnw0bT.s page 6
145 0032 A3F85820 strh r2, [r3, #88] @ movhi
133:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** USBx->BCDR |= USB_BCDR_DCDEN;
146 .loc 1 133 3 is_stmt 1 view .LVU42
147 .loc 1 133 7 is_stmt 0 view .LVU43
148 0036 B3F85820 ldrh r2, [r3, #88]
149 003a 92B2 uxth r2, r2
150 .loc 1 133 14 view .LVU44
151 003c 42F00202 orr r2, r2, #2
152 0040 A3F85820 strh r2, [r3, #88] @ movhi
134:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c ****
135:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** return HAL_OK;
153 .loc 1 135 3 is_stmt 1 view .LVU45
136:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** }
154 .loc 1 136 1 is_stmt 0 view .LVU46
155 0044 0020 movs r0, #0
156 .LVL12:
157 .loc 1 136 1 view .LVU47
158 0046 7047 bx lr
159 .cfi_endproc
160 .LFE330:
162 .section .text.HAL_PCDEx_DeActivateBCD,"ax",%progbits
163 .align 1
164 .global HAL_PCDEx_DeActivateBCD
165 .syntax unified
166 .thumb
167 .thumb_func
169 HAL_PCDEx_DeActivateBCD:
170 .LVL13:
171 .LFB331:
137:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c ****
138:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** /**
139:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** * @brief Deactivate BatteryCharging feature.
140:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** * @param hpcd PCD handle
141:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** * @retval HAL status
142:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** */
143:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** HAL_StatusTypeDef HAL_PCDEx_DeActivateBCD(PCD_HandleTypeDef *hpcd)
144:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** {
172 .loc 1 144 1 is_stmt 1 view -0
173 .cfi_startproc
174 @ args = 0, pretend = 0, frame = 0
175 @ frame_needed = 0, uses_anonymous_args = 0
176 @ link register save eliminated.
177 .loc 1 144 1 is_stmt 0 view .LVU49
178 0000 0346 mov r3, r0
145:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** USB_TypeDef *USBx = hpcd->Instance;
179 .loc 1 145 3 is_stmt 1 view .LVU50
180 .loc 1 145 16 is_stmt 0 view .LVU51
181 0002 0268 ldr r2, [r0]
182 .LVL14:
146:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** hpcd->battery_charging_active = 0U;
183 .loc 1 146 3 is_stmt 1 view .LVU52
184 .loc 1 146 33 is_stmt 0 view .LVU53
185 0004 0020 movs r0, #0
186 .LVL15:
187 .loc 1 146 33 view .LVU54
188 0006 C3F8EC02 str r0, [r3, #748]
147:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c ****
ARM GAS /tmp/ccXnw0bT.s page 7
148:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** /* Disable BCD feature */
149:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** USBx->BCDR &= ~(USB_BCDR_BCDEN);
189 .loc 1 149 3 is_stmt 1 view .LVU55
190 .loc 1 149 7 is_stmt 0 view .LVU56
191 000a B2F85830 ldrh r3, [r2, #88]
192 .LVL16:
193 .loc 1 149 7 view .LVU57
194 000e 9BB2 uxth r3, r3
195 .loc 1 149 14 view .LVU58
196 0010 23F00103 bic r3, r3, #1
197 0014 9BB2 uxth r3, r3
198 0016 A2F85830 strh r3, [r2, #88] @ movhi
150:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c ****
151:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** return HAL_OK;
199 .loc 1 151 3 is_stmt 1 view .LVU59
152:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** }
200 .loc 1 152 1 is_stmt 0 view .LVU60
201 001a 7047 bx lr
202 .cfi_endproc
203 .LFE331:
205 .section .text.HAL_PCDEx_ActivateLPM,"ax",%progbits
206 .align 1
207 .global HAL_PCDEx_ActivateLPM
208 .syntax unified
209 .thumb
210 .thumb_func
212 HAL_PCDEx_ActivateLPM:
213 .LVL17:
214 .LFB333:
153:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c ****
154:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** /**
155:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** * @brief Handle BatteryCharging Process.
156:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** * @param hpcd PCD handle
157:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** * @retval HAL status
158:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** */
159:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** void HAL_PCDEx_BCD_VBUSDetect(PCD_HandleTypeDef *hpcd)
160:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** {
161:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** USB_TypeDef *USBx = hpcd->Instance;
162:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** uint32_t tickstart = HAL_GetTick();
163:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c ****
164:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** /* Wait Detect flag or a timeout is happen */
165:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** while ((USBx->BCDR & USB_BCDR_DCDET) == 0U)
166:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** {
167:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** /* Check for the Timeout */
168:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** if ((HAL_GetTick() - tickstart) > 1000U)
169:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** {
170:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** #if (USE_HAL_PCD_REGISTER_CALLBACKS == 1U)
171:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** hpcd->BCDCallback(hpcd, PCD_BCD_ERROR);
172:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** #else
173:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** HAL_PCDEx_BCD_Callback(hpcd, PCD_BCD_ERROR);
174:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** #endif /* USE_HAL_PCD_REGISTER_CALLBACKS */
175:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c ****
176:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** return;
177:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** }
178:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** }
179:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c ****
180:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** HAL_Delay(200U);
ARM GAS /tmp/ccXnw0bT.s page 8
181:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c ****
182:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** /* Data Pin Contact ? Check Detect flag */
183:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** if ((USBx->BCDR & USB_BCDR_DCDET) == USB_BCDR_DCDET)
184:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** {
185:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** #if (USE_HAL_PCD_REGISTER_CALLBACKS == 1U)
186:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** hpcd->BCDCallback(hpcd, PCD_BCD_CONTACT_DETECTION);
187:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** #else
188:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** HAL_PCDEx_BCD_Callback(hpcd, PCD_BCD_CONTACT_DETECTION);
189:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** #endif /* USE_HAL_PCD_REGISTER_CALLBACKS */
190:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** }
191:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** /* Primary detection: checks if connected to Standard Downstream Port
192:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** (without charging capability) */
193:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** USBx->BCDR &= ~(USB_BCDR_DCDEN);
194:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** HAL_Delay(50U);
195:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** USBx->BCDR |= (USB_BCDR_PDEN);
196:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** HAL_Delay(50U);
197:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c ****
198:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** /* If Charger detect ? */
199:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** if ((USBx->BCDR & USB_BCDR_PDET) == USB_BCDR_PDET)
200:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** {
201:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** /* Start secondary detection to check connection to Charging Downstream
202:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** Port or Dedicated Charging Port */
203:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** USBx->BCDR &= ~(USB_BCDR_PDEN);
204:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** HAL_Delay(50U);
205:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** USBx->BCDR |= (USB_BCDR_SDEN);
206:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** HAL_Delay(50U);
207:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c ****
208:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** /* If CDP ? */
209:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** if ((USBx->BCDR & USB_BCDR_SDET) == USB_BCDR_SDET)
210:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** {
211:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** /* Dedicated Downstream Port DCP */
212:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** #if (USE_HAL_PCD_REGISTER_CALLBACKS == 1U)
213:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** hpcd->BCDCallback(hpcd, PCD_BCD_DEDICATED_CHARGING_PORT);
214:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** #else
215:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** HAL_PCDEx_BCD_Callback(hpcd, PCD_BCD_DEDICATED_CHARGING_PORT);
216:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** #endif /* USE_HAL_PCD_REGISTER_CALLBACKS */
217:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** }
218:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** else
219:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** {
220:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** /* Charging Downstream Port CDP */
221:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** #if (USE_HAL_PCD_REGISTER_CALLBACKS == 1U)
222:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** hpcd->BCDCallback(hpcd, PCD_BCD_CHARGING_DOWNSTREAM_PORT);
223:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** #else
224:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** HAL_PCDEx_BCD_Callback(hpcd, PCD_BCD_CHARGING_DOWNSTREAM_PORT);
225:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** #endif /* USE_HAL_PCD_REGISTER_CALLBACKS */
226:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** }
227:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** }
228:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** else /* NO */
229:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** {
230:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** /* Standard Downstream Port */
231:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** #if (USE_HAL_PCD_REGISTER_CALLBACKS == 1U)
232:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** hpcd->BCDCallback(hpcd, PCD_BCD_STD_DOWNSTREAM_PORT);
233:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** #else
234:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** HAL_PCDEx_BCD_Callback(hpcd, PCD_BCD_STD_DOWNSTREAM_PORT);
235:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** #endif /* USE_HAL_PCD_REGISTER_CALLBACKS */
236:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** }
237:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c ****
ARM GAS /tmp/ccXnw0bT.s page 9
238:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** /* Battery Charging capability discovery finished Start Enumeration */
239:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** (void)HAL_PCDEx_DeActivateBCD(hpcd);
240:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** #if (USE_HAL_PCD_REGISTER_CALLBACKS == 1U)
241:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** hpcd->BCDCallback(hpcd, PCD_BCD_DISCOVERY_COMPLETED);
242:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** #else
243:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** HAL_PCDEx_BCD_Callback(hpcd, PCD_BCD_DISCOVERY_COMPLETED);
244:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** #endif /* USE_HAL_PCD_REGISTER_CALLBACKS */
245:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** }
246:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c ****
247:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c ****
248:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** /**
249:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** * @brief Activate LPM feature.
250:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** * @param hpcd PCD handle
251:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** * @retval HAL status
252:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** */
253:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** HAL_StatusTypeDef HAL_PCDEx_ActivateLPM(PCD_HandleTypeDef *hpcd)
254:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** {
215 .loc 1 254 1 is_stmt 1 view -0
216 .cfi_startproc
217 @ args = 0, pretend = 0, frame = 0
218 @ frame_needed = 0, uses_anonymous_args = 0
219 @ link register save eliminated.
220 .loc 1 254 1 is_stmt 0 view .LVU62
221 0000 0346 mov r3, r0
255:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c ****
256:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** USB_TypeDef *USBx = hpcd->Instance;
222 .loc 1 256 3 is_stmt 1 view .LVU63
223 .loc 1 256 16 is_stmt 0 view .LVU64
224 0002 0268 ldr r2, [r0]
225 .LVL18:
257:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** hpcd->lpm_active = 1U;
226 .loc 1 257 3 is_stmt 1 view .LVU65
227 .loc 1 257 20 is_stmt 0 view .LVU66
228 0004 0121 movs r1, #1
229 0006 C0F8E812 str r1, [r0, #744]
258:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** hpcd->LPM_State = LPM_L0;
230 .loc 1 258 3 is_stmt 1 view .LVU67
231 .loc 1 258 19 is_stmt 0 view .LVU68
232 000a 0020 movs r0, #0
233 .LVL19:
234 .loc 1 258 19 view .LVU69
235 000c 83F8E002 strb r0, [r3, #736]
259:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c ****
260:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** USBx->LPMCSR |= USB_LPMCSR_LMPEN;
236 .loc 1 260 3 is_stmt 1 view .LVU70
237 .loc 1 260 7 is_stmt 0 view .LVU71
238 0010 B2F85430 ldrh r3, [r2, #84]
239 .LVL20:
240 .loc 1 260 7 view .LVU72
241 0014 9BB2 uxth r3, r3
242 .loc 1 260 16 view .LVU73
243 0016 0B43 orrs r3, r3, r1
244 0018 A2F85430 strh r3, [r2, #84] @ movhi
261:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** USBx->LPMCSR |= USB_LPMCSR_LPMACK;
245 .loc 1 261 3 is_stmt 1 view .LVU74
246 .loc 1 261 7 is_stmt 0 view .LVU75
247 001c B2F85430 ldrh r3, [r2, #84]
ARM GAS /tmp/ccXnw0bT.s page 10
248 0020 9BB2 uxth r3, r3
249 .loc 1 261 16 view .LVU76
250 0022 43F00203 orr r3, r3, #2
251 0026 A2F85430 strh r3, [r2, #84] @ movhi
262:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c ****
263:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** return HAL_OK;
252 .loc 1 263 3 is_stmt 1 view .LVU77
264:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** }
253 .loc 1 264 1 is_stmt 0 view .LVU78
254 002a 7047 bx lr
255 .cfi_endproc
256 .LFE333:
258 .section .text.HAL_PCDEx_DeActivateLPM,"ax",%progbits
259 .align 1
260 .global HAL_PCDEx_DeActivateLPM
261 .syntax unified
262 .thumb
263 .thumb_func
265 HAL_PCDEx_DeActivateLPM:
266 .LVL21:
267 .LFB334:
265:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c ****
266:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** /**
267:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** * @brief Deactivate LPM feature.
268:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** * @param hpcd PCD handle
269:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** * @retval HAL status
270:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** */
271:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** HAL_StatusTypeDef HAL_PCDEx_DeActivateLPM(PCD_HandleTypeDef *hpcd)
272:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** {
268 .loc 1 272 1 is_stmt 1 view -0
269 .cfi_startproc
270 @ args = 0, pretend = 0, frame = 0
271 @ frame_needed = 0, uses_anonymous_args = 0
272 @ link register save eliminated.
273 .loc 1 272 1 is_stmt 0 view .LVU80
274 0000 0346 mov r3, r0
273:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** USB_TypeDef *USBx = hpcd->Instance;
275 .loc 1 273 3 is_stmt 1 view .LVU81
276 .loc 1 273 16 is_stmt 0 view .LVU82
277 0002 0268 ldr r2, [r0]
278 .LVL22:
274:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c ****
275:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** hpcd->lpm_active = 0U;
279 .loc 1 275 3 is_stmt 1 view .LVU83
280 .loc 1 275 20 is_stmt 0 view .LVU84
281 0004 0020 movs r0, #0
282 .LVL23:
283 .loc 1 275 20 view .LVU85
284 0006 C3F8E802 str r0, [r3, #744]
276:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c ****
277:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** USBx->LPMCSR &= ~(USB_LPMCSR_LMPEN);
285 .loc 1 277 3 is_stmt 1 view .LVU86
286 .loc 1 277 7 is_stmt 0 view .LVU87
287 000a B2F85430 ldrh r3, [r2, #84]
288 .LVL24:
289 .loc 1 277 7 view .LVU88
290 000e 9BB2 uxth r3, r3
ARM GAS /tmp/ccXnw0bT.s page 11
291 .loc 1 277 16 view .LVU89
292 0010 23F00103 bic r3, r3, #1
293 0014 9BB2 uxth r3, r3
294 0016 A2F85430 strh r3, [r2, #84] @ movhi
278:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** USBx->LPMCSR &= ~(USB_LPMCSR_LPMACK);
295 .loc 1 278 3 is_stmt 1 view .LVU90
296 .loc 1 278 7 is_stmt 0 view .LVU91
297 001a B2F85430 ldrh r3, [r2, #84]
298 001e 9BB2 uxth r3, r3
299 .loc 1 278 16 view .LVU92
300 0020 23F00203 bic r3, r3, #2
301 0024 9BB2 uxth r3, r3
302 0026 A2F85430 strh r3, [r2, #84] @ movhi
279:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c ****
280:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** return HAL_OK;
303 .loc 1 280 3 is_stmt 1 view .LVU93
281:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** }
304 .loc 1 281 1 is_stmt 0 view .LVU94
305 002a 7047 bx lr
306 .cfi_endproc
307 .LFE334:
309 .section .text.HAL_PCDEx_LPM_Callback,"ax",%progbits
310 .align 1
311 .weak HAL_PCDEx_LPM_Callback
312 .syntax unified
313 .thumb
314 .thumb_func
316 HAL_PCDEx_LPM_Callback:
317 .LVL25:
318 .LFB335:
282:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c ****
283:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c ****
284:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c ****
285:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** /**
286:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** * @brief Send LPM message to user layer callback.
287:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** * @param hpcd PCD handle
288:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** * @param msg LPM message
289:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** * @retval HAL status
290:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** */
291:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** __weak void HAL_PCDEx_LPM_Callback(PCD_HandleTypeDef *hpcd, PCD_LPM_MsgTypeDef msg)
292:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** {
319 .loc 1 292 1 is_stmt 1 view -0
320 .cfi_startproc
321 @ args = 0, pretend = 0, frame = 0
322 @ frame_needed = 0, uses_anonymous_args = 0
323 @ link register save eliminated.
293:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** /* Prevent unused argument(s) compilation warning */
294:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** UNUSED(hpcd);
324 .loc 1 294 3 view .LVU96
295:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** UNUSED(msg);
325 .loc 1 295 3 view .LVU97
296:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c ****
297:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** /* NOTE : This function should not be modified, when the callback is needed,
298:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** the HAL_PCDEx_LPM_Callback could be implemented in the user file
299:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** */
300:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** }
326 .loc 1 300 1 is_stmt 0 view .LVU98
ARM GAS /tmp/ccXnw0bT.s page 12
327 0000 7047 bx lr
328 .cfi_endproc
329 .LFE335:
331 .section .text.HAL_PCDEx_BCD_Callback,"ax",%progbits
332 .align 1
333 .weak HAL_PCDEx_BCD_Callback
334 .syntax unified
335 .thumb
336 .thumb_func
338 HAL_PCDEx_BCD_Callback:
339 .LVL26:
340 .LFB336:
301:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c ****
302:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** /**
303:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** * @brief Send BatteryCharging message to user layer callback.
304:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** * @param hpcd PCD handle
305:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** * @param msg LPM message
306:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** * @retval HAL status
307:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** */
308:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** __weak void HAL_PCDEx_BCD_Callback(PCD_HandleTypeDef *hpcd, PCD_BCD_MsgTypeDef msg)
309:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** {
341 .loc 1 309 1 is_stmt 1 view -0
342 .cfi_startproc
343 @ args = 0, pretend = 0, frame = 0
344 @ frame_needed = 0, uses_anonymous_args = 0
345 @ link register save eliminated.
310:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** /* Prevent unused argument(s) compilation warning */
311:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** UNUSED(hpcd);
346 .loc 1 311 3 view .LVU100
312:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** UNUSED(msg);
347 .loc 1 312 3 view .LVU101
313:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c ****
314:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** /* NOTE : This function should not be modified, when the callback is needed,
315:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** the HAL_PCDEx_BCD_Callback could be implemented in the user file
316:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** */
317:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** }
348 .loc 1 317 1 is_stmt 0 view .LVU102
349 0000 7047 bx lr
350 .cfi_endproc
351 .LFE336:
353 .section .text.HAL_PCDEx_BCD_VBUSDetect,"ax",%progbits
354 .align 1
355 .global HAL_PCDEx_BCD_VBUSDetect
356 .syntax unified
357 .thumb
358 .thumb_func
360 HAL_PCDEx_BCD_VBUSDetect:
361 .LVL27:
362 .LFB332:
160:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** USB_TypeDef *USBx = hpcd->Instance;
363 .loc 1 160 1 is_stmt 1 view -0
364 .cfi_startproc
365 @ args = 0, pretend = 0, frame = 0
366 @ frame_needed = 0, uses_anonymous_args = 0
160:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** USB_TypeDef *USBx = hpcd->Instance;
367 .loc 1 160 1 is_stmt 0 view .LVU104
368 0000 70B5 push {r4, r5, r6, lr}
ARM GAS /tmp/ccXnw0bT.s page 13
369 .LCFI0:
370 .cfi_def_cfa_offset 16
371 .cfi_offset 4, -16
372 .cfi_offset 5, -12
373 .cfi_offset 6, -8
374 .cfi_offset 14, -4
375 0002 0646 mov r6, r0
161:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** uint32_t tickstart = HAL_GetTick();
376 .loc 1 161 3 is_stmt 1 view .LVU105
161:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** uint32_t tickstart = HAL_GetTick();
377 .loc 1 161 16 is_stmt 0 view .LVU106
378 0004 0468 ldr r4, [r0]
379 .LVL28:
162:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c ****
380 .loc 1 162 3 is_stmt 1 view .LVU107
162:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c ****
381 .loc 1 162 24 is_stmt 0 view .LVU108
382 0006 FFF7FEFF bl HAL_GetTick
383 .LVL29:
162:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c ****
384 .loc 1 162 24 view .LVU109
385 000a 0546 mov r5, r0
386 .LVL30:
165:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** {
387 .loc 1 165 3 is_stmt 1 view .LVU110
388 .L13:
165:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** {
389 .loc 1 165 40 view .LVU111
165:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** {
390 .loc 1 165 15 is_stmt 0 view .LVU112
391 000c B4F85830 ldrh r3, [r4, #88]
165:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** {
392 .loc 1 165 40 view .LVU113
393 0010 13F0100F tst r3, #16
394 0014 0AD1 bne .L21
168:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** {
395 .loc 1 168 5 is_stmt 1 view .LVU114
168:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** {
396 .loc 1 168 10 is_stmt 0 view .LVU115
397 0016 FFF7FEFF bl HAL_GetTick
398 .LVL31:
168:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** {
399 .loc 1 168 24 view .LVU116
400 001a 401B subs r0, r0, r5
168:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** {
401 .loc 1 168 8 view .LVU117
402 001c B0F57A7F cmp r0, #1000
403 0020 F4D9 bls .L13
173:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** #endif /* USE_HAL_PCD_REGISTER_CALLBACKS */
404 .loc 1 173 7 is_stmt 1 view .LVU118
405 0022 FF21 movs r1, #255
406 0024 3046 mov r0, r6
407 0026 FFF7FEFF bl HAL_PCDEx_BCD_Callback
408 .LVL32:
176:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** }
409 .loc 1 176 7 view .LVU119
410 002a 55E0 b .L12
ARM GAS /tmp/ccXnw0bT.s page 14
411 .L21:
180:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c ****
412 .loc 1 180 3 view .LVU120
413 002c C820 movs r0, #200
414 002e FFF7FEFF bl HAL_Delay
415 .LVL33:
183:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** {
416 .loc 1 183 3 view .LVU121
183:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** {
417 .loc 1 183 12 is_stmt 0 view .LVU122
418 0032 B4F85830 ldrh r3, [r4, #88]
183:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** {
419 .loc 1 183 6 view .LVU123
420 0036 13F0100F tst r3, #16
421 003a 38D1 bne .L22
422 .L16:
193:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** HAL_Delay(50U);
423 .loc 1 193 3 is_stmt 1 view .LVU124
193:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** HAL_Delay(50U);
424 .loc 1 193 7 is_stmt 0 view .LVU125
425 003c B4F85830 ldrh r3, [r4, #88]
426 0040 9BB2 uxth r3, r3
193:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** HAL_Delay(50U);
427 .loc 1 193 14 view .LVU126
428 0042 23F00203 bic r3, r3, #2
429 0046 9BB2 uxth r3, r3
430 0048 A4F85830 strh r3, [r4, #88] @ movhi
194:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** USBx->BCDR |= (USB_BCDR_PDEN);
431 .loc 1 194 3 is_stmt 1 view .LVU127
432 004c 3220 movs r0, #50
433 004e FFF7FEFF bl HAL_Delay
434 .LVL34:
195:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** HAL_Delay(50U);
435 .loc 1 195 3 view .LVU128
195:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** HAL_Delay(50U);
436 .loc 1 195 7 is_stmt 0 view .LVU129
437 0052 B4F85830 ldrh r3, [r4, #88]
438 0056 9BB2 uxth r3, r3
195:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** HAL_Delay(50U);
439 .loc 1 195 14 view .LVU130
440 0058 43F00403 orr r3, r3, #4
441 005c A4F85830 strh r3, [r4, #88] @ movhi
196:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c ****
442 .loc 1 196 3 is_stmt 1 view .LVU131
443 0060 3220 movs r0, #50
444 0062 FFF7FEFF bl HAL_Delay
445 .LVL35:
199:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** {
446 .loc 1 199 3 view .LVU132
199:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** {
447 .loc 1 199 12 is_stmt 0 view .LVU133
448 0066 B4F85830 ldrh r3, [r4, #88]
199:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** {
449 .loc 1 199 6 view .LVU134
450 006a 13F0200F tst r3, #32
451 006e 28D0 beq .L17
203:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** HAL_Delay(50U);
ARM GAS /tmp/ccXnw0bT.s page 15
452 .loc 1 203 5 is_stmt 1 view .LVU135
203:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** HAL_Delay(50U);
453 .loc 1 203 9 is_stmt 0 view .LVU136
454 0070 B4F85830 ldrh r3, [r4, #88]
455 0074 9BB2 uxth r3, r3
203:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** HAL_Delay(50U);
456 .loc 1 203 16 view .LVU137
457 0076 23F00403 bic r3, r3, #4
458 007a 9BB2 uxth r3, r3
459 007c A4F85830 strh r3, [r4, #88] @ movhi
204:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** USBx->BCDR |= (USB_BCDR_SDEN);
460 .loc 1 204 5 is_stmt 1 view .LVU138
461 0080 3220 movs r0, #50
462 0082 FFF7FEFF bl HAL_Delay
463 .LVL36:
205:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** HAL_Delay(50U);
464 .loc 1 205 5 view .LVU139
205:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** HAL_Delay(50U);
465 .loc 1 205 9 is_stmt 0 view .LVU140
466 0086 B4F85830 ldrh r3, [r4, #88]
467 008a 9BB2 uxth r3, r3
205:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** HAL_Delay(50U);
468 .loc 1 205 16 view .LVU141
469 008c 43F00803 orr r3, r3, #8
470 0090 A4F85830 strh r3, [r4, #88] @ movhi
206:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c ****
471 .loc 1 206 5 is_stmt 1 view .LVU142
472 0094 3220 movs r0, #50
473 0096 FFF7FEFF bl HAL_Delay
474 .LVL37:
209:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** {
475 .loc 1 209 5 view .LVU143
209:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** {
476 .loc 1 209 14 is_stmt 0 view .LVU144
477 009a B4F85830 ldrh r3, [r4, #88]
209:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** {
478 .loc 1 209 8 view .LVU145
479 009e 13F0400F tst r3, #64
480 00a2 09D0 beq .L18
215:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** #endif /* USE_HAL_PCD_REGISTER_CALLBACKS */
481 .loc 1 215 7 is_stmt 1 view .LVU146
482 00a4 FB21 movs r1, #251
483 00a6 3046 mov r0, r6
484 00a8 FFF7FEFF bl HAL_PCDEx_BCD_Callback
485 .LVL38:
486 00ac 0DE0 b .L19
487 .L22:
188:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** #endif /* USE_HAL_PCD_REGISTER_CALLBACKS */
488 .loc 1 188 5 view .LVU147
489 00ae FE21 movs r1, #254
490 00b0 3046 mov r0, r6
491 00b2 FFF7FEFF bl HAL_PCDEx_BCD_Callback
492 .LVL39:
493 00b6 C1E7 b .L16
494 .L18:
224:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** #endif /* USE_HAL_PCD_REGISTER_CALLBACKS */
495 .loc 1 224 7 view .LVU148
ARM GAS /tmp/ccXnw0bT.s page 16
496 00b8 FC21 movs r1, #252
497 00ba 3046 mov r0, r6
498 00bc FFF7FEFF bl HAL_PCDEx_BCD_Callback
499 .LVL40:
500 00c0 03E0 b .L19
501 .L17:
234:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** #endif /* USE_HAL_PCD_REGISTER_CALLBACKS */
502 .loc 1 234 5 view .LVU149
503 00c2 FD21 movs r1, #253
504 00c4 3046 mov r0, r6
505 00c6 FFF7FEFF bl HAL_PCDEx_BCD_Callback
506 .LVL41:
507 .L19:
239:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** #if (USE_HAL_PCD_REGISTER_CALLBACKS == 1U)
508 .loc 1 239 3 view .LVU150
239:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** #if (USE_HAL_PCD_REGISTER_CALLBACKS == 1U)
509 .loc 1 239 9 is_stmt 0 view .LVU151
510 00ca 3046 mov r0, r6
511 00cc FFF7FEFF bl HAL_PCDEx_DeActivateBCD
512 .LVL42:
243:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c **** #endif /* USE_HAL_PCD_REGISTER_CALLBACKS */
513 .loc 1 243 3 is_stmt 1 view .LVU152
514 00d0 0021 movs r1, #0
515 00d2 3046 mov r0, r6
516 00d4 FFF7FEFF bl HAL_PCDEx_BCD_Callback
517 .LVL43:
518 .L12:
245:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c ****
519 .loc 1 245 1 is_stmt 0 view .LVU153
520 00d8 70BD pop {r4, r5, r6, pc}
245:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_pcd_ex.c ****
521 .loc 1 245 1 view .LVU154
522 .cfi_endproc
523 .LFE332:
525 .text
526 .Letext0:
527 .file 2 "/usr/lib/gcc/arm-none-eabi/12.2.1/include/stdint.h"
528 .file 3 "Drivers/CMSIS/Device/ST/STM32G4xx/Include/stm32g431xx.h"
529 .file 4 "Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_def.h"
530 .file 5 "Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_ll_usb.h"
531 .file 6 "Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_pcd.h"
532 .file 7 "Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal.h"
ARM GAS /tmp/ccXnw0bT.s page 17
DEFINED SYMBOLS
*ABS*:00000000 stm32g4xx_hal_pcd_ex.c
/tmp/ccXnw0bT.s:21 .text.HAL_PCDEx_PMAConfig:00000000 $t
/tmp/ccXnw0bT.s:27 .text.HAL_PCDEx_PMAConfig:00000000 HAL_PCDEx_PMAConfig
/tmp/ccXnw0bT.s:101 .text.HAL_PCDEx_ActivateBCD:00000000 $t
/tmp/ccXnw0bT.s:107 .text.HAL_PCDEx_ActivateBCD:00000000 HAL_PCDEx_ActivateBCD
/tmp/ccXnw0bT.s:163 .text.HAL_PCDEx_DeActivateBCD:00000000 $t
/tmp/ccXnw0bT.s:169 .text.HAL_PCDEx_DeActivateBCD:00000000 HAL_PCDEx_DeActivateBCD
/tmp/ccXnw0bT.s:206 .text.HAL_PCDEx_ActivateLPM:00000000 $t
/tmp/ccXnw0bT.s:212 .text.HAL_PCDEx_ActivateLPM:00000000 HAL_PCDEx_ActivateLPM
/tmp/ccXnw0bT.s:259 .text.HAL_PCDEx_DeActivateLPM:00000000 $t
/tmp/ccXnw0bT.s:265 .text.HAL_PCDEx_DeActivateLPM:00000000 HAL_PCDEx_DeActivateLPM
/tmp/ccXnw0bT.s:310 .text.HAL_PCDEx_LPM_Callback:00000000 $t
/tmp/ccXnw0bT.s:316 .text.HAL_PCDEx_LPM_Callback:00000000 HAL_PCDEx_LPM_Callback
/tmp/ccXnw0bT.s:332 .text.HAL_PCDEx_BCD_Callback:00000000 $t
/tmp/ccXnw0bT.s:338 .text.HAL_PCDEx_BCD_Callback:00000000 HAL_PCDEx_BCD_Callback
/tmp/ccXnw0bT.s:354 .text.HAL_PCDEx_BCD_VBUSDetect:00000000 $t
/tmp/ccXnw0bT.s:360 .text.HAL_PCDEx_BCD_VBUSDetect:00000000 HAL_PCDEx_BCD_VBUSDetect
UNDEFINED SYMBOLS
HAL_GetTick
HAL_Delay