Files
RadioPhotonic_PCB_software/build/stm32f7xx_hal_exti.lst
2025-03-03 16:03:02 +03:00

1556 lines
90 KiB
Plaintext
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

ARM GAS /tmp/ccTKBm5t.s page 1
1 .cpu cortex-m7
2 .eabi_attribute 28, 1
3 .eabi_attribute 20, 1
4 .eabi_attribute 21, 1
5 .eabi_attribute 23, 3
6 .eabi_attribute 24, 1
7 .eabi_attribute 25, 1
8 .eabi_attribute 26, 1
9 .eabi_attribute 30, 1
10 .eabi_attribute 34, 1
11 .eabi_attribute 18, 4
12 .file "stm32f7xx_hal_exti.c"
13 .text
14 .Ltext0:
15 .cfi_sections .debug_frame
16 .section .text.HAL_EXTI_SetConfigLine,"ax",%progbits
17 .align 1
18 .global HAL_EXTI_SetConfigLine
19 .arch armv7e-m
20 .syntax unified
21 .thumb
22 .thumb_func
23 .fpu fpv5-d16
25 HAL_EXTI_SetConfigLine:
26 .LVL0:
27 .LFB141:
28 .file 1 "Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c"
1:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** /**
2:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** ******************************************************************************
3:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** * @file stm32F7xx_hal_exti.c
4:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** * @author MCD Application Team
5:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** * @brief EXTI HAL module driver.
6:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** * This file provides firmware functions to manage the following
7:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** * functionalities of the Extended Interrupts and events controller (EXTI) peripheral:
8:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** * + Initialization and de-initialization functions
9:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** * + IO operation functions
10:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** *
11:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** ******************************************************************************
12:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** * @attention
13:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** *
14:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** * Copyright (c) 2018 STMicroelectronics.
15:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** * All rights reserved.
16:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** *
17:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** * This software is licensed under terms that can be found in the LICENSE file
18:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** * in the root directory of this software component.
19:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** * If no LICENSE file comes with this software, it is provided AS-IS.
20:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** *
21:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** ******************************************************************************
22:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** @verbatim
23:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** ==============================================================================
24:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** ##### EXTI Peripheral features #####
25:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** ==============================================================================
26:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** [..]
27:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** (+) Each Exti line can be configured within this driver.
28:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c ****
29:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** (+) Exti line can be configured in 3 different modes
30:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** (++) Interrupt
ARM GAS /tmp/ccTKBm5t.s page 2
31:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** (++) Event
32:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** (++) Both of them
33:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c ****
34:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** (+) Configurable Exti lines can be configured with 3 different triggers
35:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** (++) Rising
36:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** (++) Falling
37:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** (++) Both of them
38:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c ****
39:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** (+) When set in interrupt mode, configurable Exti lines have two different
40:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** interrupts pending registers which allow to distinguish which transition
41:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** occurs:
42:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** (++) Rising edge pending interrupt
43:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** (++) Falling
44:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c ****
45:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** (+) Exti lines 0 to 15 are linked to gpio pin number 0 to 15. Gpio port can
46:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** be selected through multiplexer.
47:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c ****
48:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** ##### How to use this driver #####
49:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** ==============================================================================
50:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** [..]
51:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c ****
52:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** (#) Configure the EXTI line using HAL_EXTI_SetConfigLine().
53:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** (++) Choose the interrupt line number by setting "Line" member from
54:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** EXTI_ConfigTypeDef structure.
55:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** (++) Configure the interrupt and/or event mode using "Mode" member from
56:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** EXTI_ConfigTypeDef structure.
57:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** (++) For configurable lines, configure rising and/or falling trigger
58:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** "Trigger" member from EXTI_ConfigTypeDef structure.
59:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** (++) For Exti lines linked to gpio, choose gpio port using "GPIOSel"
60:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** member from GPIO_InitTypeDef structure.
61:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c ****
62:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** (#) Get current Exti configuration of a dedicated line using
63:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** HAL_EXTI_GetConfigLine().
64:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** (++) Provide exiting handle as parameter.
65:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** (++) Provide pointer on EXTI_ConfigTypeDef structure as second parameter.
66:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c ****
67:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** (#) Clear Exti configuration of a dedicated line using HAL_EXTI_ClearConfigLine().
68:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** (++) Provide exiting handle as parameter.
69:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c ****
70:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** (#) Register callback to treat Exti interrupts using HAL_EXTI_RegisterCallback().
71:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** (++) Provide exiting handle as first parameter.
72:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** (++) Provide which callback will be registered using one value from
73:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** EXTI_CallbackIDTypeDef.
74:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** (++) Provide callback function pointer.
75:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c ****
76:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** (#) Get interrupt pending bit using HAL_EXTI_GetPending().
77:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c ****
78:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** (#) Clear interrupt pending bit using HAL_EXTI_ClearPending().
79:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c ****
80:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** (#) Generate software interrupt using HAL_EXTI_GenerateSWI().
81:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c ****
82:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** @endverbatim
83:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** */
84:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c ****
85:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** /* Includes ------------------------------------------------------------------*/
86:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** #include "stm32f7xx_hal.h"
87:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c ****
ARM GAS /tmp/ccTKBm5t.s page 3
88:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** /** @addtogroup STM32F7xx_HAL_Driver
89:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** * @{
90:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** */
91:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c ****
92:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** /** @addtogroup EXTI
93:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** * @{
94:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** */
95:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** /** MISRA C:2012 deviation rule has been granted for following rule:
96:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** * Rule-18.1_b - Medium: Array `EXTICR' 1st subscript interval [0,7] may be out
97:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** * of bounds [0,3] in following API :
98:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** * HAL_EXTI_SetConfigLine
99:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** * HAL_EXTI_GetConfigLine
100:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** * HAL_EXTI_ClearConfigLine
101:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** */
102:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c ****
103:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** #ifdef HAL_EXTI_MODULE_ENABLED
104:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c ****
105:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** /* Private typedef -----------------------------------------------------------*/
106:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** /* Private defines -----------------------------------------------------------*/
107:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** /** @defgroup EXTI_Private_Constants EXTI Private Constants
108:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** * @{
109:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** */
110:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c ****
111:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** /**
112:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** * @}
113:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** */
114:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c ****
115:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** /* Private macros ------------------------------------------------------------*/
116:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** /* Private variables ---------------------------------------------------------*/
117:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** /* Private function prototypes -----------------------------------------------*/
118:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** /* Exported functions --------------------------------------------------------*/
119:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c ****
120:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** /** @addtogroup EXTI_Exported_Functions
121:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** * @{
122:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** */
123:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c ****
124:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** /** @addtogroup EXTI_Exported_Functions_Group1
125:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** * @brief Configuration functions
126:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** *
127:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** @verbatim
128:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** ===============================================================================
129:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** ##### Configuration functions #####
130:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** ===============================================================================
131:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c ****
132:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** @endverbatim
133:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** * @{
134:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** */
135:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c ****
136:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** /**
137:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** * @brief Set configuration of a dedicated Exti line.
138:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** * @param hexti Exti handle.
139:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** * @param pExtiConfig Pointer on EXTI configuration to be set.
140:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** * @retval HAL Status.
141:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** */
142:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** HAL_StatusTypeDef HAL_EXTI_SetConfigLine(EXTI_HandleTypeDef *hexti, EXTI_ConfigTypeDef *pExtiConfig
143:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** {
29 .loc 1 143 1 view -0
ARM GAS /tmp/ccTKBm5t.s page 4
30 .cfi_startproc
31 @ args = 0, pretend = 0, frame = 0
32 @ frame_needed = 0, uses_anonymous_args = 0
33 @ link register save eliminated.
144:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** uint32_t regval;
34 .loc 1 144 3 view .LVU1
145:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** uint32_t linepos;
35 .loc 1 145 3 view .LVU2
146:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** uint32_t maskline;
36 .loc 1 146 3 view .LVU3
147:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c ****
148:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** /* Check null pointer */
149:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** if ((hexti == NULL) || (pExtiConfig == NULL))
37 .loc 1 149 3 view .LVU4
38 .loc 1 149 6 is_stmt 0 view .LVU5
39 0000 0029 cmp r1, #0
40 0002 18BF it ne
41 0004 0028 cmpne r0, #0
42 0006 5FD0 beq .L11
143:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** uint32_t regval;
43 .loc 1 143 1 view .LVU6
44 0008 70B4 push {r4, r5, r6}
45 .LCFI0:
46 .cfi_def_cfa_offset 12
47 .cfi_offset 4, -12
48 .cfi_offset 5, -8
49 .cfi_offset 6, -4
50 000a 0B46 mov r3, r1
150:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** {
151:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** return HAL_ERROR;
152:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** }
153:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c ****
154:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** /* Check parameters */
155:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** assert_param(IS_EXTI_LINE(pExtiConfig->Line));
51 .loc 1 155 3 is_stmt 1 view .LVU7
156:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** assert_param(IS_EXTI_MODE(pExtiConfig->Mode));
52 .loc 1 156 3 view .LVU8
157:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c ****
158:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** /* Assign line number to handle */
159:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** hexti->Line = pExtiConfig->Line;
53 .loc 1 159 3 view .LVU9
54 .loc 1 159 28 is_stmt 0 view .LVU10
55 000c 0968 ldr r1, [r1]
56 .LVL1:
57 .loc 1 159 15 view .LVU11
58 000e 0160 str r1, [r0]
160:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c ****
161:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** /* Compute line mask */
162:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** linepos = (pExtiConfig->Line & EXTI_PIN_MASK);
59 .loc 1 162 3 is_stmt 1 view .LVU12
60 .loc 1 162 11 is_stmt 0 view .LVU13
61 0010 01F01F00 and r0, r1, #31
62 .LVL2:
163:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** maskline = (1uL << linepos);
63 .loc 1 163 3 is_stmt 1 view .LVU14
64 .loc 1 163 12 is_stmt 0 view .LVU15
65 0014 0122 movs r2, #1
ARM GAS /tmp/ccTKBm5t.s page 5
66 0016 8240 lsls r2, r2, r0
67 .LVL3:
164:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c ****
165:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** /* Configure triggers for configurable lines */
166:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** if ((pExtiConfig->Line & EXTI_CONFIG) != 0x00u)
68 .loc 1 166 3 is_stmt 1 view .LVU16
69 .loc 1 166 6 is_stmt 0 view .LVU17
70 0018 11F0007F tst r1, #33554432
71 001c 15D0 beq .L3
167:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** {
168:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** assert_param(IS_EXTI_TRIGGER(pExtiConfig->Trigger));
72 .loc 1 168 5 is_stmt 1 view .LVU18
169:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c ****
170:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** /* Configure rising trigger */
171:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** /* Mask or set line */
172:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** if ((pExtiConfig->Trigger & EXTI_TRIGGER_RISING) != 0x00u)
73 .loc 1 172 5 view .LVU19
74 .loc 1 172 21 is_stmt 0 view .LVU20
75 001e 9C68 ldr r4, [r3, #8]
76 .loc 1 172 8 view .LVU21
77 0020 14F0010F tst r4, #1
78 0024 24D0 beq .L4
173:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** {
174:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** EXTI->RTSR |= maskline;
79 .loc 1 174 7 is_stmt 1 view .LVU22
80 .loc 1 174 18 is_stmt 0 view .LVU23
81 0026 294D ldr r5, .L17
82 0028 AC68 ldr r4, [r5, #8]
83 002a 1443 orrs r4, r4, r2
84 002c AC60 str r4, [r5, #8]
85 .L5:
175:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** }
176:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** else
177:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** {
178:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** EXTI->RTSR &= ~maskline;
179:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** }
180:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c ****
181:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** /* Configure falling trigger */
182:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** /* Mask or set line */
183:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** if ((pExtiConfig->Trigger & EXTI_TRIGGER_FALLING) != 0x00u)
86 .loc 1 183 5 is_stmt 1 view .LVU24
87 .loc 1 183 21 is_stmt 0 view .LVU25
88 002e 9C68 ldr r4, [r3, #8]
89 .loc 1 183 8 view .LVU26
90 0030 14F0020F tst r4, #2
91 0034 22D0 beq .L6
184:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** {
185:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** EXTI->FTSR |= maskline;
92 .loc 1 185 7 is_stmt 1 view .LVU27
93 .loc 1 185 18 is_stmt 0 view .LVU28
94 0036 254D ldr r5, .L17
95 0038 EC68 ldr r4, [r5, #12]
96 003a 1443 orrs r4, r4, r2
97 003c EC60 str r4, [r5, #12]
98 .L7:
186:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** }
187:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** else
ARM GAS /tmp/ccTKBm5t.s page 6
188:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** {
189:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** EXTI->FTSR &= ~maskline;
190:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** }
191:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c ****
192:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c ****
193:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** /* Configure gpio port selection in case of gpio exti line */
194:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** if ((pExtiConfig->Line & EXTI_GPIO) == EXTI_GPIO)
99 .loc 1 194 5 is_stmt 1 view .LVU29
100 .loc 1 194 28 is_stmt 0 view .LVU30
101 003e 1C68 ldr r4, [r3]
102 0040 04F0C06C and ip, r4, #100663296
103 .loc 1 194 8 view .LVU31
104 0044 BCF1C06F cmp ip, #100663296
105 0048 1ED0 beq .L16
106 .LVL4:
107 .L3:
195:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** {
196:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** assert_param(IS_EXTI_GPIO_PORT(pExtiConfig->GPIOSel));
197:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** assert_param(IS_EXTI_GPIO_PIN(linepos));
198:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c ****
199:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** regval = SYSCFG->EXTICR[linepos >> 2u];
200:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** regval &= ~(SYSCFG_EXTICR1_EXTI0 << (SYSCFG_EXTICR1_EXTI1_Pos * (linepos & 0x03u)));
201:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** regval |= (pExtiConfig->GPIOSel << (SYSCFG_EXTICR1_EXTI1_Pos * (linepos & 0x03u)));
202:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** SYSCFG->EXTICR[linepos >> 2u] = regval;
203:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** }
204:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** }
205:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c ****
206:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** /* Configure interrupt mode : read current mode */
207:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** /* Mask or set line */
208:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** if ((pExtiConfig->Mode & EXTI_MODE_INTERRUPT) != 0x00u)
108 .loc 1 208 3 is_stmt 1 view .LVU32
109 .loc 1 208 19 is_stmt 0 view .LVU33
110 004a 5968 ldr r1, [r3, #4]
111 .loc 1 208 6 view .LVU34
112 004c 11F0010F tst r1, #1
113 0050 2DD0 beq .L8
209:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** {
210:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** EXTI->IMR |= maskline;
114 .loc 1 210 5 is_stmt 1 view .LVU35
115 .loc 1 210 15 is_stmt 0 view .LVU36
116 0052 1E48 ldr r0, .L17
117 0054 0168 ldr r1, [r0]
118 0056 1143 orrs r1, r1, r2
119 0058 0160 str r1, [r0]
120 .L9:
211:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** }
212:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** else
213:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** {
214:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** EXTI->IMR &= ~maskline;
215:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** }
216:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c ****
217:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** /* Configure event mode : read current mode */
218:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** /* Mask or set line */
219:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** if ((pExtiConfig->Mode & EXTI_MODE_EVENT) != 0x00u)
121 .loc 1 219 3 is_stmt 1 view .LVU37
122 .loc 1 219 19 is_stmt 0 view .LVU38
123 005a 5B68 ldr r3, [r3, #4]
ARM GAS /tmp/ccTKBm5t.s page 7
124 .LVL5:
125 .loc 1 219 6 view .LVU39
126 005c 13F0020F tst r3, #2
127 0060 2BD0 beq .L10
220:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** {
221:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** EXTI->EMR |= maskline;
128 .loc 1 221 5 is_stmt 1 view .LVU40
129 .loc 1 221 15 is_stmt 0 view .LVU41
130 0062 1A49 ldr r1, .L17
131 0064 4B68 ldr r3, [r1, #4]
132 0066 1A43 orrs r2, r2, r3
133 .LVL6:
134 .loc 1 221 15 view .LVU42
135 0068 4A60 str r2, [r1, #4]
222:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** }
223:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** else
224:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** {
225:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** EXTI->EMR &= ~maskline;
226:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** }
227:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c ****
228:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** return HAL_OK;
136 .loc 1 228 10 view .LVU43
137 006a 0020 movs r0, #0
138 .L2:
229:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** }
139 .loc 1 229 1 view .LVU44
140 006c 70BC pop {r4, r5, r6}
141 .LCFI1:
142 .cfi_remember_state
143 .cfi_restore 6
144 .cfi_restore 5
145 .cfi_restore 4
146 .cfi_def_cfa_offset 0
147 006e 7047 bx lr
148 .LVL7:
149 .L4:
150 .LCFI2:
151 .cfi_restore_state
178:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** }
152 .loc 1 178 7 is_stmt 1 view .LVU45
178:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** }
153 .loc 1 178 18 is_stmt 0 view .LVU46
154 0070 164D ldr r5, .L17
155 0072 AC68 ldr r4, [r5, #8]
156 0074 24EA0204 bic r4, r4, r2
157 0078 AC60 str r4, [r5, #8]
158 007a D8E7 b .L5
159 .L6:
189:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** }
160 .loc 1 189 7 is_stmt 1 view .LVU47
189:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** }
161 .loc 1 189 18 is_stmt 0 view .LVU48
162 007c 134D ldr r5, .L17
163 007e EC68 ldr r4, [r5, #12]
164 0080 24EA0204 bic r4, r4, r2
165 0084 EC60 str r4, [r5, #12]
166 0086 DAE7 b .L7
ARM GAS /tmp/ccTKBm5t.s page 8
167 .L16:
196:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** assert_param(IS_EXTI_GPIO_PIN(linepos));
168 .loc 1 196 7 is_stmt 1 view .LVU49
197:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c ****
169 .loc 1 197 7 view .LVU50
199:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** regval &= ~(SYSCFG_EXTICR1_EXTI0 << (SYSCFG_EXTICR1_EXTI1_Pos * (linepos & 0x03u)));
170 .loc 1 199 7 view .LVU51
199:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** regval &= ~(SYSCFG_EXTICR1_EXTI0 << (SYSCFG_EXTICR1_EXTI1_Pos * (linepos & 0x03u)));
171 .loc 1 199 39 is_stmt 0 view .LVU52
172 0088 8008 lsrs r0, r0, #2
173 .LVL8:
199:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** regval &= ~(SYSCFG_EXTICR1_EXTI0 << (SYSCFG_EXTICR1_EXTI1_Pos * (linepos & 0x03u)));
174 .loc 1 199 14 view .LVU53
175 008a 114E ldr r6, .L17+4
176 008c 0230 adds r0, r0, #2
177 008e 56F82040 ldr r4, [r6, r0, lsl #2]
178 .LVL9:
200:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** regval |= (pExtiConfig->GPIOSel << (SYSCFG_EXTICR1_EXTI1_Pos * (linepos & 0x03u)));
179 .loc 1 200 7 is_stmt 1 view .LVU54
200:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** regval |= (pExtiConfig->GPIOSel << (SYSCFG_EXTICR1_EXTI1_Pos * (linepos & 0x03u)));
180 .loc 1 200 80 is_stmt 0 view .LVU55
181 0092 01F00301 and r1, r1, #3
182 .LVL10:
200:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** regval |= (pExtiConfig->GPIOSel << (SYSCFG_EXTICR1_EXTI1_Pos * (linepos & 0x03u)));
183 .loc 1 200 69 view .LVU56
184 0096 8900 lsls r1, r1, #2
200:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** regval |= (pExtiConfig->GPIOSel << (SYSCFG_EXTICR1_EXTI1_Pos * (linepos & 0x03u)));
185 .loc 1 200 40 view .LVU57
186 0098 0F25 movs r5, #15
187 009a 8D40 lsls r5, r5, r1
200:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** regval |= (pExtiConfig->GPIOSel << (SYSCFG_EXTICR1_EXTI1_Pos * (linepos & 0x03u)));
188 .loc 1 200 14 view .LVU58
189 009c 24EA0504 bic r4, r4, r5
190 .LVL11:
201:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** SYSCFG->EXTICR[linepos >> 2u] = regval;
191 .loc 1 201 7 is_stmt 1 view .LVU59
201:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** SYSCFG->EXTICR[linepos >> 2u] = regval;
192 .loc 1 201 39 is_stmt 0 view .LVU60
193 00a0 DD68 ldr r5, [r3, #12]
194 00a2 05FA01F1 lsl r1, r5, r1
201:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** SYSCFG->EXTICR[linepos >> 2u] = regval;
195 .loc 1 201 14 view .LVU61
196 00a6 2143 orrs r1, r1, r4
197 .LVL12:
202:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** }
198 .loc 1 202 7 is_stmt 1 view .LVU62
202:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** }
199 .loc 1 202 37 is_stmt 0 view .LVU63
200 00a8 46F82010 str r1, [r6, r0, lsl #2]
201 00ac CDE7 b .L3
202 .LVL13:
203 .L8:
214:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** }
204 .loc 1 214 5 is_stmt 1 view .LVU64
214:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** }
205 .loc 1 214 15 is_stmt 0 view .LVU65
206 00ae 0748 ldr r0, .L17
ARM GAS /tmp/ccTKBm5t.s page 9
207 00b0 0168 ldr r1, [r0]
208 00b2 21EA0201 bic r1, r1, r2
209 00b6 0160 str r1, [r0]
210 00b8 CFE7 b .L9
211 .LVL14:
212 .L10:
225:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** }
213 .loc 1 225 5 is_stmt 1 view .LVU66
225:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** }
214 .loc 1 225 15 is_stmt 0 view .LVU67
215 00ba 0449 ldr r1, .L17
216 00bc 4B68 ldr r3, [r1, #4]
217 00be 23EA0202 bic r2, r3, r2
218 .LVL15:
225:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** }
219 .loc 1 225 15 view .LVU68
220 00c2 4A60 str r2, [r1, #4]
228:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** }
221 .loc 1 228 10 view .LVU69
222 00c4 0020 movs r0, #0
223 00c6 D1E7 b .L2
224 .LVL16:
225 .L11:
226 .LCFI3:
227 .cfi_def_cfa_offset 0
228 .cfi_restore 4
229 .cfi_restore 5
230 .cfi_restore 6
151:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** }
231 .loc 1 151 12 view .LVU70
232 00c8 0120 movs r0, #1
233 .LVL17:
234 .loc 1 229 1 view .LVU71
235 00ca 7047 bx lr
236 .L18:
237 .align 2
238 .L17:
239 00cc 003C0140 .word 1073822720
240 00d0 00380140 .word 1073821696
241 .cfi_endproc
242 .LFE141:
244 .section .text.HAL_EXTI_GetConfigLine,"ax",%progbits
245 .align 1
246 .global HAL_EXTI_GetConfigLine
247 .syntax unified
248 .thumb
249 .thumb_func
250 .fpu fpv5-d16
252 HAL_EXTI_GetConfigLine:
253 .LVL18:
254 .LFB142:
230:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c ****
231:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** /**
232:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** * @brief Get configuration of a dedicated Exti line.
233:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** * @param hexti Exti handle.
234:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** * @param pExtiConfig Pointer on structure to store Exti configuration.
235:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** * @retval HAL Status.
ARM GAS /tmp/ccTKBm5t.s page 10
236:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** */
237:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** HAL_StatusTypeDef HAL_EXTI_GetConfigLine(EXTI_HandleTypeDef *hexti, EXTI_ConfigTypeDef *pExtiConfig
238:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** {
255 .loc 1 238 1 is_stmt 1 view -0
256 .cfi_startproc
257 @ args = 0, pretend = 0, frame = 0
258 @ frame_needed = 0, uses_anonymous_args = 0
259 @ link register save eliminated.
239:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** uint32_t regval;
260 .loc 1 239 3 view .LVU73
240:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** uint32_t linepos;
261 .loc 1 240 3 view .LVU74
241:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** uint32_t maskline;
262 .loc 1 241 3 view .LVU75
242:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c ****
243:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** /* Check null pointer */
244:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** if ((hexti == NULL) || (pExtiConfig == NULL))
263 .loc 1 244 3 view .LVU76
264 .loc 1 244 6 is_stmt 0 view .LVU77
265 0000 0029 cmp r1, #0
266 0002 18BF it ne
267 0004 0028 cmpne r0, #0
268 0006 44D0 beq .L26
238:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** uint32_t regval;
269 .loc 1 238 1 view .LVU78
270 0008 10B4 push {r4}
271 .LCFI4:
272 .cfi_def_cfa_offset 4
273 .cfi_offset 4, -4
274 000a 0B46 mov r3, r1
245:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** {
246:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** return HAL_ERROR;
247:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** }
248:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c ****
249:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** /* Check the parameter */
250:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** assert_param(IS_EXTI_LINE(hexti->Line));
275 .loc 1 250 3 is_stmt 1 view .LVU79
251:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c ****
252:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** /* Store handle line number to configuration structure */
253:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** pExtiConfig->Line = hexti->Line;
276 .loc 1 253 3 view .LVU80
277 .loc 1 253 28 is_stmt 0 view .LVU81
278 000c 0468 ldr r4, [r0]
279 .loc 1 253 21 view .LVU82
280 000e 0C60 str r4, [r1]
254:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c ****
255:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** /* Compute line mask */
256:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** linepos = (pExtiConfig->Line & EXTI_PIN_MASK);
281 .loc 1 256 3 is_stmt 1 view .LVU83
282 .loc 1 256 11 is_stmt 0 view .LVU84
283 0010 04F01F0C and ip, r4, #31
284 .LVL19:
257:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** maskline = (1uL << linepos);
285 .loc 1 257 3 is_stmt 1 view .LVU85
286 .loc 1 257 12 is_stmt 0 view .LVU86
287 0014 0122 movs r2, #1
288 0016 02FA0CF2 lsl r2, r2, ip
ARM GAS /tmp/ccTKBm5t.s page 11
289 .LVL20:
258:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c ****
259:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** /* 1] Get core mode : interrupt */
260:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c ****
261:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** /* Check if selected line is enable */
262:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** if ((EXTI->IMR & maskline) != 0x00u)
290 .loc 1 262 3 is_stmt 1 view .LVU87
291 .loc 1 262 12 is_stmt 0 view .LVU88
292 001a 2148 ldr r0, .L34
293 .LVL21:
294 .loc 1 262 12 view .LVU89
295 001c 0068 ldr r0, [r0]
296 .loc 1 262 6 view .LVU90
297 001e 1042 tst r0, r2
298 0020 24D0 beq .L21
263:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** {
264:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** pExtiConfig->Mode = EXTI_MODE_INTERRUPT;
299 .loc 1 264 5 is_stmt 1 view .LVU91
300 .loc 1 264 23 is_stmt 0 view .LVU92
301 0022 0121 movs r1, #1
302 .LVL22:
303 .loc 1 264 23 view .LVU93
304 0024 5960 str r1, [r3, #4]
305 .L22:
265:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** }
266:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** else
267:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** {
268:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** pExtiConfig->Mode = EXTI_MODE_NONE;
269:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** }
270:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c ****
271:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** /* Get event mode */
272:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** /* Check if selected line is enable */
273:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** if ((EXTI->EMR & maskline) != 0x00u)
306 .loc 1 273 3 is_stmt 1 view .LVU94
307 .loc 1 273 12 is_stmt 0 view .LVU95
308 0026 1E48 ldr r0, .L34
309 0028 4068 ldr r0, [r0, #4]
310 .loc 1 273 6 view .LVU96
311 002a 1042 tst r0, r2
312 002c 03D0 beq .L23
274:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** {
275:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** pExtiConfig->Mode |= EXTI_MODE_EVENT;
313 .loc 1 275 5 is_stmt 1 view .LVU97
314 .loc 1 275 23 is_stmt 0 view .LVU98
315 002e 5868 ldr r0, [r3, #4]
316 0030 40F00200 orr r0, r0, #2
317 0034 5860 str r0, [r3, #4]
318 .L23:
276:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** }
277:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c ****
278:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** /* Get default Trigger and GPIOSel configuration */
279:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** pExtiConfig->Trigger = EXTI_TRIGGER_NONE;
319 .loc 1 279 3 is_stmt 1 view .LVU99
320 .loc 1 279 24 is_stmt 0 view .LVU100
321 0036 0021 movs r1, #0
322 0038 9960 str r1, [r3, #8]
280:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** pExtiConfig->GPIOSel = 0x00u;
ARM GAS /tmp/ccTKBm5t.s page 12
323 .loc 1 280 3 is_stmt 1 view .LVU101
324 .loc 1 280 24 is_stmt 0 view .LVU102
325 003a D960 str r1, [r3, #12]
281:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c ****
282:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** /* 2] Get trigger for configurable lines : rising */
283:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** if ((pExtiConfig->Line & EXTI_CONFIG) != 0x00u)
326 .loc 1 283 3 is_stmt 1 view .LVU103
327 .loc 1 283 6 is_stmt 0 view .LVU104
328 003c 14F0007F tst r4, #33554432
329 0040 29D0 beq .L27
284:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** {
285:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** /* Check if configuration of selected line is enable */
286:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** if ((EXTI->RTSR & maskline) != 0x00u)
330 .loc 1 286 5 is_stmt 1 view .LVU105
331 .loc 1 286 14 is_stmt 0 view .LVU106
332 0042 1749 ldr r1, .L34
333 0044 8968 ldr r1, [r1, #8]
334 .loc 1 286 8 view .LVU107
335 0046 1142 tst r1, r2
336 0048 01D0 beq .L24
287:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** {
288:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** pExtiConfig->Trigger = EXTI_TRIGGER_RISING;
337 .loc 1 288 7 is_stmt 1 view .LVU108
338 .loc 1 288 28 is_stmt 0 view .LVU109
339 004a 0121 movs r1, #1
340 004c 9960 str r1, [r3, #8]
341 .L24:
289:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** }
290:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c ****
291:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** /* Get falling configuration */
292:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** /* Check if configuration of selected line is enable */
293:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** if ((EXTI->FTSR & maskline) != 0x00u)
342 .loc 1 293 5 is_stmt 1 view .LVU110
343 .loc 1 293 14 is_stmt 0 view .LVU111
344 004e 1449 ldr r1, .L34
345 0050 C968 ldr r1, [r1, #12]
346 .loc 1 293 8 view .LVU112
347 0052 1142 tst r1, r2
348 0054 03D0 beq .L25
294:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** {
295:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** pExtiConfig->Trigger |= EXTI_TRIGGER_FALLING;
349 .loc 1 295 7 is_stmt 1 view .LVU113
350 .loc 1 295 28 is_stmt 0 view .LVU114
351 0056 9A68 ldr r2, [r3, #8]
352 .LVL23:
353 .loc 1 295 28 view .LVU115
354 0058 42F00202 orr r2, r2, #2
355 005c 9A60 str r2, [r3, #8]
356 .L25:
296:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** }
297:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c ****
298:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** /* Get Gpio port selection for gpio lines */
299:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** if ((pExtiConfig->Line & EXTI_GPIO) == EXTI_GPIO)
357 .loc 1 299 5 is_stmt 1 view .LVU116
358 .loc 1 299 28 is_stmt 0 view .LVU117
359 005e 04F0C062 and r2, r4, #100663296
360 .loc 1 299 8 view .LVU118
ARM GAS /tmp/ccTKBm5t.s page 13
361 0062 B2F1C06F cmp r2, #100663296
362 0066 04D0 beq .L33
300:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** {
301:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** assert_param(IS_EXTI_GPIO_PIN(linepos));
302:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c ****
303:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** regval = SYSCFG->EXTICR[linepos >> 2u];
304:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** pExtiConfig->GPIOSel = (regval >> (SYSCFG_EXTICR1_EXTI1_Pos * (linepos & 0x03u))) & SYSCFG_EX
305:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** }
306:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** }
307:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c ****
308:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** return HAL_OK;
363 .loc 1 308 10 view .LVU119
364 0068 0020 movs r0, #0
365 006a 15E0 b .L20
366 .LVL24:
367 .L21:
268:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** }
368 .loc 1 268 5 is_stmt 1 view .LVU120
268:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** }
369 .loc 1 268 23 is_stmt 0 view .LVU121
370 006c 0021 movs r1, #0
371 .LVL25:
268:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** }
372 .loc 1 268 23 view .LVU122
373 006e 5960 str r1, [r3, #4]
374 0070 D9E7 b .L22
375 .LVL26:
376 .L33:
301:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c ****
377 .loc 1 301 7 is_stmt 1 view .LVU123
303:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** pExtiConfig->GPIOSel = (regval >> (SYSCFG_EXTICR1_EXTI1_Pos * (linepos & 0x03u))) & SYSCFG_EX
378 .loc 1 303 7 view .LVU124
303:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** pExtiConfig->GPIOSel = (regval >> (SYSCFG_EXTICR1_EXTI1_Pos * (linepos & 0x03u))) & SYSCFG_EX
379 .loc 1 303 39 is_stmt 0 view .LVU125
380 0072 4FEA9C01 lsr r1, ip, #2
303:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** pExtiConfig->GPIOSel = (regval >> (SYSCFG_EXTICR1_EXTI1_Pos * (linepos & 0x03u))) & SYSCFG_EX
381 .loc 1 303 14 view .LVU126
382 0076 0231 adds r1, r1, #2
383 0078 0A4A ldr r2, .L34+4
384 007a 52F82110 ldr r1, [r2, r1, lsl #2]
385 .LVL27:
304:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** }
386 .loc 1 304 7 is_stmt 1 view .LVU127
304:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** }
387 .loc 1 304 78 is_stmt 0 view .LVU128
388 007e 04F00302 and r2, r4, #3
304:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** }
389 .loc 1 304 67 view .LVU129
390 0082 9200 lsls r2, r2, #2
304:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** }
391 .loc 1 304 38 view .LVU130
392 0084 21FA02F2 lsr r2, r1, r2
304:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** }
393 .loc 1 304 89 view .LVU131
394 0088 02F00F02 and r2, r2, #15
304:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** }
395 .loc 1 304 28 view .LVU132
ARM GAS /tmp/ccTKBm5t.s page 14
396 008c DA60 str r2, [r3, #12]
397 .loc 1 308 10 view .LVU133
398 008e 0020 movs r0, #0
399 0090 02E0 b .L20
400 .LVL28:
401 .L26:
402 .LCFI5:
403 .cfi_def_cfa_offset 0
404 .cfi_restore 4
246:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** }
405 .loc 1 246 12 view .LVU134
406 0092 0120 movs r0, #1
407 .LVL29:
309:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** }
408 .loc 1 309 1 view .LVU135
409 0094 7047 bx lr
410 .LVL30:
411 .L27:
412 .LCFI6:
413 .cfi_def_cfa_offset 4
414 .cfi_offset 4, -4
308:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** }
415 .loc 1 308 10 view .LVU136
416 0096 0020 movs r0, #0
417 .LVL31:
418 .L20:
419 .loc 1 309 1 view .LVU137
420 0098 5DF8044B ldr r4, [sp], #4
421 .LCFI7:
422 .cfi_restore 4
423 .cfi_def_cfa_offset 0
424 009c 7047 bx lr
425 .L35:
426 009e 00BF .align 2
427 .L34:
428 00a0 003C0140 .word 1073822720
429 00a4 00380140 .word 1073821696
430 .cfi_endproc
431 .LFE142:
433 .section .text.HAL_EXTI_ClearConfigLine,"ax",%progbits
434 .align 1
435 .global HAL_EXTI_ClearConfigLine
436 .syntax unified
437 .thumb
438 .thumb_func
439 .fpu fpv5-d16
441 HAL_EXTI_ClearConfigLine:
442 .LVL32:
443 .LFB143:
310:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c ****
311:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** /**
312:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** * @brief Clear whole configuration of a dedicated Exti line.
313:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** * @param hexti Exti handle.
314:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** * @retval HAL Status.
315:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** */
316:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** HAL_StatusTypeDef HAL_EXTI_ClearConfigLine(EXTI_HandleTypeDef *hexti)
317:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** {
ARM GAS /tmp/ccTKBm5t.s page 15
444 .loc 1 317 1 is_stmt 1 view -0
445 .cfi_startproc
446 @ args = 0, pretend = 0, frame = 0
447 @ frame_needed = 0, uses_anonymous_args = 0
318:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** uint32_t regval;
448 .loc 1 318 3 view .LVU139
319:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** uint32_t linepos;
449 .loc 1 319 3 view .LVU140
320:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** uint32_t maskline;
450 .loc 1 320 3 view .LVU141
321:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c ****
322:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** /* Check null pointer */
323:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** if (hexti == NULL)
451 .loc 1 323 3 view .LVU142
452 .loc 1 323 6 is_stmt 0 view .LVU143
453 0000 0028 cmp r0, #0
454 0002 38D0 beq .L38
317:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** uint32_t regval;
455 .loc 1 317 1 view .LVU144
456 0004 10B5 push {r4, lr}
457 .LCFI8:
458 .cfi_def_cfa_offset 8
459 .cfi_offset 4, -8
460 .cfi_offset 14, -4
461 0006 8446 mov ip, r0
324:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** {
325:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** return HAL_ERROR;
326:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** }
327:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c ****
328:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** /* Check the parameter */
329:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** assert_param(IS_EXTI_LINE(hexti->Line));
462 .loc 1 329 3 is_stmt 1 view .LVU145
330:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c ****
331:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** /* compute line mask */
332:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** linepos = (hexti->Line & EXTI_PIN_MASK);
463 .loc 1 332 3 view .LVU146
464 .loc 1 332 19 is_stmt 0 view .LVU147
465 0008 0468 ldr r4, [r0]
466 .loc 1 332 11 view .LVU148
467 000a 04F01F00 and r0, r4, #31
468 .LVL33:
333:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** maskline = (1uL << linepos);
469 .loc 1 333 3 is_stmt 1 view .LVU149
470 .loc 1 333 12 is_stmt 0 view .LVU150
471 000e 0123 movs r3, #1
472 0010 8340 lsls r3, r3, r0
473 .LVL34:
334:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c ****
335:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** /* 1] Clear interrupt mode */
336:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** EXTI->IMR = (EXTI->IMR & ~maskline);
474 .loc 1 336 3 is_stmt 1 view .LVU151
475 .loc 1 336 20 is_stmt 0 view .LVU152
476 0012 1B4A ldr r2, .L46
477 0014 1168 ldr r1, [r2]
478 .loc 1 336 28 view .LVU153
479 0016 6FEA030E mvn lr, r3
480 .loc 1 336 26 view .LVU154
ARM GAS /tmp/ccTKBm5t.s page 16
481 001a 21EA0301 bic r1, r1, r3
482 .loc 1 336 13 view .LVU155
483 001e 1160 str r1, [r2]
337:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c ****
338:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** /* 2] Clear event mode */
339:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** EXTI->EMR = (EXTI->EMR & ~maskline);
484 .loc 1 339 3 is_stmt 1 view .LVU156
485 .loc 1 339 20 is_stmt 0 view .LVU157
486 0020 5168 ldr r1, [r2, #4]
487 .loc 1 339 26 view .LVU158
488 0022 21EA0303 bic r3, r1, r3
489 .LVL35:
490 .loc 1 339 13 view .LVU159
491 0026 5360 str r3, [r2, #4]
340:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c ****
341:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** /* 3] Clear triggers in case of configurable lines */
342:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** if ((hexti->Line & EXTI_CONFIG) != 0x00u)
492 .loc 1 342 3 is_stmt 1 view .LVU160
493 .loc 1 342 13 is_stmt 0 view .LVU161
494 0028 DCF80030 ldr r3, [ip]
495 .loc 1 342 6 view .LVU162
496 002c 13F0007F tst r3, #33554432
497 0030 23D0 beq .L39
343:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** {
344:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** EXTI->RTSR = (EXTI->RTSR & ~maskline);
498 .loc 1 344 5 is_stmt 1 view .LVU163
499 .loc 1 344 23 is_stmt 0 view .LVU164
500 0032 9368 ldr r3, [r2, #8]
501 .loc 1 344 30 view .LVU165
502 0034 0EEA0303 and r3, lr, r3
503 .loc 1 344 16 view .LVU166
504 0038 9360 str r3, [r2, #8]
345:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** EXTI->FTSR = (EXTI->FTSR & ~maskline);
505 .loc 1 345 5 is_stmt 1 view .LVU167
506 .loc 1 345 23 is_stmt 0 view .LVU168
507 003a D368 ldr r3, [r2, #12]
508 .loc 1 345 30 view .LVU169
509 003c 0EEA0303 and r3, lr, r3
510 .loc 1 345 16 view .LVU170
511 0040 D360 str r3, [r2, #12]
346:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c ****
347:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** /* Get Gpio port selection for gpio lines */
348:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** if ((hexti->Line & EXTI_GPIO) == EXTI_GPIO)
512 .loc 1 348 5 is_stmt 1 view .LVU171
513 .loc 1 348 15 is_stmt 0 view .LVU172
514 0042 DCF80030 ldr r3, [ip]
515 .loc 1 348 22 view .LVU173
516 0046 03F0C063 and r3, r3, #100663296
517 .loc 1 348 8 view .LVU174
518 004a B3F1C06F cmp r3, #100663296
519 004e 01D0 beq .L45
349:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** {
350:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** assert_param(IS_EXTI_GPIO_PIN(linepos));
351:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c ****
352:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** regval = SYSCFG->EXTICR[linepos >> 2u];
353:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** regval &= ~(SYSCFG_EXTICR1_EXTI0 << (SYSCFG_EXTICR1_EXTI1_Pos * (linepos & 0x03u)));
354:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** SYSCFG->EXTICR[linepos >> 2u] = regval;
ARM GAS /tmp/ccTKBm5t.s page 17
355:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** }
356:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** }
357:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c ****
358:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** return HAL_OK;
520 .loc 1 358 10 view .LVU175
521 0050 0020 movs r0, #0
522 .LVL36:
523 .loc 1 358 10 view .LVU176
524 0052 13E0 b .L37
525 .LVL37:
526 .L45:
350:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c ****
527 .loc 1 350 7 is_stmt 1 view .LVU177
352:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** regval &= ~(SYSCFG_EXTICR1_EXTI0 << (SYSCFG_EXTICR1_EXTI1_Pos * (linepos & 0x03u)));
528 .loc 1 352 7 view .LVU178
352:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** regval &= ~(SYSCFG_EXTICR1_EXTI0 << (SYSCFG_EXTICR1_EXTI1_Pos * (linepos & 0x03u)));
529 .loc 1 352 39 is_stmt 0 view .LVU179
530 0054 8008 lsrs r0, r0, #2
531 .LVL38:
352:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** regval &= ~(SYSCFG_EXTICR1_EXTI0 << (SYSCFG_EXTICR1_EXTI1_Pos * (linepos & 0x03u)));
532 .loc 1 352 14 view .LVU180
533 0056 0B49 ldr r1, .L46+4
534 0058 0230 adds r0, r0, #2
535 005a 51F82030 ldr r3, [r1, r0, lsl #2]
536 .LVL39:
353:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** SYSCFG->EXTICR[linepos >> 2u] = regval;
537 .loc 1 353 7 is_stmt 1 view .LVU181
353:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** SYSCFG->EXTICR[linepos >> 2u] = regval;
538 .loc 1 353 80 is_stmt 0 view .LVU182
539 005e 04F00304 and r4, r4, #3
540 .LVL40:
353:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** SYSCFG->EXTICR[linepos >> 2u] = regval;
541 .loc 1 353 69 view .LVU183
542 0062 A400 lsls r4, r4, #2
353:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** SYSCFG->EXTICR[linepos >> 2u] = regval;
543 .loc 1 353 40 view .LVU184
544 0064 0F22 movs r2, #15
545 0066 02FA04F4 lsl r4, r2, r4
353:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** SYSCFG->EXTICR[linepos >> 2u] = regval;
546 .loc 1 353 14 view .LVU185
547 006a 23EA0404 bic r4, r3, r4
548 .LVL41:
354:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** }
549 .loc 1 354 7 is_stmt 1 view .LVU186
354:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** }
550 .loc 1 354 37 is_stmt 0 view .LVU187
551 006e 41F82040 str r4, [r1, r0, lsl #2]
552 .loc 1 358 10 view .LVU188
553 0072 0020 movs r0, #0
554 0074 02E0 b .L37
555 .LVL42:
556 .L38:
557 .LCFI9:
558 .cfi_def_cfa_offset 0
559 .cfi_restore 4
560 .cfi_restore 14
325:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** }
ARM GAS /tmp/ccTKBm5t.s page 18
561 .loc 1 325 12 view .LVU189
562 0076 0120 movs r0, #1
563 .LVL43:
359:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** }
564 .loc 1 359 1 view .LVU190
565 0078 7047 bx lr
566 .LVL44:
567 .L39:
568 .LCFI10:
569 .cfi_def_cfa_offset 8
570 .cfi_offset 4, -8
571 .cfi_offset 14, -4
358:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** }
572 .loc 1 358 10 view .LVU191
573 007a 0020 movs r0, #0
574 .LVL45:
575 .L37:
576 .loc 1 359 1 view .LVU192
577 007c 10BD pop {r4, pc}
578 .L47:
579 007e 00BF .align 2
580 .L46:
581 0080 003C0140 .word 1073822720
582 0084 00380140 .word 1073821696
583 .cfi_endproc
584 .LFE143:
586 .section .text.HAL_EXTI_RegisterCallback,"ax",%progbits
587 .align 1
588 .global HAL_EXTI_RegisterCallback
589 .syntax unified
590 .thumb
591 .thumb_func
592 .fpu fpv5-d16
594 HAL_EXTI_RegisterCallback:
595 .LVL46:
596 .LFB144:
360:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c ****
361:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** /**
362:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** * @brief Register callback for a dedicated Exti line.
363:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** * @param hexti Exti handle.
364:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** * @param CallbackID User callback identifier.
365:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** * This parameter can be one of @arg @ref EXTI_CallbackIDTypeDef values.
366:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** * @param pPendingCbfn function pointer to be stored as callback.
367:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** * @retval HAL Status.
368:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** */
369:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** HAL_StatusTypeDef HAL_EXTI_RegisterCallback(EXTI_HandleTypeDef *hexti, EXTI_CallbackIDTypeDef Callb
370:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** {
597 .loc 1 370 1 is_stmt 1 view -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 .loc 1 370 1 is_stmt 0 view .LVU194
603 0000 0346 mov r3, r0
371:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** HAL_StatusTypeDef status = HAL_OK;
604 .loc 1 371 3 is_stmt 1 view .LVU195
605 .LVL47:
ARM GAS /tmp/ccTKBm5t.s page 19
372:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c ****
373:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** switch (CallbackID)
606 .loc 1 373 3 view .LVU196
607 0002 0846 mov r0, r1
608 .LVL48:
609 .loc 1 373 3 is_stmt 0 view .LVU197
610 0004 09B9 cbnz r1, .L50
374:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** {
375:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** case HAL_EXTI_COMMON_CB_ID:
376:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** hexti->PendingCallback = pPendingCbfn;
611 .loc 1 376 7 is_stmt 1 view .LVU198
612 .loc 1 376 30 is_stmt 0 view .LVU199
613 0006 5A60 str r2, [r3, #4]
377:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** break;
614 .loc 1 377 7 is_stmt 1 view .LVU200
615 0008 7047 bx lr
616 .L50:
378:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c ****
379:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** default:
380:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** status = HAL_ERROR;
617 .loc 1 380 14 is_stmt 0 view .LVU201
618 000a 0120 movs r0, #1
619 .LVL49:
381:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** break;
382:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** }
383:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c ****
384:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** return status;
620 .loc 1 384 3 is_stmt 1 view .LVU202
385:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** }
621 .loc 1 385 1 is_stmt 0 view .LVU203
622 000c 7047 bx lr
623 .cfi_endproc
624 .LFE144:
626 .section .text.HAL_EXTI_GetHandle,"ax",%progbits
627 .align 1
628 .global HAL_EXTI_GetHandle
629 .syntax unified
630 .thumb
631 .thumb_func
632 .fpu fpv5-d16
634 HAL_EXTI_GetHandle:
635 .LVL50:
636 .LFB145:
386:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c ****
387:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** /**
388:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** * @brief Store line number as handle private field.
389:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** * @param hexti Exti handle.
390:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** * @param ExtiLine Exti line number.
391:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** * This parameter can be from 0 to @ref EXTI_LINE_NB.
392:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** * @retval HAL Status.
393:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** */
394:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** HAL_StatusTypeDef HAL_EXTI_GetHandle(EXTI_HandleTypeDef *hexti, uint32_t ExtiLine)
395:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** {
637 .loc 1 395 1 is_stmt 1 view -0
638 .cfi_startproc
639 @ args = 0, pretend = 0, frame = 0
640 @ frame_needed = 0, uses_anonymous_args = 0
ARM GAS /tmp/ccTKBm5t.s page 20
641 @ link register save eliminated.
396:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** /* Check the parameters */
397:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** assert_param(IS_EXTI_LINE(ExtiLine));
642 .loc 1 397 3 view .LVU205
398:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c ****
399:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** /* Check null pointer */
400:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** if (hexti == NULL)
643 .loc 1 400 3 view .LVU206
644 .loc 1 400 6 is_stmt 0 view .LVU207
645 0000 10B1 cbz r0, .L53
401:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** {
402:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** return HAL_ERROR;
403:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** }
404:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** else
405:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** {
406:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** /* Store line number as handle private field */
407:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** hexti->Line = ExtiLine;
646 .loc 1 407 5 is_stmt 1 view .LVU208
647 .loc 1 407 17 is_stmt 0 view .LVU209
648 0002 0160 str r1, [r0]
408:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c ****
409:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** return HAL_OK;
649 .loc 1 409 5 is_stmt 1 view .LVU210
650 .loc 1 409 12 is_stmt 0 view .LVU211
651 0004 0020 movs r0, #0
652 .LVL51:
653 .loc 1 409 12 view .LVU212
654 0006 7047 bx lr
655 .LVL52:
656 .L53:
402:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** }
657 .loc 1 402 12 view .LVU213
658 0008 0120 movs r0, #1
659 .LVL53:
410:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** }
411:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** }
660 .loc 1 411 1 view .LVU214
661 000a 7047 bx lr
662 .cfi_endproc
663 .LFE145:
665 .section .text.HAL_EXTI_IRQHandler,"ax",%progbits
666 .align 1
667 .global HAL_EXTI_IRQHandler
668 .syntax unified
669 .thumb
670 .thumb_func
671 .fpu fpv5-d16
673 HAL_EXTI_IRQHandler:
674 .LVL54:
675 .LFB146:
412:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c ****
413:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** /**
414:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** * @}
415:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** */
416:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c ****
417:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** /** @addtogroup EXTI_Exported_Functions_Group2
418:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** * @brief EXTI IO functions.
ARM GAS /tmp/ccTKBm5t.s page 21
419:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** *
420:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** @verbatim
421:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** ===============================================================================
422:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** ##### IO operation functions #####
423:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** ===============================================================================
424:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c ****
425:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** @endverbatim
426:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** * @{
427:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** */
428:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c ****
429:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** /**
430:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** * @brief Handle EXTI interrupt request.
431:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** * @param hexti Exti handle.
432:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** * @retval none.
433:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** */
434:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** void HAL_EXTI_IRQHandler(EXTI_HandleTypeDef *hexti)
435:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** {
676 .loc 1 435 1 is_stmt 1 view -0
677 .cfi_startproc
678 @ args = 0, pretend = 0, frame = 0
679 @ frame_needed = 0, uses_anonymous_args = 0
680 .loc 1 435 1 is_stmt 0 view .LVU216
681 0000 08B5 push {r3, lr}
682 .LCFI11:
683 .cfi_def_cfa_offset 8
684 .cfi_offset 3, -8
685 .cfi_offset 14, -4
436:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** uint32_t regval;
686 .loc 1 436 3 is_stmt 1 view .LVU217
437:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** uint32_t maskline;
687 .loc 1 437 3 view .LVU218
438:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c ****
439:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** /* Compute line mask */
440:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** maskline = (1uL << (hexti->Line & EXTI_PIN_MASK));
688 .loc 1 440 3 view .LVU219
689 .loc 1 440 28 is_stmt 0 view .LVU220
690 0002 0368 ldr r3, [r0]
691 .loc 1 440 35 view .LVU221
692 0004 03F01F02 and r2, r3, #31
693 .loc 1 440 12 view .LVU222
694 0008 0123 movs r3, #1
695 000a 9340 lsls r3, r3, r2
696 .LVL55:
441:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c ****
442:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** /* Get pending bit */
443:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** regval = (EXTI->PR & maskline);
697 .loc 1 443 3 is_stmt 1 view .LVU223
698 .loc 1 443 17 is_stmt 0 view .LVU224
699 000c 044A ldr r2, .L57
700 000e 5269 ldr r2, [r2, #20]
701 .LVL56:
444:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** if (regval != 0x00u)
702 .loc 1 444 3 is_stmt 1 view .LVU225
703 .loc 1 444 6 is_stmt 0 view .LVU226
704 0010 1A42 tst r2, r3
705 0012 04D0 beq .L54
445:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** {
ARM GAS /tmp/ccTKBm5t.s page 22
446:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** /* Clear pending bit */
447:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** EXTI->PR = maskline;
706 .loc 1 447 5 is_stmt 1 view .LVU227
707 .loc 1 447 14 is_stmt 0 view .LVU228
708 0014 024A ldr r2, .L57
709 .LVL57:
710 .loc 1 447 14 view .LVU229
711 0016 5361 str r3, [r2, #20]
448:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c ****
449:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** /* Call callback */
450:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** if (hexti->PendingCallback != NULL)
712 .loc 1 450 5 is_stmt 1 view .LVU230
713 .loc 1 450 14 is_stmt 0 view .LVU231
714 0018 4368 ldr r3, [r0, #4]
715 .LVL58:
716 .loc 1 450 8 view .LVU232
717 001a 03B1 cbz r3, .L54
451:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** {
452:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** hexti->PendingCallback();
718 .loc 1 452 7 is_stmt 1 view .LVU233
719 001c 9847 blx r3
720 .LVL59:
721 .L54:
453:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** }
454:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** }
455:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** }
722 .loc 1 455 1 is_stmt 0 view .LVU234
723 001e 08BD pop {r3, pc}
724 .L58:
725 .align 2
726 .L57:
727 0020 003C0140 .word 1073822720
728 .cfi_endproc
729 .LFE146:
731 .section .text.HAL_EXTI_GetPending,"ax",%progbits
732 .align 1
733 .global HAL_EXTI_GetPending
734 .syntax unified
735 .thumb
736 .thumb_func
737 .fpu fpv5-d16
739 HAL_EXTI_GetPending:
740 .LVL60:
741 .LFB147:
456:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c ****
457:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** /**
458:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** * @brief Get interrupt pending bit of a dedicated line.
459:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** * @param hexti Exti handle.
460:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** * @param Edge Specify which pending edge as to be checked.
461:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** * This parameter can be one of the following values:
462:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** * @arg @ref EXTI_TRIGGER_RISING_FALLING
463:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** * This parameter is kept for compatibility with other series.
464:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** * @retval 1 if interrupt is pending else 0.
465:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** */
466:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** uint32_t HAL_EXTI_GetPending(EXTI_HandleTypeDef *hexti, uint32_t Edge)
467:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** {
742 .loc 1 467 1 is_stmt 1 view -0
ARM GAS /tmp/ccTKBm5t.s page 23
743 .cfi_startproc
744 @ args = 0, pretend = 0, frame = 0
745 @ frame_needed = 0, uses_anonymous_args = 0
746 @ link register save eliminated.
468:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** uint32_t regval;
747 .loc 1 468 3 view .LVU236
469:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** uint32_t linepos;
748 .loc 1 469 3 view .LVU237
470:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** uint32_t maskline;
749 .loc 1 470 3 view .LVU238
471:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c ****
472:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** /* Check parameters */
473:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** assert_param(IS_EXTI_LINE(hexti->Line));
750 .loc 1 473 3 view .LVU239
474:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** assert_param(IS_EXTI_CONFIG_LINE(hexti->Line));
751 .loc 1 474 3 view .LVU240
475:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** assert_param(IS_EXTI_PENDING_EDGE(Edge));
752 .loc 1 475 3 view .LVU241
476:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c ****
477:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** /* Compute line mask */
478:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** linepos = (hexti->Line & EXTI_PIN_MASK);
753 .loc 1 478 3 view .LVU242
754 .loc 1 478 19 is_stmt 0 view .LVU243
755 0000 0368 ldr r3, [r0]
756 .loc 1 478 11 view .LVU244
757 0002 03F01F03 and r3, r3, #31
758 .LVL61:
479:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** maskline = (1uL << linepos);
759 .loc 1 479 3 is_stmt 1 view .LVU245
760 .loc 1 479 12 is_stmt 0 view .LVU246
761 0006 0120 movs r0, #1
762 .LVL62:
763 .loc 1 479 12 view .LVU247
764 0008 00FA03F2 lsl r2, r0, r3
765 .LVL63:
480:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c ****
481:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** /* return 1 if bit is set else 0 */
482:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** regval = ((EXTI->PR & maskline) >> linepos);
766 .loc 1 482 3 is_stmt 1 view .LVU248
767 .loc 1 482 18 is_stmt 0 view .LVU249
768 000c 0249 ldr r1, .L60
769 .LVL64:
770 .loc 1 482 18 view .LVU250
771 000e 4869 ldr r0, [r1, #20]
772 .loc 1 482 23 view .LVU251
773 0010 1040 ands r0, r0, r2
774 .LVL65:
483:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** return regval;
775 .loc 1 483 3 is_stmt 1 view .LVU252
484:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** }
776 .loc 1 484 1 is_stmt 0 view .LVU253
777 0012 D840 lsrs r0, r0, r3
778 .LVL66:
779 .loc 1 484 1 view .LVU254
780 0014 7047 bx lr
781 .L61:
782 0016 00BF .align 2
ARM GAS /tmp/ccTKBm5t.s page 24
783 .L60:
784 0018 003C0140 .word 1073822720
785 .cfi_endproc
786 .LFE147:
788 .section .text.HAL_EXTI_ClearPending,"ax",%progbits
789 .align 1
790 .global HAL_EXTI_ClearPending
791 .syntax unified
792 .thumb
793 .thumb_func
794 .fpu fpv5-d16
796 HAL_EXTI_ClearPending:
797 .LVL67:
798 .LFB148:
485:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c ****
486:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** /**
487:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** * @brief Clear interrupt pending bit of a dedicated line.
488:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** * @param hexti Exti handle.
489:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** * @param Edge Specify which pending edge as to be clear.
490:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** * This parameter can be one of the following values:
491:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** * @arg @ref EXTI_TRIGGER_RISING_FALLING
492:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** * This parameter is kept for compatibility with other series.
493:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** * @retval None.
494:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** */
495:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** void HAL_EXTI_ClearPending(EXTI_HandleTypeDef *hexti, uint32_t Edge)
496:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** {
799 .loc 1 496 1 is_stmt 1 view -0
800 .cfi_startproc
801 @ args = 0, pretend = 0, frame = 0
802 @ frame_needed = 0, uses_anonymous_args = 0
803 @ link register save eliminated.
497:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** uint32_t maskline;
804 .loc 1 497 3 view .LVU256
498:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c ****
499:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** /* Check parameters */
500:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** assert_param(IS_EXTI_LINE(hexti->Line));
805 .loc 1 500 3 view .LVU257
501:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** assert_param(IS_EXTI_CONFIG_LINE(hexti->Line));
806 .loc 1 501 3 view .LVU258
502:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** assert_param(IS_EXTI_PENDING_EDGE(Edge));
807 .loc 1 502 3 view .LVU259
503:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c ****
504:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** /* Compute line mask */
505:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** maskline = (1uL << (hexti->Line & EXTI_PIN_MASK));
808 .loc 1 505 3 view .LVU260
809 .loc 1 505 28 is_stmt 0 view .LVU261
810 0000 0268 ldr r2, [r0]
811 .loc 1 505 35 view .LVU262
812 0002 02F01F02 and r2, r2, #31
813 .loc 1 505 12 view .LVU263
814 0006 0123 movs r3, #1
815 0008 9340 lsls r3, r3, r2
816 .LVL68:
506:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c ****
507:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** /* Clear Pending bit */
508:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** EXTI->PR = maskline;
817 .loc 1 508 3 is_stmt 1 view .LVU264
ARM GAS /tmp/ccTKBm5t.s page 25
818 .loc 1 508 12 is_stmt 0 view .LVU265
819 000a 014A ldr r2, .L63
820 000c 5361 str r3, [r2, #20]
509:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** }
821 .loc 1 509 1 view .LVU266
822 000e 7047 bx lr
823 .L64:
824 .align 2
825 .L63:
826 0010 003C0140 .word 1073822720
827 .cfi_endproc
828 .LFE148:
830 .section .text.HAL_EXTI_GenerateSWI,"ax",%progbits
831 .align 1
832 .global HAL_EXTI_GenerateSWI
833 .syntax unified
834 .thumb
835 .thumb_func
836 .fpu fpv5-d16
838 HAL_EXTI_GenerateSWI:
839 .LVL69:
840 .LFB149:
510:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c ****
511:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** /**
512:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** * @brief Generate a software interrupt for a dedicated line.
513:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** * @param hexti Exti handle.
514:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** * @retval None.
515:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** */
516:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** void HAL_EXTI_GenerateSWI(EXTI_HandleTypeDef *hexti)
517:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** {
841 .loc 1 517 1 is_stmt 1 view -0
842 .cfi_startproc
843 @ args = 0, pretend = 0, frame = 0
844 @ frame_needed = 0, uses_anonymous_args = 0
845 @ link register save eliminated.
518:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** uint32_t maskline;
846 .loc 1 518 3 view .LVU268
519:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c ****
520:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** /* Check parameters */
521:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** assert_param(IS_EXTI_LINE(hexti->Line));
847 .loc 1 521 3 view .LVU269
522:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** assert_param(IS_EXTI_CONFIG_LINE(hexti->Line));
848 .loc 1 522 3 view .LVU270
523:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c ****
524:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** /* Compute line mask */
525:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** maskline = (1uL << (hexti->Line & EXTI_PIN_MASK));
849 .loc 1 525 3 view .LVU271
850 .loc 1 525 28 is_stmt 0 view .LVU272
851 0000 0268 ldr r2, [r0]
852 .loc 1 525 35 view .LVU273
853 0002 02F01F02 and r2, r2, #31
854 .loc 1 525 12 view .LVU274
855 0006 0123 movs r3, #1
856 0008 9340 lsls r3, r3, r2
857 .LVL70:
526:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c ****
527:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** /* Generate Software interrupt */
ARM GAS /tmp/ccTKBm5t.s page 26
528:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** EXTI->SWIER = maskline;
858 .loc 1 528 3 is_stmt 1 view .LVU275
859 .loc 1 528 15 is_stmt 0 view .LVU276
860 000a 014A ldr r2, .L66
861 000c 1361 str r3, [r2, #16]
529:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_exti.c **** }
862 .loc 1 529 1 view .LVU277
863 000e 7047 bx lr
864 .L67:
865 .align 2
866 .L66:
867 0010 003C0140 .word 1073822720
868 .cfi_endproc
869 .LFE149:
871 .text
872 .Letext0:
873 .file 2 "Drivers/CMSIS/Device/ST/STM32F7xx/Include/stm32f767xx.h"
874 .file 3 "/usr/lib/gcc/arm-none-eabi/10.3.1/include/stdint.h"
875 .file 4 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_hal_def.h"
876 .file 5 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_hal_exti.h"
ARM GAS /tmp/ccTKBm5t.s page 27
DEFINED SYMBOLS
*ABS*:0000000000000000 stm32f7xx_hal_exti.c
/tmp/ccTKBm5t.s:17 .text.HAL_EXTI_SetConfigLine:0000000000000000 $t
/tmp/ccTKBm5t.s:25 .text.HAL_EXTI_SetConfigLine:0000000000000000 HAL_EXTI_SetConfigLine
/tmp/ccTKBm5t.s:239 .text.HAL_EXTI_SetConfigLine:00000000000000cc $d
/tmp/ccTKBm5t.s:245 .text.HAL_EXTI_GetConfigLine:0000000000000000 $t
/tmp/ccTKBm5t.s:252 .text.HAL_EXTI_GetConfigLine:0000000000000000 HAL_EXTI_GetConfigLine
/tmp/ccTKBm5t.s:428 .text.HAL_EXTI_GetConfigLine:00000000000000a0 $d
/tmp/ccTKBm5t.s:434 .text.HAL_EXTI_ClearConfigLine:0000000000000000 $t
/tmp/ccTKBm5t.s:441 .text.HAL_EXTI_ClearConfigLine:0000000000000000 HAL_EXTI_ClearConfigLine
/tmp/ccTKBm5t.s:581 .text.HAL_EXTI_ClearConfigLine:0000000000000080 $d
/tmp/ccTKBm5t.s:587 .text.HAL_EXTI_RegisterCallback:0000000000000000 $t
/tmp/ccTKBm5t.s:594 .text.HAL_EXTI_RegisterCallback:0000000000000000 HAL_EXTI_RegisterCallback
/tmp/ccTKBm5t.s:627 .text.HAL_EXTI_GetHandle:0000000000000000 $t
/tmp/ccTKBm5t.s:634 .text.HAL_EXTI_GetHandle:0000000000000000 HAL_EXTI_GetHandle
/tmp/ccTKBm5t.s:666 .text.HAL_EXTI_IRQHandler:0000000000000000 $t
/tmp/ccTKBm5t.s:673 .text.HAL_EXTI_IRQHandler:0000000000000000 HAL_EXTI_IRQHandler
/tmp/ccTKBm5t.s:727 .text.HAL_EXTI_IRQHandler:0000000000000020 $d
/tmp/ccTKBm5t.s:732 .text.HAL_EXTI_GetPending:0000000000000000 $t
/tmp/ccTKBm5t.s:739 .text.HAL_EXTI_GetPending:0000000000000000 HAL_EXTI_GetPending
/tmp/ccTKBm5t.s:784 .text.HAL_EXTI_GetPending:0000000000000018 $d
/tmp/ccTKBm5t.s:789 .text.HAL_EXTI_ClearPending:0000000000000000 $t
/tmp/ccTKBm5t.s:796 .text.HAL_EXTI_ClearPending:0000000000000000 HAL_EXTI_ClearPending
/tmp/ccTKBm5t.s:826 .text.HAL_EXTI_ClearPending:0000000000000010 $d
/tmp/ccTKBm5t.s:831 .text.HAL_EXTI_GenerateSWI:0000000000000000 $t
/tmp/ccTKBm5t.s:838 .text.HAL_EXTI_GenerateSWI:0000000000000000 HAL_EXTI_GenerateSWI
/tmp/ccTKBm5t.s:867 .text.HAL_EXTI_GenerateSWI:0000000000000010 $d
NO UNDEFINED SYMBOLS