1498 lines
89 KiB
Plaintext
1498 lines
89 KiB
Plaintext
ARM GAS /tmp/ccgqPWsi.s page 1
|
||
|
||
|
||
1 .cpu cortex-m4
|
||
2 .eabi_attribute 27, 1
|
||
3 .eabi_attribute 28, 1
|
||
4 .eabi_attribute 23, 1
|
||
5 .eabi_attribute 24, 1
|
||
6 .eabi_attribute 25, 1
|
||
7 .eabi_attribute 26, 1
|
||
8 .eabi_attribute 30, 2
|
||
9 .eabi_attribute 34, 1
|
||
10 .eabi_attribute 18, 4
|
||
11 .file "stm32g4xx_hal_gpio.c"
|
||
12 .text
|
||
13 .Ltext0:
|
||
14 .cfi_sections .debug_frame
|
||
15 .section .text.HAL_GPIO_Init,"ax",%progbits
|
||
16 .align 1
|
||
17 .p2align 2,,3
|
||
18 .global HAL_GPIO_Init
|
||
19 .syntax unified
|
||
20 .thumb
|
||
21 .thumb_func
|
||
22 .fpu fpv4-sp-d16
|
||
24 HAL_GPIO_Init:
|
||
25 .LFB329:
|
||
26 .file 1 "Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c"
|
||
1:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** /**
|
||
2:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** ******************************************************************************
|
||
3:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** * @file stm32g4xx_hal_gpio.c
|
||
4:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** * @author MCD Application Team
|
||
5:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** * @brief GPIO HAL module driver.
|
||
6:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** * This file provides firmware functions to manage the following
|
||
7:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** * functionalities of the General Purpose Input/Output (GPIO) peripheral:
|
||
8:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** * + Initialization and de-initialization functions
|
||
9:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** * + IO operation functions
|
||
10:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** *
|
||
11:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** @verbatim
|
||
12:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** ==============================================================================
|
||
13:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** ##### GPIO Peripheral features #####
|
||
14:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** ==============================================================================
|
||
15:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** [..]
|
||
16:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** (+) Each port bit of the general-purpose I/O (GPIO) ports can be individually
|
||
17:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** configured by software in several modes:
|
||
18:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** (++) Input mode
|
||
19:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** (++) Analog mode
|
||
20:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** (++) Output mode
|
||
21:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** (++) Alternate function mode
|
||
22:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** (++) External interrupt/event lines
|
||
23:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c ****
|
||
24:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** (+) During and just after reset, the alternate functions and external interrupt
|
||
25:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** lines are not active and the I/O ports are configured in input floating mode.
|
||
26:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c ****
|
||
27:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** (+) All GPIO pins have weak internal pull-up and pull-down resistors, which can be
|
||
28:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** activated or not.
|
||
29:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c ****
|
||
30:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** (+) In Output or Alternate mode, each IO can be configured on open-drain or push-pull
|
||
31:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** type and the IO speed can be selected depending on the VDD value.
|
||
32:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c ****
|
||
ARM GAS /tmp/ccgqPWsi.s page 2
|
||
|
||
|
||
33:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** (+) The microcontroller IO pins are connected to onboard peripherals/modules through a
|
||
34:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** multiplexer that allows only one peripheral alternate function (AF) connected
|
||
35:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** to an IO pin at a time. In this way, there can be no conflict between peripherals
|
||
36:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** sharing the same IO pin.
|
||
37:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c ****
|
||
38:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** (+) All ports have external interrupt/event capability. To use external interrupt
|
||
39:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** lines, the port must be configured in input mode. All available GPIO pins are
|
||
40:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** connected to the 16 external interrupt/event lines from EXTI0 to EXTI15.
|
||
41:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c ****
|
||
42:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** (+) The external interrupt/event controller consists of up to 44 edge detectors
|
||
43:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** (16 lines are connected to GPIO) for generating event/interrupt requests (each
|
||
44:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** input line can be independently configured to select the type (interrupt or event)
|
||
45:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** and the corresponding trigger event (rising or falling or both). Each line can
|
||
46:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** also be masked independently.
|
||
47:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c ****
|
||
48:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** ##### How to use this driver #####
|
||
49:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** ==============================================================================
|
||
50:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** [..]
|
||
51:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** (#) Enable the GPIO AHB clock using the following function: __HAL_RCC_GPIOx_CLK_ENABLE().
|
||
52:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c ****
|
||
53:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** (#) Configure the GPIO pin(s) using HAL_GPIO_Init().
|
||
54:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** (++) Configure the IO mode using "Mode" member from GPIO_InitTypeDef structure
|
||
55:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** (++) Activate Pull-up, Pull-down resistor using "Pull" member from GPIO_InitTypeDef
|
||
56:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** structure.
|
||
57:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** (++) In case of Output or alternate function mode selection: the speed is
|
||
58:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** configured through "Speed" member from GPIO_InitTypeDef structure.
|
||
59:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** (++) In alternate mode is selection, the alternate function connected to the IO
|
||
60:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** is configured through "Alternate" member from GPIO_InitTypeDef structure.
|
||
61:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** (++) Analog mode is required when a pin is to be used as ADC channel
|
||
62:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** or DAC output.
|
||
63:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** (++) In case of external interrupt/event selection the "Mode" member from
|
||
64:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** GPIO_InitTypeDef structure select the type (interrupt or event) and
|
||
65:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** the corresponding trigger event (rising or falling or both).
|
||
66:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c ****
|
||
67:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** (#) In case of external interrupt/event mode selection, configure NVIC IRQ priority
|
||
68:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** mapped to the EXTI line using HAL_NVIC_SetPriority() and enable it using
|
||
69:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** HAL_NVIC_EnableIRQ().
|
||
70:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c ****
|
||
71:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** (#) To get the level of a pin configured in input mode use HAL_GPIO_ReadPin().
|
||
72:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c ****
|
||
73:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** (#) To set/reset the level of a pin configured in output mode use
|
||
74:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** HAL_GPIO_WritePin()/HAL_GPIO_TogglePin().
|
||
75:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c ****
|
||
76:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** (#) To lock pin configuration until next reset use HAL_GPIO_LockPin().
|
||
77:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c ****
|
||
78:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** (#) During and just after reset, the alternate functions are not
|
||
79:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** active and the GPIO pins are configured in input floating mode (except JTAG
|
||
80:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** pins).
|
||
81:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c ****
|
||
82:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** (#) The LSE oscillator pins OSC32_IN and OSC32_OUT can be used as general purpose
|
||
83:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** (PC14 and PC15, respectively) when the LSE oscillator is off. The LSE has
|
||
84:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** priority over the GPIO function.
|
||
85:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c ****
|
||
86:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** (#) The HSE oscillator pins OSC_IN/OSC_OUT can be used as
|
||
87:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** general purpose PF0 and PF1, respectively, when the HSE oscillator is off.
|
||
88:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** The HSE has priority over the GPIO function.
|
||
89:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c ****
|
||
ARM GAS /tmp/ccgqPWsi.s page 3
|
||
|
||
|
||
90:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** @endverbatim
|
||
91:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** ******************************************************************************
|
||
92:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** * @attention
|
||
93:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** *
|
||
94:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** * <h2><center>© Copyright (c) 2019 STMicroelectronics.
|
||
95:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** * All rights reserved.</center></h2>
|
||
96:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** *
|
||
97:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** * This software component is licensed by ST under BSD 3-Clause license,
|
||
98:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** * the "License"; You may not use this file except in compliance with the
|
||
99:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** * License. You may obtain a copy of the License at:
|
||
100:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** * opensource.org/licenses/BSD-3-Clause
|
||
101:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** *
|
||
102:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** ******************************************************************************
|
||
103:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** */
|
||
104:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c ****
|
||
105:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** /* Includes ------------------------------------------------------------------*/
|
||
106:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** #include "stm32g4xx_hal.h"
|
||
107:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c ****
|
||
108:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** /** @addtogroup STM32G4xx_HAL_Driver
|
||
109:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** * @{
|
||
110:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** */
|
||
111:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c ****
|
||
112:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** /** @addtogroup GPIO
|
||
113:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** * @{
|
||
114:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** */
|
||
115:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** /** MISRA C:2012 deviation rule has been granted for following rules:
|
||
116:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** * Rule-12.2 - Medium: RHS argument is in interval [0,INF] which is out of
|
||
117:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** * range of the shift operator in following API :
|
||
118:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** * HAL_GPIO_Init
|
||
119:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** * HAL_GPIO_DeInit
|
||
120:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** */
|
||
121:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c ****
|
||
122:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** #ifdef HAL_GPIO_MODULE_ENABLED
|
||
123:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c ****
|
||
124:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** /* Private typedef -----------------------------------------------------------*/
|
||
125:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** /* Private defines ------------------------------------------------------------*/
|
||
126:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** /** @defgroup GPIO_Private_Constants GPIO Private Constants
|
||
127:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** * @{
|
||
128:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** */
|
||
129:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** #define GPIO_MODE (0x00000003U)
|
||
130:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** #define EXTI_MODE (0x10000000U)
|
||
131:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** #define GPIO_MODE_IT (0x00010000U)
|
||
132:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** #define GPIO_MODE_EVT (0x00020000U)
|
||
133:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** #define RISING_EDGE (0x00100000U)
|
||
134:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** #define FALLING_EDGE (0x00200000U)
|
||
135:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** #define GPIO_OUTPUT_TYPE (0x00000010U)
|
||
136:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c ****
|
||
137:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** #define GPIO_NUMBER (16U)
|
||
138:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** /**
|
||
139:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** * @}
|
||
140:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** */
|
||
141:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c ****
|
||
142:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** /* Private macros ------------------------------------------------------------*/
|
||
143:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** /* Private variables ---------------------------------------------------------*/
|
||
144:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** /* Private function prototypes -----------------------------------------------*/
|
||
145:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** /* Exported functions --------------------------------------------------------*/
|
||
146:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c ****
|
||
ARM GAS /tmp/ccgqPWsi.s page 4
|
||
|
||
|
||
147:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** /** @addtogroup GPIO_Exported_Functions
|
||
148:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** * @{
|
||
149:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** */
|
||
150:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c ****
|
||
151:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** /** @defgroup GPIO_Exported_Functions_Group1 Initialization/de-initialization functions
|
||
152:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** * @brief Initialization and Configuration functions
|
||
153:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** *
|
||
154:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** @verbatim
|
||
155:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** ===============================================================================
|
||
156:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** ##### Initialization and de-initialization functions #####
|
||
157:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** ===============================================================================
|
||
158:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c ****
|
||
159:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** @endverbatim
|
||
160:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** * @{
|
||
161:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** */
|
||
162:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c ****
|
||
163:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** /**
|
||
164:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** * @brief Initialize the GPIOx peripheral according to the specified parameters in the GPIO_Init.
|
||
165:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** * @param GPIOx where x can be (A..G) to select the GPIO peripheral for STM32G4xx family
|
||
166:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** * @param GPIO_Init pointer to a GPIO_InitTypeDef structure that contains
|
||
167:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** * the configuration information for the specified GPIO peripheral.
|
||
168:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** * @retval None
|
||
169:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** */
|
||
170:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** void HAL_GPIO_Init(GPIO_TypeDef *GPIOx, GPIO_InitTypeDef *GPIO_Init)
|
||
171:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** {
|
||
27 .loc 1 171 0
|
||
28 .cfi_startproc
|
||
29 @ args = 0, pretend = 0, frame = 8
|
||
30 @ frame_needed = 0, uses_anonymous_args = 0
|
||
31 .LVL0:
|
||
32 0000 2DE9F04F push {r4, r5, r6, r7, r8, r9, r10, fp, lr}
|
||
33 .LCFI0:
|
||
34 .cfi_def_cfa_offset 36
|
||
35 .cfi_offset 4, -36
|
||
36 .cfi_offset 5, -32
|
||
37 .cfi_offset 6, -28
|
||
38 .cfi_offset 7, -24
|
||
39 .cfi_offset 8, -20
|
||
40 .cfi_offset 9, -16
|
||
41 .cfi_offset 10, -12
|
||
42 .cfi_offset 11, -8
|
||
43 .cfi_offset 14, -4
|
||
172:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** uint32_t position = 0x00U;
|
||
173:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** uint32_t iocurrent;
|
||
174:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** uint32_t temp;
|
||
175:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c ****
|
||
176:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** /* Check the parameters */
|
||
177:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** assert_param(IS_GPIO_ALL_INSTANCE(GPIOx));
|
||
178:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** assert_param(IS_GPIO_PIN(GPIO_Init->Pin));
|
||
179:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** assert_param(IS_GPIO_MODE(GPIO_Init->Mode));
|
||
180:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** assert_param(IS_GPIO_PULL(GPIO_Init->Pull));
|
||
181:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c ****
|
||
182:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** /* Configure the port pins */
|
||
183:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** while (((GPIO_Init->Pin) >> position) != 0U)
|
||
44 .loc 1 183 0
|
||
45 0004 D1F800E0 ldr lr, [r1]
|
||
171:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** uint32_t position = 0x00U;
|
||
ARM GAS /tmp/ccgqPWsi.s page 5
|
||
|
||
|
||
46 .loc 1 171 0
|
||
47 0008 83B0 sub sp, sp, #12
|
||
48 .LCFI1:
|
||
49 .cfi_def_cfa_offset 48
|
||
50 .loc 1 183 0
|
||
51 000a BEF1000F cmp lr, #0
|
||
52 000e 00F08180 beq .L1
|
||
184:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** {
|
||
185:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** /* Get current io position */
|
||
186:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** iocurrent = (GPIO_Init->Pin) & (1UL << position);
|
||
187:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c ****
|
||
188:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** if (iocurrent != 0x00u)
|
||
189:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** {
|
||
190:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** /*--------------------- GPIO Mode Configuration ------------------------*/
|
||
191:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** /* In case of Output or Alternate function mode selection */
|
||
192:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** if ((GPIO_Init->Mode == GPIO_MODE_OUTPUT_PP) || (GPIO_Init->Mode == GPIO_MODE_AF_PP) ||
|
||
193:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** (GPIO_Init->Mode == GPIO_MODE_OUTPUT_OD) || (GPIO_Init->Mode == GPIO_MODE_AF_OD))
|
||
194:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** {
|
||
195:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** /* Check the Speed parameter */
|
||
196:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** assert_param(IS_GPIO_SPEED(GPIO_Init->Speed));
|
||
197:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** /* Configure the IO Speed */
|
||
198:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** temp = GPIOx->OSPEEDR;
|
||
199:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** temp &= ~(GPIO_OSPEEDR_OSPEED0 << (position * 2U));
|
||
200:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** temp |= (GPIO_Init->Speed << (position * 2U));
|
||
201:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** GPIOx->OSPEEDR = temp;
|
||
202:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c ****
|
||
203:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** /* Configure the IO Output Type */
|
||
204:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** temp = GPIOx->OTYPER;
|
||
205:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** temp &= ~(GPIO_OTYPER_OT0 << position) ;
|
||
206:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** temp |= (((GPIO_Init->Mode & GPIO_OUTPUT_TYPE) >> 4U) << position);
|
||
207:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** GPIOx->OTYPER = temp;
|
||
208:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** }
|
||
209:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c ****
|
||
210:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** /* Activate the Pull-up or Pull down resistor for the current IO */
|
||
211:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** temp = GPIOx->PUPDR;
|
||
212:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** temp &= ~(GPIO_PUPDR_PUPD0 << (position * 2U));
|
||
213:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** temp |= ((GPIO_Init->Pull) << (position * 2U));
|
||
214:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** GPIOx->PUPDR = temp;
|
||
215:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c ****
|
||
216:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** /* In case of Alternate function mode selection */
|
||
217:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** if ((GPIO_Init->Mode == GPIO_MODE_AF_PP) || (GPIO_Init->Mode == GPIO_MODE_AF_OD))
|
||
218:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** {
|
||
219:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** /* Check the Alternate function parameters */
|
||
220:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** assert_param(IS_GPIO_AF_INSTANCE(GPIOx));
|
||
221:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** assert_param(IS_GPIO_AF(GPIO_Init->Alternate));
|
||
222:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c ****
|
||
223:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** /* Configure Alternate function mapped with the current IO */
|
||
224:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** temp = GPIOx->AFR[position >> 3U];
|
||
225:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** temp &= ~(0xFU << ((position & 0x07U) * 4U));
|
||
226:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** temp |= ((GPIO_Init->Alternate) << ((position & 0x07U) * 4U));
|
||
227:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** GPIOx->AFR[position >> 3U] = temp;
|
||
228:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** }
|
||
229:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c ****
|
||
230:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** /* Configure IO Direction mode (Input, Output, Alternate or Analog) */
|
||
231:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** temp = GPIOx->MODER;
|
||
232:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** temp &= ~(GPIO_MODER_MODE0 << (position * 2U));
|
||
233:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** temp |= ((GPIO_Init->Mode & GPIO_MODE) << (position * 2U));
|
||
ARM GAS /tmp/ccgqPWsi.s page 6
|
||
|
||
|
||
234:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** GPIOx->MODER = temp;
|
||
235:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c ****
|
||
236:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** /*--------------------- EXTI Mode Configuration ------------------------*/
|
||
237:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** /* Configure the External Interrupt or event for the current IO */
|
||
238:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** if ((GPIO_Init->Mode & EXTI_MODE) == EXTI_MODE)
|
||
239:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** {
|
||
240:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** /* Enable SYSCFG Clock */
|
||
241:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** __HAL_RCC_SYSCFG_CLK_ENABLE();
|
||
242:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c ****
|
||
243:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** temp = SYSCFG->EXTICR[position >> 2U];
|
||
244:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** temp &= ~(0x0FUL << (4U * (position & 0x03U)));
|
||
245:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** temp |= (GPIO_GET_INDEX(GPIOx) << (4U * (position & 0x03U)));
|
||
246:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** SYSCFG->EXTICR[position >> 2U] = temp;
|
||
247:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c ****
|
||
248:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** /* Clear EXTI line configuration */
|
||
249:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** temp = EXTI->IMR1;
|
||
53 .loc 1 249 0
|
||
54 0012 DFF8A091 ldr r9, .L39+24
|
||
55 0016 8846 mov r8, r1
|
||
172:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** uint32_t iocurrent;
|
||
56 .loc 1 172 0
|
||
57 0018 0026 movs r6, #0
|
||
58 .LVL1:
|
||
59 .L22:
|
||
186:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c ****
|
||
60 .loc 1 186 0
|
||
61 001a 0123 movs r3, #1
|
||
62 001c 03FA06F2 lsl r2, r3, r6
|
||
63 .LVL2:
|
||
188:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** {
|
||
64 .loc 1 188 0
|
||
65 0020 12EA0E07 ands r7, r2, lr
|
||
66 .LVL3:
|
||
67 0024 72D0 beq .L4
|
||
68 0026 D8E90114 ldrd r1, r4, [r8, #4]
|
||
192:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** (GPIO_Init->Mode == GPIO_MODE_OUTPUT_OD) || (GPIO_Init->Mode == GPIO_MODE_AF_OD))
|
||
69 .loc 1 192 0
|
||
70 002a 21F0100B bic fp, r1, #16
|
||
71 002e 06FA03FC lsl ip, r6, r3
|
||
72 0032 0BF1FF35 add r5, fp, #-1
|
||
73 0036 0323 movs r3, #3
|
||
74 0038 03FA0CFA lsl r10, r3, ip
|
||
75 003c 012D cmp r5, #1
|
||
76 003e 6FEA0A0A mvn r10, r10
|
||
77 0042 04FA0CF4 lsl r4, r4, ip
|
||
78 0046 68D9 bls .L5
|
||
211:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** temp &= ~(GPIO_PUPDR_PUPD0 << (position * 2U));
|
||
79 .loc 1 211 0 discriminator 1
|
||
80 0048 C368 ldr r3, [r0, #12]
|
||
81 .LVL4:
|
||
212:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** temp |= ((GPIO_Init->Pull) << (position * 2U));
|
||
82 .loc 1 212 0 discriminator 1
|
||
83 004a 0AEA0303 and r3, r10, r3
|
||
84 .LVL5:
|
||
213:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** GPIOx->PUPDR = temp;
|
||
85 .loc 1 213 0 discriminator 1
|
||
86 004e 1C43 orrs r4, r4, r3
|
||
ARM GAS /tmp/ccgqPWsi.s page 7
|
||
|
||
|
||
87 .LVL6:
|
||
214:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c ****
|
||
88 .loc 1 214 0 discriminator 1
|
||
89 0050 C460 str r4, [r0, #12]
|
||
90 .LVL7:
|
||
91 .L6:
|
||
231:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** temp &= ~(GPIO_MODER_MODE0 << (position * 2U));
|
||
92 .loc 1 231 0
|
||
93 0052 0268 ldr r2, [r0]
|
||
94 .LVL8:
|
||
233:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** GPIOx->MODER = temp;
|
||
95 .loc 1 233 0
|
||
96 0054 01F00303 and r3, r1, #3
|
||
232:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** temp |= ((GPIO_Init->Mode & GPIO_MODE) << (position * 2U));
|
||
97 .loc 1 232 0
|
||
98 0058 02EA0A0A and r10, r2, r10
|
||
99 .LVL9:
|
||
233:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** GPIOx->MODER = temp;
|
||
100 .loc 1 233 0
|
||
101 005c 03FA0CF3 lsl r3, r3, ip
|
||
102 0060 43EA0A03 orr r3, r3, r10
|
||
103 .LVL10:
|
||
238:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** {
|
||
104 .loc 1 238 0
|
||
105 0064 CD00 lsls r5, r1, #3
|
||
234:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c ****
|
||
106 .loc 1 234 0
|
||
107 0066 0360 str r3, [r0]
|
||
238:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** {
|
||
108 .loc 1 238 0
|
||
109 0068 50D5 bpl .L4
|
||
110 .LBB2:
|
||
241:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c ****
|
||
111 .loc 1 241 0
|
||
112 006a 4C4A ldr r2, .L39
|
||
113 006c 136E ldr r3, [r2, #96]
|
||
114 .LVL11:
|
||
115 006e 43F00103 orr r3, r3, #1
|
||
116 0072 1366 str r3, [r2, #96]
|
||
117 .LVL12:
|
||
118 0074 136E ldr r3, [r2, #96]
|
||
119 0076 26F00304 bic r4, r6, #3
|
||
120 007a 04F18044 add r4, r4, #1073741824
|
||
121 007e 03F00103 and r3, r3, #1
|
||
122 0082 04F58034 add r4, r4, #65536
|
||
123 0086 0193 str r3, [sp, #4]
|
||
124 .LBE2:
|
||
244:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** temp |= (GPIO_GET_INDEX(GPIOx) << (4U * (position & 0x03U)));
|
||
125 .loc 1 244 0
|
||
126 0088 06F00303 and r3, r6, #3
|
||
127 .LBB3:
|
||
241:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c ****
|
||
128 .loc 1 241 0
|
||
129 008c 019A ldr r2, [sp, #4]
|
||
130 .LBE3:
|
||
243:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** temp &= ~(0x0FUL << (4U * (position & 0x03U)));
|
||
131 .loc 1 243 0
|
||
ARM GAS /tmp/ccgqPWsi.s page 8
|
||
|
||
|
||
132 008e A568 ldr r5, [r4, #8]
|
||
133 .LVL13:
|
||
244:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** temp |= (GPIO_GET_INDEX(GPIOx) << (4U * (position & 0x03U)));
|
||
134 .loc 1 244 0
|
||
135 0090 9B00 lsls r3, r3, #2
|
||
136 0092 0F22 movs r2, #15
|
||
137 0094 9A40 lsls r2, r2, r3
|
||
245:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** SYSCFG->EXTICR[position >> 2U] = temp;
|
||
138 .loc 1 245 0
|
||
139 0096 B0F1904F cmp r0, #1207959552
|
||
244:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** temp |= (GPIO_GET_INDEX(GPIOx) << (4U * (position & 0x03U)));
|
||
140 .loc 1 244 0
|
||
141 009a 25EA0202 bic r2, r5, r2
|
||
142 .LVL14:
|
||
245:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** SYSCFG->EXTICR[position >> 2U] = temp;
|
||
143 .loc 1 245 0
|
||
144 009e 13D0 beq .L8
|
||
245:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** SYSCFG->EXTICR[position >> 2U] = temp;
|
||
145 .loc 1 245 0 is_stmt 0 discriminator 1
|
||
146 00a0 3F4D ldr r5, .L39+4
|
||
147 00a2 A842 cmp r0, r5
|
||
148 00a4 6BD0 beq .L35
|
||
245:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** SYSCFG->EXTICR[position >> 2U] = temp;
|
||
149 .loc 1 245 0 discriminator 3
|
||
150 00a6 3F4D ldr r5, .L39+8
|
||
151 00a8 A842 cmp r0, r5
|
||
152 00aa 63D0 beq .L36
|
||
245:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** SYSCFG->EXTICR[position >> 2U] = temp;
|
||
153 .loc 1 245 0 discriminator 5
|
||
154 00ac 3E4D ldr r5, .L39+12
|
||
155 00ae A842 cmp r0, r5
|
||
156 00b0 6AD0 beq .L37
|
||
245:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** SYSCFG->EXTICR[position >> 2U] = temp;
|
||
157 .loc 1 245 0 discriminator 7
|
||
158 00b2 3E4D ldr r5, .L39+16
|
||
159 00b4 A842 cmp r0, r5
|
||
160 00b6 6CD0 beq .L38
|
||
245:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** SYSCFG->EXTICR[position >> 2U] = temp;
|
||
161 .loc 1 245 0 discriminator 9
|
||
162 00b8 3D4D ldr r5, .L39+20
|
||
163 00ba A842 cmp r0, r5
|
||
164 00bc 0CBF ite eq
|
||
165 00be 0525 moveq r5, #5
|
||
166 00c0 0625 movne r5, #6
|
||
167 00c2 05FA03F3 lsl r3, r5, r3
|
||
168 00c6 1A43 orrs r2, r2, r3
|
||
169 .LVL15:
|
||
170 .L8:
|
||
246:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c ****
|
||
171 .loc 1 246 0 is_stmt 1 discriminator 24
|
||
172 00c8 A260 str r2, [r4, #8]
|
||
173 .loc 1 249 0 discriminator 24
|
||
174 00ca D9F80030 ldr r3, [r9]
|
||
175 .LVL16:
|
||
250:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** temp &= ~(iocurrent);
|
||
176 .loc 1 250 0 discriminator 24
|
||
177 00ce FA43 mvns r2, r7
|
||
ARM GAS /tmp/ccgqPWsi.s page 9
|
||
|
||
|
||
178 .LVL17:
|
||
251:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** if ((GPIO_Init->Mode & GPIO_MODE_IT) == GPIO_MODE_IT)
|
||
179 .loc 1 251 0 discriminator 24
|
||
180 00d0 CC03 lsls r4, r1, #15
|
||
250:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** temp &= ~(iocurrent);
|
||
181 .loc 1 250 0 discriminator 24
|
||
182 00d2 54BF ite pl
|
||
183 00d4 1340 andpl r3, r3, r2
|
||
184 .LVL18:
|
||
252:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** {
|
||
253:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** temp |= iocurrent;
|
||
185 .loc 1 253 0 discriminator 24
|
||
186 00d6 3B43 orrmi r3, r3, r7
|
||
187 .LVL19:
|
||
254:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** }
|
||
255:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** EXTI->IMR1 = temp;
|
||
188 .loc 1 255 0 discriminator 24
|
||
189 00d8 C9F80030 str r3, [r9]
|
||
256:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c ****
|
||
257:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** temp = EXTI->EMR1;
|
||
190 .loc 1 257 0 discriminator 24
|
||
191 00dc D9F80430 ldr r3, [r9, #4]
|
||
192 .LVL20:
|
||
258:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** temp &= ~(iocurrent);
|
||
259:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** if ((GPIO_Init->Mode & GPIO_MODE_EVT) == GPIO_MODE_EVT)
|
||
193 .loc 1 259 0 discriminator 24
|
||
194 00e0 8D03 lsls r5, r1, #14
|
||
258:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** temp &= ~(iocurrent);
|
||
195 .loc 1 258 0 discriminator 24
|
||
196 00e2 54BF ite pl
|
||
197 00e4 1340 andpl r3, r3, r2
|
||
198 .LVL21:
|
||
260:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** {
|
||
261:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** temp |= iocurrent;
|
||
199 .loc 1 261 0 discriminator 24
|
||
200 00e6 3B43 orrmi r3, r3, r7
|
||
201 .LVL22:
|
||
262:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** }
|
||
263:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** EXTI->EMR1 = temp;
|
||
202 .loc 1 263 0 discriminator 24
|
||
203 00e8 C9F80430 str r3, [r9, #4]
|
||
264:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c ****
|
||
265:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** /* Clear Rising Falling edge configuration */
|
||
266:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** temp = EXTI->RTSR1;
|
||
204 .loc 1 266 0 discriminator 24
|
||
205 00ec D9F80830 ldr r3, [r9, #8]
|
||
206 .LVL23:
|
||
267:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** temp &= ~(iocurrent);
|
||
268:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** if ((GPIO_Init->Mode & RISING_EDGE) == RISING_EDGE)
|
||
207 .loc 1 268 0 discriminator 24
|
||
208 00f0 CC02 lsls r4, r1, #11
|
||
267:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** temp &= ~(iocurrent);
|
||
209 .loc 1 267 0 discriminator 24
|
||
210 00f2 54BF ite pl
|
||
211 00f4 1340 andpl r3, r3, r2
|
||
212 .LVL24:
|
||
269:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** {
|
||
ARM GAS /tmp/ccgqPWsi.s page 10
|
||
|
||
|
||
270:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** temp |= iocurrent;
|
||
213 .loc 1 270 0 discriminator 24
|
||
214 00f6 3B43 orrmi r3, r3, r7
|
||
215 .LVL25:
|
||
271:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** }
|
||
272:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** EXTI->RTSR1 = temp;
|
||
216 .loc 1 272 0 discriminator 24
|
||
217 00f8 C9F80830 str r3, [r9, #8]
|
||
273:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c ****
|
||
274:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** temp = EXTI->FTSR1;
|
||
218 .loc 1 274 0 discriminator 24
|
||
219 00fc D9F80C30 ldr r3, [r9, #12]
|
||
220 .LVL26:
|
||
275:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** temp &= ~(iocurrent);
|
||
276:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** if ((GPIO_Init->Mode & FALLING_EDGE) == FALLING_EDGE)
|
||
221 .loc 1 276 0 discriminator 24
|
||
222 0100 8902 lsls r1, r1, #10
|
||
275:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** temp &= ~(iocurrent);
|
||
223 .loc 1 275 0 discriminator 24
|
||
224 0102 54BF ite pl
|
||
225 0104 1340 andpl r3, r3, r2
|
||
226 .LVL27:
|
||
277:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** {
|
||
278:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** temp |= iocurrent;
|
||
227 .loc 1 278 0 discriminator 24
|
||
228 0106 3B43 orrmi r3, r3, r7
|
||
229 .LVL28:
|
||
279:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** }
|
||
280:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** EXTI->FTSR1 = temp;
|
||
230 .loc 1 280 0 discriminator 24
|
||
231 0108 C9F80C30 str r3, [r9, #12]
|
||
232 .LVL29:
|
||
233 .L4:
|
||
281:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** }
|
||
282:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** }
|
||
283:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c ****
|
||
284:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** position++;
|
||
234 .loc 1 284 0
|
||
235 010c 0136 adds r6, r6, #1
|
||
236 .LVL30:
|
||
183:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** {
|
||
237 .loc 1 183 0
|
||
238 010e 3EFA06F3 lsrs r3, lr, r6
|
||
239 0112 82D1 bne .L22
|
||
240 .LVL31:
|
||
241 .L1:
|
||
285:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** }
|
||
286:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** }
|
||
242 .loc 1 286 0
|
||
243 0114 03B0 add sp, sp, #12
|
||
244 .LCFI2:
|
||
245 .cfi_remember_state
|
||
246 .cfi_def_cfa_offset 36
|
||
247 @ sp needed
|
||
248 0116 BDE8F08F pop {r4, r5, r6, r7, r8, r9, r10, fp, pc}
|
||
249 .LVL32:
|
||
250 .L5:
|
||
ARM GAS /tmp/ccgqPWsi.s page 11
|
||
|
||
|
||
251 .LCFI3:
|
||
252 .cfi_restore_state
|
||
198:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** temp &= ~(GPIO_OSPEEDR_OSPEED0 << (position * 2U));
|
||
253 .loc 1 198 0
|
||
254 011a 8368 ldr r3, [r0, #8]
|
||
255 .LVL33:
|
||
200:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** GPIOx->OSPEEDR = temp;
|
||
256 .loc 1 200 0
|
||
257 011c D8F80C50 ldr r5, [r8, #12]
|
||
199:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** temp |= (GPIO_Init->Speed << (position * 2U));
|
||
258 .loc 1 199 0
|
||
259 0120 03EA0A03 and r3, r3, r10
|
||
260 .LVL34:
|
||
200:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** GPIOx->OSPEEDR = temp;
|
||
261 .loc 1 200 0
|
||
262 0124 05FA0CF5 lsl r5, r5, ip
|
||
263 0128 1D43 orrs r5, r5, r3
|
||
264 .LVL35:
|
||
201:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c ****
|
||
265 .loc 1 201 0
|
||
266 012a 8560 str r5, [r0, #8]
|
||
204:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** temp &= ~(GPIO_OTYPER_OT0 << position) ;
|
||
267 .loc 1 204 0
|
||
268 012c 4368 ldr r3, [r0, #4]
|
||
269 .LVL36:
|
||
206:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** GPIOx->OTYPER = temp;
|
||
270 .loc 1 206 0
|
||
271 012e C1F30015 ubfx r5, r1, #4, #1
|
||
205:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** temp |= (((GPIO_Init->Mode & GPIO_OUTPUT_TYPE) >> 4U) << position);
|
||
272 .loc 1 205 0
|
||
273 0132 23EA0203 bic r3, r3, r2
|
||
274 .LVL37:
|
||
206:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** GPIOx->OTYPER = temp;
|
||
275 .loc 1 206 0
|
||
276 0136 2A46 mov r2, r5
|
||
277 0138 B240 lsls r2, r2, r6
|
||
278 013a 1A43 orrs r2, r2, r3
|
||
279 .LVL38:
|
||
207:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** }
|
||
280 .loc 1 207 0
|
||
281 013c 4260 str r2, [r0, #4]
|
||
211:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** temp &= ~(GPIO_PUPDR_PUPD0 << (position * 2U));
|
||
282 .loc 1 211 0
|
||
283 013e C368 ldr r3, [r0, #12]
|
||
284 .LVL39:
|
||
212:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** temp |= ((GPIO_Init->Pull) << (position * 2U));
|
||
285 .loc 1 212 0
|
||
286 0140 03EA0A03 and r3, r3, r10
|
||
287 .LVL40:
|
||
213:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** GPIOx->PUPDR = temp;
|
||
288 .loc 1 213 0
|
||
289 0144 1C43 orrs r4, r4, r3
|
||
290 .LVL41:
|
||
217:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** {
|
||
291 .loc 1 217 0
|
||
292 0146 BBF1020F cmp fp, #2
|
||
214:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c ****
|
||
ARM GAS /tmp/ccgqPWsi.s page 12
|
||
|
||
|
||
293 .loc 1 214 0
|
||
294 014a C460 str r4, [r0, #12]
|
||
217:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** {
|
||
295 .loc 1 217 0
|
||
296 014c 81D1 bne .L6
|
||
224:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** temp &= ~(0xFU << ((position & 0x07U) * 4U));
|
||
297 .loc 1 224 0
|
||
298 014e F408 lsrs r4, r6, #3
|
||
299 .LVL42:
|
||
300 0150 00EB8404 add r4, r0, r4, lsl #2
|
||
225:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** temp |= ((GPIO_Init->Alternate) << ((position & 0x07U) * 4U));
|
||
301 .loc 1 225 0
|
||
302 0154 06F00703 and r3, r6, #7
|
||
224:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** temp &= ~(0xFU << ((position & 0x07U) * 4U));
|
||
303 .loc 1 224 0
|
||
304 0158 256A ldr r5, [r4, #32]
|
||
305 .LVL43:
|
||
226:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** GPIOx->AFR[position >> 3U] = temp;
|
||
306 .loc 1 226 0
|
||
307 015a D8F81020 ldr r2, [r8, #16]
|
||
225:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** temp |= ((GPIO_Init->Alternate) << ((position & 0x07U) * 4U));
|
||
308 .loc 1 225 0
|
||
309 015e 9B00 lsls r3, r3, #2
|
||
310 0160 4FF00F0B mov fp, #15
|
||
311 0164 0BFA03FB lsl fp, fp, r3
|
||
312 0168 25EA0B05 bic r5, r5, fp
|
||
313 .LVL44:
|
||
226:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** GPIOx->AFR[position >> 3U] = temp;
|
||
314 .loc 1 226 0
|
||
315 016c 9A40 lsls r2, r2, r3
|
||
316 016e 2A43 orrs r2, r2, r5
|
||
317 .LVL45:
|
||
227:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** }
|
||
318 .loc 1 227 0
|
||
319 0170 2262 str r2, [r4, #32]
|
||
320 0172 6EE7 b .L6
|
||
321 .L36:
|
||
322 0174 0225 movs r5, #2
|
||
323 0176 05FA03F3 lsl r3, r5, r3
|
||
324 017a 1A43 orrs r2, r2, r3
|
||
325 .LVL46:
|
||
326 017c A4E7 b .L8
|
||
327 .LVL47:
|
||
328 .L35:
|
||
329 017e 0125 movs r5, #1
|
||
330 0180 05FA03F3 lsl r3, r5, r3
|
||
331 0184 1A43 orrs r2, r2, r3
|
||
332 .LVL48:
|
||
333 0186 9FE7 b .L8
|
||
334 .LVL49:
|
||
335 .L37:
|
||
336 0188 0325 movs r5, #3
|
||
337 018a 05FA03F3 lsl r3, r5, r3
|
||
338 018e 1A43 orrs r2, r2, r3
|
||
339 .LVL50:
|
||
340 0190 9AE7 b .L8
|
||
341 .LVL51:
|
||
ARM GAS /tmp/ccgqPWsi.s page 13
|
||
|
||
|
||
342 .L38:
|
||
343 0192 0425 movs r5, #4
|
||
344 0194 05FA03F3 lsl r3, r5, r3
|
||
345 0198 1A43 orrs r2, r2, r3
|
||
346 .LVL52:
|
||
347 019a 95E7 b .L8
|
||
348 .L40:
|
||
349 .align 2
|
||
350 .L39:
|
||
351 019c 00100240 .word 1073876992
|
||
352 01a0 00040048 .word 1207960576
|
||
353 01a4 00080048 .word 1207961600
|
||
354 01a8 000C0048 .word 1207962624
|
||
355 01ac 00100048 .word 1207963648
|
||
356 01b0 00140048 .word 1207964672
|
||
357 01b4 00040140 .word 1073808384
|
||
358 .cfi_endproc
|
||
359 .LFE329:
|
||
361 .section .text.HAL_GPIO_DeInit,"ax",%progbits
|
||
362 .align 1
|
||
363 .p2align 2,,3
|
||
364 .global HAL_GPIO_DeInit
|
||
365 .syntax unified
|
||
366 .thumb
|
||
367 .thumb_func
|
||
368 .fpu fpv4-sp-d16
|
||
370 HAL_GPIO_DeInit:
|
||
371 .LFB330:
|
||
287:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c ****
|
||
288:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** /**
|
||
289:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** * @brief De-initialize the GPIOx peripheral registers to their default reset values.
|
||
290:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** * @param GPIOx where x can be (A..G) to select the GPIO peripheral for STM32G4xx family
|
||
291:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** * @param GPIO_Pin specifies the port bit to be written.
|
||
292:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** * This parameter can be any combination of GPIO_PIN_x where x can be (0..15).
|
||
293:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** * @retval None
|
||
294:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** */
|
||
295:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** void HAL_GPIO_DeInit(GPIO_TypeDef *GPIOx, uint32_t GPIO_Pin)
|
||
296:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** {
|
||
372 .loc 1 296 0
|
||
373 .cfi_startproc
|
||
374 @ args = 0, pretend = 0, frame = 8
|
||
375 @ frame_needed = 0, uses_anonymous_args = 0
|
||
376 .LVL53:
|
||
297:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** uint32_t position = 0x00U;
|
||
298:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** uint32_t iocurrent;
|
||
299:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** uint32_t tmp;
|
||
300:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c ****
|
||
301:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** /* Check the parameters */
|
||
302:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** assert_param(IS_GPIO_ALL_INSTANCE(GPIOx));
|
||
303:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** assert_param(IS_GPIO_PIN(GPIO_Pin));
|
||
304:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c ****
|
||
305:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** /* Configure the port pins */
|
||
306:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** while ((GPIO_Pin >> position) != 0U)
|
||
377 .loc 1 306 0
|
||
378 0000 0029 cmp r1, #0
|
||
379 0002 00F08E80 beq .L61
|
||
296:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** uint32_t position = 0x00U;
|
||
ARM GAS /tmp/ccgqPWsi.s page 14
|
||
|
||
|
||
380 .loc 1 296 0
|
||
381 0006 2DE9F04F push {r4, r5, r6, r7, r8, r9, r10, fp, lr}
|
||
382 .LCFI4:
|
||
383 .cfi_def_cfa_offset 36
|
||
384 .cfi_offset 4, -36
|
||
385 .cfi_offset 5, -32
|
||
386 .cfi_offset 6, -28
|
||
387 .cfi_offset 7, -24
|
||
388 .cfi_offset 8, -20
|
||
389 .cfi_offset 9, -16
|
||
390 .cfi_offset 10, -12
|
||
391 .cfi_offset 11, -8
|
||
392 .cfi_offset 14, -4
|
||
307:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** {
|
||
308:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** /* Get current io position */
|
||
309:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** iocurrent = (GPIO_Pin) & (1UL << position);
|
||
310:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c ****
|
||
311:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** if (iocurrent != 0x00u)
|
||
312:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** {
|
||
313:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** /*------------------------- EXTI Mode Configuration --------------------*/
|
||
314:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** /* Clear the External Interrupt or Event for the current IO */
|
||
315:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c ****
|
||
316:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** tmp = SYSCFG->EXTICR[position >> 2U];
|
||
317:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** tmp &= (0x0FUL << (4U * (position & 0x03U)));
|
||
318:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** if (tmp == (GPIO_GET_INDEX(GPIOx) << (4U * (position & 0x03U))))
|
||
319:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** {
|
||
320:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** /* Clear EXTI line configuration */
|
||
321:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** EXTI->IMR1 &= ~(iocurrent);
|
||
393 .loc 1 321 0
|
||
394 000a DFF82C81 ldr r8, .L68+20
|
||
296:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** uint32_t position = 0x00U;
|
||
395 .loc 1 296 0
|
||
396 000e 83B0 sub sp, sp, #12
|
||
397 .LCFI5:
|
||
398 .cfi_def_cfa_offset 48
|
||
297:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** uint32_t iocurrent;
|
||
399 .loc 1 297 0
|
||
400 0010 0023 movs r3, #0
|
||
309:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c ****
|
||
401 .loc 1 309 0
|
||
402 0012 4FF00109 mov r9, #1
|
||
317:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** if (tmp == (GPIO_GET_INDEX(GPIOx) << (4U * (position & 0x03U))))
|
||
403 .loc 1 317 0
|
||
404 0016 4FF00F0A mov r10, #15
|
||
322:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** EXTI->EMR1 &= ~(iocurrent);
|
||
323:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c ****
|
||
324:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** /* Clear Rising Falling edge configuration */
|
||
325:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** EXTI->RTSR1 &= ~(iocurrent);
|
||
326:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** EXTI->FTSR1 &= ~(iocurrent);
|
||
327:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c ****
|
||
328:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** tmp = 0x0FUL << (4U * (position & 0x03U));
|
||
329:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** SYSCFG->EXTICR[position >> 2U] &= ~tmp;
|
||
330:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** }
|
||
331:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c ****
|
||
332:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** /*------------------------- GPIO Mode Configuration --------------------*/
|
||
333:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** /* Configure IO in Analog Mode */
|
||
334:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** GPIOx->MODER |= (GPIO_MODER_MODE0 << (position * 2u));
|
||
ARM GAS /tmp/ccgqPWsi.s page 15
|
||
|
||
|
||
405 .loc 1 334 0
|
||
406 001a 4FF0030B mov fp, #3
|
||
407 .LVL54:
|
||
408 .L51:
|
||
309:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c ****
|
||
409 .loc 1 309 0
|
||
410 001e 09FA03F5 lsl r5, r9, r3
|
||
411 .LVL55:
|
||
311:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** {
|
||
412 .loc 1 311 0
|
||
413 0022 15EA0106 ands r6, r5, r1
|
||
414 .LVL56:
|
||
415 0026 61D0 beq .L43
|
||
416 0028 23F00304 bic r4, r3, #3
|
||
417 002c 04F18044 add r4, r4, #1073741824
|
||
418 0030 04F58034 add r4, r4, #65536
|
||
317:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** if (tmp == (GPIO_GET_INDEX(GPIOx) << (4U * (position & 0x03U))))
|
||
419 .loc 1 317 0
|
||
420 0034 03F00302 and r2, r3, #3
|
||
316:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** tmp &= (0x0FUL << (4U * (position & 0x03U)));
|
||
421 .loc 1 316 0
|
||
422 0038 A768 ldr r7, [r4, #8]
|
||
423 .LVL57:
|
||
317:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** if (tmp == (GPIO_GET_INDEX(GPIOx) << (4U * (position & 0x03U))))
|
||
424 .loc 1 317 0
|
||
425 003a 9200 lsls r2, r2, #2
|
||
426 003c 0AFA02FC lsl ip, r10, r2
|
||
427 0040 0CEA0707 and r7, ip, r7
|
||
428 .LVL58:
|
||
318:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** {
|
||
429 .loc 1 318 0
|
||
430 0044 B0F1904F cmp r0, #1207959552
|
||
317:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** if (tmp == (GPIO_GET_INDEX(GPIOx) << (4U * (position & 0x03U))))
|
||
431 .loc 1 317 0
|
||
432 0048 0197 str r7, [sp, #4]
|
||
433 .LVL59:
|
||
318:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** {
|
||
434 .loc 1 318 0
|
||
435 004a 16D0 beq .L52
|
||
318:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** {
|
||
436 .loc 1 318 0 is_stmt 0 discriminator 1
|
||
437 004c 354F ldr r7, .L68
|
||
438 .LVL60:
|
||
439 004e B842 cmp r0, r7
|
||
440 0050 53D0 beq .L64
|
||
318:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** {
|
||
441 .loc 1 318 0 discriminator 3
|
||
442 0052 354F ldr r7, .L68+4
|
||
443 0054 B842 cmp r0, r7
|
||
444 0056 5AD0 beq .L65
|
||
318:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** {
|
||
445 .loc 1 318 0 discriminator 5
|
||
446 0058 344F ldr r7, .L68+8
|
||
447 005a B842 cmp r0, r7
|
||
448 005c 5DD0 beq .L66
|
||
318:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** {
|
||
449 .loc 1 318 0 discriminator 7
|
||
ARM GAS /tmp/ccgqPWsi.s page 16
|
||
|
||
|
||
450 005e 344F ldr r7, .L68+12
|
||
451 0060 B842 cmp r0, r7
|
||
452 0062 4ED0 beq .L67
|
||
318:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** {
|
||
453 .loc 1 318 0 discriminator 9
|
||
454 0064 334F ldr r7, .L68+16
|
||
455 0066 B842 cmp r0, r7
|
||
456 0068 14BF ite ne
|
||
457 006a 4FF0060E movne lr, #6
|
||
458 006e 4FF0050E moveq lr, #5
|
||
459 0072 0EFA02F2 lsl r2, lr, r2
|
||
460 0076 019F ldr r7, [sp, #4]
|
||
461 0078 00E0 b .L44
|
||
462 .L52:
|
||
463 007a 0022 movs r2, #0
|
||
464 .L44:
|
||
318:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** {
|
||
465 .loc 1 318 0 discriminator 24
|
||
466 007c 9742 cmp r7, r2
|
||
467 007e 18D1 bne .L50
|
||
321:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** EXTI->EMR1 &= ~(iocurrent);
|
||
468 .loc 1 321 0 is_stmt 1
|
||
469 0080 D8F80020 ldr r2, [r8]
|
||
470 0084 F643 mvns r6, r6
|
||
471 .LVL61:
|
||
472 0086 3240 ands r2, r2, r6
|
||
473 0088 C8F80020 str r2, [r8]
|
||
322:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c ****
|
||
474 .loc 1 322 0
|
||
475 008c D8F80420 ldr r2, [r8, #4]
|
||
476 0090 3240 ands r2, r2, r6
|
||
477 0092 C8F80420 str r2, [r8, #4]
|
||
325:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** EXTI->FTSR1 &= ~(iocurrent);
|
||
478 .loc 1 325 0
|
||
479 0096 D8F80820 ldr r2, [r8, #8]
|
||
480 009a 3240 ands r2, r2, r6
|
||
481 009c C8F80820 str r2, [r8, #8]
|
||
326:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c ****
|
||
482 .loc 1 326 0
|
||
483 00a0 D8F80C20 ldr r2, [r8, #12]
|
||
484 00a4 1640 ands r6, r6, r2
|
||
485 .LVL62:
|
||
486 00a6 C8F80C60 str r6, [r8, #12]
|
||
487 .LVL63:
|
||
329:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** }
|
||
488 .loc 1 329 0
|
||
489 00aa A268 ldr r2, [r4, #8]
|
||
490 00ac 22EA0C02 bic r2, r2, ip
|
||
491 00b0 A260 str r2, [r4, #8]
|
||
492 .LVL64:
|
||
493 .L50:
|
||
494 .loc 1 334 0
|
||
495 00b2 0468 ldr r4, [r0]
|
||
496 00b4 5A00 lsls r2, r3, #1
|
||
497 00b6 0BFA02F2 lsl r2, fp, r2
|
||
335:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c ****
|
||
336:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** /* Configure the default Alternate Function in current IO */
|
||
ARM GAS /tmp/ccgqPWsi.s page 17
|
||
|
||
|
||
337:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** GPIOx->AFR[position >> 3u] &= ~(0xFu << ((position & 0x07u) * 4u));
|
||
498 .loc 1 337 0
|
||
499 00ba DE08 lsrs r6, r3, #3
|
||
334:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c ****
|
||
500 .loc 1 334 0
|
||
501 00bc 1443 orrs r4, r4, r2
|
||
502 00be 00EB8606 add r6, r0, r6, lsl #2
|
||
503 00c2 0460 str r4, [r0]
|
||
504 .loc 1 337 0
|
||
505 00c4 03F00704 and r4, r3, #7
|
||
506 00c8 376A ldr r7, [r6, #32]
|
||
507 00ca A400 lsls r4, r4, #2
|
||
508 00cc 0AFA04F4 lsl r4, r10, r4
|
||
509 00d0 27EA0404 bic r4, r7, r4
|
||
510 00d4 3462 str r4, [r6, #32]
|
||
338:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c ****
|
||
339:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** /* Deactivate the Pull-up and Pull-down resistor for the current IO */
|
||
340:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** GPIOx->PUPDR &= ~(GPIO_PUPDR_PUPD0 << (position * 2u));
|
||
511 .loc 1 340 0
|
||
512 00d6 C468 ldr r4, [r0, #12]
|
||
513 00d8 D243 mvns r2, r2
|
||
514 00da 1440 ands r4, r4, r2
|
||
515 00dc C460 str r4, [r0, #12]
|
||
341:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c ****
|
||
342:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** /* Configure the default value IO Output Type */
|
||
343:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** GPIOx->OTYPER &= ~(GPIO_OTYPER_OT0 << position);
|
||
516 .loc 1 343 0
|
||
517 00de 4468 ldr r4, [r0, #4]
|
||
518 00e0 24EA0505 bic r5, r4, r5
|
||
519 .LVL65:
|
||
520 00e4 4560 str r5, [r0, #4]
|
||
344:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c ****
|
||
345:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** /* Configure the default value for IO Speed */
|
||
346:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** GPIOx->OSPEEDR &= ~(GPIO_OSPEEDR_OSPEED0 << (position * 2u));
|
||
521 .loc 1 346 0
|
||
522 00e6 8468 ldr r4, [r0, #8]
|
||
523 00e8 2240 ands r2, r2, r4
|
||
524 00ea 8260 str r2, [r0, #8]
|
||
525 .L43:
|
||
347:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** }
|
||
348:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c ****
|
||
349:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** position++;
|
||
526 .loc 1 349 0
|
||
527 00ec 0133 adds r3, r3, #1
|
||
528 .LVL66:
|
||
306:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** {
|
||
529 .loc 1 306 0
|
||
530 00ee 31FA03F2 lsrs r2, r1, r3
|
||
531 00f2 94D1 bne .L51
|
||
350:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** }
|
||
351:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** }
|
||
532 .loc 1 351 0
|
||
533 00f4 03B0 add sp, sp, #12
|
||
534 .LCFI6:
|
||
535 .cfi_remember_state
|
||
536 .cfi_def_cfa_offset 36
|
||
537 @ sp needed
|
||
ARM GAS /tmp/ccgqPWsi.s page 18
|
||
|
||
|
||
538 00f6 BDE8F08F pop {r4, r5, r6, r7, r8, r9, r10, fp, pc}
|
||
539 .LVL67:
|
||
540 .L64:
|
||
541 .LCFI7:
|
||
542 .cfi_restore_state
|
||
543 00fa 09FA02F2 lsl r2, r9, r2
|
||
544 00fe 019F ldr r7, [sp, #4]
|
||
545 0100 BCE7 b .L44
|
||
546 .L67:
|
||
547 0102 4FF0040E mov lr, #4
|
||
548 0106 0EFA02F2 lsl r2, lr, r2
|
||
549 010a 019F ldr r7, [sp, #4]
|
||
550 010c B6E7 b .L44
|
||
551 .L65:
|
||
552 010e 4FF0020E mov lr, #2
|
||
553 0112 0EFA02F2 lsl r2, lr, r2
|
||
554 0116 019F ldr r7, [sp, #4]
|
||
555 0118 B0E7 b .L44
|
||
556 .L66:
|
||
557 011a 0BFA02F2 lsl r2, fp, r2
|
||
558 011e 019F ldr r7, [sp, #4]
|
||
559 0120 ACE7 b .L44
|
||
560 .LVL68:
|
||
561 .L61:
|
||
562 .LCFI8:
|
||
563 .cfi_def_cfa_offset 0
|
||
564 .cfi_restore 4
|
||
565 .cfi_restore 5
|
||
566 .cfi_restore 6
|
||
567 .cfi_restore 7
|
||
568 .cfi_restore 8
|
||
569 .cfi_restore 9
|
||
570 .cfi_restore 10
|
||
571 .cfi_restore 11
|
||
572 .cfi_restore 14
|
||
573 0122 7047 bx lr
|
||
574 .L69:
|
||
575 .align 2
|
||
576 .L68:
|
||
577 0124 00040048 .word 1207960576
|
||
578 0128 00080048 .word 1207961600
|
||
579 012c 000C0048 .word 1207962624
|
||
580 0130 00100048 .word 1207963648
|
||
581 0134 00140048 .word 1207964672
|
||
582 0138 00040140 .word 1073808384
|
||
583 .cfi_endproc
|
||
584 .LFE330:
|
||
586 .section .text.HAL_GPIO_ReadPin,"ax",%progbits
|
||
587 .align 1
|
||
588 .p2align 2,,3
|
||
589 .global HAL_GPIO_ReadPin
|
||
590 .syntax unified
|
||
591 .thumb
|
||
592 .thumb_func
|
||
593 .fpu fpv4-sp-d16
|
||
595 HAL_GPIO_ReadPin:
|
||
596 .LFB331:
|
||
ARM GAS /tmp/ccgqPWsi.s page 19
|
||
|
||
|
||
352:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c ****
|
||
353:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** /**
|
||
354:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** * @}
|
||
355:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** */
|
||
356:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c ****
|
||
357:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** /** @addtogroup GPIO_Exported_Functions_Group2
|
||
358:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** * @brief GPIO Read, Write, Toggle, Lock and EXTI management functions.
|
||
359:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** *
|
||
360:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** @verbatim
|
||
361:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** ===============================================================================
|
||
362:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** ##### IO operation functions #####
|
||
363:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** ===============================================================================
|
||
364:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c ****
|
||
365:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** @endverbatim
|
||
366:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** * @{
|
||
367:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** */
|
||
368:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c ****
|
||
369:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** /**
|
||
370:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** * @brief Read the specified input port pin.
|
||
371:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** * @param GPIOx where x can be (A..G) to select the GPIO peripheral for STM32G4xx family
|
||
372:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** * @param GPIO_Pin specifies the port bit to read.
|
||
373:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** * This parameter can be any combination of GPIO_PIN_x where x can be (0..15).
|
||
374:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** * @retval The input port pin value.
|
||
375:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** */
|
||
376:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** GPIO_PinState HAL_GPIO_ReadPin(GPIO_TypeDef *GPIOx, uint16_t GPIO_Pin)
|
||
377:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** {
|
||
597 .loc 1 377 0
|
||
598 .cfi_startproc
|
||
599 @ args = 0, pretend = 0, frame = 0
|
||
600 @ frame_needed = 0, uses_anonymous_args = 0
|
||
601 @ link register save eliminated.
|
||
602 .LVL69:
|
||
378:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** GPIO_PinState bitstatus;
|
||
379:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c ****
|
||
380:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** /* Check the parameters */
|
||
381:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** assert_param(IS_GPIO_PIN(GPIO_Pin));
|
||
382:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c ****
|
||
383:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** if ((GPIOx->IDR & GPIO_Pin) != 0x00U)
|
||
603 .loc 1 383 0
|
||
604 0000 0369 ldr r3, [r0, #16]
|
||
605 .LVL70:
|
||
606 0002 1942 tst r1, r3
|
||
384:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** {
|
||
385:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** bitstatus = GPIO_PIN_SET;
|
||
386:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** }
|
||
387:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** else
|
||
388:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** {
|
||
389:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** bitstatus = GPIO_PIN_RESET;
|
||
390:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** }
|
||
391:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** return bitstatus;
|
||
392:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** }
|
||
607 .loc 1 392 0
|
||
608 0004 14BF ite ne
|
||
609 0006 0120 movne r0, #1
|
||
610 .LVL71:
|
||
611 0008 0020 moveq r0, #0
|
||
612 000a 7047 bx lr
|
||
ARM GAS /tmp/ccgqPWsi.s page 20
|
||
|
||
|
||
613 .cfi_endproc
|
||
614 .LFE331:
|
||
616 .section .text.HAL_GPIO_WritePin,"ax",%progbits
|
||
617 .align 1
|
||
618 .p2align 2,,3
|
||
619 .global HAL_GPIO_WritePin
|
||
620 .syntax unified
|
||
621 .thumb
|
||
622 .thumb_func
|
||
623 .fpu fpv4-sp-d16
|
||
625 HAL_GPIO_WritePin:
|
||
626 .LFB332:
|
||
393:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c ****
|
||
394:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** /**
|
||
395:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** * @brief Set or clear the selected data port bit.
|
||
396:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** *
|
||
397:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** * @note This function uses GPIOx_BSRR and GPIOx_BRR registers to allow atomic read/modify
|
||
398:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** * accesses. In this way, there is no risk of an IRQ occurring between
|
||
399:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** * the read and the modify access.
|
||
400:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** *
|
||
401:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** * @param GPIOx where x can be (A..G) to select the GPIO peripheral for STM32G4xx family
|
||
402:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** * @param GPIO_Pin specifies the port bit to be written.
|
||
403:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** * This parameter can be any combination of GPIO_PIN_x where x can be (0..15).
|
||
404:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** * @param PinState specifies the value to be written to the selected bit.
|
||
405:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** * This parameter can be one of the GPIO_PinState enum values:
|
||
406:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** * @arg GPIO_PIN_RESET: to clear the port pin
|
||
407:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** * @arg GPIO_PIN_SET: to set the port pin
|
||
408:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** * @retval None
|
||
409:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** */
|
||
410:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** void HAL_GPIO_WritePin(GPIO_TypeDef *GPIOx, uint16_t GPIO_Pin, GPIO_PinState PinState)
|
||
411:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** {
|
||
627 .loc 1 411 0
|
||
628 .cfi_startproc
|
||
629 @ args = 0, pretend = 0, frame = 0
|
||
630 @ frame_needed = 0, uses_anonymous_args = 0
|
||
631 @ link register save eliminated.
|
||
632 .LVL72:
|
||
412:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** /* Check the parameters */
|
||
413:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** assert_param(IS_GPIO_PIN(GPIO_Pin));
|
||
414:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** assert_param(IS_GPIO_PIN_ACTION(PinState));
|
||
415:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c ****
|
||
416:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** if (PinState != GPIO_PIN_RESET)
|
||
633 .loc 1 416 0
|
||
634 0000 0AB9 cbnz r2, .L74
|
||
417:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** {
|
||
418:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** GPIOx->BSRR = (uint32_t)GPIO_Pin;
|
||
419:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** }
|
||
420:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** else
|
||
421:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** {
|
||
422:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** GPIOx->BRR = (uint32_t)GPIO_Pin;
|
||
635 .loc 1 422 0
|
||
636 0002 8162 str r1, [r0, #40]
|
||
423:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** }
|
||
424:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** }
|
||
637 .loc 1 424 0
|
||
638 0004 7047 bx lr
|
||
639 .L74:
|
||
ARM GAS /tmp/ccgqPWsi.s page 21
|
||
|
||
|
||
418:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** }
|
||
640 .loc 1 418 0
|
||
641 0006 8161 str r1, [r0, #24]
|
||
642 0008 7047 bx lr
|
||
643 .cfi_endproc
|
||
644 .LFE332:
|
||
646 000a 00BF .section .text.HAL_GPIO_TogglePin,"ax",%progbits
|
||
647 .align 1
|
||
648 .p2align 2,,3
|
||
649 .global HAL_GPIO_TogglePin
|
||
650 .syntax unified
|
||
651 .thumb
|
||
652 .thumb_func
|
||
653 .fpu fpv4-sp-d16
|
||
655 HAL_GPIO_TogglePin:
|
||
656 .LFB333:
|
||
425:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c ****
|
||
426:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** /**
|
||
427:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** * @brief Toggle the specified GPIO pin.
|
||
428:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** * @param GPIOx where x can be (A..G) to select the GPIO peripheral for STM32G4xx family
|
||
429:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** * @param GPIO_Pin specifies the pin to be toggled.
|
||
430:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** * This parameter can be any combination of GPIO_PIN_x where x can be (0..15).
|
||
431:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** * @retval None
|
||
432:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** */
|
||
433:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** void HAL_GPIO_TogglePin(GPIO_TypeDef *GPIOx, uint16_t GPIO_Pin)
|
||
434:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** {
|
||
657 .loc 1 434 0
|
||
658 .cfi_startproc
|
||
659 @ args = 0, pretend = 0, frame = 0
|
||
660 @ frame_needed = 0, uses_anonymous_args = 0
|
||
661 @ link register save eliminated.
|
||
662 .LVL73:
|
||
435:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** uint32_t odr;
|
||
436:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c ****
|
||
437:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** /* Check the parameters */
|
||
438:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** assert_param(IS_GPIO_PIN(GPIO_Pin));
|
||
439:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c ****
|
||
440:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** /* get current Output Data Register value */
|
||
441:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** odr = GPIOx->ODR;
|
||
663 .loc 1 441 0
|
||
664 0000 4369 ldr r3, [r0, #20]
|
||
665 .LVL74:
|
||
442:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c ****
|
||
443:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** /* Set selected pins that were at low level, and reset ones that were high */
|
||
444:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** GPIOx->BSRR = ((odr & GPIO_Pin) << GPIO_NUMBER) | (~odr & GPIO_Pin);
|
||
666 .loc 1 444 0
|
||
667 0002 01EA0302 and r2, r1, r3
|
||
668 0006 21EA0301 bic r1, r1, r3
|
||
669 .LVL75:
|
||
670 000a 41EA0241 orr r1, r1, r2, lsl #16
|
||
671 000e 8161 str r1, [r0, #24]
|
||
445:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** }
|
||
672 .loc 1 445 0
|
||
673 0010 7047 bx lr
|
||
674 .cfi_endproc
|
||
675 .LFE333:
|
||
677 0012 00BF .section .text.HAL_GPIO_LockPin,"ax",%progbits
|
||
ARM GAS /tmp/ccgqPWsi.s page 22
|
||
|
||
|
||
678 .align 1
|
||
679 .p2align 2,,3
|
||
680 .global HAL_GPIO_LockPin
|
||
681 .syntax unified
|
||
682 .thumb
|
||
683 .thumb_func
|
||
684 .fpu fpv4-sp-d16
|
||
686 HAL_GPIO_LockPin:
|
||
687 .LFB334:
|
||
446:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c ****
|
||
447:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** /**
|
||
448:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** * @brief Lock GPIO Pins configuration registers.
|
||
449:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** * @note The locked registers are GPIOx_MODER, GPIOx_OTYPER, GPIOx_OSPEEDR,
|
||
450:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** * GPIOx_PUPDR, GPIOx_AFRL and GPIOx_AFRH.
|
||
451:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** * @note The configuration of the locked GPIO pins can no longer be modified
|
||
452:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** * until the next reset.
|
||
453:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** * @param GPIOx where x can be (A..G) to select the GPIO peripheral for STM32G4xx family
|
||
454:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** * @param GPIO_Pin specifies the port bits to be locked.
|
||
455:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** * This parameter can be any combination of GPIO_Pin_x where x can be (0..15).
|
||
456:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** * @retval None
|
||
457:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** */
|
||
458:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** HAL_StatusTypeDef HAL_GPIO_LockPin(GPIO_TypeDef *GPIOx, uint16_t GPIO_Pin)
|
||
459:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** {
|
||
688 .loc 1 459 0
|
||
689 .cfi_startproc
|
||
690 @ args = 0, pretend = 0, frame = 8
|
||
691 @ frame_needed = 0, uses_anonymous_args = 0
|
||
692 @ link register save eliminated.
|
||
693 .LVL76:
|
||
694 0000 82B0 sub sp, sp, #8
|
||
695 .LCFI9:
|
||
696 .cfi_def_cfa_offset 8
|
||
460:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** __IO uint32_t tmp = GPIO_LCKR_LCKK;
|
||
697 .loc 1 460 0
|
||
698 0002 4FF48033 mov r3, #65536
|
||
699 0006 0193 str r3, [sp, #4]
|
||
461:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c ****
|
||
462:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** /* Check the parameters */
|
||
463:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** assert_param(IS_GPIO_LOCK_INSTANCE(GPIOx));
|
||
464:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** assert_param(IS_GPIO_PIN(GPIO_Pin));
|
||
465:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c ****
|
||
466:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** /* Apply lock key write sequence */
|
||
467:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** tmp |= GPIO_Pin;
|
||
700 .loc 1 467 0
|
||
701 0008 019B ldr r3, [sp, #4]
|
||
702 000a 0B43 orrs r3, r3, r1
|
||
703 000c 0193 str r3, [sp, #4]
|
||
468:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** /* Set LCKx bit(s): LCKK='1' + LCK[15-0] */
|
||
469:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** GPIOx->LCKR = tmp;
|
||
704 .loc 1 469 0
|
||
705 000e 019B ldr r3, [sp, #4]
|
||
706 0010 C361 str r3, [r0, #28]
|
||
470:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** /* Reset LCKx bit(s): LCKK='0' + LCK[15-0] */
|
||
471:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** GPIOx->LCKR = GPIO_Pin;
|
||
707 .loc 1 471 0
|
||
708 0012 C161 str r1, [r0, #28]
|
||
472:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** /* Set LCKx bit(s): LCKK='1' + LCK[15-0] */
|
||
ARM GAS /tmp/ccgqPWsi.s page 23
|
||
|
||
|
||
473:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** GPIOx->LCKR = tmp;
|
||
709 .loc 1 473 0
|
||
710 0014 019B ldr r3, [sp, #4]
|
||
711 0016 C361 str r3, [r0, #28]
|
||
474:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** /* Read LCKK register. This read is mandatory to complete key lock sequence */
|
||
475:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** tmp = GPIOx->LCKR;
|
||
712 .loc 1 475 0
|
||
713 0018 C369 ldr r3, [r0, #28]
|
||
714 001a 0193 str r3, [sp, #4]
|
||
476:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c ****
|
||
477:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** /* read again in order to confirm lock is active */
|
||
478:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** if ((GPIOx->LCKR & GPIO_LCKR_LCKK) != 0x00u)
|
||
715 .loc 1 478 0
|
||
716 001c C069 ldr r0, [r0, #28]
|
||
717 .LVL77:
|
||
718 001e 80F48030 eor r0, r0, #65536
|
||
479:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** {
|
||
480:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** return HAL_OK;
|
||
481:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** }
|
||
482:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** else
|
||
483:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** {
|
||
484:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** return HAL_ERROR;
|
||
485:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** }
|
||
486:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** }
|
||
719 .loc 1 486 0
|
||
720 0022 C0F30040 ubfx r0, r0, #16, #1
|
||
721 0026 02B0 add sp, sp, #8
|
||
722 .LCFI10:
|
||
723 .cfi_def_cfa_offset 0
|
||
724 @ sp needed
|
||
725 0028 7047 bx lr
|
||
726 .cfi_endproc
|
||
727 .LFE334:
|
||
729 002a 00BF .section .text.HAL_GPIO_EXTI_Callback,"ax",%progbits
|
||
730 .align 1
|
||
731 .p2align 2,,3
|
||
732 .weak HAL_GPIO_EXTI_Callback
|
||
733 .syntax unified
|
||
734 .thumb
|
||
735 .thumb_func
|
||
736 .fpu fpv4-sp-d16
|
||
738 HAL_GPIO_EXTI_Callback:
|
||
739 .LFB336:
|
||
487:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c ****
|
||
488:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** /**
|
||
489:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** * @brief Handle EXTI interrupt request.
|
||
490:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** * @param GPIO_Pin Specifies the port pin connected to corresponding EXTI line.
|
||
491:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** * @retval None
|
||
492:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** */
|
||
493:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** void HAL_GPIO_EXTI_IRQHandler(uint16_t GPIO_Pin)
|
||
494:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** {
|
||
495:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** /* EXTI line interrupt detected */
|
||
496:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** if (__HAL_GPIO_EXTI_GET_IT(GPIO_Pin) != 0x00u)
|
||
497:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** {
|
||
498:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** __HAL_GPIO_EXTI_CLEAR_IT(GPIO_Pin);
|
||
499:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** HAL_GPIO_EXTI_Callback(GPIO_Pin);
|
||
500:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** }
|
||
ARM GAS /tmp/ccgqPWsi.s page 24
|
||
|
||
|
||
501:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** }
|
||
502:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c ****
|
||
503:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** /**
|
||
504:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** * @brief EXTI line detection callback.
|
||
505:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** * @param GPIO_Pin: Specifies the port pin connected to corresponding EXTI line.
|
||
506:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** * @retval None
|
||
507:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** */
|
||
508:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** __weak void HAL_GPIO_EXTI_Callback(uint16_t GPIO_Pin)
|
||
509:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** {
|
||
740 .loc 1 509 0
|
||
741 .cfi_startproc
|
||
742 @ args = 0, pretend = 0, frame = 0
|
||
743 @ frame_needed = 0, uses_anonymous_args = 0
|
||
744 @ link register save eliminated.
|
||
745 .LVL78:
|
||
510:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** /* Prevent unused argument(s) compilation warning */
|
||
511:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** UNUSED(GPIO_Pin);
|
||
512:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c ****
|
||
513:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** /* NOTE: This function should not be modified, when the callback is needed,
|
||
514:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** the HAL_GPIO_EXTI_Callback could be implemented in the user file
|
||
515:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** */
|
||
516:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** }
|
||
746 .loc 1 516 0
|
||
747 0000 7047 bx lr
|
||
748 .cfi_endproc
|
||
749 .LFE336:
|
||
751 0002 00BF .section .text.HAL_GPIO_EXTI_IRQHandler,"ax",%progbits
|
||
752 .align 1
|
||
753 .p2align 2,,3
|
||
754 .global HAL_GPIO_EXTI_IRQHandler
|
||
755 .syntax unified
|
||
756 .thumb
|
||
757 .thumb_func
|
||
758 .fpu fpv4-sp-d16
|
||
760 HAL_GPIO_EXTI_IRQHandler:
|
||
761 .LFB335:
|
||
494:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** /* EXTI line interrupt detected */
|
||
762 .loc 1 494 0
|
||
763 .cfi_startproc
|
||
764 @ args = 0, pretend = 0, frame = 0
|
||
765 @ frame_needed = 0, uses_anonymous_args = 0
|
||
766 .LVL79:
|
||
496:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** {
|
||
767 .loc 1 496 0
|
||
768 0000 044A ldr r2, .L89
|
||
769 0002 5169 ldr r1, [r2, #20]
|
||
770 0004 0142 tst r1, r0
|
||
771 0006 00D1 bne .L88
|
||
772 0008 7047 bx lr
|
||
773 .L88:
|
||
494:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** /* EXTI line interrupt detected */
|
||
774 .loc 1 494 0
|
||
775 000a 08B5 push {r3, lr}
|
||
776 .LCFI11:
|
||
777 .cfi_def_cfa_offset 8
|
||
778 .cfi_offset 3, -8
|
||
779 .cfi_offset 14, -4
|
||
ARM GAS /tmp/ccgqPWsi.s page 25
|
||
|
||
|
||
498:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** HAL_GPIO_EXTI_Callback(GPIO_Pin);
|
||
780 .loc 1 498 0
|
||
781 000c 5061 str r0, [r2, #20]
|
||
499:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c **** }
|
||
782 .loc 1 499 0
|
||
783 000e FFF7FEFF bl HAL_GPIO_EXTI_Callback
|
||
784 .LVL80:
|
||
501:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_gpio.c ****
|
||
785 .loc 1 501 0
|
||
786 0012 08BD pop {r3, pc}
|
||
787 .L90:
|
||
788 .align 2
|
||
789 .L89:
|
||
790 0014 00040140 .word 1073808384
|
||
791 .cfi_endproc
|
||
792 .LFE335:
|
||
794 .text
|
||
795 .Letext0:
|
||
796 .file 2 "/usr/include/newlib/machine/_default_types.h"
|
||
797 .file 3 "/usr/include/newlib/sys/_stdint.h"
|
||
798 .file 4 "Drivers/CMSIS/Include/core_cm4.h"
|
||
799 .file 5 "Drivers/CMSIS/Device/ST/STM32G4xx/Include/system_stm32g4xx.h"
|
||
800 .file 6 "Drivers/CMSIS/Device/ST/STM32G4xx/Include/stm32g431xx.h"
|
||
801 .file 7 "Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_def.h"
|
||
802 .file 8 "Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_gpio.h"
|
||
803 .file 9 "Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_flash.h"
|
||
804 .file 10 "Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_uart.h"
|
||
805 .file 11 "Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal.h"
|
||
ARM GAS /tmp/ccgqPWsi.s page 26
|
||
|
||
|
||
DEFINED SYMBOLS
|
||
*ABS*:0000000000000000 stm32g4xx_hal_gpio.c
|
||
/tmp/ccgqPWsi.s:16 .text.HAL_GPIO_Init:0000000000000000 $t
|
||
/tmp/ccgqPWsi.s:24 .text.HAL_GPIO_Init:0000000000000000 HAL_GPIO_Init
|
||
/tmp/ccgqPWsi.s:351 .text.HAL_GPIO_Init:000000000000019c $d
|
||
/tmp/ccgqPWsi.s:362 .text.HAL_GPIO_DeInit:0000000000000000 $t
|
||
/tmp/ccgqPWsi.s:370 .text.HAL_GPIO_DeInit:0000000000000000 HAL_GPIO_DeInit
|
||
/tmp/ccgqPWsi.s:577 .text.HAL_GPIO_DeInit:0000000000000124 $d
|
||
/tmp/ccgqPWsi.s:587 .text.HAL_GPIO_ReadPin:0000000000000000 $t
|
||
/tmp/ccgqPWsi.s:595 .text.HAL_GPIO_ReadPin:0000000000000000 HAL_GPIO_ReadPin
|
||
/tmp/ccgqPWsi.s:617 .text.HAL_GPIO_WritePin:0000000000000000 $t
|
||
/tmp/ccgqPWsi.s:625 .text.HAL_GPIO_WritePin:0000000000000000 HAL_GPIO_WritePin
|
||
/tmp/ccgqPWsi.s:647 .text.HAL_GPIO_TogglePin:0000000000000000 $t
|
||
/tmp/ccgqPWsi.s:655 .text.HAL_GPIO_TogglePin:0000000000000000 HAL_GPIO_TogglePin
|
||
/tmp/ccgqPWsi.s:678 .text.HAL_GPIO_LockPin:0000000000000000 $t
|
||
/tmp/ccgqPWsi.s:686 .text.HAL_GPIO_LockPin:0000000000000000 HAL_GPIO_LockPin
|
||
/tmp/ccgqPWsi.s:730 .text.HAL_GPIO_EXTI_Callback:0000000000000000 $t
|
||
/tmp/ccgqPWsi.s:738 .text.HAL_GPIO_EXTI_Callback:0000000000000000 HAL_GPIO_EXTI_Callback
|
||
/tmp/ccgqPWsi.s:752 .text.HAL_GPIO_EXTI_IRQHandler:0000000000000000 $t
|
||
/tmp/ccgqPWsi.s:760 .text.HAL_GPIO_EXTI_IRQHandler:0000000000000000 HAL_GPIO_EXTI_IRQHandler
|
||
/tmp/ccgqPWsi.s:790 .text.HAL_GPIO_EXTI_IRQHandler:0000000000000014 $d
|
||
|
||
NO UNDEFINED SYMBOLS
|