Files
bassofono/codice/build/stm32g4xx_hal_exti.lst

1657 lines
94 KiB
Plaintext
Raw Normal View History

2021-07-03 18:17:05 +02:00
ARM GAS /tmp/cciyAbUk.s page 1
2021-07-02 22:19:04 +02:00
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_exti.c"
12 .text
13 .Ltext0:
14 .cfi_sections .debug_frame
15 .section .text.HAL_EXTI_SetConfigLine,"ax",%progbits
16 .align 1
17 .p2align 2,,3
18 .global HAL_EXTI_SetConfigLine
19 .syntax unified
20 .thumb
21 .thumb_func
22 .fpu fpv4-sp-d16
24 HAL_EXTI_SetConfigLine:
25 .LFB329:
26 .file 1 "Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c"
1:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** /**
2:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** ******************************************************************************
3:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** * @file stm32g4xx_hal_exti.c
4:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** * @author MCD Application Team
5:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** * @brief EXTI HAL module driver.
6:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** * This file provides firmware functions to manage the following
7:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** * functionalities of the Extended Interrupts and events controller (EXTI) peripheral:
8:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** * functionalities of the General Purpose Input/Output (EXTI) peripheral:
9:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** * + Initialization and de-initialization functions
10:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** * + IO operation functions
11:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** *
12:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** @verbatim
13:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** ==============================================================================
14:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** ##### EXTI Peripheral features #####
15:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** ==============================================================================
16:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** [..]
17:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** (+) Each Exti line can be configured within this driver.
18:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
19:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** (+) Exti line can be configured in 3 different modes
20:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** (++) Interrupt
21:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** (++) Event
22:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** (++) Both of them
23:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
24:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** (+) Configurable Exti lines can be configured with 3 different triggers
25:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** (++) Rising
26:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** (++) Falling
27:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** (++) Both of them
28:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
29:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** (+) When set in interrupt mode, configurable Exti lines have two different
30:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** interrupt pending registers which allow to distinguish which transition
31:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** occurs:
32:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** (++) Rising edge pending interrupt
2021-07-03 18:17:05 +02:00
ARM GAS /tmp/cciyAbUk.s page 2
2021-07-02 22:19:04 +02:00
33:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** (++) Falling
34:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
35:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** (+) Exti lines 0 to 15 are linked to gpio pin number 0 to 15. Gpio port can
36:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** be selected through multiplexer.
37:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
38:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** ##### How to use this driver #####
39:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** ==============================================================================
40:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** [..]
41:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
42:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** (#) Configure the EXTI line using HAL_EXTI_SetConfigLine().
43:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** (++) Choose the interrupt line number by setting "Line" member from
44:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** EXTI_ConfigTypeDef structure.
45:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** (++) Configure the interrupt and/or event mode using "Mode" member from
46:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** EXTI_ConfigTypeDef structure.
47:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** (++) For configurable lines, configure rising and/or falling trigger
48:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** "Trigger" member from EXTI_ConfigTypeDef structure.
49:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** (++) For Exti lines linked to gpio, choose gpio port using "GPIOSel"
50:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** member from GPIO_InitTypeDef structure.
51:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
52:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** (#) Get current Exti configuration of a dedicated line using
53:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** HAL_EXTI_GetConfigLine().
54:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** (++) Provide exiting handle as parameter.
55:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** (++) Provide pointer on EXTI_ConfigTypeDef structure as second parameter.
56:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
57:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** (#) Clear Exti configuration of a dedicated line using HAL_EXTI_GetConfigLine().
58:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** (++) Provide exiting handle as parameter.
59:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
60:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** (#) Register callback to treat Exti interrupts using HAL_EXTI_RegisterCallback().
61:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** (++) Provide exiting handle as first parameter.
62:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** (++) Provide which callback will be registered using one value from
63:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** EXTI_CallbackIDTypeDef.
64:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** (++) Provide callback function pointer.
65:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
66:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** (#) Get interrupt pending bit using HAL_EXTI_GetPending().
67:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
68:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** (#) Clear interrupt pending bit using HAL_EXTI_ClearPending().
69:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
70:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** (#) Generate software interrupt using HAL_EXTI_GenerateSWI().
71:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
72:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** @endverbatim
73:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** ******************************************************************************
74:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** * @attention
75:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** *
76:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** * <h2><center>&copy; Copyright (c) 2019 STMicroelectronics.
77:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** * All rights reserved.</center></h2>
78:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** *
79:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** * This software component is licensed by ST under BSD 3-Clause license,
80:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** * the "License"; You may not use this file except in compliance with the
81:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** * License. You may obtain a copy of the License at:
82:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** * opensource.org/licenses/BSD-3-Clause
83:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** *
84:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** ******************************************************************************
85:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** */
86:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
87:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** /* Includes ------------------------------------------------------------------*/
88:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** #include "stm32g4xx_hal.h"
89:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
2021-07-03 18:17:05 +02:00
ARM GAS /tmp/cciyAbUk.s page 3
2021-07-02 22:19:04 +02:00
90:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** /** @addtogroup STM32G4xx_HAL_Driver
91:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** * @{
92:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** */
93:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
94:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** /** @addtogroup EXTI
95:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** * @{
96:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** */
97:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** /** MISRA C:2012 deviation rule has been granted for following rule:
98:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** * Rule-18.1_b - Medium: Array `EXTICR' 1st subscript interval [0,7] may be out
99:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** * of bounds [0,3] in following API :
100:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** * HAL_EXTI_SetConfigLine
101:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** * HAL_EXTI_GetConfigLine
102:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** * HAL_EXTI_ClearConfigLine
103:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** */
104:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
105:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** #ifdef HAL_EXTI_MODULE_ENABLED
106:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
107:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** /* Private typedef -----------------------------------------------------------*/
108:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** /* Private defines ------------------------------------------------------------*/
109:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** /** @defgroup EXTI_Private_Constants EXTI Private Constants
110:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** * @{
111:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** */
112:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** #define EXTI_MODE_OFFSET 0x08U /* 0x20: offset between MCU IMR/EMR registers *
113:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** #define EXTI_CONFIG_OFFSET 0x08U /* 0x20: offset between MCU Rising/Falling conf
114:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** /**
115:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** * @}
116:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** */
117:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
118:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** /* Private macros ------------------------------------------------------------*/
119:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** /* Private variables ---------------------------------------------------------*/
120:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** /* Private function prototypes -----------------------------------------------*/
121:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** /* Exported functions --------------------------------------------------------*/
122:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
123:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** /** @addtogroup EXTI_Exported_Functions
124:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** * @{
125:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** */
126:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
127:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** /** @addtogroup EXTI_Exported_Functions_Group1
128:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** * @brief Configuration functions
129:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** *
130:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** @verbatim
131:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** ===============================================================================
132:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** ##### Configuration functions #####
133:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** ===============================================================================
134:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
135:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** @endverbatim
136:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** * @{
137:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** */
138:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
139:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** /**
140:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** * @brief Set configuration of a dedicated Exti line.
141:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** * @param hexti Exti handle.
142:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** * @param pExtiConfig Pointer on EXTI configuration to be set.
143:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** * @retval HAL Status.
144:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** */
145:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** HAL_StatusTypeDef HAL_EXTI_SetConfigLine(EXTI_HandleTypeDef *hexti, EXTI_ConfigTypeDef *pExtiConfig
146:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** {
2021-07-03 18:17:05 +02:00
ARM GAS /tmp/cciyAbUk.s page 4
2021-07-02 22:19:04 +02:00
27 .loc 1 146 0
28 .cfi_startproc
29 @ args = 0, pretend = 0, frame = 0
30 @ frame_needed = 0, uses_anonymous_args = 0
31 @ link register save eliminated.
32 .LVL0:
147:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** __IO uint32_t *regaddr;
148:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** uint32_t regval;
149:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** uint32_t linepos;
150:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** uint32_t maskline;
151:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** uint32_t offset;
152:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
153:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** /* Check null pointer */
154:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** if ((hexti == NULL) || (pExtiConfig == NULL))
33 .loc 1 154 0
34 0000 0028 cmp r0, #0
35 0002 3CD0 beq .L15
36 .loc 1 154 0 is_stmt 0 discriminator 1
37 0004 0029 cmp r1, #0
38 0006 3AD0 beq .L15
155:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** {
156:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** return HAL_ERROR;
157:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** }
158:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
159:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** /* Check parameters */
160:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** assert_param(IS_EXTI_LINE(pExtiConfig->Line));
161:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** assert_param(IS_EXTI_MODE(pExtiConfig->Mode));
162:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
163:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** /* Assign line number to handle */
164:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** hexti->Line = pExtiConfig->Line;
39 .loc 1 164 0 is_stmt 1
40 0008 0A68 ldr r2, [r1]
146:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** __IO uint32_t *regaddr;
41 .loc 1 146 0
42 000a F0B4 push {r4, r5, r6, r7}
43 .LCFI0:
44 .cfi_def_cfa_offset 16
45 .cfi_offset 4, -16
46 .cfi_offset 5, -12
47 .cfi_offset 6, -8
48 .cfi_offset 7, -4
165:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
166:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** /* Compute line register offset */
167:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** offset = ((pExtiConfig->Line & EXTI_REG_MASK) >> EXTI_REG_SHIFT);
49 .loc 1 167 0
50 000c C2F30043 ubfx r3, r2, #16, #1
164:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
51 .loc 1 164 0
52 0010 0260 str r2, [r0]
53 .LVL1:
168:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** /* Compute line position */
169:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** linepos = (pExtiConfig->Line & EXTI_PIN_MASK);
54 .loc 1 169 0
55 0012 02F01F04 and r4, r2, #31
56 .LVL2:
170:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** /* Compute line mask */
171:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** maskline = (1uL << linepos);
2021-07-03 18:17:05 +02:00
ARM GAS /tmp/cciyAbUk.s page 5
2021-07-02 22:19:04 +02:00
57 .loc 1 171 0
58 0016 0120 movs r0, #1
59 .LVL3:
172:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
173:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** /* Configure triggers for configurable lines */
174:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** if ((pExtiConfig->Line & EXTI_CONFIG) != 0x00u)
60 .loc 1 174 0
61 0018 9501 lsls r5, r2, #6
171:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
62 .loc 1 171 0
63 001a 00FA04F0 lsl r0, r0, r4
64 .LVL4:
65 001e 4FEA4313 lsl r3, r3, #5
66 .loc 1 174 0
67 0022 15D5 bpl .L4
175:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** {
176:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** assert_param(IS_EXTI_TRIGGER(pExtiConfig->Trigger));
177:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
178:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** /* Configure rising trigger */
179:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** regaddr = (&EXTI->RTSR1 + (EXTI_CONFIG_OFFSET * offset));
68 .loc 1 179 0
69 0024 214E ldr r6, .L22
70 .LVL5:
180:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** regval = *regaddr;
181:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
182:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** /* Mask or set line */
183:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** if ((pExtiConfig->Trigger & EXTI_TRIGGER_RISING) != 0x00u)
71 .loc 1 183 0
72 0026 8F68 ldr r7, [r1, #8]
180:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** regval = *regaddr;
73 .loc 1 180 0
74 0028 9D59 ldr r5, [r3, r6]
75 .LVL6:
76 .loc 1 183 0
77 002a FF07 lsls r7, r7, #31
184:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** {
185:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** regval |= maskline;
78 .loc 1 185 0
79 002c 4CBF ite mi
80 002e 0543 orrmi r5, r5, r0
81 .LVL7:
186:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** }
187:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** else
188:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** {
189:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** regval &= ~maskline;
82 .loc 1 189 0
83 0030 8543 bicpl r5, r5, r0
84 .LVL8:
190:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** }
191:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
192:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** /* Store rising trigger mode */
193:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** *regaddr = regval;
85 .loc 1 193 0
86 0032 9D51 str r5, [r3, r6]
194:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
195:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** /* Configure falling trigger */
196:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** regaddr = (&EXTI->FTSR1 + (EXTI_CONFIG_OFFSET * offset));
2021-07-03 18:17:05 +02:00
ARM GAS /tmp/cciyAbUk.s page 6
2021-07-02 22:19:04 +02:00
87 .loc 1 196 0
88 0034 1E4E ldr r6, .L22+4
89 .LVL9:
197:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** regval = *regaddr;
198:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
199:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** /* Mask or set line */
200:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** if ((pExtiConfig->Trigger & EXTI_TRIGGER_FALLING) != 0x00u)
90 .loc 1 200 0
91 0036 8F68 ldr r7, [r1, #8]
197:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** regval = *regaddr;
92 .loc 1 197 0
93 0038 9D59 ldr r5, [r3, r6]
94 .LVL10:
95 .loc 1 200 0
96 003a BF07 lsls r7, r7, #30
201:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** {
202:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** regval |= maskline;
97 .loc 1 202 0
98 003c 4CBF ite mi
99 003e 0543 orrmi r5, r5, r0
100 .LVL11:
203:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** }
204:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** else
205:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** {
206:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** regval &= ~maskline;
101 .loc 1 206 0
102 0040 8543 bicpl r5, r5, r0
103 .LVL12:
207:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** }
208:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
209:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** /* Store falling trigger mode */
210:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** *regaddr = regval;
104 .loc 1 210 0
105 0042 9D51 str r5, [r3, r6]
211:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
212:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** /* Configure gpio port selection in case of gpio exti line */
213:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** if ((pExtiConfig->Line & EXTI_GPIO) == EXTI_GPIO)
106 .loc 1 213 0
107 0044 0D68 ldr r5, [r1]
108 .LVL13:
109 0046 05F0C065 and r5, r5, #100663296
110 004a B5F1C06F cmp r5, #100663296
111 004e 18D0 beq .L21
112 .LVL14:
113 .L4:
214:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** {
215:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** assert_param(IS_EXTI_GPIO_PORT(pExtiConfig->GPIOSel));
216:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** assert_param(IS_EXTI_GPIO_PIN(linepos));
217:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
218:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** regval = SYSCFG->EXTICR[linepos >> 2u];
219:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** regval &= ~(SYSCFG_EXTICR1_EXTI0 << (SYSCFG_EXTICR1_EXTI1_Pos * (linepos & 0x03u)));
220:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** regval |= (pExtiConfig->GPIOSel << (SYSCFG_EXTICR1_EXTI1_Pos * (linepos & 0x03u)));
221:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** SYSCFG->EXTICR[linepos >> 2u] = regval;
222:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** }
223:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** }
224:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
225:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** /* Configure interrupt mode : read current mode */
2021-07-03 18:17:05 +02:00
ARM GAS /tmp/cciyAbUk.s page 7
2021-07-02 22:19:04 +02:00
226:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** regaddr = (&EXTI->IMR1 + (EXTI_MODE_OFFSET * offset));
114 .loc 1 226 0
115 0050 03F18042 add r2, r3, #1073741824
116 0054 02F58232 add r2, r2, #66560
117 .LVL15:
227:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** regval = *regaddr;
228:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
229:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** /* Mask or set line */
230:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** if ((pExtiConfig->Mode & EXTI_MODE_INTERRUPT) != 0x00u)
118 .loc 1 230 0
119 0058 4D68 ldr r5, [r1, #4]
227:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** regval = *regaddr;
120 .loc 1 227 0
121 005a 1468 ldr r4, [r2]
122 .LVL16:
123 .loc 1 230 0
124 005c ED07 lsls r5, r5, #31
231:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** {
232:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** regval |= maskline;
125 .loc 1 232 0
126 005e 4CBF ite mi
127 0060 0443 orrmi r4, r4, r0
128 .LVL17:
233:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** }
234:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** else
235:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** {
236:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** regval &= ~maskline;
129 .loc 1 236 0
130 0062 8443 bicpl r4, r4, r0
131 .LVL18:
237:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** }
238:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
239:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** /* Store interrupt mode */
240:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** *regaddr = regval;
132 .loc 1 240 0
133 0064 1460 str r4, [r2]
241:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
242:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** /* Configure event mode : read current mode */
243:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** regaddr = (&EXTI->EMR1 + (EXTI_MODE_OFFSET * offset));
244:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** regval = *regaddr;
245:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
246:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** /* Mask or set line */
247:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** if ((pExtiConfig->Mode & EXTI_MODE_EVENT) != 0x00u)
134 .loc 1 247 0
135 0066 4C68 ldr r4, [r1, #4]
136 .LVL19:
243:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** regval = *regaddr;
137 .loc 1 243 0
138 0068 1249 ldr r1, .L22+8
139 .LVL20:
244:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
140 .loc 1 244 0
141 006a 5A58 ldr r2, [r3, r1]
142 .LVL21:
143 .loc 1 247 0
144 006c A407 lsls r4, r4, #30
248:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** {
2021-07-03 18:17:05 +02:00
ARM GAS /tmp/cciyAbUk.s page 8
2021-07-02 22:19:04 +02:00
249:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** regval |= maskline;
145 .loc 1 249 0
146 006e 4CBF ite mi
147 0070 1043 orrmi r0, r0, r2
148 .LVL22:
250:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** }
251:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** else
252:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** {
253:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** regval &= ~maskline;
149 .loc 1 253 0
150 0072 22EA0000 bicpl r0, r2, r0
151 .LVL23:
254:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** }
255:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
256:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** /* Store event mode */
257:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** *regaddr = regval;
152 .loc 1 257 0
153 0076 5850 str r0, [r3, r1]
258:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
259:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** return HAL_OK;
260:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** }
154 .loc 1 260 0
155 0078 F0BC pop {r4, r5, r6, r7}
156 .LCFI1:
157 .cfi_restore 7
158 .cfi_restore 6
159 .cfi_restore 5
160 .cfi_restore 4
161 .cfi_def_cfa_offset 0
259:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** }
162 .loc 1 259 0
163 007a 0020 movs r0, #0
164 .LVL24:
165 .loc 1 260 0
166 007c 7047 bx lr
167 .LVL25:
168 .L15:
156:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** }
169 .loc 1 156 0
170 007e 0120 movs r0, #1
171 .LVL26:
172 .loc 1 260 0
173 0080 7047 bx lr
174 .LVL27:
175 .L21:
176 .LCFI2:
177 .cfi_def_cfa_offset 16
178 .cfi_offset 4, -16
179 .cfi_offset 5, -12
180 .cfi_offset 6, -8
181 .cfi_offset 7, -4
182 0082 04F01C04 and r4, r4, #28
183 .LVL28:
184 0086 04F18044 add r4, r4, #1073741824
185 008a 04F58034 add r4, r4, #65536
219:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** regval |= (pExtiConfig->GPIOSel << (SYSCFG_EXTICR1_EXTI1_Pos * (linepos & 0x03u)));
186 .loc 1 219 0
2021-07-03 18:17:05 +02:00
ARM GAS /tmp/cciyAbUk.s page 9
2021-07-02 22:19:04 +02:00
187 008e 02F00302 and r2, r2, #3
188 .LVL29:
189 0092 9200 lsls r2, r2, #2
218:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** regval &= ~(SYSCFG_EXTICR1_EXTI0 << (SYSCFG_EXTICR1_EXTI1_Pos * (linepos & 0x03u)));
190 .loc 1 218 0
191 0094 A668 ldr r6, [r4, #8]
192 .LVL30:
220:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** SYSCFG->EXTICR[linepos >> 2u] = regval;
193 .loc 1 220 0
194 0096 CD68 ldr r5, [r1, #12]
219:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** regval |= (pExtiConfig->GPIOSel << (SYSCFG_EXTICR1_EXTI1_Pos * (linepos & 0x03u)));
195 .loc 1 219 0
196 0098 0727 movs r7, #7
197 009a 9740 lsls r7, r7, r2
198 009c 26EA0706 bic r6, r6, r7
199 .LVL31:
220:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** SYSCFG->EXTICR[linepos >> 2u] = regval;
200 .loc 1 220 0
201 00a0 05FA02F2 lsl r2, r5, r2
202 00a4 3243 orrs r2, r2, r6
203 .LVL32:
221:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** }
204 .loc 1 221 0
205 00a6 A260 str r2, [r4, #8]
206 00a8 D2E7 b .L4
207 .L23:
208 00aa 00BF .align 2
209 .L22:
210 00ac 08040140 .word 1073808392
211 00b0 0C040140 .word 1073808396
212 00b4 04040140 .word 1073808388
213 .cfi_endproc
214 .LFE329:
216 .section .text.HAL_EXTI_GetConfigLine,"ax",%progbits
217 .align 1
218 .p2align 2,,3
219 .global HAL_EXTI_GetConfigLine
220 .syntax unified
221 .thumb
222 .thumb_func
223 .fpu fpv4-sp-d16
225 HAL_EXTI_GetConfigLine:
226 .LFB330:
261:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
262:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
263:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** /**
264:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** * @brief Get configuration of a dedicated Exti line.
265:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** * @param hexti Exti handle.
266:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** * @param pExtiConfig Pointer on structure to store Exti configuration.
267:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** * @retval HAL Status.
268:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** */
269:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** HAL_StatusTypeDef HAL_EXTI_GetConfigLine(EXTI_HandleTypeDef *hexti, EXTI_ConfigTypeDef *pExtiConfig
270:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** {
227 .loc 1 270 0
228 .cfi_startproc
229 @ args = 0, pretend = 0, frame = 0
230 @ frame_needed = 0, uses_anonymous_args = 0
2021-07-03 18:17:05 +02:00
ARM GAS /tmp/cciyAbUk.s page 10
2021-07-02 22:19:04 +02:00
231 @ link register save eliminated.
232 .LVL33:
271:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** __IO uint32_t *regaddr;
272:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** uint32_t regval;
273:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** uint32_t linepos;
274:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** uint32_t maskline;
275:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** uint32_t offset;
276:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
277:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** /* Check null pointer */
278:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** if ((hexti == NULL) || (pExtiConfig == NULL))
233 .loc 1 278 0
234 0000 0028 cmp r0, #0
235 0002 3BD0 beq .L31
236 .loc 1 278 0 is_stmt 0 discriminator 1
237 0004 0029 cmp r1, #0
238 0006 39D0 beq .L31
279:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** {
280:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** return HAL_ERROR;
281:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** }
282:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
283:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** /* Check the parameter */
284:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** assert_param(IS_EXTI_LINE(hexti->Line));
285:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
286:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** /* Store handle line number to configuration structure */
287:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** pExtiConfig->Line = hexti->Line;
239 .loc 1 287 0 is_stmt 1
240 0008 0368 ldr r3, [r0]
241 000a 0B60 str r3, [r1]
242 .LVL34:
270:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** __IO uint32_t *regaddr;
243 .loc 1 270 0
244 000c 70B4 push {r4, r5, r6}
245 .LCFI3:
246 .cfi_def_cfa_offset 12
247 .cfi_offset 4, -12
248 .cfi_offset 5, -8
249 .cfi_offset 6, -4
288:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
289:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** /* Compute line register offset and line mask */
290:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** offset = ((pExtiConfig->Line & EXTI_REG_MASK) >> EXTI_REG_SHIFT);
250 .loc 1 290 0
251 000e C3F30045 ubfx r5, r3, #16, #1
291:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** /* Compute line position */
292:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** linepos = (pExtiConfig->Line & EXTI_PIN_MASK);
293:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** /* Compute mask */
294:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** maskline = (1uL << linepos);
295:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
296:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** /* 1] Get core mode : interrupt */
297:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** regaddr = (&EXTI->IMR1 + (EXTI_MODE_OFFSET * offset));
252 .loc 1 297 0
253 0012 6D01 lsls r5, r5, #5
254 0014 05F18042 add r2, r5, #1073741824
255 0018 02F58232 add r2, r2, #66560
292:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** /* Compute mask */
256 .loc 1 292 0
257 001c 03F01F06 and r6, r3, #31
258 .LVL35:
2021-07-03 18:17:05 +02:00
ARM GAS /tmp/cciyAbUk.s page 11
2021-07-02 22:19:04 +02:00
298:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** regval = *regaddr;
259 .loc 1 298 0
260 0020 1068 ldr r0, [r2]
261 .LVL36:
299:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
300:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** /* Check if selected line is enable */
301:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** if ((regval & maskline) != 0x00u)
302:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** {
303:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** pExtiConfig->Mode = EXTI_MODE_INTERRUPT;
304:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** }
305:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** else
306:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** {
307:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** pExtiConfig->Mode = EXTI_MODE_NONE;
308:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** }
309:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
310:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** /* Get event mode */
311:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** regaddr = (&EXTI->EMR1 + (EXTI_MODE_OFFSET * offset));
262 .loc 1 311 0
263 0022 1E4C ldr r4, .L44
294:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
264 .loc 1 294 0
265 0024 0122 movs r2, #1
266 0026 B240 lsls r2, r2, r6
267 .LVL37:
301:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** {
268 .loc 1 301 0
269 0028 0242 tst r2, r0
270 002a 14BF ite ne
271 002c 0120 movne r0, #1
272 .LVL38:
273 002e 0020 moveq r0, #0
274 0030 4860 str r0, [r1, #4]
312:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** regval = *regaddr;
275 .loc 1 312 0
276 0032 2C59 ldr r4, [r5, r4]
277 .LVL39:
313:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
314:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** /* Check if selected line is enable */
315:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** if ((regval & maskline) != 0x00u)
278 .loc 1 315 0
279 0034 2242 tst r2, r4
316:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** {
317:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** pExtiConfig->Mode |= EXTI_MODE_EVENT;
280 .loc 1 317 0
281 0036 1CBF itt ne
282 0038 40F00200 orrne r0, r0, #2
283 003c 4860 strne r0, [r1, #4]
318:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** }
319:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
320:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** /* 2] Get trigger for configurable lines : rising */
321:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** if ((pExtiConfig->Line & EXTI_CONFIG) != 0x00u)
284 .loc 1 321 0
285 003e 13F00070 ands r0, r3, #33554432
286 0042 03D1 bne .L42
322:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** {
323:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** regaddr = (&EXTI->RTSR1 + (EXTI_CONFIG_OFFSET * offset));
324:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** regval = *regaddr;
2021-07-03 18:17:05 +02:00
ARM GAS /tmp/cciyAbUk.s page 12
2021-07-02 22:19:04 +02:00
325:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
326:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** /* Check if configuration of selected line is enable */
327:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** if ((regval & maskline) != 0x00u)
328:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** {
329:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** pExtiConfig->Trigger = EXTI_TRIGGER_RISING;
330:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** }
331:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** else
332:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** {
333:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** pExtiConfig->Trigger = EXTI_TRIGGER_NONE;
334:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** }
335:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
336:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** /* Get falling configuration */
337:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** regaddr = (&EXTI->FTSR1 + (EXTI_CONFIG_OFFSET * offset));
338:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** regval = *regaddr;
339:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
340:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** /* Check if configuration of selected line is enable */
341:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** if ((regval & maskline) != 0x00u)
342:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** {
343:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** pExtiConfig->Trigger |= EXTI_TRIGGER_FALLING;
344:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** }
345:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
346:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** /* Get Gpio port selection for gpio lines */
347:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** if ((pExtiConfig->Line & EXTI_GPIO) == EXTI_GPIO)
348:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** {
349:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** assert_param(IS_EXTI_GPIO_PIN(linepos));
350:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
351:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** regval = SYSCFG->EXTICR[linepos >> 2u];
352:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** pExtiConfig->GPIOSel = ((regval >> (SYSCFG_EXTICR1_EXTI1_Pos * ((linepos & 0x03u)))));
353:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** }
354:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** else
355:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** {
356:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** pExtiConfig->GPIOSel = 0x00u;
357:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** }
358:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** }
359:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** else
360:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** {
361:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** pExtiConfig->Trigger = EXTI_TRIGGER_NONE;
362:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** pExtiConfig->GPIOSel = 0x00u;
287 .loc 1 362 0
288 0044 C1E90200 strd r0, r0, [r1, #8]
289 .LVL40:
290 .L25:
363:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** }
364:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
365:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** return HAL_OK;
366:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** }
291 .loc 1 366 0
292 0048 70BC pop {r4, r5, r6}
293 .LCFI4:
294 .cfi_remember_state
295 .cfi_restore 6
296 .cfi_restore 5
297 .cfi_restore 4
298 .cfi_def_cfa_offset 0
299 .LVL41:
300 004a 7047 bx lr
301 .LVL42:
2021-07-03 18:17:05 +02:00
ARM GAS /tmp/cciyAbUk.s page 13
2021-07-02 22:19:04 +02:00
302 .L42:
303 .LCFI5:
304 .cfi_restore_state
323:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** regval = *regaddr;
305 .loc 1 323 0
306 004c 1448 ldr r0, .L44+4
307 .LVL43:
337:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** regval = *regaddr;
308 .loc 1 337 0
309 004e 154C ldr r4, .L44+8
310 .LVL44:
324:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
311 .loc 1 324 0
312 0050 2858 ldr r0, [r5, r0]
313 .LVL45:
327:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** {
314 .loc 1 327 0
315 0052 0242 tst r2, r0
316 0054 14BF ite ne
317 0056 0120 movne r0, #1
318 .LVL46:
319 0058 0020 moveq r0, #0
320 005a 8860 str r0, [r1, #8]
338:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
321 .loc 1 338 0
322 005c 2C59 ldr r4, [r5, r4]
323 .LVL47:
341:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** {
324 .loc 1 341 0
325 005e 2242 tst r2, r4
343:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** }
326 .loc 1 343 0
327 0060 18BF it ne
328 0062 40F00200 orrne r0, r0, #2
347:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** {
329 .loc 1 347 0
330 0066 03F0C062 and r2, r3, #100663296
331 .LVL48:
343:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** }
332 .loc 1 343 0
333 006a 18BF it ne
334 006c 8860 strne r0, [r1, #8]
347:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** {
335 .loc 1 347 0
336 006e B2F1C06F cmp r2, #100663296
337 0072 05D0 beq .L43
356:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** }
338 .loc 1 356 0
339 0074 0020 movs r0, #0
340 0076 C860 str r0, [r1, #12]
341 .loc 1 366 0
342 0078 70BC pop {r4, r5, r6}
343 .LCFI6:
344 .cfi_restore 6
345 .cfi_restore 5
346 .cfi_restore 4
347 .cfi_def_cfa_offset 0
2021-07-03 18:17:05 +02:00
ARM GAS /tmp/cciyAbUk.s page 14
2021-07-02 22:19:04 +02:00
348 .LVL49:
349 007a 7047 bx lr
350 .LVL50:
351 .L31:
280:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** }
352 .loc 1 280 0
353 007c 0120 movs r0, #1
354 .LVL51:
355 .loc 1 366 0
356 007e 7047 bx lr
357 .LVL52:
358 .L43:
359 .LCFI7:
360 .cfi_def_cfa_offset 12
361 .cfi_offset 4, -12
362 .cfi_offset 5, -8
363 .cfi_offset 6, -4
351:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** pExtiConfig->GPIOSel = ((regval >> (SYSCFG_EXTICR1_EXTI1_Pos * ((linepos & 0x03u)))));
364 .loc 1 351 0
365 0080 B208 lsrs r2, r6, #2
366 0082 0948 ldr r0, .L44+12
367 0084 0232 adds r2, r2, #2
352:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** }
368 .loc 1 352 0
369 0086 03F00303 and r3, r3, #3
370 .LVL53:
351:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** pExtiConfig->GPIOSel = ((regval >> (SYSCFG_EXTICR1_EXTI1_Pos * ((linepos & 0x03u)))));
371 .loc 1 351 0
372 008a 50F82220 ldr r2, [r0, r2, lsl #2]
373 .LVL54:
352:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** }
374 .loc 1 352 0
375 008e 9B00 lsls r3, r3, #2
376 0090 22FA03F3 lsr r3, r2, r3
377 0094 CB60 str r3, [r1, #12]
365:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** }
378 .loc 1 365 0
379 0096 0020 movs r0, #0
380 0098 D6E7 b .L25
381 .L45:
382 009a 00BF .align 2
383 .L44:
384 009c 04040140 .word 1073808388
385 00a0 08040140 .word 1073808392
386 00a4 0C040140 .word 1073808396
387 00a8 00000140 .word 1073807360
388 .cfi_endproc
389 .LFE330:
391 .section .text.HAL_EXTI_ClearConfigLine,"ax",%progbits
392 .align 1
393 .p2align 2,,3
394 .global HAL_EXTI_ClearConfigLine
395 .syntax unified
396 .thumb
397 .thumb_func
398 .fpu fpv4-sp-d16
400 HAL_EXTI_ClearConfigLine:
2021-07-03 18:17:05 +02:00
ARM GAS /tmp/cciyAbUk.s page 15
2021-07-02 22:19:04 +02:00
401 .LFB331:
367:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
368:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
369:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** /**
370:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** * @brief Clear whole configuration of a dedicated Exti line.
371:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** * @param hexti Exti handle.
372:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** * @retval HAL Status.
373:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** */
374:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** HAL_StatusTypeDef HAL_EXTI_ClearConfigLine(EXTI_HandleTypeDef *hexti)
375:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** {
402 .loc 1 375 0
403 .cfi_startproc
404 @ args = 0, pretend = 0, frame = 0
405 @ frame_needed = 0, uses_anonymous_args = 0
406 @ link register save eliminated.
407 .LVL55:
376:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** __IO uint32_t *regaddr;
377:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** uint32_t regval;
378:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** uint32_t linepos;
379:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** uint32_t maskline;
380:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** uint32_t offset;
381:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
382:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** /* Check null pointer */
383:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** if (hexti == NULL)
408 .loc 1 383 0
409 0000 40B3 cbz r0, .L50
375:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** __IO uint32_t *regaddr;
410 .loc 1 375 0
411 0002 F0B4 push {r4, r5, r6, r7}
412 .LCFI8:
413 .cfi_def_cfa_offset 16
414 .cfi_offset 4, -16
415 .cfi_offset 5, -12
416 .cfi_offset 6, -8
417 .cfi_offset 7, -4
384:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** {
385:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** return HAL_ERROR;
386:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** }
387:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
388:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** /* Check the parameter */
389:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** assert_param(IS_EXTI_LINE(hexti->Line));
390:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
391:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** /* compute line register offset and line mask */
392:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** offset = ((hexti->Line & EXTI_REG_MASK) >> EXTI_REG_SHIFT);
418 .loc 1 392 0
419 0004 0568 ldr r5, [r0]
420 .LVL56:
393:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** /* compute line position */
394:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** linepos = (hexti->Line & EXTI_PIN_MASK);
395:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** /* compute line mask */
396:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** maskline = (1uL << linepos);
397:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
398:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** /* 1] Clear interrupt mode */
399:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** regaddr = (&EXTI->IMR1 + (EXTI_MODE_OFFSET * offset));
400:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** regval = (*regaddr & ~maskline);
401:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** *regaddr = regval;
402:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
2021-07-03 18:17:05 +02:00
ARM GAS /tmp/cciyAbUk.s page 16
2021-07-02 22:19:04 +02:00
403:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** /* 2] Clear event mode */
404:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** regaddr = (&EXTI->EMR1 + (EXTI_MODE_OFFSET * offset));
421 .loc 1 404 0
422 0006 1E4F ldr r7, .L57
392:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** /* compute line position */
423 .loc 1 392 0
424 0008 C5F30044 ubfx r4, r5, #16, #1
399:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** regval = (*regaddr & ~maskline);
425 .loc 1 399 0
426 000c 6401 lsls r4, r4, #5
427 000e 04F18042 add r2, r4, #1073741824
428 0012 02F58232 add r2, r2, #66560
394:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** /* compute line mask */
429 .loc 1 394 0
430 0016 05F01F06 and r6, r5, #31
431 .LVL57:
396:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
432 .loc 1 396 0
433 001a 0123 movs r3, #1
400:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** *regaddr = regval;
434 .loc 1 400 0
435 001c 1168 ldr r1, [r2]
396:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
436 .loc 1 396 0
437 001e B340 lsls r3, r3, r6
438 .LVL58:
400:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** *regaddr = regval;
439 .loc 1 400 0
440 0020 DB43 mvns r3, r3
441 .LVL59:
442 0022 1940 ands r1, r1, r3
443 .LVL60:
401:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
444 .loc 1 401 0
445 0024 1160 str r1, [r2]
405:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** regval = (*regaddr & ~maskline);
446 .loc 1 405 0
447 0026 E259 ldr r2, [r4, r7]
448 0028 1A40 ands r2, r2, r3
449 .LVL61:
406:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** *regaddr = regval;
450 .loc 1 406 0
451 002a E251 str r2, [r4, r7]
407:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
408:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** /* 3] Clear triggers in case of configurable lines */
409:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** if ((hexti->Line & EXTI_CONFIG) != 0x00u)
452 .loc 1 409 0
453 002c 0268 ldr r2, [r0]
454 .LVL62:
455 002e 9201 lsls r2, r2, #6
456 0030 0DD5 bpl .L55
410:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** {
411:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** regaddr = (&EXTI->RTSR1 + (EXTI_CONFIG_OFFSET * offset));
457 .loc 1 411 0
458 0032 144F ldr r7, .L57+4
459 .LVL63:
412:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** regval = (*regaddr & ~maskline);
2021-07-03 18:17:05 +02:00
ARM GAS /tmp/cciyAbUk.s page 17
2021-07-02 22:19:04 +02:00
413:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** *regaddr = regval;
414:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
415:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** regaddr = (&EXTI->FTSR1 + (EXTI_CONFIG_OFFSET * offset));
460 .loc 1 415 0
461 0034 1449 ldr r1, .L57+8
412:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** regval = (*regaddr & ~maskline);
462 .loc 1 412 0
463 0036 E259 ldr r2, [r4, r7]
464 0038 1A40 ands r2, r2, r3
465 .LVL64:
413:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
466 .loc 1 413 0
467 003a E251 str r2, [r4, r7]
416:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** regval = (*regaddr & ~maskline);
468 .loc 1 416 0
469 003c 6258 ldr r2, [r4, r1]
470 .LVL65:
471 003e 1340 ands r3, r3, r2
472 .LVL66:
417:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** *regaddr = regval;
473 .loc 1 417 0
474 0040 6350 str r3, [r4, r1]
418:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
419:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** /* Get Gpio port selection for gpio lines */
420:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** if ((hexti->Line & EXTI_GPIO) == EXTI_GPIO)
475 .loc 1 420 0
476 0042 0368 ldr r3, [r0]
477 .LVL67:
478 0044 03F0C063 and r3, r3, #100663296
479 0048 B3F1C06F cmp r3, #100663296
480 004c 04D0 beq .L56
481 .LVL68:
482 .L55:
421:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** {
422:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** assert_param(IS_EXTI_GPIO_PIN(linepos));
423:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
424:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** regval = SYSCFG->EXTICR[linepos >> 2u];
425:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** regval &= ~(SYSCFG_EXTICR1_EXTI0 << (SYSCFG_EXTICR1_EXTI1_Pos * (linepos & 0x03u)));
426:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** SYSCFG->EXTICR[linepos >> 2u] = regval;
427:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** }
428:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** }
429:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
430:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** return HAL_OK;
483 .loc 1 430 0
484 004e 0020 movs r0, #0
485 .LVL69:
431:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** }
486 .loc 1 431 0
487 0050 F0BC pop {r4, r5, r6, r7}
488 .LCFI9:
489 .cfi_restore 7
490 .cfi_restore 6
491 .cfi_restore 5
492 .cfi_restore 4
493 .cfi_def_cfa_offset 0
494 .LVL70:
495 0052 7047 bx lr
2021-07-03 18:17:05 +02:00
ARM GAS /tmp/cciyAbUk.s page 18
2021-07-02 22:19:04 +02:00
496 .LVL71:
497 .L50:
385:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** }
498 .loc 1 385 0
499 0054 0120 movs r0, #1
500 .LVL72:
501 .loc 1 431 0
502 0056 7047 bx lr
503 .LVL73:
504 .L56:
505 .LCFI10:
506 .cfi_def_cfa_offset 16
507 .cfi_offset 4, -16
508 .cfi_offset 5, -12
509 .cfi_offset 6, -8
510 .cfi_offset 7, -4
511 0058 06F01C06 and r6, r6, #28
512 .LVL74:
513 005c 06F18046 add r6, r6, #1073741824
514 0060 06F58036 add r6, r6, #65536
425:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** SYSCFG->EXTICR[linepos >> 2u] = regval;
515 .loc 1 425 0
516 0064 05F00303 and r3, r5, #3
424:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** regval &= ~(SYSCFG_EXTICR1_EXTI0 << (SYSCFG_EXTICR1_EXTI1_Pos * (linepos & 0x03u)));
517 .loc 1 424 0
518 0068 B268 ldr r2, [r6, #8]
519 .LVL75:
425:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** SYSCFG->EXTICR[linepos >> 2u] = regval;
520 .loc 1 425 0
521 006a 9B00 lsls r3, r3, #2
522 006c 0721 movs r1, #7
523 .LVL76:
524 006e 01FA03F3 lsl r3, r1, r3
525 0072 22EA0303 bic r3, r2, r3
526 .LVL77:
426:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** }
527 .loc 1 426 0
528 0076 B360 str r3, [r6, #8]
430:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** }
529 .loc 1 430 0
530 0078 0020 movs r0, #0
531 .LVL78:
532 .loc 1 431 0
533 007a F0BC pop {r4, r5, r6, r7}
534 .LCFI11:
535 .cfi_restore 7
536 .cfi_restore 6
537 .cfi_restore 5
538 .cfi_restore 4
539 .cfi_def_cfa_offset 0
540 .LVL79:
541 007c 7047 bx lr
542 .L58:
543 007e 00BF .align 2
544 .L57:
545 0080 04040140 .word 1073808388
546 0084 08040140 .word 1073808392
2021-07-03 18:17:05 +02:00
ARM GAS /tmp/cciyAbUk.s page 19
2021-07-02 22:19:04 +02:00
547 0088 0C040140 .word 1073808396
548 .cfi_endproc
549 .LFE331:
551 .section .text.HAL_EXTI_RegisterCallback,"ax",%progbits
552 .align 1
553 .p2align 2,,3
554 .global HAL_EXTI_RegisterCallback
555 .syntax unified
556 .thumb
557 .thumb_func
558 .fpu fpv4-sp-d16
560 HAL_EXTI_RegisterCallback:
561 .LFB332:
432:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
433:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
434:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** /**
435:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** * @brief Register callback for a dedicated Exti line.
436:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** * @param hexti Exti handle.
437:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** * @param CallbackID User callback identifier.
438:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** * This parameter can be one of @arg @ref EXTI_CallbackIDTypeDef values.
439:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** * @param pPendingCbfn function pointer to be stored as callback.
440:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** * @retval HAL Status.
441:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** */
442:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** HAL_StatusTypeDef HAL_EXTI_RegisterCallback(EXTI_HandleTypeDef *hexti, EXTI_CallbackIDTypeDef Callb
443:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** {
562 .loc 1 443 0
563 .cfi_startproc
564 @ args = 0, pretend = 0, frame = 0
565 @ frame_needed = 0, uses_anonymous_args = 0
566 @ link register save eliminated.
567 .LVL80:
444:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** HAL_StatusTypeDef status = HAL_OK;
445:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
446:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** /* Check the parameters */
447:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** assert_param(IS_EXTI_CB(CallbackID));
448:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
449:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** switch (CallbackID)
568 .loc 1 449 0
569 0000 19B1 cbz r1, .L64
450:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** {
451:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** /* set common callback */
452:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** case HAL_EXTI_COMMON_CB_ID:
453:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** hexti->PendingCallback = pPendingCbfn;
454:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** break;
455:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
456:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** default:
457:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** hexti->PendingCallback = NULL;
570 .loc 1 457 0
571 0002 0023 movs r3, #0
572 0004 4360 str r3, [r0, #4]
573 .LVL81:
458:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** status = HAL_ERROR;
574 .loc 1 458 0
575 0006 0120 movs r0, #1
576 .LVL82:
459:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** break;
460:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** }
2021-07-03 18:17:05 +02:00
ARM GAS /tmp/cciyAbUk.s page 20
2021-07-02 22:19:04 +02:00
461:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
462:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** return status;
463:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** }
577 .loc 1 463 0
578 0008 7047 bx lr
579 .LVL83:
580 .L64:
453:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** break;
581 .loc 1 453 0
582 000a 4260 str r2, [r0, #4]
444:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
583 .loc 1 444 0
584 000c 0846 mov r0, r1
585 .LVL84:
454:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
586 .loc 1 454 0
587 000e 7047 bx lr
588 .cfi_endproc
589 .LFE332:
591 .section .text.HAL_EXTI_GetHandle,"ax",%progbits
592 .align 1
593 .p2align 2,,3
594 .global HAL_EXTI_GetHandle
595 .syntax unified
596 .thumb
597 .thumb_func
598 .fpu fpv4-sp-d16
600 HAL_EXTI_GetHandle:
601 .LFB333:
464:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
465:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
466:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** /**
467:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** * @brief Store line number as handle private field.
468:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** * @param hexti Exti handle.
469:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** * @param ExtiLine Exti line number.
470:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** * This parameter can be from 0 to @ref EXTI_LINE_NB.
471:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** * @retval HAL Status.
472:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** */
473:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** HAL_StatusTypeDef HAL_EXTI_GetHandle(EXTI_HandleTypeDef *hexti, uint32_t ExtiLine)
474:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** {
602 .loc 1 474 0
603 .cfi_startproc
604 @ args = 0, pretend = 0, frame = 0
605 @ frame_needed = 0, uses_anonymous_args = 0
606 @ link register save eliminated.
607 .LVL85:
475:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** /* Check the parameters */
476:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** assert_param(IS_EXTI_LINE(ExtiLine));
477:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
478:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** /* Check null pointer */
479:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** if (hexti == NULL)
608 .loc 1 479 0
609 0000 10B1 cbz r0, .L67
480:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** {
481:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** return HAL_ERROR;
482:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** }
483:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** else
2021-07-03 18:17:05 +02:00
ARM GAS /tmp/cciyAbUk.s page 21
2021-07-02 22:19:04 +02:00
484:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** {
485:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** /* Store line number as handle private field */
486:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** hexti->Line = ExtiLine;
610 .loc 1 486 0
611 0002 0160 str r1, [r0]
487:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
488:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** return HAL_OK;
612 .loc 1 488 0
613 0004 0020 movs r0, #0
614 .LVL86:
615 0006 7047 bx lr
616 .LVL87:
617 .L67:
481:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** }
618 .loc 1 481 0
619 0008 0120 movs r0, #1
620 .LVL88:
489:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** }
490:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** }
621 .loc 1 490 0
622 000a 7047 bx lr
623 .cfi_endproc
624 .LFE333:
626 .section .text.HAL_EXTI_IRQHandler,"ax",%progbits
627 .align 1
628 .p2align 2,,3
629 .global HAL_EXTI_IRQHandler
630 .syntax unified
631 .thumb
632 .thumb_func
633 .fpu fpv4-sp-d16
635 HAL_EXTI_IRQHandler:
636 .LFB334:
491:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
492:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
493:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** /**
494:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** * @}
495:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** */
496:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
497:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** /** @addtogroup EXTI_Exported_Functions_Group2
498:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** * @brief EXTI IO functions.
499:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** *
500:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** @verbatim
501:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** ===============================================================================
502:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** ##### IO operation functions #####
503:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** ===============================================================================
504:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
505:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** @endverbatim
506:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** * @{
507:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** */
508:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
509:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** /**
510:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** * @brief Handle EXTI interrupt request.
511:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** * @param hexti Exti handle.
512:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** * @retval none.
513:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** */
514:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** void HAL_EXTI_IRQHandler(EXTI_HandleTypeDef *hexti)
2021-07-03 18:17:05 +02:00
ARM GAS /tmp/cciyAbUk.s page 22
2021-07-02 22:19:04 +02:00
515:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** {
637 .loc 1 515 0
638 .cfi_startproc
639 @ args = 0, pretend = 0, frame = 0
640 @ frame_needed = 0, uses_anonymous_args = 0
641 @ link register save eliminated.
642 .LVL89:
516:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** __IO uint32_t *regaddr;
517:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** uint32_t regval;
518:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** uint32_t maskline;
519:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** uint32_t offset;
520:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
521:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** /* Compute line register offset */
522:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** offset = ((hexti->Line & EXTI_REG_MASK) >> EXTI_REG_SHIFT);
643 .loc 1 522 0
644 0000 0368 ldr r3, [r0]
645 .LVL90:
646 0002 C3F30042 ubfx r2, r3, #16, #1
515:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** __IO uint32_t *regaddr;
647 .loc 1 515 0
648 0006 30B4 push {r4, r5}
649 .LCFI12:
650 .cfi_def_cfa_offset 8
651 .cfi_offset 4, -8
652 .cfi_offset 5, -4
523:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** /* compute line mask */
524:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** maskline = (1uL << (hexti->Line & EXTI_PIN_MASK));
525:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
526:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** /* Get pending bit */
527:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** regaddr = (&EXTI->PR1 + (EXTI_CONFIG_OFFSET * offset));
653 .loc 1 527 0
654 0008 5201 lsls r2, r2, #5
655 000a 084C ldr r4, .L76
524:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
656 .loc 1 524 0
657 000c 03F01F03 and r3, r3, #31
658 .LVL91:
659 0010 0121 movs r1, #1
528:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** regval = (*regaddr & maskline);
660 .loc 1 528 0
661 0012 1559 ldr r5, [r2, r4]
524:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
662 .loc 1 524 0
663 0014 01FA03F3 lsl r3, r1, r3
664 .LVL92:
529:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
530:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** if (regval != 0x00u)
665 .loc 1 530 0
666 0018 1D42 tst r5, r3
667 001a 04D0 beq .L68
531:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** {
532:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** /* Clear pending bit */
533:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** *regaddr = maskline;
534:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
535:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** /* Call pending callback */
536:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** if (hexti->PendingCallback != NULL)
668 .loc 1 536 0
2021-07-03 18:17:05 +02:00
ARM GAS /tmp/cciyAbUk.s page 23
2021-07-02 22:19:04 +02:00
669 001c 4168 ldr r1, [r0, #4]
533:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
670 .loc 1 533 0
671 001e 1351 str r3, [r2, r4]
672 .LVL93:
673 .loc 1 536 0
674 0020 09B1 cbz r1, .L68
537:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** {
538:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** hexti->PendingCallback();
539:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** }
540:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** }
541:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** }
675 .loc 1 541 0
676 0022 30BC pop {r4, r5}
677 .LCFI13:
678 .cfi_remember_state
679 .cfi_restore 5
680 .cfi_restore 4
681 .cfi_def_cfa_offset 0
682 .LVL94:
538:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** }
683 .loc 1 538 0
684 0024 0847 bx r1 @ indirect register sibling call
685 .LVL95:
686 .L68:
687 .LCFI14:
688 .cfi_restore_state
689 .loc 1 541 0
690 0026 30BC pop {r4, r5}
691 .LCFI15:
692 .cfi_restore 5
693 .cfi_restore 4
694 .cfi_def_cfa_offset 0
695 .LVL96:
696 0028 7047 bx lr
697 .L77:
698 002a 00BF .align 2
699 .L76:
700 002c 14040140 .word 1073808404
701 .cfi_endproc
702 .LFE334:
704 .section .text.HAL_EXTI_GetPending,"ax",%progbits
705 .align 1
706 .p2align 2,,3
707 .global HAL_EXTI_GetPending
708 .syntax unified
709 .thumb
710 .thumb_func
711 .fpu fpv4-sp-d16
713 HAL_EXTI_GetPending:
714 .LFB335:
542:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
543:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** /**
544:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** * @brief Get interrupt pending bit of a dedicated line.
545:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** * @param hexti Exti handle.
546:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** * @param Edge unused
547:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** * @retval 1 if interrupt is pending else 0.
2021-07-03 18:17:05 +02:00
ARM GAS /tmp/cciyAbUk.s page 24
2021-07-02 22:19:04 +02:00
548:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** */
549:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** uint32_t HAL_EXTI_GetPending(EXTI_HandleTypeDef *hexti, uint32_t Edge)
550:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** {
715 .loc 1 550 0
716 .cfi_startproc
717 @ args = 0, pretend = 0, frame = 0
718 @ frame_needed = 0, uses_anonymous_args = 0
719 @ link register save eliminated.
720 .LVL97:
551:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** __IO uint32_t *regaddr;
552:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** uint32_t regval;
553:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** uint32_t linepos;
554:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** uint32_t maskline;
555:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** uint32_t offset;
556:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
557:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** /* Check parameters */
558:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** assert_param(IS_EXTI_LINE(hexti->Line));
559:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** assert_param(IS_EXTI_CONFIG_LINE(hexti->Line));
560:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** UNUSED(Edge);
561:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
562:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** /* Compute line register offset */
563:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** offset = ((hexti->Line & EXTI_REG_MASK) >> EXTI_REG_SHIFT);
721 .loc 1 563 0
722 0000 0368 ldr r3, [r0]
723 .LVL98:
564:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** /* Compute line position */
565:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** linepos = (hexti->Line & EXTI_PIN_MASK);
566:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** /* Compute line mask */
567:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** maskline = (1uL << linepos);
568:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
569:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** /* Get pending bit */
570:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** regaddr = (&EXTI->PR1 + (EXTI_CONFIG_OFFSET * offset));
724 .loc 1 570 0
725 0002 0649 ldr r1, .L79
726 .LVL99:
563:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** /* Compute line position */
727 .loc 1 563 0
728 0004 C3F30042 ubfx r2, r3, #16, #1
729 .loc 1 570 0
730 0008 5201 lsls r2, r2, #5
565:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** /* Compute line mask */
731 .loc 1 565 0
732 000a 03F01F03 and r3, r3, #31
733 .LVL100:
571:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
572:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** /* return 1 if bit is set else 0 */
573:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** regval = ((*regaddr & maskline) >> linepos);
734 .loc 1 573 0
735 000e 5258 ldr r2, [r2, r1]
736 .LVL101:
567:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
737 .loc 1 567 0
738 0010 0120 movs r0, #1
739 .LVL102:
740 0012 9840 lsls r0, r0, r3
741 .LVL103:
742 .loc 1 573 0
2021-07-03 18:17:05 +02:00
ARM GAS /tmp/cciyAbUk.s page 25
2021-07-02 22:19:04 +02:00
743 0014 1040 ands r0, r0, r2
744 .LVL104:
574:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** return regval;
575:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** }
745 .loc 1 575 0
746 0016 D840 lsrs r0, r0, r3
747 .LVL105:
748 0018 7047 bx lr
749 .L80:
750 001a 00BF .align 2
751 .L79:
752 001c 14040140 .word 1073808404
753 .cfi_endproc
754 .LFE335:
756 .section .text.HAL_EXTI_ClearPending,"ax",%progbits
757 .align 1
758 .p2align 2,,3
759 .global HAL_EXTI_ClearPending
760 .syntax unified
761 .thumb
762 .thumb_func
763 .fpu fpv4-sp-d16
765 HAL_EXTI_ClearPending:
766 .LFB336:
576:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
577:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
578:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** /**
579:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** * @brief Clear interrupt pending bit of a dedicated line.
580:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** * @param hexti Exti handle.
581:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** * @param Edge unused
582:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** * @retval None.
583:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** */
584:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** void HAL_EXTI_ClearPending(EXTI_HandleTypeDef *hexti, uint32_t Edge)
585:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** {
767 .loc 1 585 0
768 .cfi_startproc
769 @ args = 0, pretend = 0, frame = 0
770 @ frame_needed = 0, uses_anonymous_args = 0
771 @ link register save eliminated.
772 .LVL106:
586:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** __IO uint32_t *regaddr;
587:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** uint32_t maskline;
588:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** uint32_t offset;
589:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
590:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** /* Check parameters */
591:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** assert_param(IS_EXTI_LINE(hexti->Line));
592:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** assert_param(IS_EXTI_CONFIG_LINE(hexti->Line));
593:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** UNUSED(Edge);
594:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
595:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** /* Compute line register offset */
596:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** offset = ((hexti->Line & EXTI_REG_MASK) >> EXTI_REG_SHIFT);
773 .loc 1 596 0
774 0000 0368 ldr r3, [r0]
775 .LVL107:
597:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** /* Compute line mask */
598:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** maskline = (1uL << (hexti->Line & EXTI_PIN_MASK));
599:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
2021-07-03 18:17:05 +02:00
ARM GAS /tmp/cciyAbUk.s page 26
2021-07-02 22:19:04 +02:00
600:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** /* Get pending register address */
601:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** regaddr = (&EXTI->PR1 + (EXTI_CONFIG_OFFSET * offset));
776 .loc 1 601 0
777 0002 0548 ldr r0, .L82
778 .LVL108:
596:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** /* Compute line mask */
779 .loc 1 596 0
780 0004 C3F30042 ubfx r2, r3, #16, #1
781 .loc 1 601 0
782 0008 5201 lsls r2, r2, #5
598:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
783 .loc 1 598 0
784 000a 03F01F03 and r3, r3, #31
785 .LVL109:
786 000e 0121 movs r1, #1
787 .LVL110:
788 0010 01FA03F3 lsl r3, r1, r3
789 .LVL111:
602:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
603:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** /* Clear Pending bit */
604:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** *regaddr = maskline;
790 .loc 1 604 0
791 0014 1350 str r3, [r2, r0]
792 .LVL112:
605:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** }
793 .loc 1 605 0
794 0016 7047 bx lr
795 .L83:
796 .align 2
797 .L82:
798 0018 14040140 .word 1073808404
799 .cfi_endproc
800 .LFE336:
802 .section .text.HAL_EXTI_GenerateSWI,"ax",%progbits
803 .align 1
804 .p2align 2,,3
805 .global HAL_EXTI_GenerateSWI
806 .syntax unified
807 .thumb
808 .thumb_func
809 .fpu fpv4-sp-d16
811 HAL_EXTI_GenerateSWI:
812 .LFB337:
606:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
607:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
608:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** /**
609:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** * @brief Generate a software interrupt for a dedicated line.
610:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** * @param hexti Exti handle.
611:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** * @retval None.
612:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** */
613:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** void HAL_EXTI_GenerateSWI(EXTI_HandleTypeDef *hexti)
614:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** {
813 .loc 1 614 0
814 .cfi_startproc
815 @ args = 0, pretend = 0, frame = 0
816 @ frame_needed = 0, uses_anonymous_args = 0
817 @ link register save eliminated.
2021-07-03 18:17:05 +02:00
ARM GAS /tmp/cciyAbUk.s page 27
2021-07-02 22:19:04 +02:00
818 .LVL113:
615:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** __IO uint32_t *regaddr;
616:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** uint32_t maskline;
617:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** uint32_t offset;
618:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
619:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** /* Check parameter */
620:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** assert_param(IS_EXTI_LINE(hexti->Line));
621:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** assert_param(IS_EXTI_CONFIG_LINE(hexti->Line));
622:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
623:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** /* compute line register offset */
624:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** offset = ((hexti->Line & EXTI_REG_MASK) >> EXTI_REG_SHIFT);
819 .loc 1 624 0
820 0000 0368 ldr r3, [r0]
821 .LVL114:
625:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** /* compute line mask */
626:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** maskline = (1uL << (hexti->Line & EXTI_PIN_MASK));
627:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
628:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** regaddr = (&EXTI->SWIER1 + (EXTI_CONFIG_OFFSET * offset));
822 .loc 1 628 0
823 0002 0548 ldr r0, .L85
824 .LVL115:
624:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** /* compute line mask */
825 .loc 1 624 0
826 0004 C3F30042 ubfx r2, r3, #16, #1
827 .loc 1 628 0
828 0008 5201 lsls r2, r2, #5
626:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c ****
829 .loc 1 626 0
830 000a 03F01F03 and r3, r3, #31
831 .LVL116:
832 000e 0121 movs r1, #1
833 0010 01FA03F3 lsl r3, r1, r3
834 .LVL117:
629:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** *regaddr = maskline;
835 .loc 1 629 0
836 0014 1350 str r3, [r2, r0]
837 .LVL118:
630:Drivers/STM32G4xx_HAL_Driver/Src/stm32g4xx_hal_exti.c **** }
838 .loc 1 630 0
839 0016 7047 bx lr
840 .L86:
841 .align 2
842 .L85:
843 0018 10040140 .word 1073808400
844 .cfi_endproc
845 .LFE337:
847 .text
848 .Letext0:
849 .file 2 "/usr/include/newlib/machine/_default_types.h"
850 .file 3 "/usr/include/newlib/sys/_stdint.h"
851 .file 4 "Drivers/CMSIS/Include/core_cm4.h"
852 .file 5 "Drivers/CMSIS/Device/ST/STM32G4xx/Include/system_stm32g4xx.h"
853 .file 6 "Drivers/CMSIS/Device/ST/STM32G4xx/Include/stm32g431xx.h"
854 .file 7 "Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_def.h"
855 .file 8 "Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_exti.h"
856 .file 9 "Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_flash.h"
857 .file 10 "Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal_uart.h"
2021-07-03 18:17:05 +02:00
ARM GAS /tmp/cciyAbUk.s page 28
2021-07-02 22:19:04 +02:00
858 .file 11 "Drivers/STM32G4xx_HAL_Driver/Inc/stm32g4xx_hal.h"
2021-07-03 18:17:05 +02:00
ARM GAS /tmp/cciyAbUk.s page 29
2021-07-02 22:19:04 +02:00
DEFINED SYMBOLS
*ABS*:0000000000000000 stm32g4xx_hal_exti.c
2021-07-03 18:17:05 +02:00
/tmp/cciyAbUk.s:16 .text.HAL_EXTI_SetConfigLine:0000000000000000 $t
/tmp/cciyAbUk.s:24 .text.HAL_EXTI_SetConfigLine:0000000000000000 HAL_EXTI_SetConfigLine
/tmp/cciyAbUk.s:210 .text.HAL_EXTI_SetConfigLine:00000000000000ac $d
/tmp/cciyAbUk.s:217 .text.HAL_EXTI_GetConfigLine:0000000000000000 $t
/tmp/cciyAbUk.s:225 .text.HAL_EXTI_GetConfigLine:0000000000000000 HAL_EXTI_GetConfigLine
/tmp/cciyAbUk.s:384 .text.HAL_EXTI_GetConfigLine:000000000000009c $d
/tmp/cciyAbUk.s:392 .text.HAL_EXTI_ClearConfigLine:0000000000000000 $t
/tmp/cciyAbUk.s:400 .text.HAL_EXTI_ClearConfigLine:0000000000000000 HAL_EXTI_ClearConfigLine
/tmp/cciyAbUk.s:545 .text.HAL_EXTI_ClearConfigLine:0000000000000080 $d
/tmp/cciyAbUk.s:552 .text.HAL_EXTI_RegisterCallback:0000000000000000 $t
/tmp/cciyAbUk.s:560 .text.HAL_EXTI_RegisterCallback:0000000000000000 HAL_EXTI_RegisterCallback
/tmp/cciyAbUk.s:592 .text.HAL_EXTI_GetHandle:0000000000000000 $t
/tmp/cciyAbUk.s:600 .text.HAL_EXTI_GetHandle:0000000000000000 HAL_EXTI_GetHandle
/tmp/cciyAbUk.s:627 .text.HAL_EXTI_IRQHandler:0000000000000000 $t
/tmp/cciyAbUk.s:635 .text.HAL_EXTI_IRQHandler:0000000000000000 HAL_EXTI_IRQHandler
/tmp/cciyAbUk.s:700 .text.HAL_EXTI_IRQHandler:000000000000002c $d
/tmp/cciyAbUk.s:705 .text.HAL_EXTI_GetPending:0000000000000000 $t
/tmp/cciyAbUk.s:713 .text.HAL_EXTI_GetPending:0000000000000000 HAL_EXTI_GetPending
/tmp/cciyAbUk.s:752 .text.HAL_EXTI_GetPending:000000000000001c $d
/tmp/cciyAbUk.s:757 .text.HAL_EXTI_ClearPending:0000000000000000 $t
/tmp/cciyAbUk.s:765 .text.HAL_EXTI_ClearPending:0000000000000000 HAL_EXTI_ClearPending
/tmp/cciyAbUk.s:798 .text.HAL_EXTI_ClearPending:0000000000000018 $d
/tmp/cciyAbUk.s:803 .text.HAL_EXTI_GenerateSWI:0000000000000000 $t
/tmp/cciyAbUk.s:811 .text.HAL_EXTI_GenerateSWI:0000000000000000 HAL_EXTI_GenerateSWI
/tmp/cciyAbUk.s:843 .text.HAL_EXTI_GenerateSWI:0000000000000018 $d
2021-07-02 22:19:04 +02:00
NO UNDEFINED SYMBOLS