ams-master/Software/build/debug/stm32h7xx_hal_gpio.lst
2025-03-10 15:48:19 +01:00

1811 lines
112 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 C:\Users\lenex\AppData\Local\Temp\ccWJ3xRk.s page 1
1 .cpu cortex-m7
2 .arch armv7e-m
3 .fpu fpv5-d16
4 .eabi_attribute 28, 1
5 .eabi_attribute 20, 1
6 .eabi_attribute 21, 1
7 .eabi_attribute 23, 3
8 .eabi_attribute 24, 1
9 .eabi_attribute 25, 1
10 .eabi_attribute 26, 1
11 .eabi_attribute 30, 1
12 .eabi_attribute 34, 1
13 .eabi_attribute 18, 4
14 .file "stm32h7xx_hal_gpio.c"
15 .text
16 .Ltext0:
17 .cfi_sections .debug_frame
18 .file 1 "Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c"
19 .section .text.HAL_GPIO_Init,"ax",%progbits
20 .align 1
21 .global HAL_GPIO_Init
22 .syntax unified
23 .thumb
24 .thumb_func
26 HAL_GPIO_Init:
27 .LVL0:
28 .LFB335:
1:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** /**
2:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** ******************************************************************************
3:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** * @file stm32h7xx_hal_gpio.c
4:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** * @author MCD Application Team
5:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** * @brief GPIO HAL module driver.
6:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** * This file provides firmware functions to manage the following
7:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** * functionalities of the General Purpose Input/Output (GPIO) peripheral:
8:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** * + Initialization and de-initialization functions
9:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** * + IO operation functions
10:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** *
11:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** ******************************************************************************
12:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** * @attention
13:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** *
14:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** * Copyright (c) 2017 STMicroelectronics.
15:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** * All rights reserved.
16:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** *
17:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** * This software is licensed under terms that can be found in the LICENSE file
18:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** * in the root directory of this software component.
19:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** * If no LICENSE file comes with this software, it is provided AS-IS.
20:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** *
21:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** ******************************************************************************
22:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** @verbatim
23:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** ==============================================================================
24:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** ##### GPIO Peripheral features #####
25:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** ==============================================================================
26:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** [..]
27:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** (+) Each port bit of the general-purpose I/O (GPIO) ports can be individually
28:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** configured by software in several modes:
29:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** (++) Input mode
30:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** (++) Analog mode
ARM GAS C:\Users\lenex\AppData\Local\Temp\ccWJ3xRk.s page 2
31:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** (++) Output mode
32:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** (++) Alternate function mode
33:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** (++) External interrupt/event lines
34:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c ****
35:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** (+) During and just after reset, the alternate functions and external interrupt
36:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** lines are not active and the I/O ports are configured in input floating mode.
37:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c ****
38:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** (+) All GPIO pins have weak internal pull-up and pull-down resistors, which can be
39:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** activated or not.
40:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c ****
41:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** (+) In Output or Alternate mode, each IO can be configured on open-drain or push-pull
42:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** type and the IO speed can be selected depending on the VDD value.
43:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c ****
44:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** (+) The microcontroller IO pins are connected to onboard peripherals/modules through a
45:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** multiplexer that allows only one peripheral alternate function (AF) connected
46:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** to an IO pin at a time. In this way, there can be no conflict between peripherals
47:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** sharing the same IO pin.
48:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c ****
49:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** (+) All ports have external interrupt/event capability. To use external interrupt
50:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** lines, the port must be configured in input mode. All available GPIO pins are
51:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** connected to the 16 external interrupt/event lines from EXTI0 to EXTI15.
52:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c ****
53:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** The external interrupt/event controller consists of up to 23 edge detectors
54:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** (16 lines are connected to GPIO) for generating event/interrupt requests (each
55:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** input line can be independently configured to select the type (interrupt or event)
56:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** and the corresponding trigger event (rising or falling or both). Each line can
57:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** also be masked independently.
58:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c ****
59:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** ##### How to use this driver #####
60:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** ==============================================================================
61:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** [..]
62:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** (#) Enable the GPIO AHB clock using the following function: __HAL_RCC_GPIOx_CLK_ENABLE().
63:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c ****
64:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** (#) Configure the GPIO pin(s) using HAL_GPIO_Init().
65:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** (++) Configure the IO mode using "Mode" member from GPIO_InitTypeDef structure
66:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** (++) Activate Pull-up, Pull-down resistor using "Pull" member from GPIO_InitTypeDef
67:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** structure.
68:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** (++) In case of Output or alternate function mode selection: the speed is
69:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** configured through "Speed" member from GPIO_InitTypeDef structure.
70:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** (++) In alternate mode is selection, the alternate function connected to the IO
71:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** is configured through "Alternate" member from GPIO_InitTypeDef structure.
72:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** (++) Analog mode is required when a pin is to be used as ADC channel
73:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** or DAC output.
74:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** (++) In case of external interrupt/event selection the "Mode" member from
75:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** GPIO_InitTypeDef structure select the type (interrupt or event) and
76:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** the corresponding trigger event (rising or falling or both).
77:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c ****
78:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** (#) In case of external interrupt/event mode selection, configure NVIC IRQ priority
79:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** mapped to the EXTI line using HAL_NVIC_SetPriority() and enable it using
80:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** HAL_NVIC_EnableIRQ().
81:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c ****
82:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** (#) To get the level of a pin configured in input mode use HAL_GPIO_ReadPin().
83:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c ****
84:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** (#) To set/reset the level of a pin configured in output mode use
85:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** HAL_GPIO_WritePin()/HAL_GPIO_TogglePin().
86:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c ****
87:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** (#) To lock pin configuration until next reset use HAL_GPIO_LockPin().
ARM GAS C:\Users\lenex\AppData\Local\Temp\ccWJ3xRk.s page 3
88:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c ****
89:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c ****
90:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** (#) During and just after reset, the alternate functions are not
91:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** active and the GPIO pins are configured in input floating mode (except JTAG
92:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** pins).
93:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c ****
94:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** (#) The LSE oscillator pins OSC32_IN and OSC32_OUT can be used as general purpose
95:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** (PC14 and PC15, respectively) when the LSE oscillator is off. The LSE has
96:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** priority over the GPIO function.
97:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c ****
98:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** (#) The HSE oscillator pins OSC_IN/OSC_OUT can be used as
99:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** general purpose PH0 and PH1, respectively, when the HSE oscillator is off.
100:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** The HSE has priority over the GPIO function.
101:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c ****
102:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** @endverbatim
103:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** ******************************************************************************
104:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** */
105:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c ****
106:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** /* Includes ------------------------------------------------------------------*/
107:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** #include "stm32h7xx_hal.h"
108:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c ****
109:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** /** @addtogroup STM32H7xx_HAL_Driver
110:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** * @{
111:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** */
112:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c ****
113:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** /** @defgroup GPIO GPIO
114:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** * @brief GPIO HAL module driver
115:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** * @{
116:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** */
117:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c ****
118:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** #ifdef HAL_GPIO_MODULE_ENABLED
119:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c ****
120:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** /* Private typedef -----------------------------------------------------------*/
121:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** /* Private defines ------------------------------------------------------------*/
122:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** /** @addtogroup GPIO_Private_Constants GPIO Private Constants
123:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** * @{
124:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** */
125:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c ****
126:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** #if defined(DUAL_CORE)
127:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** #define EXTI_CPU1 (0x01000000U)
128:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** #define EXTI_CPU2 (0x02000000U)
129:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** #endif /*DUAL_CORE*/
130:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** #define GPIO_NUMBER (16U)
131:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** /**
132:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** * @}
133:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** */
134:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** /* Private macro -------------------------------------------------------------*/
135:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** /* Private variables ---------------------------------------------------------*/
136:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** /* Private function prototypes -----------------------------------------------*/
137:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** /* Private functions ---------------------------------------------------------*/
138:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** /* Exported functions --------------------------------------------------------*/
139:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** /** @defgroup GPIO_Exported_Functions GPIO Exported Functions
140:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** * @{
141:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** */
142:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c ****
143:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** /** @defgroup GPIO_Exported_Functions_Group1 Initialization and de-initialization functions
144:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** * @brief Initialization and Configuration functions
ARM GAS C:\Users\lenex\AppData\Local\Temp\ccWJ3xRk.s page 4
145:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** *
146:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** @verbatim
147:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** ===============================================================================
148:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** ##### Initialization and de-initialization functions #####
149:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** ===============================================================================
150:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** [..]
151:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** This section provides functions allowing to initialize and de-initialize the GPIOs
152:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** to be ready for use.
153:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c ****
154:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** @endverbatim
155:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** * @{
156:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** */
157:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c ****
158:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** /**
159:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** * @brief Initializes the GPIOx peripheral according to the specified parameters in the GPIO_Init
160:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** * @param GPIOx: where x can be (A..K) to select the GPIO peripheral.
161:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** * @param GPIO_Init: pointer to a GPIO_InitTypeDef structure that contains
162:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** * the configuration information for the specified GPIO peripheral.
163:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** * @retval None
164:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** */
165:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** void HAL_GPIO_Init(GPIO_TypeDef *GPIOx, GPIO_InitTypeDef *GPIO_Init)
166:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** {
29 .loc 1 166 1 view -0
30 .cfi_startproc
31 @ args = 0, pretend = 0, frame = 8
32 @ frame_needed = 0, uses_anonymous_args = 0
33 .loc 1 166 1 is_stmt 0 view .LVU1
34 0000 F0B5 push {r4, r5, r6, r7, lr}
35 .cfi_def_cfa_offset 20
36 .cfi_offset 4, -20
37 .cfi_offset 5, -16
38 .cfi_offset 6, -12
39 .cfi_offset 7, -8
40 .cfi_offset 14, -4
41 0002 83B0 sub sp, sp, #12
42 .cfi_def_cfa_offset 32
167:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** uint32_t position = 0x00U;
43 .loc 1 167 3 is_stmt 1 view .LVU2
44 .LVL1:
168:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** uint32_t iocurrent;
45 .loc 1 168 3 view .LVU3
169:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** uint32_t temp;
46 .loc 1 169 3 view .LVU4
170:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** EXTI_Core_TypeDef *EXTI_CurrentCPU;
47 .loc 1 170 3 view .LVU5
171:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c ****
172:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** #if defined(DUAL_CORE) && defined(CORE_CM4)
173:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** EXTI_CurrentCPU = EXTI_D2; /* EXTI for CM4 CPU */
174:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** #else
175:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** EXTI_CurrentCPU = EXTI_D1; /* EXTI for CM7 CPU */
48 .loc 1 175 3 view .LVU6
176:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** #endif
177:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c ****
178:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** /* Check the parameters */
179:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** assert_param(IS_GPIO_ALL_INSTANCE(GPIOx));
49 .loc 1 179 3 view .LVU7
180:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** assert_param(IS_GPIO_PIN(GPIO_Init->Pin));
ARM GAS C:\Users\lenex\AppData\Local\Temp\ccWJ3xRk.s page 5
50 .loc 1 180 3 view .LVU8
181:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** assert_param(IS_GPIO_MODE(GPIO_Init->Mode));
51 .loc 1 181 3 view .LVU9
182:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c ****
183:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** /* Configure the port pins */
184:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** while (((GPIO_Init->Pin) >> position) != 0x00U)
52 .loc 1 184 3 view .LVU10
167:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** uint32_t iocurrent;
53 .loc 1 167 12 is_stmt 0 view .LVU11
54 0004 0023 movs r3, #0
55 .loc 1 184 9 view .LVU12
56 0006 6BE0 b .L2
57 .LVL2:
58 .L25:
185:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** {
186:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** /* Get current io position */
187:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** iocurrent = (GPIO_Init->Pin) & (1UL << position);
188:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c ****
189:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** if (iocurrent != 0x00U)
190:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** {
191:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** /*--------------------- GPIO Mode Configuration ------------------------*/
192:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** /* In case of Output or Alternate function mode selection */
193:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** if (((GPIO_Init->Mode & GPIO_MODE) == MODE_OUTPUT) || ((GPIO_Init->Mode & GPIO_MODE) == MODE_
194:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** {
195:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** /* Check the Speed parameter */
196:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** assert_param(IS_GPIO_SPEED(GPIO_Init->Speed));
59 .loc 1 196 9 is_stmt 1 view .LVU13
197:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c ****
198:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** /* Configure the IO Speed */
199:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** temp = GPIOx->OSPEEDR;
60 .loc 1 199 9 view .LVU14
61 .loc 1 199 14 is_stmt 0 view .LVU15
62 0008 8568 ldr r5, [r0, #8]
63 .LVL3:
200:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** temp &= ~(GPIO_OSPEEDR_OSPEED0 << (position * 2U));
64 .loc 1 200 9 is_stmt 1 view .LVU16
65 .loc 1 200 53 is_stmt 0 view .LVU17
66 000a 5E00 lsls r6, r3, #1
67 .loc 1 200 40 view .LVU18
68 000c 0324 movs r4, #3
69 000e B440 lsls r4, r4, r6
70 .loc 1 200 14 view .LVU19
71 0010 25EA0405 bic r5, r5, r4
72 .LVL4:
201:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** temp |= (GPIO_Init->Speed << (position * 2U));
73 .loc 1 201 9 is_stmt 1 view .LVU20
74 .loc 1 201 27 is_stmt 0 view .LVU21
75 0014 CC68 ldr r4, [r1, #12]
76 .loc 1 201 35 view .LVU22
77 0016 B440 lsls r4, r4, r6
78 .loc 1 201 14 view .LVU23
79 0018 2C43 orrs r4, r4, r5
80 .LVL5:
202:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** GPIOx->OSPEEDR = temp;
81 .loc 1 202 9 is_stmt 1 view .LVU24
82 .loc 1 202 24 is_stmt 0 view .LVU25
83 001a 8460 str r4, [r0, #8]
ARM GAS C:\Users\lenex\AppData\Local\Temp\ccWJ3xRk.s page 6
203:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c ****
204:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** /* Configure the IO Output Type */
205:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** temp = GPIOx->OTYPER;
84 .loc 1 205 9 is_stmt 1 view .LVU26
85 .loc 1 205 14 is_stmt 0 view .LVU27
86 001c 4568 ldr r5, [r0, #4]
87 .LVL6:
206:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** temp &= ~(GPIO_OTYPER_OT0 << position) ;
88 .loc 1 206 9 is_stmt 1 view .LVU28
89 .loc 1 206 14 is_stmt 0 view .LVU29
90 001e 25EA0C05 bic r5, r5, ip
91 .LVL7:
207:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** temp |= (((GPIO_Init->Mode & OUTPUT_TYPE) >> OUTPUT_TYPE_Pos) << position);
92 .loc 1 207 9 is_stmt 1 view .LVU30
93 .loc 1 207 29 is_stmt 0 view .LVU31
94 0022 4C68 ldr r4, [r1, #4]
95 .loc 1 207 51 view .LVU32
96 0024 C4F30014 ubfx r4, r4, #4, #1
97 .loc 1 207 71 view .LVU33
98 0028 9C40 lsls r4, r4, r3
99 .loc 1 207 14 view .LVU34
100 002a 2C43 orrs r4, r4, r5
101 .LVL8:
208:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** GPIOx->OTYPER = temp;
102 .loc 1 208 9 is_stmt 1 view .LVU35
103 .loc 1 208 23 is_stmt 0 view .LVU36
104 002c 4460 str r4, [r0, #4]
105 002e 69E0 b .L4
106 .LVL9:
107 .L26:
209:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** }
210:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c ****
211:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** if ((GPIO_Init->Mode & GPIO_MODE) != MODE_ANALOG)
212:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** {
213:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** /* Check the Pull parameter */
214:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** assert_param(IS_GPIO_PULL(GPIO_Init->Pull));
215:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c ****
216:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** /* Activate the Pull-up or Pull down resistor for the current IO */
217:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** temp = GPIOx->PUPDR;
218:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** temp &= ~(GPIO_PUPDR_PUPD0 << (position * 2U));
219:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** temp |= ((GPIO_Init->Pull) << (position * 2U));
220:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** GPIOx->PUPDR = temp;
221:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** }
222:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c ****
223:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** /* In case of Alternate function mode selection */
224:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** if ((GPIO_Init->Mode & GPIO_MODE) == MODE_AF)
225:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** {
226:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** /* Check the Alternate function parameters */
227:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** assert_param(IS_GPIO_AF_INSTANCE(GPIOx));
108 .loc 1 227 9 is_stmt 1 view .LVU37
228:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** assert_param(IS_GPIO_AF(GPIO_Init->Alternate));
109 .loc 1 228 9 view .LVU38
229:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c ****
230:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** /* Configure Alternate function mapped with the current IO */
231:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** temp = GPIOx->AFR[position >> 3U];
110 .loc 1 231 9 view .LVU39
111 .loc 1 231 36 is_stmt 0 view .LVU40
ARM GAS C:\Users\lenex\AppData\Local\Temp\ccWJ3xRk.s page 7
112 0030 DD08 lsrs r5, r3, #3
113 .loc 1 231 14 view .LVU41
114 0032 0835 adds r5, r5, #8
115 0034 50F82540 ldr r4, [r0, r5, lsl #2]
116 .LVL10:
232:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** temp &= ~(0xFU << ((position & 0x07U) * 4U));
117 .loc 1 232 9 is_stmt 1 view .LVU42
118 .loc 1 232 38 is_stmt 0 view .LVU43
119 0038 03F0070C and ip, r3, #7
120 .loc 1 232 47 view .LVU44
121 003c 4FEA8C0C lsl ip, ip, #2
122 .loc 1 232 24 view .LVU45
123 0040 4FF00F0E mov lr, #15
124 0044 0EFA0CFE lsl lr, lr, ip
125 .loc 1 232 14 view .LVU46
126 0048 24EA0E0E bic lr, r4, lr
127 .LVL11:
233:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** temp |= ((GPIO_Init->Alternate) << ((position & 0x07U) * 4U));
128 .loc 1 233 9 is_stmt 1 view .LVU47
129 .loc 1 233 28 is_stmt 0 view .LVU48
130 004c 0C69 ldr r4, [r1, #16]
131 .loc 1 233 41 view .LVU49
132 004e 04FA0CF4 lsl r4, r4, ip
133 .loc 1 233 14 view .LVU50
134 0052 44EA0E04 orr r4, r4, lr
135 .LVL12:
234:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** GPIOx->AFR[position >> 3U] = temp;
136 .loc 1 234 9 is_stmt 1 view .LVU51
137 .loc 1 234 36 is_stmt 0 view .LVU52
138 0056 40F82540 str r4, [r0, r5, lsl #2]
139 005a 6BE0 b .L6
140 .LVL13:
141 .L27:
235:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** }
236:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c ****
237:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** /* Configure IO Direction mode (Input, Output, Alternate or Analog) */
238:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** temp = GPIOx->MODER;
239:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** temp &= ~(GPIO_MODER_MODE0 << (position * 2U));
240:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** temp |= ((GPIO_Init->Mode & GPIO_MODE) << (position * 2U));
241:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** GPIOx->MODER = temp;
242:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c ****
243:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** /*--------------------- EXTI Mode Configuration ------------------------*/
244:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** /* Configure the External Interrupt or event for the current IO */
245:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** if ((GPIO_Init->Mode & EXTI_MODE) != 0x00U)
246:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** {
247:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** /* Enable SYSCFG Clock */
248:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** __HAL_RCC_SYSCFG_CLK_ENABLE();
249:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c ****
250:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** temp = SYSCFG->EXTICR[position >> 2U];
251:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** temp &= ~(0x0FUL << (4U * (position & 0x03U)));
252:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** temp |= (GPIO_GET_INDEX(GPIOx) << (4U * (position & 0x03U)));
142 .loc 1 252 18 discriminator 19 view .LVU53
143 005c 0924 movs r4, #9
144 005e 00E0 b .L7
145 .L13:
146 .loc 1 252 18 discriminator 2 view .LVU54
147 0060 0024 movs r4, #0
ARM GAS C:\Users\lenex\AppData\Local\Temp\ccWJ3xRk.s page 8
148 .L7:
149 .loc 1 252 40 discriminator 40 view .LVU55
150 0062 04FA0EF4 lsl r4, r4, lr
151 .loc 1 252 14 discriminator 40 view .LVU56
152 0066 2C43 orrs r4, r4, r5
153 .LVL14:
253:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** SYSCFG->EXTICR[position >> 2U] = temp;
154 .loc 1 253 9 is_stmt 1 view .LVU57
155 .loc 1 253 40 is_stmt 0 view .LVU58
156 0068 0CF1020C add ip, ip, #2
157 006c 694D ldr r5, .L28
158 006e 45F82C40 str r4, [r5, ip, lsl #2]
254:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c ****
255:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** /* Clear Rising Falling edge configuration */
256:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** temp = EXTI->RTSR1;
159 .loc 1 256 9 is_stmt 1 view .LVU59
160 .loc 1 256 14 is_stmt 0 view .LVU60
161 0072 4FF0B044 mov r4, #1476395008
162 .LVL15:
163 .loc 1 256 14 view .LVU61
164 0076 2568 ldr r5, [r4]
165 .LVL16:
257:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** temp &= ~(iocurrent);
166 .loc 1 257 9 is_stmt 1 view .LVU62
167 .loc 1 257 17 is_stmt 0 view .LVU63
168 0078 D443 mvns r4, r2
169 .loc 1 257 14 view .LVU64
170 007a 25EA0206 bic r6, r5, r2
171 .LVL17:
258:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** if ((GPIO_Init->Mode & TRIGGER_RISING) != 0x00U)
172 .loc 1 258 9 is_stmt 1 view .LVU65
173 .loc 1 258 12 is_stmt 0 view .LVU66
174 007e 4F68 ldr r7, [r1, #4]
175 0080 17F4801F tst r7, #1048576
176 0084 01D0 beq .L8
259:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** {
260:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** temp |= iocurrent;
177 .loc 1 260 11 is_stmt 1 view .LVU67
178 .loc 1 260 16 is_stmt 0 view .LVU68
179 0086 42EA0506 orr r6, r2, r5
180 .LVL18:
181 .L8:
261:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** }
262:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** EXTI->RTSR1 = temp;
182 .loc 1 262 9 is_stmt 1 view .LVU69
183 .loc 1 262 21 is_stmt 0 view .LVU70
184 008a 4FF0B045 mov r5, #1476395008
185 008e 2E60 str r6, [r5]
263:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c ****
264:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** temp = EXTI->FTSR1;
186 .loc 1 264 9 is_stmt 1 view .LVU71
187 .loc 1 264 14 is_stmt 0 view .LVU72
188 0090 6D68 ldr r5, [r5, #4]
189 .LVL19:
265:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** temp &= ~(iocurrent);
190 .loc 1 265 9 is_stmt 1 view .LVU73
191 .loc 1 265 14 is_stmt 0 view .LVU74
ARM GAS C:\Users\lenex\AppData\Local\Temp\ccWJ3xRk.s page 9
192 0092 04EA0506 and r6, r4, r5
193 .LVL20:
266:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** if ((GPIO_Init->Mode & TRIGGER_FALLING) != 0x00U)
194 .loc 1 266 9 is_stmt 1 view .LVU75
195 .loc 1 266 12 is_stmt 0 view .LVU76
196 0096 4F68 ldr r7, [r1, #4]
197 0098 17F4001F tst r7, #2097152
198 009c 01D0 beq .L9
267:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** {
268:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** temp |= iocurrent;
199 .loc 1 268 11 is_stmt 1 view .LVU77
200 .loc 1 268 16 is_stmt 0 view .LVU78
201 009e 42EA0506 orr r6, r2, r5
202 .LVL21:
203 .L9:
269:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** }
270:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** EXTI->FTSR1 = temp;
204 .loc 1 270 9 is_stmt 1 view .LVU79
205 .loc 1 270 21 is_stmt 0 view .LVU80
206 00a2 4FF0B045 mov r5, #1476395008
207 00a6 6E60 str r6, [r5, #4]
271:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c ****
272:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** temp = EXTI_CurrentCPU->EMR1;
208 .loc 1 272 9 is_stmt 1 view .LVU81
209 .loc 1 272 14 is_stmt 0 view .LVU82
210 00a8 D5F88450 ldr r5, [r5, #132]
211 .LVL22:
273:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** temp &= ~(iocurrent);
212 .loc 1 273 9 is_stmt 1 view .LVU83
213 .loc 1 273 14 is_stmt 0 view .LVU84
214 00ac 04EA0506 and r6, r4, r5
215 .LVL23:
274:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** if ((GPIO_Init->Mode & EXTI_EVT) != 0x00U)
216 .loc 1 274 9 is_stmt 1 view .LVU85
217 .loc 1 274 12 is_stmt 0 view .LVU86
218 00b0 4F68 ldr r7, [r1, #4]
219 00b2 17F4003F tst r7, #131072
220 00b6 01D0 beq .L10
275:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** {
276:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** temp |= iocurrent;
221 .loc 1 276 11 is_stmt 1 view .LVU87
222 .loc 1 276 16 is_stmt 0 view .LVU88
223 00b8 42EA0506 orr r6, r2, r5
224 .LVL24:
225 .L10:
277:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** }
278:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** EXTI_CurrentCPU->EMR1 = temp;
226 .loc 1 278 9 is_stmt 1 view .LVU89
227 .loc 1 278 31 is_stmt 0 view .LVU90
228 00bc 4FF0B045 mov r5, #1476395008
229 00c0 C5F88460 str r6, [r5, #132]
279:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c ****
280:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** /* Clear EXTI line configuration */
281:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** temp = EXTI_CurrentCPU->IMR1;
230 .loc 1 281 9 is_stmt 1 view .LVU91
231 .loc 1 281 14 is_stmt 0 view .LVU92
232 00c4 D5F88050 ldr r5, [r5, #128]
ARM GAS C:\Users\lenex\AppData\Local\Temp\ccWJ3xRk.s page 10
233 .LVL25:
282:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** temp &= ~(iocurrent);
234 .loc 1 282 9 is_stmt 1 view .LVU93
235 .loc 1 282 14 is_stmt 0 view .LVU94
236 00c8 2C40 ands r4, r4, r5
237 .LVL26:
283:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** if ((GPIO_Init->Mode & EXTI_IT) != 0x00U)
238 .loc 1 283 9 is_stmt 1 view .LVU95
239 .loc 1 283 23 is_stmt 0 view .LVU96
240 00ca 4E68 ldr r6, [r1, #4]
241 .loc 1 283 12 view .LVU97
242 00cc 16F4803F tst r6, #65536
243 00d0 01D0 beq .L11
284:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** {
285:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** temp |= iocurrent;
244 .loc 1 285 11 is_stmt 1 view .LVU98
245 .loc 1 285 16 is_stmt 0 view .LVU99
246 00d2 42EA0504 orr r4, r2, r5
247 .LVL27:
248 .L11:
286:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** }
287:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** EXTI_CurrentCPU->IMR1 = temp;
249 .loc 1 287 9 is_stmt 1 view .LVU100
250 .loc 1 287 31 is_stmt 0 view .LVU101
251 00d6 4FF0B042 mov r2, #1476395008
252 .LVL28:
253 .loc 1 287 31 view .LVU102
254 00da C2F88040 str r4, [r2, #128]
255 .LVL29:
256 .L3:
288:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** }
289:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** }
290:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c ****
291:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** position++;
257 .loc 1 291 5 is_stmt 1 view .LVU103
258 .loc 1 291 13 is_stmt 0 view .LVU104
259 00de 0133 adds r3, r3, #1
260 .LVL30:
261 .L2:
184:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** {
262 .loc 1 184 41 is_stmt 1 view .LVU105
184:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** {
263 .loc 1 184 21 is_stmt 0 view .LVU106
264 00e0 0A68 ldr r2, [r1]
184:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** {
265 .loc 1 184 41 view .LVU107
266 00e2 32FA03F4 lsrs r4, r2, r3
267 00e6 00F09280 beq .L24
187:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c ****
268 .loc 1 187 5 is_stmt 1 view .LVU108
187:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c ****
269 .loc 1 187 41 is_stmt 0 view .LVU109
270 00ea 4FF0010C mov ip, #1
271 00ee 0CFA03FC lsl ip, ip, r3
272 .LVL31:
189:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** {
273 .loc 1 189 5 is_stmt 1 view .LVU110
ARM GAS C:\Users\lenex\AppData\Local\Temp\ccWJ3xRk.s page 11
189:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** {
274 .loc 1 189 8 is_stmt 0 view .LVU111
275 00f2 1CEA0202 ands r2, ip, r2
276 .LVL32:
189:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** {
277 .loc 1 189 8 view .LVU112
278 00f6 F2D0 beq .L3
193:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** {
279 .loc 1 193 7 is_stmt 1 view .LVU113
193:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** {
280 .loc 1 193 22 is_stmt 0 view .LVU114
281 00f8 4C68 ldr r4, [r1, #4]
193:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** {
282 .loc 1 193 29 view .LVU115
283 00fa 04F00304 and r4, r4, #3
193:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** {
284 .loc 1 193 58 view .LVU116
285 00fe 013C subs r4, r4, #1
193:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** {
286 .loc 1 193 10 view .LVU117
287 0100 012C cmp r4, #1
288 0102 81D9 bls .L25
289 .L4:
211:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** {
290 .loc 1 211 7 is_stmt 1 view .LVU118
211:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** {
291 .loc 1 211 21 is_stmt 0 view .LVU119
292 0104 4C68 ldr r4, [r1, #4]
211:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** {
293 .loc 1 211 28 view .LVU120
294 0106 04F00304 and r4, r4, #3
211:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** {
295 .loc 1 211 10 view .LVU121
296 010a 032C cmp r4, #3
297 010c 0CD0 beq .L5
214:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c ****
298 .loc 1 214 8 is_stmt 1 view .LVU122
217:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** temp &= ~(GPIO_PUPDR_PUPD0 << (position * 2U));
299 .loc 1 217 7 view .LVU123
217:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** temp &= ~(GPIO_PUPDR_PUPD0 << (position * 2U));
300 .loc 1 217 12 is_stmt 0 view .LVU124
301 010e C468 ldr r4, [r0, #12]
302 .LVL33:
218:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** temp |= ((GPIO_Init->Pull) << (position * 2U));
303 .loc 1 218 7 is_stmt 1 view .LVU125
218:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** temp |= ((GPIO_Init->Pull) << (position * 2U));
304 .loc 1 218 47 is_stmt 0 view .LVU126
305 0110 5D00 lsls r5, r3, #1
218:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** temp |= ((GPIO_Init->Pull) << (position * 2U));
306 .loc 1 218 34 view .LVU127
307 0112 4FF0030C mov ip, #3
308 0116 0CFA05FC lsl ip, ip, r5
218:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** temp |= ((GPIO_Init->Pull) << (position * 2U));
309 .loc 1 218 12 view .LVU128
310 011a 24EA0C0C bic ip, r4, ip
311 .LVL34:
219:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** GPIOx->PUPDR = temp;
ARM GAS C:\Users\lenex\AppData\Local\Temp\ccWJ3xRk.s page 12
312 .loc 1 219 7 is_stmt 1 view .LVU129
219:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** GPIOx->PUPDR = temp;
313 .loc 1 219 26 is_stmt 0 view .LVU130
314 011e 8C68 ldr r4, [r1, #8]
219:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** GPIOx->PUPDR = temp;
315 .loc 1 219 34 view .LVU131
316 0120 AC40 lsls r4, r4, r5
219:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** GPIOx->PUPDR = temp;
317 .loc 1 219 12 view .LVU132
318 0122 44EA0C04 orr r4, r4, ip
319 .LVL35:
220:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** }
320 .loc 1 220 7 is_stmt 1 view .LVU133
220:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** }
321 .loc 1 220 20 is_stmt 0 view .LVU134
322 0126 C460 str r4, [r0, #12]
323 .LVL36:
324 .L5:
224:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** {
325 .loc 1 224 7 is_stmt 1 view .LVU135
224:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** {
326 .loc 1 224 21 is_stmt 0 view .LVU136
327 0128 4C68 ldr r4, [r1, #4]
224:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** {
328 .loc 1 224 28 view .LVU137
329 012a 04F00304 and r4, r4, #3
224:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** {
330 .loc 1 224 10 view .LVU138
331 012e 022C cmp r4, #2
332 0130 3FF47EAF beq .L26
333 .L6:
238:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** temp &= ~(GPIO_MODER_MODE0 << (position * 2U));
334 .loc 1 238 7 is_stmt 1 view .LVU139
238:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** temp &= ~(GPIO_MODER_MODE0 << (position * 2U));
335 .loc 1 238 12 is_stmt 0 view .LVU140
336 0134 0468 ldr r4, [r0]
337 .LVL37:
239:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** temp |= ((GPIO_Init->Mode & GPIO_MODE) << (position * 2U));
338 .loc 1 239 7 is_stmt 1 view .LVU141
239:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** temp |= ((GPIO_Init->Mode & GPIO_MODE) << (position * 2U));
339 .loc 1 239 47 is_stmt 0 view .LVU142
340 0136 4FEA430E lsl lr, r3, #1
239:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** temp |= ((GPIO_Init->Mode & GPIO_MODE) << (position * 2U));
341 .loc 1 239 34 view .LVU143
342 013a 4FF0030C mov ip, #3
343 013e 0CFA0EFC lsl ip, ip, lr
239:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** temp |= ((GPIO_Init->Mode & GPIO_MODE) << (position * 2U));
344 .loc 1 239 12 view .LVU144
345 0142 24EA0C0C bic ip, r4, ip
346 .LVL38:
240:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** GPIOx->MODER = temp;
347 .loc 1 240 7 is_stmt 1 view .LVU145
240:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** GPIOx->MODER = temp;
348 .loc 1 240 26 is_stmt 0 view .LVU146
349 0146 4C68 ldr r4, [r1, #4]
240:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** GPIOx->MODER = temp;
350 .loc 1 240 33 view .LVU147
ARM GAS C:\Users\lenex\AppData\Local\Temp\ccWJ3xRk.s page 13
351 0148 04F00304 and r4, r4, #3
240:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** GPIOx->MODER = temp;
352 .loc 1 240 46 view .LVU148
353 014c 04FA0EF4 lsl r4, r4, lr
240:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** GPIOx->MODER = temp;
354 .loc 1 240 12 view .LVU149
355 0150 44EA0C04 orr r4, r4, ip
356 .LVL39:
241:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c ****
357 .loc 1 241 7 is_stmt 1 view .LVU150
241:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c ****
358 .loc 1 241 20 is_stmt 0 view .LVU151
359 0154 0460 str r4, [r0]
245:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** {
360 .loc 1 245 7 is_stmt 1 view .LVU152
245:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** {
361 .loc 1 245 21 is_stmt 0 view .LVU153
362 0156 4C68 ldr r4, [r1, #4]
363 .LVL40:
245:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** {
364 .loc 1 245 10 view .LVU154
365 0158 14F4403F tst r4, #196608
366 015c BFD0 beq .L3
248:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c ****
367 .loc 1 248 9 is_stmt 1 view .LVU155
368 .LBB2:
248:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c ****
369 .loc 1 248 9 view .LVU156
248:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c ****
370 .loc 1 248 9 view .LVU157
371 015e 2E4C ldr r4, .L28+4
372 0160 D4F85451 ldr r5, [r4, #340]
373 0164 45F00205 orr r5, r5, #2
374 0168 C4F85451 str r5, [r4, #340]
375 .LVL41:
248:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c ****
376 .loc 1 248 9 view .LVU158
377 016c D4F85441 ldr r4, [r4, #340]
378 0170 04F00204 and r4, r4, #2
379 0174 0194 str r4, [sp, #4]
248:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c ****
380 .loc 1 248 9 view .LVU159
381 0176 019C ldr r4, [sp, #4]
382 .LBE2:
248:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c ****
383 .loc 1 248 9 view .LVU160
250:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** temp &= ~(0x0FUL << (4U * (position & 0x03U)));
384 .loc 1 250 9 view .LVU161
250:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** temp &= ~(0x0FUL << (4U * (position & 0x03U)));
385 .loc 1 250 40 is_stmt 0 view .LVU162
386 0178 4FEA930C lsr ip, r3, #2
250:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** temp &= ~(0x0FUL << (4U * (position & 0x03U)));
387 .loc 1 250 14 view .LVU163
388 017c 0CF10205 add r5, ip, #2
389 0180 244C ldr r4, .L28
390 0182 54F82550 ldr r5, [r4, r5, lsl #2]
391 .LVL42:
ARM GAS C:\Users\lenex\AppData\Local\Temp\ccWJ3xRk.s page 14
251:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** temp |= (GPIO_GET_INDEX(GPIOx) << (4U * (position & 0x03U)));
392 .loc 1 251 9 is_stmt 1 view .LVU164
251:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** temp |= (GPIO_GET_INDEX(GPIOx) << (4U * (position & 0x03U)));
393 .loc 1 251 45 is_stmt 0 view .LVU165
394 0186 03F0030E and lr, r3, #3
251:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** temp |= (GPIO_GET_INDEX(GPIOx) << (4U * (position & 0x03U)));
395 .loc 1 251 33 view .LVU166
396 018a 4FEA8E0E lsl lr, lr, #2
251:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** temp |= (GPIO_GET_INDEX(GPIOx) << (4U * (position & 0x03U)));
397 .loc 1 251 26 view .LVU167
398 018e 0F24 movs r4, #15
399 0190 04FA0EF4 lsl r4, r4, lr
251:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** temp |= (GPIO_GET_INDEX(GPIOx) << (4U * (position & 0x03U)));
400 .loc 1 251 14 view .LVU168
401 0194 25EA0405 bic r5, r5, r4
402 .LVL43:
252:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** SYSCFG->EXTICR[position >> 2U] = temp;
403 .loc 1 252 9 is_stmt 1 view .LVU169
252:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** SYSCFG->EXTICR[position >> 2U] = temp;
404 .loc 1 252 18 is_stmt 0 view .LVU170
405 0198 204C ldr r4, .L28+8
406 019a A042 cmp r0, r4
407 019c 3FF460AF beq .L13
252:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** SYSCFG->EXTICR[position >> 2U] = temp;
408 .loc 1 252 18 discriminator 1 view .LVU171
409 01a0 04F58064 add r4, r4, #1024
410 01a4 A042 cmp r0, r4
411 01a6 22D0 beq .L14
252:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** SYSCFG->EXTICR[position >> 2U] = temp;
412 .loc 1 252 18 discriminator 3 view .LVU172
413 01a8 04F58064 add r4, r4, #1024
414 01ac A042 cmp r0, r4
415 01ae 20D0 beq .L15
252:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** SYSCFG->EXTICR[position >> 2U] = temp;
416 .loc 1 252 18 discriminator 5 view .LVU173
417 01b0 04F58064 add r4, r4, #1024
418 01b4 A042 cmp r0, r4
419 01b6 1ED0 beq .L16
252:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** SYSCFG->EXTICR[position >> 2U] = temp;
420 .loc 1 252 18 discriminator 7 view .LVU174
421 01b8 04F58064 add r4, r4, #1024
422 01bc A042 cmp r0, r4
423 01be 1CD0 beq .L17
252:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** SYSCFG->EXTICR[position >> 2U] = temp;
424 .loc 1 252 18 discriminator 9 view .LVU175
425 01c0 04F58064 add r4, r4, #1024
426 01c4 A042 cmp r0, r4
427 01c6 1AD0 beq .L18
252:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** SYSCFG->EXTICR[position >> 2U] = temp;
428 .loc 1 252 18 discriminator 11 view .LVU176
429 01c8 04F58064 add r4, r4, #1024
430 01cc A042 cmp r0, r4
431 01ce 18D0 beq .L19
252:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** SYSCFG->EXTICR[position >> 2U] = temp;
432 .loc 1 252 18 discriminator 13 view .LVU177
433 01d0 04F58064 add r4, r4, #1024
434 01d4 A042 cmp r0, r4
ARM GAS C:\Users\lenex\AppData\Local\Temp\ccWJ3xRk.s page 15
435 01d6 16D0 beq .L20
252:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** SYSCFG->EXTICR[position >> 2U] = temp;
436 .loc 1 252 18 discriminator 15 view .LVU178
437 01d8 04F58064 add r4, r4, #1024
438 01dc A042 cmp r0, r4
439 01de 14D0 beq .L21
252:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** SYSCFG->EXTICR[position >> 2U] = temp;
440 .loc 1 252 18 discriminator 17 view .LVU179
441 01e0 04F58064 add r4, r4, #1024
442 01e4 A042 cmp r0, r4
443 01e6 3FF439AF beq .L27
252:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** SYSCFG->EXTICR[position >> 2U] = temp;
444 .loc 1 252 18 discriminator 20 view .LVU180
445 01ea 0A24 movs r4, #10
446 01ec 39E7 b .L7
447 .L14:
252:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** SYSCFG->EXTICR[position >> 2U] = temp;
448 .loc 1 252 18 discriminator 4 view .LVU181
449 01ee 0124 movs r4, #1
450 01f0 37E7 b .L7
451 .L15:
252:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** SYSCFG->EXTICR[position >> 2U] = temp;
452 .loc 1 252 18 discriminator 6 view .LVU182
453 01f2 0224 movs r4, #2
454 01f4 35E7 b .L7
455 .L16:
252:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** SYSCFG->EXTICR[position >> 2U] = temp;
456 .loc 1 252 18 discriminator 8 view .LVU183
457 01f6 0324 movs r4, #3
458 01f8 33E7 b .L7
459 .L17:
252:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** SYSCFG->EXTICR[position >> 2U] = temp;
460 .loc 1 252 18 discriminator 10 view .LVU184
461 01fa 0424 movs r4, #4
462 01fc 31E7 b .L7
463 .L18:
252:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** SYSCFG->EXTICR[position >> 2U] = temp;
464 .loc 1 252 18 discriminator 12 view .LVU185
465 01fe 0524 movs r4, #5
466 0200 2FE7 b .L7
467 .L19:
252:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** SYSCFG->EXTICR[position >> 2U] = temp;
468 .loc 1 252 18 discriminator 14 view .LVU186
469 0202 0624 movs r4, #6
470 0204 2DE7 b .L7
471 .L20:
252:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** SYSCFG->EXTICR[position >> 2U] = temp;
472 .loc 1 252 18 discriminator 16 view .LVU187
473 0206 0724 movs r4, #7
474 0208 2BE7 b .L7
475 .L21:
252:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** SYSCFG->EXTICR[position >> 2U] = temp;
476 .loc 1 252 18 discriminator 18 view .LVU188
477 020a 0824 movs r4, #8
478 020c 29E7 b .L7
479 .LVL44:
480 .L24:
ARM GAS C:\Users\lenex\AppData\Local\Temp\ccWJ3xRk.s page 16
292:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** }
293:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** }
481 .loc 1 293 1 view .LVU189
482 020e 03B0 add sp, sp, #12
483 .cfi_def_cfa_offset 20
484 @ sp needed
485 0210 F0BD pop {r4, r5, r6, r7, pc}
486 .L29:
487 0212 00BF .align 2
488 .L28:
489 0214 00040058 .word 1476396032
490 0218 00440258 .word 1476543488
491 021c 00000258 .word 1476526080
492 .cfi_endproc
493 .LFE335:
495 .section .text.HAL_GPIO_DeInit,"ax",%progbits
496 .align 1
497 .global HAL_GPIO_DeInit
498 .syntax unified
499 .thumb
500 .thumb_func
502 HAL_GPIO_DeInit:
503 .LVL45:
504 .LFB336:
294:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c ****
295:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** /**
296:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** * @brief De-initializes the GPIOx peripheral registers to their default reset values.
297:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** * @param GPIOx: where x can be (A..K) to select the GPIO peripheral.
298:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** * @param GPIO_Pin: specifies the port bit to be written.
299:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** * This parameter can be one of GPIO_PIN_x where x can be (0..15).
300:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** * @retval None
301:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** */
302:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** void HAL_GPIO_DeInit(GPIO_TypeDef *GPIOx, uint32_t GPIO_Pin)
303:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** {
505 .loc 1 303 1 is_stmt 1 view -0
506 .cfi_startproc
507 @ args = 0, pretend = 0, frame = 0
508 @ frame_needed = 0, uses_anonymous_args = 0
304:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** uint32_t position = 0x00U;
509 .loc 1 304 3 view .LVU191
305:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** uint32_t iocurrent;
510 .loc 1 305 3 view .LVU192
306:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** uint32_t tmp;
511 .loc 1 306 3 view .LVU193
307:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** EXTI_Core_TypeDef *EXTI_CurrentCPU;
512 .loc 1 307 3 view .LVU194
308:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c ****
309:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** #if defined(DUAL_CORE) && defined(CORE_CM4)
310:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** EXTI_CurrentCPU = EXTI_D2; /* EXTI for CM4 CPU */
311:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** #else
312:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** EXTI_CurrentCPU = EXTI_D1; /* EXTI for CM7 CPU */
513 .loc 1 312 3 view .LVU195
313:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** #endif
314:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c ****
315:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** /* Check the parameters */
316:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** assert_param(IS_GPIO_ALL_INSTANCE(GPIOx));
514 .loc 1 316 3 view .LVU196
ARM GAS C:\Users\lenex\AppData\Local\Temp\ccWJ3xRk.s page 17
317:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** assert_param(IS_GPIO_PIN(GPIO_Pin));
515 .loc 1 317 3 view .LVU197
318:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c ****
319:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** /* Configure the port pins */
320:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** while ((GPIO_Pin >> position) != 0x00U)
516 .loc 1 320 3 view .LVU198
304:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** uint32_t iocurrent;
517 .loc 1 304 12 is_stmt 0 view .LVU199
518 0000 0023 movs r3, #0
519 .LVL46:
520 .loc 1 320 33 is_stmt 1 view .LVU200
521 0002 31FA03F2 lsrs r2, r1, r3
522 0006 00F09D80 beq .L49
303:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** uint32_t position = 0x00U;
523 .loc 1 303 1 is_stmt 0 view .LVU201
524 000a F0B5 push {r4, r5, r6, r7, lr}
525 .cfi_def_cfa_offset 20
526 .cfi_offset 4, -20
527 .cfi_offset 5, -16
528 .cfi_offset 6, -12
529 .cfi_offset 7, -8
530 .cfi_offset 14, -4
531 000c 2EE0 b .L35
532 .LVL47:
533 .L52:
321:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** {
322:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** /* Get current io position */
323:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** iocurrent = GPIO_Pin & (1UL << position) ;
324:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c ****
325:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** if (iocurrent != 0x00U)
326:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** {
327:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** /*------------------------- EXTI Mode Configuration --------------------*/
328:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** /* Clear the External Interrupt or Event for the current IO */
329:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** tmp = SYSCFG->EXTICR[position >> 2U];
330:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** tmp &= (0x0FUL << (4U * (position & 0x03U)));
331:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** if (tmp == (GPIO_GET_INDEX(GPIOx) << (4U * (position & 0x03U))))
534 .loc 1 331 19 discriminator 19 view .LVU202
535 000e 0925 movs r5, #9
536 0010 00E0 b .L33
537 .L36:
538 .loc 1 331 19 discriminator 2 view .LVU203
539 0012 0025 movs r5, #0
540 .L33:
541 .loc 1 331 41 discriminator 40 view .LVU204
542 0014 05FA0CF5 lsl r5, r5, ip
543 .loc 1 331 10 discriminator 40 view .LVU205
544 0018 A542 cmp r5, r4
545 001a 72D0 beq .L50
546 .LVL48:
547 .L34:
332:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** {
333:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** /* Clear EXTI line configuration for Current CPU */
334:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** EXTI_CurrentCPU->IMR1 &= ~(iocurrent);
335:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** EXTI_CurrentCPU->EMR1 &= ~(iocurrent);
336:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c ****
337:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** /* Clear Rising Falling edge configuration */
338:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** EXTI->FTSR1 &= ~(iocurrent);
ARM GAS C:\Users\lenex\AppData\Local\Temp\ccWJ3xRk.s page 18
339:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** EXTI->RTSR1 &= ~(iocurrent);
340:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c ****
341:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** tmp = 0x0FUL << (4U * (position & 0x03U));
342:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** SYSCFG->EXTICR[position >> 2U] &= ~tmp;
343:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** }
344:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c ****
345:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** /*------------------------- GPIO Mode Configuration --------------------*/
346:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** /* Configure IO in Analog Mode */
347:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** GPIOx->MODER |= (GPIO_MODER_MODE0 << (position * 2U));
548 .loc 1 347 7 is_stmt 1 view .LVU206
549 .loc 1 347 12 is_stmt 0 view .LVU207
550 001c 0468 ldr r4, [r0]
551 .loc 1 347 54 view .LVU208
552 001e 5D00 lsls r5, r3, #1
553 .loc 1 347 41 view .LVU209
554 0020 4FF0030C mov ip, #3
555 0024 0CFA05FC lsl ip, ip, r5
556 .loc 1 347 20 view .LVU210
557 0028 44EA0C04 orr r4, r4, ip
558 002c 0460 str r4, [r0]
348:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c ****
349:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** /* Configure the default Alternate Function in current IO */
350:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** GPIOx->AFR[position >> 3U] &= ~(0xFU << ((position & 0x07U) * 4U)) ;
559 .loc 1 350 7 is_stmt 1 view .LVU211
560 .loc 1 350 17 is_stmt 0 view .LVU212
561 002e 4FEAD30E lsr lr, r3, #3
562 .LVL49:
563 .loc 1 350 17 view .LVU213
564 0032 0EF1080E add lr, lr, #8
565 0036 50F82E40 ldr r4, [r0, lr, lsl #2]
566 .loc 1 350 58 view .LVU214
567 003a 03F00706 and r6, r3, #7
568 .loc 1 350 67 view .LVU215
569 003e B600 lsls r6, r6, #2
570 .loc 1 350 44 view .LVU216
571 0040 0F25 movs r5, #15
572 0042 B540 lsls r5, r5, r6
573 .loc 1 350 34 view .LVU217
574 0044 24EA0504 bic r4, r4, r5
575 0048 40F82E40 str r4, [r0, lr, lsl #2]
351:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c ****
352:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** /* Deactivate the Pull-up and Pull-down resistor for the current IO */
353:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** GPIOx->PUPDR &= ~(GPIO_PUPDR_PUPD0 << (position * 2U));
576 .loc 1 353 7 is_stmt 1 view .LVU218
577 .loc 1 353 12 is_stmt 0 view .LVU219
578 004c C468 ldr r4, [r0, #12]
579 .loc 1 353 20 view .LVU220
580 004e 24EA0C04 bic r4, r4, ip
581 0052 C460 str r4, [r0, #12]
354:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c ****
355:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** /* Configure the default value IO Output Type */
356:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** GPIOx->OTYPER &= ~(GPIO_OTYPER_OT0 << position) ;
582 .loc 1 356 7 is_stmt 1 view .LVU221
583 .loc 1 356 12 is_stmt 0 view .LVU222
584 0054 4468 ldr r4, [r0, #4]
585 .loc 1 356 22 view .LVU223
586 0056 24EA0202 bic r2, r4, r2
ARM GAS C:\Users\lenex\AppData\Local\Temp\ccWJ3xRk.s page 19
587 .LVL50:
588 .loc 1 356 22 view .LVU224
589 005a 4260 str r2, [r0, #4]
357:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c ****
358:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** /* Configure the default value for IO Speed */
359:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** GPIOx->OSPEEDR &= ~(GPIO_OSPEEDR_OSPEED0 << (position * 2U));
590 .loc 1 359 7 is_stmt 1 view .LVU225
591 .loc 1 359 12 is_stmt 0 view .LVU226
592 005c 8268 ldr r2, [r0, #8]
593 .loc 1 359 22 view .LVU227
594 005e 22EA0C02 bic r2, r2, ip
595 0062 8260 str r2, [r0, #8]
596 .L32:
360:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** }
361:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c ****
362:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** position++;
597 .loc 1 362 5 is_stmt 1 view .LVU228
598 .loc 1 362 13 is_stmt 0 view .LVU229
599 0064 0133 adds r3, r3, #1
600 .LVL51:
320:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** {
601 .loc 1 320 33 is_stmt 1 view .LVU230
602 0066 31FA03F2 lsrs r2, r1, r3
603 006a 6AD0 beq .L51
604 .LVL52:
605 .L35:
323:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c ****
606 .loc 1 323 5 view .LVU231
323:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c ****
607 .loc 1 323 33 is_stmt 0 view .LVU232
608 006c 0122 movs r2, #1
609 006e 9A40 lsls r2, r2, r3
610 .LVL53:
325:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** {
611 .loc 1 325 5 is_stmt 1 view .LVU233
325:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** {
612 .loc 1 325 8 is_stmt 0 view .LVU234
613 0070 12EA010E ands lr, r2, r1
614 .LVL54:
325:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** {
615 .loc 1 325 8 view .LVU235
616 0074 F6D0 beq .L32
329:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** tmp &= (0x0FUL << (4U * (position & 0x03U)));
617 .loc 1 329 7 is_stmt 1 view .LVU236
329:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** tmp &= (0x0FUL << (4U * (position & 0x03U)));
618 .loc 1 329 37 is_stmt 0 view .LVU237
619 0076 9E08 lsrs r6, r3, #2
329:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** tmp &= (0x0FUL << (4U * (position & 0x03U)));
620 .loc 1 329 11 view .LVU238
621 0078 B51C adds r5, r6, #2
622 007a 334C ldr r4, .L53
623 007c 54F82540 ldr r4, [r4, r5, lsl #2]
624 .LVL55:
330:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** if (tmp == (GPIO_GET_INDEX(GPIOx) << (4U * (position & 0x03U))))
625 .loc 1 330 7 is_stmt 1 view .LVU239
330:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** if (tmp == (GPIO_GET_INDEX(GPIOx) << (4U * (position & 0x03U))))
626 .loc 1 330 41 is_stmt 0 view .LVU240
ARM GAS C:\Users\lenex\AppData\Local\Temp\ccWJ3xRk.s page 20
627 0080 03F0030C and ip, r3, #3
330:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** if (tmp == (GPIO_GET_INDEX(GPIOx) << (4U * (position & 0x03U))))
628 .loc 1 330 29 view .LVU241
629 0084 4FEA8C0C lsl ip, ip, #2
330:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** if (tmp == (GPIO_GET_INDEX(GPIOx) << (4U * (position & 0x03U))))
630 .loc 1 330 22 view .LVU242
631 0088 0F25 movs r5, #15
632 008a 05FA0CF7 lsl r7, r5, ip
330:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** if (tmp == (GPIO_GET_INDEX(GPIOx) << (4U * (position & 0x03U))))
633 .loc 1 330 11 view .LVU243
634 008e 3C40 ands r4, r4, r7
635 .LVL56:
331:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** {
636 .loc 1 331 7 is_stmt 1 view .LVU244
331:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** {
637 .loc 1 331 19 is_stmt 0 view .LVU245
638 0090 2E4D ldr r5, .L53+4
639 0092 A842 cmp r0, r5
640 0094 BDD0 beq .L36
331:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** {
641 .loc 1 331 19 discriminator 1 view .LVU246
642 0096 05F58065 add r5, r5, #1024
643 009a A842 cmp r0, r5
644 009c 21D0 beq .L37
331:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** {
645 .loc 1 331 19 discriminator 3 view .LVU247
646 009e 05F58065 add r5, r5, #1024
647 00a2 A842 cmp r0, r5
648 00a4 1FD0 beq .L38
331:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** {
649 .loc 1 331 19 discriminator 5 view .LVU248
650 00a6 05F58065 add r5, r5, #1024
651 00aa A842 cmp r0, r5
652 00ac 1DD0 beq .L39
331:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** {
653 .loc 1 331 19 discriminator 7 view .LVU249
654 00ae 05F58065 add r5, r5, #1024
655 00b2 A842 cmp r0, r5
656 00b4 1BD0 beq .L40
331:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** {
657 .loc 1 331 19 discriminator 9 view .LVU250
658 00b6 05F58065 add r5, r5, #1024
659 00ba A842 cmp r0, r5
660 00bc 19D0 beq .L41
331:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** {
661 .loc 1 331 19 discriminator 11 view .LVU251
662 00be 05F58065 add r5, r5, #1024
663 00c2 A842 cmp r0, r5
664 00c4 17D0 beq .L42
331:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** {
665 .loc 1 331 19 discriminator 13 view .LVU252
666 00c6 05F58065 add r5, r5, #1024
667 00ca A842 cmp r0, r5
668 00cc 15D0 beq .L43
331:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** {
669 .loc 1 331 19 discriminator 15 view .LVU253
670 00ce 05F58065 add r5, r5, #1024
ARM GAS C:\Users\lenex\AppData\Local\Temp\ccWJ3xRk.s page 21
671 00d2 A842 cmp r0, r5
672 00d4 13D0 beq .L44
331:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** {
673 .loc 1 331 19 discriminator 17 view .LVU254
674 00d6 05F58065 add r5, r5, #1024
675 00da A842 cmp r0, r5
676 00dc 97D0 beq .L52
331:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** {
677 .loc 1 331 19 discriminator 20 view .LVU255
678 00de 0A25 movs r5, #10
679 00e0 98E7 b .L33
680 .L37:
331:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** {
681 .loc 1 331 19 discriminator 4 view .LVU256
682 00e2 0125 movs r5, #1
683 00e4 96E7 b .L33
684 .L38:
331:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** {
685 .loc 1 331 19 discriminator 6 view .LVU257
686 00e6 0225 movs r5, #2
687 00e8 94E7 b .L33
688 .L39:
331:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** {
689 .loc 1 331 19 discriminator 8 view .LVU258
690 00ea 0325 movs r5, #3
691 00ec 92E7 b .L33
692 .L40:
331:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** {
693 .loc 1 331 19 discriminator 10 view .LVU259
694 00ee 0425 movs r5, #4
695 00f0 90E7 b .L33
696 .L41:
331:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** {
697 .loc 1 331 19 discriminator 12 view .LVU260
698 00f2 0525 movs r5, #5
699 00f4 8EE7 b .L33
700 .L42:
331:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** {
701 .loc 1 331 19 discriminator 14 view .LVU261
702 00f6 0625 movs r5, #6
703 00f8 8CE7 b .L33
704 .L43:
331:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** {
705 .loc 1 331 19 discriminator 16 view .LVU262
706 00fa 0725 movs r5, #7
707 00fc 8AE7 b .L33
708 .L44:
331:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** {
709 .loc 1 331 19 discriminator 18 view .LVU263
710 00fe 0825 movs r5, #8
711 0100 88E7 b .L33
712 .L50:
334:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** EXTI_CurrentCPU->EMR1 &= ~(iocurrent);
713 .loc 1 334 9 is_stmt 1 view .LVU264
334:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** EXTI_CurrentCPU->EMR1 &= ~(iocurrent);
714 .loc 1 334 24 is_stmt 0 view .LVU265
715 0102 4FF0B044 mov r4, #1476395008
ARM GAS C:\Users\lenex\AppData\Local\Temp\ccWJ3xRk.s page 22
716 .LVL57:
334:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** EXTI_CurrentCPU->EMR1 &= ~(iocurrent);
717 .loc 1 334 24 view .LVU266
718 0106 D4F88050 ldr r5, [r4, #128]
334:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** EXTI_CurrentCPU->EMR1 &= ~(iocurrent);
719 .loc 1 334 31 view .LVU267
720 010a 25EA0E05 bic r5, r5, lr
721 010e C4F88050 str r5, [r4, #128]
335:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c ****
722 .loc 1 335 9 is_stmt 1 view .LVU268
335:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c ****
723 .loc 1 335 24 is_stmt 0 view .LVU269
724 0112 D4F88450 ldr r5, [r4, #132]
335:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c ****
725 .loc 1 335 31 view .LVU270
726 0116 25EA0E05 bic r5, r5, lr
727 011a C4F88450 str r5, [r4, #132]
338:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** EXTI->RTSR1 &= ~(iocurrent);
728 .loc 1 338 9 is_stmt 1 view .LVU271
338:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** EXTI->RTSR1 &= ~(iocurrent);
729 .loc 1 338 13 is_stmt 0 view .LVU272
730 011e 6568 ldr r5, [r4, #4]
338:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** EXTI->RTSR1 &= ~(iocurrent);
731 .loc 1 338 21 view .LVU273
732 0120 25EA0E05 bic r5, r5, lr
733 0124 6560 str r5, [r4, #4]
339:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c ****
734 .loc 1 339 9 is_stmt 1 view .LVU274
339:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c ****
735 .loc 1 339 13 is_stmt 0 view .LVU275
736 0126 2568 ldr r5, [r4]
339:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c ****
737 .loc 1 339 21 view .LVU276
738 0128 25EA0E05 bic r5, r5, lr
739 012c 2560 str r5, [r4]
341:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** SYSCFG->EXTICR[position >> 2U] &= ~tmp;
740 .loc 1 341 9 is_stmt 1 view .LVU277
741 .LVL58:
342:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** }
742 .loc 1 342 9 view .LVU278
342:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** }
743 .loc 1 342 23 is_stmt 0 view .LVU279
744 012e DFF818C0 ldr ip, .L53
745 0132 B41C adds r4, r6, #2
746 0134 5CF82450 ldr r5, [ip, r4, lsl #2]
342:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** }
747 .loc 1 342 40 view .LVU280
748 0138 25EA0705 bic r5, r5, r7
749 013c 4CF82450 str r5, [ip, r4, lsl #2]
750 0140 6CE7 b .L34
751 .LVL59:
752 .L51:
363:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** }
364:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** }
753 .loc 1 364 1 view .LVU281
754 0142 F0BD pop {r4, r5, r6, r7, pc}
755 .LVL60:
ARM GAS C:\Users\lenex\AppData\Local\Temp\ccWJ3xRk.s page 23
756 .L49:
757 .cfi_def_cfa_offset 0
758 .cfi_restore 4
759 .cfi_restore 5
760 .cfi_restore 6
761 .cfi_restore 7
762 .cfi_restore 14
763 .loc 1 364 1 view .LVU282
764 0144 7047 bx lr
765 .L54:
766 0146 00BF .align 2
767 .L53:
768 0148 00040058 .word 1476396032
769 014c 00000258 .word 1476526080
770 .cfi_endproc
771 .LFE336:
773 .section .text.HAL_GPIO_ReadPin,"ax",%progbits
774 .align 1
775 .global HAL_GPIO_ReadPin
776 .syntax unified
777 .thumb
778 .thumb_func
780 HAL_GPIO_ReadPin:
781 .LVL61:
782 .LFB337:
365:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c ****
366:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** /**
367:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** * @}
368:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** */
369:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c ****
370:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** /** @defgroup GPIO_Exported_Functions_Group2 IO operation functions
371:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** * @brief GPIO Read, Write, Toggle, Lock and EXTI management functions.
372:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** *
373:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** @verbatim
374:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** ===============================================================================
375:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** ##### IO operation functions #####
376:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** ===============================================================================
377:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c ****
378:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** @endverbatim
379:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** * @{
380:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** */
381:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c ****
382:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** /**
383:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** * @brief Reads the specified input port pin.
384:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** * @param GPIOx: where x can be (A..K) to select the GPIO peripheral.
385:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** * @param GPIO_Pin: specifies the port bit to read.
386:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** * This parameter can be GPIO_PIN_x where x can be (0..15).
387:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** * @retval The input port pin value.
388:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** */
389:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** GPIO_PinState HAL_GPIO_ReadPin(GPIO_TypeDef *GPIOx, uint16_t GPIO_Pin)
390:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** {
783 .loc 1 390 1 is_stmt 1 view -0
784 .cfi_startproc
785 @ args = 0, pretend = 0, frame = 0
786 @ frame_needed = 0, uses_anonymous_args = 0
787 @ link register save eliminated.
391:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** GPIO_PinState bitstatus;
ARM GAS C:\Users\lenex\AppData\Local\Temp\ccWJ3xRk.s page 24
788 .loc 1 391 3 view .LVU284
392:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c ****
393:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** /* Check the parameters */
394:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** assert_param(IS_GPIO_PIN(GPIO_Pin));
789 .loc 1 394 3 view .LVU285
395:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c ****
396:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** if ((GPIOx->IDR & GPIO_Pin) != 0x00U)
790 .loc 1 396 3 view .LVU286
791 .loc 1 396 13 is_stmt 0 view .LVU287
792 0000 0369 ldr r3, [r0, #16]
793 .loc 1 396 6 view .LVU288
794 0002 1942 tst r1, r3
795 0004 01D0 beq .L57
397:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** {
398:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** bitstatus = GPIO_PIN_SET;
796 .loc 1 398 15 view .LVU289
797 0006 0120 movs r0, #1
798 .LVL62:
799 .loc 1 398 15 view .LVU290
800 0008 7047 bx lr
801 .LVL63:
802 .L57:
399:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** }
400:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** else
401:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** {
402:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** bitstatus = GPIO_PIN_RESET;
803 .loc 1 402 15 view .LVU291
804 000a 0020 movs r0, #0
805 .LVL64:
403:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** }
404:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** return bitstatus;
806 .loc 1 404 3 is_stmt 1 view .LVU292
405:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** }
807 .loc 1 405 1 is_stmt 0 view .LVU293
808 000c 7047 bx lr
809 .cfi_endproc
810 .LFE337:
812 .section .text.HAL_GPIO_WritePin,"ax",%progbits
813 .align 1
814 .global HAL_GPIO_WritePin
815 .syntax unified
816 .thumb
817 .thumb_func
819 HAL_GPIO_WritePin:
820 .LVL65:
821 .LFB338:
406:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c ****
407:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** /**
408:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** * @brief Sets or clears the selected data port bit.
409:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** *
410:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** * @note This function uses GPIOx_BSRR register to allow atomic read/modify
411:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** * accesses. In this way, there is no risk of an IRQ occurring between
412:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** * the read and the modify access.
413:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** *
414:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** * @param GPIOx: where x can be (A..K) to select the GPIO peripheral.
415:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** * @param GPIO_Pin: specifies the port bit to be written.
416:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** * This parameter can be one of GPIO_PIN_x where x can be (0..15).
ARM GAS C:\Users\lenex\AppData\Local\Temp\ccWJ3xRk.s page 25
417:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** * @param PinState: specifies the value to be written to the selected bit.
418:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** * This parameter can be one of the GPIO_PinState enum values:
419:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** * @arg GPIO_PIN_RESET: to clear the port pin
420:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** * @arg GPIO_PIN_SET: to set the port pin
421:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** * @retval None
422:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** */
423:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** void HAL_GPIO_WritePin(GPIO_TypeDef *GPIOx, uint16_t GPIO_Pin, GPIO_PinState PinState)
424:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** {
822 .loc 1 424 1 is_stmt 1 view -0
823 .cfi_startproc
824 @ args = 0, pretend = 0, frame = 0
825 @ frame_needed = 0, uses_anonymous_args = 0
826 @ link register save eliminated.
425:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** /* Check the parameters */
426:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** assert_param(IS_GPIO_PIN(GPIO_Pin));
827 .loc 1 426 3 view .LVU295
427:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** assert_param(IS_GPIO_PIN_ACTION(PinState));
828 .loc 1 427 3 view .LVU296
428:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c ****
429:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** if (PinState != GPIO_PIN_RESET)
829 .loc 1 429 3 view .LVU297
830 .loc 1 429 6 is_stmt 0 view .LVU298
831 0000 0AB1 cbz r2, .L59
430:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** {
431:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** GPIOx->BSRR = GPIO_Pin;
832 .loc 1 431 5 is_stmt 1 view .LVU299
833 .loc 1 431 17 is_stmt 0 view .LVU300
834 0002 8161 str r1, [r0, #24]
835 0004 7047 bx lr
836 .L59:
432:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** }
433:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** else
434:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** {
435:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** GPIOx->BSRR = (uint32_t)GPIO_Pin << GPIO_NUMBER;
837 .loc 1 435 5 is_stmt 1 view .LVU301
838 .loc 1 435 38 is_stmt 0 view .LVU302
839 0006 0904 lsls r1, r1, #16
840 .LVL66:
841 .loc 1 435 17 view .LVU303
842 0008 8161 str r1, [r0, #24]
436:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** }
437:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** }
843 .loc 1 437 1 view .LVU304
844 000a 7047 bx lr
845 .cfi_endproc
846 .LFE338:
848 .section .text.HAL_GPIO_TogglePin,"ax",%progbits
849 .align 1
850 .global HAL_GPIO_TogglePin
851 .syntax unified
852 .thumb
853 .thumb_func
855 HAL_GPIO_TogglePin:
856 .LVL67:
857 .LFB339:
438:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c ****
439:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** /**
ARM GAS C:\Users\lenex\AppData\Local\Temp\ccWJ3xRk.s page 26
440:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** * @brief Toggles the specified GPIO pins.
441:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** * @param GPIOx: Where x can be (A..K) to select the GPIO peripheral.
442:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** * @param GPIO_Pin: Specifies the pins to be toggled.
443:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** * @retval None
444:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** */
445:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** void HAL_GPIO_TogglePin(GPIO_TypeDef *GPIOx, uint16_t GPIO_Pin)
446:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** {
858 .loc 1 446 1 is_stmt 1 view -0
859 .cfi_startproc
860 @ args = 0, pretend = 0, frame = 0
861 @ frame_needed = 0, uses_anonymous_args = 0
862 @ link register save eliminated.
447:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** uint32_t odr;
863 .loc 1 447 3 view .LVU306
448:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c ****
449:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** /* Check the parameters */
450:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** assert_param(IS_GPIO_PIN(GPIO_Pin));
864 .loc 1 450 3 view .LVU307
451:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c ****
452:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** /* get current Output Data Register value */
453:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** odr = GPIOx->ODR;
865 .loc 1 453 3 view .LVU308
866 .loc 1 453 7 is_stmt 0 view .LVU309
867 0000 4369 ldr r3, [r0, #20]
868 .LVL68:
454:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c ****
455:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** /* Set selected pins that were at low level, and reset ones that were high */
456:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** GPIOx->BSRR = ((odr & GPIO_Pin) << GPIO_NUMBER) | (~odr & GPIO_Pin);
869 .loc 1 456 3 is_stmt 1 view .LVU310
870 .loc 1 456 23 is_stmt 0 view .LVU311
871 0002 01EA0302 and r2, r1, r3
872 .loc 1 456 59 view .LVU312
873 0006 21EA0301 bic r1, r1, r3
874 .LVL69:
875 .loc 1 456 51 view .LVU313
876 000a 41EA0241 orr r1, r1, r2, lsl #16
877 .loc 1 456 15 view .LVU314
878 000e 8161 str r1, [r0, #24]
457:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** }
879 .loc 1 457 1 view .LVU315
880 0010 7047 bx lr
881 .cfi_endproc
882 .LFE339:
884 .section .text.HAL_GPIO_LockPin,"ax",%progbits
885 .align 1
886 .global HAL_GPIO_LockPin
887 .syntax unified
888 .thumb
889 .thumb_func
891 HAL_GPIO_LockPin:
892 .LVL70:
893 .LFB340:
458:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c ****
459:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** /**
460:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** * @brief Locks GPIO Pins configuration registers.
461:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** * @note The locked registers are GPIOx_MODER, GPIOx_OTYPER, GPIOx_OSPEEDR,
462:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** * GPIOx_PUPDR, GPIOx_AFRL and GPIOx_AFRH.
ARM GAS C:\Users\lenex\AppData\Local\Temp\ccWJ3xRk.s page 27
463:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** * @note The configuration of the locked GPIO pins can no longer be modified
464:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** * until the next reset.
465:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** * @param GPIOx: where x can be (A..K) to select the GPIO peripheral for STM32H7 family
466:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** * @param GPIO_Pin: specifies the port bit to be locked.
467:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** * This parameter can be any combination of GPIO_PIN_x where x can be (0..15).
468:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** * @retval None
469:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** */
470:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** HAL_StatusTypeDef HAL_GPIO_LockPin(GPIO_TypeDef *GPIOx, uint16_t GPIO_Pin)
471:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** {
894 .loc 1 471 1 is_stmt 1 view -0
895 .cfi_startproc
896 @ args = 0, pretend = 0, frame = 8
897 @ frame_needed = 0, uses_anonymous_args = 0
898 @ link register save eliminated.
899 .loc 1 471 1 is_stmt 0 view .LVU317
900 0000 82B0 sub sp, sp, #8
901 .cfi_def_cfa_offset 8
472:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** __IO uint32_t tmp = GPIO_LCKR_LCKK;
902 .loc 1 472 3 is_stmt 1 view .LVU318
903 .loc 1 472 17 is_stmt 0 view .LVU319
904 0002 4FF48033 mov r3, #65536
905 0006 0193 str r3, [sp, #4]
473:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c ****
474:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** /* Check the parameters */
475:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** assert_param(IS_GPIO_LOCK_INSTANCE(GPIOx));
906 .loc 1 475 3 is_stmt 1 view .LVU320
476:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** assert_param(IS_GPIO_PIN(GPIO_Pin));
907 .loc 1 476 3 view .LVU321
477:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c ****
478:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** /* Apply lock key write sequence */
479:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** tmp |= GPIO_Pin;
908 .loc 1 479 3 view .LVU322
909 .loc 1 479 7 is_stmt 0 view .LVU323
910 0008 019B ldr r3, [sp, #4]
911 000a 0B43 orrs r3, r3, r1
912 000c 0193 str r3, [sp, #4]
480:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** /* Set LCKx bit(s): LCKK='1' + LCK[15-0] */
481:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** GPIOx->LCKR = tmp;
913 .loc 1 481 3 is_stmt 1 view .LVU324
914 .loc 1 481 15 is_stmt 0 view .LVU325
915 000e 019B ldr r3, [sp, #4]
916 0010 C361 str r3, [r0, #28]
482:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** /* Reset LCKx bit(s): LCKK='0' + LCK[15-0] */
483:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** GPIOx->LCKR = GPIO_Pin;
917 .loc 1 483 3 is_stmt 1 view .LVU326
918 .loc 1 483 15 is_stmt 0 view .LVU327
919 0012 C161 str r1, [r0, #28]
484:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** /* Set LCKx bit(s): LCKK='1' + LCK[15-0] */
485:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** GPIOx->LCKR = tmp;
920 .loc 1 485 3 is_stmt 1 view .LVU328
921 .loc 1 485 15 is_stmt 0 view .LVU329
922 0014 019B ldr r3, [sp, #4]
923 0016 C361 str r3, [r0, #28]
486:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** /* Read LCKK register. This read is mandatory to complete key lock sequence*/
487:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** tmp = GPIOx->LCKR;
924 .loc 1 487 3 is_stmt 1 view .LVU330
925 .loc 1 487 14 is_stmt 0 view .LVU331
ARM GAS C:\Users\lenex\AppData\Local\Temp\ccWJ3xRk.s page 28
926 0018 C369 ldr r3, [r0, #28]
927 .loc 1 487 7 view .LVU332
928 001a 0193 str r3, [sp, #4]
488:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c ****
489:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** /* read again in order to confirm lock is active */
490:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** if ((GPIOx->LCKR & GPIO_LCKR_LCKK) != 0x00U)
929 .loc 1 490 3 is_stmt 1 view .LVU333
930 .loc 1 490 13 is_stmt 0 view .LVU334
931 001c C369 ldr r3, [r0, #28]
932 .loc 1 490 6 view .LVU335
933 001e 13F4803F tst r3, #65536
934 0022 02D0 beq .L64
491:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** {
492:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** return HAL_OK;
935 .loc 1 492 12 view .LVU336
936 0024 0020 movs r0, #0
937 .LVL71:
938 .L63:
493:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** }
494:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** else
495:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** {
496:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** return HAL_ERROR;
497:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** }
498:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** }
939 .loc 1 498 1 view .LVU337
940 0026 02B0 add sp, sp, #8
941 .cfi_remember_state
942 .cfi_def_cfa_offset 0
943 @ sp needed
944 0028 7047 bx lr
945 .LVL72:
946 .L64:
947 .cfi_restore_state
496:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** }
948 .loc 1 496 12 view .LVU338
949 002a 0120 movs r0, #1
950 .LVL73:
496:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** }
951 .loc 1 496 12 view .LVU339
952 002c FBE7 b .L63
953 .cfi_endproc
954 .LFE340:
956 .section .text.HAL_GPIO_EXTI_Callback,"ax",%progbits
957 .align 1
958 .weak HAL_GPIO_EXTI_Callback
959 .syntax unified
960 .thumb
961 .thumb_func
963 HAL_GPIO_EXTI_Callback:
964 .LVL74:
965 .LFB342:
499:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c ****
500:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** /**
501:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** * @brief Handle EXTI interrupt request.
502:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** * @param GPIO_Pin: Specifies the port pin connected to corresponding EXTI line.
503:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** * @retval None
504:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** */
ARM GAS C:\Users\lenex\AppData\Local\Temp\ccWJ3xRk.s page 29
505:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** void HAL_GPIO_EXTI_IRQHandler(uint16_t GPIO_Pin)
506:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** {
507:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** #if defined(DUAL_CORE) && defined(CORE_CM4)
508:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** if (__HAL_GPIO_EXTID2_GET_IT(GPIO_Pin) != 0x00U)
509:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** {
510:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** __HAL_GPIO_EXTID2_CLEAR_IT(GPIO_Pin);
511:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** HAL_GPIO_EXTI_Callback(GPIO_Pin);
512:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** }
513:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** #else
514:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** /* EXTI line interrupt detected */
515:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** if (__HAL_GPIO_EXTI_GET_IT(GPIO_Pin) != 0x00U)
516:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** {
517:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** __HAL_GPIO_EXTI_CLEAR_IT(GPIO_Pin);
518:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** HAL_GPIO_EXTI_Callback(GPIO_Pin);
519:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** }
520:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** #endif
521:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** }
522:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c ****
523:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** /**
524:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** * @brief EXTI line detection callback.
525:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** * @param GPIO_Pin: Specifies the port pin connected to corresponding EXTI line.
526:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** * @retval None
527:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** */
528:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** __weak void HAL_GPIO_EXTI_Callback(uint16_t GPIO_Pin)
529:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** {
966 .loc 1 529 1 is_stmt 1 view -0
967 .cfi_startproc
968 @ args = 0, pretend = 0, frame = 0
969 @ frame_needed = 0, uses_anonymous_args = 0
970 @ link register save eliminated.
530:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** /* Prevent unused argument(s) compilation warning */
531:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** UNUSED(GPIO_Pin);
971 .loc 1 531 3 view .LVU341
532:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c ****
533:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** /* NOTE: This function Should not be modified, when the callback is needed,
534:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** the HAL_GPIO_EXTI_Callback could be implemented in the user file
535:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** */
536:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** }
972 .loc 1 536 1 is_stmt 0 view .LVU342
973 0000 7047 bx lr
974 .cfi_endproc
975 .LFE342:
977 .section .text.HAL_GPIO_EXTI_IRQHandler,"ax",%progbits
978 .align 1
979 .global HAL_GPIO_EXTI_IRQHandler
980 .syntax unified
981 .thumb
982 .thumb_func
984 HAL_GPIO_EXTI_IRQHandler:
985 .LVL75:
986 .LFB341:
506:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** #if defined(DUAL_CORE) && defined(CORE_CM4)
987 .loc 1 506 1 is_stmt 1 view -0
988 .cfi_startproc
989 @ args = 0, pretend = 0, frame = 0
990 @ frame_needed = 0, uses_anonymous_args = 0
506:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** #if defined(DUAL_CORE) && defined(CORE_CM4)
ARM GAS C:\Users\lenex\AppData\Local\Temp\ccWJ3xRk.s page 30
991 .loc 1 506 1 is_stmt 0 view .LVU344
992 0000 08B5 push {r3, lr}
993 .cfi_def_cfa_offset 8
994 .cfi_offset 3, -8
995 .cfi_offset 14, -4
515:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** {
996 .loc 1 515 3 is_stmt 1 view .LVU345
515:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** {
997 .loc 1 515 7 is_stmt 0 view .LVU346
998 0002 4FF0B043 mov r3, #1476395008
999 0006 D3F88830 ldr r3, [r3, #136]
515:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** {
1000 .loc 1 515 6 view .LVU347
1001 000a 0342 tst r3, r0
1002 000c 00D1 bne .L70
1003 .LVL76:
1004 .L67:
521:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c ****
1005 .loc 1 521 1 view .LVU348
1006 000e 08BD pop {r3, pc}
1007 .LVL77:
1008 .L70:
517:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** HAL_GPIO_EXTI_Callback(GPIO_Pin);
1009 .loc 1 517 5 is_stmt 1 view .LVU349
1010 0010 4FF0B043 mov r3, #1476395008
1011 0014 C3F88800 str r0, [r3, #136]
518:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c **** }
1012 .loc 1 518 5 view .LVU350
1013 0018 FFF7FEFF bl HAL_GPIO_EXTI_Callback
1014 .LVL78:
521:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.c ****
1015 .loc 1 521 1 is_stmt 0 view .LVU351
1016 001c F7E7 b .L67
1017 .cfi_endproc
1018 .LFE341:
1020 .text
1021 .Letext0:
1022 .file 2 "C:/Users/lenex/AppData/Roaming/Code/User/globalStorage/bmd.stm32-for-vscode/@xpack-dev-to
1023 .file 3 "C:/Users/lenex/AppData/Roaming/Code/User/globalStorage/bmd.stm32-for-vscode/@xpack-dev-to
1024 .file 4 "Drivers/CMSIS/Device/ST/STM32H7xx/Include/stm32h7a3xx.h"
1025 .file 5 "Drivers/STM32H7xx_HAL_Driver/Inc/stm32h7xx_hal_def.h"
1026 .file 6 "Drivers/STM32H7xx_HAL_Driver/Inc/stm32h7xx_hal_gpio.h"
ARM GAS C:\Users\lenex\AppData\Local\Temp\ccWJ3xRk.s page 31
DEFINED SYMBOLS
*ABS*:00000000 stm32h7xx_hal_gpio.c
C:\Users\lenex\AppData\Local\Temp\ccWJ3xRk.s:20 .text.HAL_GPIO_Init:00000000 $t
C:\Users\lenex\AppData\Local\Temp\ccWJ3xRk.s:26 .text.HAL_GPIO_Init:00000000 HAL_GPIO_Init
C:\Users\lenex\AppData\Local\Temp\ccWJ3xRk.s:489 .text.HAL_GPIO_Init:00000214 $d
C:\Users\lenex\AppData\Local\Temp\ccWJ3xRk.s:496 .text.HAL_GPIO_DeInit:00000000 $t
C:\Users\lenex\AppData\Local\Temp\ccWJ3xRk.s:502 .text.HAL_GPIO_DeInit:00000000 HAL_GPIO_DeInit
C:\Users\lenex\AppData\Local\Temp\ccWJ3xRk.s:768 .text.HAL_GPIO_DeInit:00000148 $d
C:\Users\lenex\AppData\Local\Temp\ccWJ3xRk.s:774 .text.HAL_GPIO_ReadPin:00000000 $t
C:\Users\lenex\AppData\Local\Temp\ccWJ3xRk.s:780 .text.HAL_GPIO_ReadPin:00000000 HAL_GPIO_ReadPin
C:\Users\lenex\AppData\Local\Temp\ccWJ3xRk.s:813 .text.HAL_GPIO_WritePin:00000000 $t
C:\Users\lenex\AppData\Local\Temp\ccWJ3xRk.s:819 .text.HAL_GPIO_WritePin:00000000 HAL_GPIO_WritePin
C:\Users\lenex\AppData\Local\Temp\ccWJ3xRk.s:849 .text.HAL_GPIO_TogglePin:00000000 $t
C:\Users\lenex\AppData\Local\Temp\ccWJ3xRk.s:855 .text.HAL_GPIO_TogglePin:00000000 HAL_GPIO_TogglePin
C:\Users\lenex\AppData\Local\Temp\ccWJ3xRk.s:885 .text.HAL_GPIO_LockPin:00000000 $t
C:\Users\lenex\AppData\Local\Temp\ccWJ3xRk.s:891 .text.HAL_GPIO_LockPin:00000000 HAL_GPIO_LockPin
C:\Users\lenex\AppData\Local\Temp\ccWJ3xRk.s:957 .text.HAL_GPIO_EXTI_Callback:00000000 $t
C:\Users\lenex\AppData\Local\Temp\ccWJ3xRk.s:963 .text.HAL_GPIO_EXTI_Callback:00000000 HAL_GPIO_EXTI_Callback
C:\Users\lenex\AppData\Local\Temp\ccWJ3xRk.s:978 .text.HAL_GPIO_EXTI_IRQHandler:00000000 $t
C:\Users\lenex\AppData\Local\Temp\ccWJ3xRk.s:984 .text.HAL_GPIO_EXTI_IRQHandler:00000000 HAL_GPIO_EXTI_IRQHandler
NO UNDEFINED SYMBOLS