Files
squeow/squeow_sw/build/stm32g4xx_hal_pcd_ex.lst

971 lines
58 KiB
Plaintext
Raw Normal View History

2023-07-02 17:09:41 +02:00
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