summaryrefslogtreecommitdiff
path: root/fw/midi-dials/build/stm32f0xx_hal_exti.lst
diff options
context:
space:
mode:
Diffstat (limited to 'fw/midi-dials/build/stm32f0xx_hal_exti.lst')
-rw-r--r--fw/midi-dials/build/stm32f0xx_hal_exti.lst1373
1 files changed, 1373 insertions, 0 deletions
diff --git a/fw/midi-dials/build/stm32f0xx_hal_exti.lst b/fw/midi-dials/build/stm32f0xx_hal_exti.lst
new file mode 100644
index 0000000..8ebc8ee
--- /dev/null
+++ b/fw/midi-dials/build/stm32f0xx_hal_exti.lst
@@ -0,0 +1,1373 @@
+ARM GAS /tmp/ccoU2NQy.s page 1
+
+
+ 1 .cpu cortex-m0
+ 2 .eabi_attribute 20, 1
+ 3 .eabi_attribute 21, 1
+ 4 .eabi_attribute 23, 3
+ 5 .eabi_attribute 24, 1
+ 6 .eabi_attribute 25, 1
+ 7 .eabi_attribute 26, 1
+ 8 .eabi_attribute 30, 1
+ 9 .eabi_attribute 34, 0
+ 10 .eabi_attribute 18, 4
+ 11 .file "stm32f0xx_hal_exti.c"
+ 12 .text
+ 13 .Ltext0:
+ 14 .cfi_sections .debug_frame
+ 15 .section .text.HAL_EXTI_SetConfigLine,"ax",%progbits
+ 16 .align 1
+ 17 .global HAL_EXTI_SetConfigLine
+ 18 .syntax unified
+ 19 .code 16
+ 20 .thumb_func
+ 21 .fpu softvfp
+ 23 HAL_EXTI_SetConfigLine:
+ 24 .LFB40:
+ 25 .file 1 "Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c"
+ 1:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /**
+ 2:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** ******************************************************************************
+ 3:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * @file stm32f0xx_hal_exti.c
+ 4:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * @author MCD Application Team
+ 5:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * @brief EXTI HAL module driver.
+ 6:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * This file provides firmware functions to manage the following
+ 7:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * functionalities of the Extended Interrupts and events controller (EXTI) peripheral:
+ 8:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * + Initialization and de-initialization functions
+ 9:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * + IO operation functions
+ 10:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** *
+ 11:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** @verbatim
+ 12:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** ==============================================================================
+ 13:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** ##### EXTI Peripheral features #####
+ 14:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** ==============================================================================
+ 15:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** [..]
+ 16:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** (+) Each Exti line can be configured within this driver.
+ 17:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
+ 18:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** (+) Exti line can be configured in 3 different modes
+ 19:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** (++) Interrupt
+ 20:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** (++) Event
+ 21:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** (++) Both of them
+ 22:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
+ 23:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** (+) Configurable Exti lines can be configured with 3 different triggers
+ 24:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** (++) Rising
+ 25:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** (++) Falling
+ 26:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** (++) Both of them
+ 27:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
+ 28:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** (+) When set in interrupt mode, configurable Exti lines have two different
+ 29:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** interrupts pending registers which allow to distinguish which transition
+ 30:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** occurs:
+ 31:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** (++) Rising edge pending interrupt
+ 32:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** (++) Falling
+ 33:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
+ ARM GAS /tmp/ccoU2NQy.s page 2
+
+
+ 34:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** (+) Exti lines 0 to 15 are linked to gpio pin number 0 to 15. Gpio port can
+ 35:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** be selected through multiplexer.
+ 36:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
+ 37:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** ##### How to use this driver #####
+ 38:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** ==============================================================================
+ 39:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** [..]
+ 40:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
+ 41:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** (#) Configure the EXTI line using HAL_EXTI_SetConfigLine().
+ 42:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** (++) Choose the interrupt line number by setting "Line" member from
+ 43:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** EXTI_ConfigTypeDef structure.
+ 44:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** (++) Configure the interrupt and/or event mode using "Mode" member from
+ 45:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** EXTI_ConfigTypeDef structure.
+ 46:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** (++) For configurable lines, configure rising and/or falling trigger
+ 47:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** "Trigger" member from EXTI_ConfigTypeDef structure.
+ 48:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** (++) For Exti lines linked to gpio, choose gpio port using "GPIOSel"
+ 49:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** member from GPIO_InitTypeDef structure.
+ 50:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
+ 51:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** (#) Get current Exti configuration of a dedicated line using
+ 52:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** HAL_EXTI_GetConfigLine().
+ 53:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** (++) Provide exiting handle as parameter.
+ 54:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** (++) Provide pointer on EXTI_ConfigTypeDef structure as second parameter.
+ 55:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
+ 56:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** (#) Clear Exti configuration of a dedicated line using HAL_EXTI_GetConfigLine().
+ 57:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** (++) Provide exiting handle as parameter.
+ 58:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
+ 59:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** (#) Register callback to treat Exti interrupts using HAL_EXTI_RegisterCallback().
+ 60:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** (++) Provide exiting handle as first parameter.
+ 61:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** (++) Provide which callback will be registered using one value from
+ 62:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** EXTI_CallbackIDTypeDef.
+ 63:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** (++) Provide callback function pointer.
+ 64:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
+ 65:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** (#) Get interrupt pending bit using HAL_EXTI_GetPending().
+ 66:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
+ 67:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** (#) Clear interrupt pending bit using HAL_EXTI_GetPending().
+ 68:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
+ 69:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** (#) Generate software interrupt using HAL_EXTI_GenerateSWI().
+ 70:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
+ 71:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** @endverbatim
+ 72:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** ******************************************************************************
+ 73:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * @attention
+ 74:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** *
+ 75:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * <h2><center>&copy; Copyright (c) 2019 STMicroelectronics.
+ 76:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * All rights reserved.</center></h2>
+ 77:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** *
+ 78:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * This software component is licensed by ST under BSD 3-Clause license,
+ 79:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * the "License"; You may not use this file except in compliance with the
+ 80:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * License. You may obtain a copy of the License at:
+ 81:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * opensource.org/licenses/BSD-3-Clause
+ 82:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** *
+ 83:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** ******************************************************************************
+ 84:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** */
+ 85:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
+ 86:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* Includes ------------------------------------------------------------------*/
+ 87:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** #include "stm32f0xx_hal.h"
+ 88:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
+ 89:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /** @addtogroup STM32F0xx_HAL_Driver
+ 90:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * @{
+ ARM GAS /tmp/ccoU2NQy.s page 3
+
+
+ 91:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** */
+ 92:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
+ 93:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /** @addtogroup EXTI
+ 94:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * @{
+ 95:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** */
+ 96:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /** MISRA C:2012 deviation rule has been granted for following rule:
+ 97:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * Rule-18.1_b - Medium: Array `EXTICR' 1st subscript interval [0,7] may be out
+ 98:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * of bounds [0,3] in following API :
+ 99:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * HAL_EXTI_SetConfigLine
+ 100:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * HAL_EXTI_GetConfigLine
+ 101:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * HAL_EXTI_ClearConfigLine
+ 102:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** */
+ 103:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
+ 104:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** #ifdef HAL_EXTI_MODULE_ENABLED
+ 105:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
+ 106:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* Private typedef -----------------------------------------------------------*/
+ 107:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* Private defines -----------------------------------------------------------*/
+ 108:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /** @defgroup EXTI_Private_Constants EXTI Private Constants
+ 109:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * @{
+ 110:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** */
+ 111:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
+ 112:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /**
+ 113:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * @}
+ 114:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** */
+ 115:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
+ 116:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* Private macros ------------------------------------------------------------*/
+ 117:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* Private variables ---------------------------------------------------------*/
+ 118:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* Private function prototypes -----------------------------------------------*/
+ 119:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* Exported functions --------------------------------------------------------*/
+ 120:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
+ 121:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /** @addtogroup EXTI_Exported_Functions
+ 122:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * @{
+ 123:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** */
+ 124:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
+ 125:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /** @addtogroup EXTI_Exported_Functions_Group1
+ 126:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * @brief Configuration functions
+ 127:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** *
+ 128:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** @verbatim
+ 129:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** ===============================================================================
+ 130:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** ##### Configuration functions #####
+ 131:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** ===============================================================================
+ 132:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
+ 133:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** @endverbatim
+ 134:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * @{
+ 135:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** */
+ 136:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
+ 137:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /**
+ 138:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * @brief Set configuration of a dedicated Exti line.
+ 139:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * @param hexti Exti handle.
+ 140:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * @param pExtiConfig Pointer on EXTI configuration to be set.
+ 141:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * @retval HAL Status.
+ 142:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** */
+ 143:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** HAL_StatusTypeDef HAL_EXTI_SetConfigLine(EXTI_HandleTypeDef *hexti, EXTI_ConfigTypeDef *pExtiConfig
+ 144:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** {
+ 26 .loc 1 144 0
+ 27 .cfi_startproc
+ 28 @ args = 0, pretend = 0, frame = 0
+ ARM GAS /tmp/ccoU2NQy.s page 4
+
+
+ 29 @ frame_needed = 0, uses_anonymous_args = 0
+ 30 .LVL0:
+ 31 0000 70B5 push {r4, r5, r6, lr}
+ 32 .LCFI0:
+ 33 .cfi_def_cfa_offset 16
+ 34 .cfi_offset 4, -16
+ 35 .cfi_offset 5, -12
+ 36 .cfi_offset 6, -8
+ 37 .cfi_offset 14, -4
+ 145:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** uint32_t regval;
+ 146:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** uint32_t linepos;
+ 147:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** uint32_t maskline;
+ 148:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
+ 149:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* Check null pointer */
+ 150:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** if ((hexti == NULL) || (pExtiConfig == NULL))
+ 38 .loc 1 150 0
+ 39 0002 0028 cmp r0, #0
+ 40 0004 53D0 beq .L11
+ 41 .loc 1 150 0 is_stmt 0 discriminator 1
+ 42 0006 0029 cmp r1, #0
+ 43 0008 53D0 beq .L12
+ 151:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** {
+ 152:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** return HAL_ERROR;
+ 153:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
+ 154:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
+ 155:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* Check parameters */
+ 156:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** assert_param(IS_EXTI_LINE(pExtiConfig->Line));
+ 157:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** assert_param(IS_EXTI_MODE(pExtiConfig->Mode));
+ 158:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
+ 159:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* Assign line number to handle */
+ 160:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** hexti->Line = pExtiConfig->Line;
+ 44 .loc 1 160 0 is_stmt 1
+ 45 000a 0B68 ldr r3, [r1]
+ 46 000c 0360 str r3, [r0]
+ 161:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
+ 162:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* Compute line mask */
+ 163:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** linepos = (pExtiConfig->Line & EXTI_PIN_MASK);
+ 47 .loc 1 163 0
+ 48 000e 0C68 ldr r4, [r1]
+ 49 0010 1F22 movs r2, #31
+ 50 0012 2240 ands r2, r4
+ 51 .LVL1:
+ 164:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** maskline = (1uL << linepos);
+ 52 .loc 1 164 0
+ 53 0014 0123 movs r3, #1
+ 54 0016 9340 lsls r3, r3, r2
+ 55 .LVL2:
+ 165:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
+ 166:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* Configure triggers for configurable lines */
+ 167:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** if ((pExtiConfig->Line & EXTI_CONFIG) != 0x00u)
+ 56 .loc 1 167 0
+ 57 0018 A001 lsls r0, r4, #6
+ 58 001a 13D5 bpl .L3
+ 59 .LVL3:
+ 168:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** {
+ 169:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** assert_param(IS_EXTI_TRIGGER(pExtiConfig->Trigger));
+ 170:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
+ ARM GAS /tmp/ccoU2NQy.s page 5
+
+
+ 171:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* Configure rising trigger */
+ 172:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* Mask or set line */
+ 173:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** if ((pExtiConfig->Trigger & EXTI_TRIGGER_RISING) != 0x00u)
+ 60 .loc 1 173 0
+ 61 001c 8868 ldr r0, [r1, #8]
+ 62 001e C007 lsls r0, r0, #31
+ 63 0020 20D5 bpl .L4
+ 174:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** {
+ 175:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** EXTI->RTSR |= maskline;
+ 64 .loc 1 175 0
+ 65 0022 254D ldr r5, .L15
+ 66 0024 A868 ldr r0, [r5, #8]
+ 67 0026 1843 orrs r0, r3
+ 68 0028 A860 str r0, [r5, #8]
+ 69 .L5:
+ 176:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
+ 177:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** else
+ 178:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** {
+ 179:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** EXTI->RTSR &= ~maskline;
+ 180:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
+ 181:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
+ 182:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* Configure falling trigger */
+ 183:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* Mask or set line */
+ 184:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** if ((pExtiConfig->Trigger & EXTI_TRIGGER_FALLING) != 0x00u)
+ 70 .loc 1 184 0
+ 71 002a 8868 ldr r0, [r1, #8]
+ 72 002c 8007 lsls r0, r0, #30
+ 73 002e 1ED5 bpl .L6
+ 185:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** {
+ 186:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** EXTI->FTSR |= maskline;
+ 74 .loc 1 186 0
+ 75 0030 214D ldr r5, .L15
+ 76 0032 E868 ldr r0, [r5, #12]
+ 77 0034 1843 orrs r0, r3
+ 78 0036 E860 str r0, [r5, #12]
+ 79 .L7:
+ 187:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
+ 188:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** else
+ 189:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** {
+ 190:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** EXTI->FTSR &= ~maskline;
+ 191:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
+ 192:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
+ 193:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
+ 194:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* Configure gpio port selection in case of gpio exti line */
+ 195:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** if ((pExtiConfig->Line & EXTI_GPIO) == EXTI_GPIO)
+ 80 .loc 1 195 0
+ 81 0038 C025 movs r5, #192
+ 82 003a ED04 lsls r5, r5, #19
+ 83 003c 0868 ldr r0, [r1]
+ 84 003e 2840 ands r0, r5
+ 85 0040 A842 cmp r0, r5
+ 86 0042 19D0 beq .L13
+ 87 .LVL4:
+ 88 .L3:
+ 196:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** {
+ 197:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** assert_param(IS_EXTI_GPIO_PORT(pExtiConfig->GPIOSel));
+ 198:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** assert_param(IS_EXTI_GPIO_PIN(linepos));
+ ARM GAS /tmp/ccoU2NQy.s page 6
+
+
+ 199:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
+ 200:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** regval = SYSCFG->EXTICR[linepos >> 2u];
+ 201:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** regval &= ~(SYSCFG_EXTICR1_EXTI0 << (SYSCFG_EXTICR1_EXTI1_Pos * (linepos & 0x03u)));
+ 202:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** regval |= (pExtiConfig->GPIOSel << (SYSCFG_EXTICR1_EXTI1_Pos * (linepos & 0x03u)));
+ 203:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** SYSCFG->EXTICR[linepos >> 2u] = regval;
+ 204:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
+ 205:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
+ 206:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
+ 207:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* Configure interrupt mode : read current mode */
+ 208:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* Mask or set line */
+ 209:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** if ((pExtiConfig->Mode & EXTI_MODE_INTERRUPT) != 0x00u)
+ 89 .loc 1 209 0
+ 90 0044 4A68 ldr r2, [r1, #4]
+ 91 0046 D207 lsls r2, r2, #31
+ 92 0048 26D5 bpl .L8
+ 210:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** {
+ 211:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** EXTI->IMR |= maskline;
+ 93 .loc 1 211 0
+ 94 004a 1B48 ldr r0, .L15
+ 95 004c 0268 ldr r2, [r0]
+ 96 004e 1A43 orrs r2, r3
+ 97 0050 0260 str r2, [r0]
+ 98 .L9:
+ 212:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
+ 213:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** else
+ 214:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** {
+ 215:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** EXTI->IMR &= ~maskline;
+ 216:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
+ 217:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
+ 218:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* Configure event mode : read current mode */
+ 219:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* Mask or set line */
+ 220:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** if ((pExtiConfig->Mode & EXTI_MODE_EVENT) != 0x00u)
+ 99 .loc 1 220 0
+ 100 0052 4A68 ldr r2, [r1, #4]
+ 101 0054 9207 lsls r2, r2, #30
+ 102 0056 24D4 bmi .L14
+ 221:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** {
+ 222:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** EXTI->EMR |= maskline;
+ 223:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
+ 224:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** else
+ 225:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** {
+ 226:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** EXTI->EMR &= ~maskline;
+ 103 .loc 1 226 0
+ 104 0058 1749 ldr r1, .L15
+ 105 .LVL5:
+ 106 005a 4A68 ldr r2, [r1, #4]
+ 107 005c 9A43 bics r2, r3
+ 108 005e 4A60 str r2, [r1, #4]
+ 227:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
+ 228:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
+ 229:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** return HAL_OK;
+ 109 .loc 1 229 0
+ 110 0060 0020 movs r0, #0
+ 111 .LVL6:
+ 112 .L2:
+ 230:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
+ 113 .loc 1 230 0
+ ARM GAS /tmp/ccoU2NQy.s page 7
+
+
+ 114 @ sp needed
+ 115 0062 70BD pop {r4, r5, r6, pc}
+ 116 .LVL7:
+ 117 .L4:
+ 179:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
+ 118 .loc 1 179 0
+ 119 0064 144D ldr r5, .L15
+ 120 0066 A868 ldr r0, [r5, #8]
+ 121 0068 9843 bics r0, r3
+ 122 006a A860 str r0, [r5, #8]
+ 123 006c DDE7 b .L5
+ 124 .L6:
+ 190:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
+ 125 .loc 1 190 0
+ 126 006e 124D ldr r5, .L15
+ 127 0070 E868 ldr r0, [r5, #12]
+ 128 0072 9843 bics r0, r3
+ 129 0074 E860 str r0, [r5, #12]
+ 130 0076 DFE7 b .L7
+ 131 .L13:
+ 200:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** regval &= ~(SYSCFG_EXTICR1_EXTI0 << (SYSCFG_EXTICR1_EXTI1_Pos * (linepos & 0x03u)));
+ 132 .loc 1 200 0
+ 133 0078 9208 lsrs r2, r2, #2
+ 134 .LVL8:
+ 135 007a 104E ldr r6, .L15+4
+ 136 007c 0232 adds r2, r2, #2
+ 137 007e 9200 lsls r2, r2, #2
+ 138 0080 9559 ldr r5, [r2, r6]
+ 139 .LVL9:
+ 201:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** regval |= (pExtiConfig->GPIOSel << (SYSCFG_EXTICR1_EXTI1_Pos * (linepos & 0x03u)));
+ 140 .loc 1 201 0
+ 141 0082 0320 movs r0, #3
+ 142 0084 0440 ands r4, r0
+ 143 .LVL10:
+ 144 0086 A400 lsls r4, r4, #2
+ 145 0088 0C30 adds r0, r0, #12
+ 146 008a A040 lsls r0, r0, r4
+ 147 008c 8543 bics r5, r0
+ 148 .LVL11:
+ 202:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** SYSCFG->EXTICR[linepos >> 2u] = regval;
+ 149 .loc 1 202 0
+ 150 008e C868 ldr r0, [r1, #12]
+ 151 0090 A040 lsls r0, r0, r4
+ 152 0092 2843 orrs r0, r5
+ 153 .LVL12:
+ 203:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
+ 154 .loc 1 203 0
+ 155 0094 9051 str r0, [r2, r6]
+ 156 0096 D5E7 b .L3
+ 157 .LVL13:
+ 158 .L8:
+ 215:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
+ 159 .loc 1 215 0
+ 160 0098 0748 ldr r0, .L15
+ 161 009a 0268 ldr r2, [r0]
+ 162 009c 9A43 bics r2, r3
+ 163 009e 0260 str r2, [r0]
+ ARM GAS /tmp/ccoU2NQy.s page 8
+
+
+ 164 00a0 D7E7 b .L9
+ 165 .L14:
+ 222:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
+ 166 .loc 1 222 0
+ 167 00a2 0549 ldr r1, .L15
+ 168 .LVL14:
+ 169 00a4 4A68 ldr r2, [r1, #4]
+ 170 00a6 1343 orrs r3, r2
+ 171 .LVL15:
+ 172 00a8 4B60 str r3, [r1, #4]
+ 229:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
+ 173 .loc 1 229 0
+ 174 00aa 0020 movs r0, #0
+ 175 00ac D9E7 b .L2
+ 176 .LVL16:
+ 177 .L11:
+ 152:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
+ 178 .loc 1 152 0
+ 179 00ae 0120 movs r0, #1
+ 180 .LVL17:
+ 181 00b0 D7E7 b .L2
+ 182 .LVL18:
+ 183 .L12:
+ 184 00b2 0120 movs r0, #1
+ 185 .LVL19:
+ 186 00b4 D5E7 b .L2
+ 187 .L16:
+ 188 00b6 C046 .align 2
+ 189 .L15:
+ 190 00b8 00040140 .word 1073808384
+ 191 00bc 00000140 .word 1073807360
+ 192 .cfi_endproc
+ 193 .LFE40:
+ 195 .section .text.HAL_EXTI_GetConfigLine,"ax",%progbits
+ 196 .align 1
+ 197 .global HAL_EXTI_GetConfigLine
+ 198 .syntax unified
+ 199 .code 16
+ 200 .thumb_func
+ 201 .fpu softvfp
+ 203 HAL_EXTI_GetConfigLine:
+ 204 .LFB41:
+ 231:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
+ 232:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /**
+ 233:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * @brief Get configuration of a dedicated Exti line.
+ 234:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * @param hexti Exti handle.
+ 235:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * @param pExtiConfig Pointer on structure to store Exti configuration.
+ 236:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * @retval HAL Status.
+ 237:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** */
+ 238:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** HAL_StatusTypeDef HAL_EXTI_GetConfigLine(EXTI_HandleTypeDef *hexti, EXTI_ConfigTypeDef *pExtiConfig
+ 239:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** {
+ 205 .loc 1 239 0
+ 206 .cfi_startproc
+ 207 @ args = 0, pretend = 0, frame = 0
+ 208 @ frame_needed = 0, uses_anonymous_args = 0
+ 209 .LVL20:
+ 210 0000 30B5 push {r4, r5, lr}
+ ARM GAS /tmp/ccoU2NQy.s page 9
+
+
+ 211 .LCFI1:
+ 212 .cfi_def_cfa_offset 12
+ 213 .cfi_offset 4, -12
+ 214 .cfi_offset 5, -8
+ 215 .cfi_offset 14, -4
+ 240:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** uint32_t regval;
+ 241:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** uint32_t linepos;
+ 242:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** uint32_t maskline;
+ 243:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
+ 244:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* Check null pointer */
+ 245:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** if ((hexti == NULL) || (pExtiConfig == NULL))
+ 216 .loc 1 245 0
+ 217 0002 0028 cmp r0, #0
+ 218 0004 46D0 beq .L27
+ 219 .loc 1 245 0 is_stmt 0 discriminator 1
+ 220 0006 0029 cmp r1, #0
+ 221 0008 46D0 beq .L28
+ 246:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** {
+ 247:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** return HAL_ERROR;
+ 248:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
+ 249:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
+ 250:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* Check the parameter */
+ 251:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** assert_param(IS_EXTI_LINE(hexti->Line));
+ 252:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
+ 253:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* Store handle line number to configuration structure */
+ 254:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** pExtiConfig->Line = hexti->Line;
+ 222 .loc 1 254 0 is_stmt 1
+ 223 000a 0068 ldr r0, [r0]
+ 224 .LVL21:
+ 225 000c 0860 str r0, [r1]
+ 255:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
+ 256:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* Compute line mask */
+ 257:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** linepos = (pExtiConfig->Line & EXTI_PIN_MASK);
+ 226 .loc 1 257 0
+ 227 000e 1F24 movs r4, #31
+ 228 0010 0440 ands r4, r0
+ 229 .LVL22:
+ 258:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** maskline = (1uL << linepos);
+ 230 .loc 1 258 0
+ 231 0012 0123 movs r3, #1
+ 232 0014 A340 lsls r3, r3, r4
+ 233 .LVL23:
+ 259:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
+ 260:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* 1] Get core mode : interrupt */
+ 261:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
+ 262:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* Check if selected line is enable */
+ 263:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** if ((EXTI->IMR & maskline) != 0x00u)
+ 234 .loc 1 263 0
+ 235 0016 214A ldr r2, .L30
+ 236 0018 1268 ldr r2, [r2]
+ 237 001a 1342 tst r3, r2
+ 238 001c 22D0 beq .L19
+ 264:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** {
+ 265:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** pExtiConfig->Mode = EXTI_MODE_INTERRUPT;
+ 239 .loc 1 265 0
+ 240 001e 0122 movs r2, #1
+ 241 0020 4A60 str r2, [r1, #4]
+ ARM GAS /tmp/ccoU2NQy.s page 10
+
+
+ 242 .L20:
+ 266:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
+ 267:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** else
+ 268:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** {
+ 269:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** pExtiConfig->Mode = EXTI_MODE_NONE;
+ 270:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
+ 271:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
+ 272:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* Get event mode */
+ 273:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* Check if selected line is enable */
+ 274:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** if ((EXTI->EMR & maskline) != 0x00u)
+ 243 .loc 1 274 0
+ 244 0022 1E4A ldr r2, .L30
+ 245 0024 5268 ldr r2, [r2, #4]
+ 246 0026 1342 tst r3, r2
+ 247 0028 03D0 beq .L21
+ 275:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** {
+ 276:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** pExtiConfig->Mode |= EXTI_MODE_EVENT;
+ 248 .loc 1 276 0
+ 249 002a 0222 movs r2, #2
+ 250 002c 4D68 ldr r5, [r1, #4]
+ 251 002e 2A43 orrs r2, r5
+ 252 0030 4A60 str r2, [r1, #4]
+ 253 .L21:
+ 277:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
+ 278:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
+ 279:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* 2] Get trigger for configurable lines : rising */
+ 280:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** if ((pExtiConfig->Line & EXTI_CONFIG) != 0x00u)
+ 254 .loc 1 280 0
+ 255 0032 8201 lsls r2, r0, #6
+ 256 0034 29D5 bpl .L22
+ 281:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** {
+ 282:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* Check if configuration of selected line is enable */
+ 283:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** if ((EXTI->RTSR & maskline) != 0x00u)
+ 257 .loc 1 283 0
+ 258 0036 194A ldr r2, .L30
+ 259 0038 9268 ldr r2, [r2, #8]
+ 260 003a 1342 tst r3, r2
+ 261 003c 15D0 beq .L23
+ 284:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** {
+ 285:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** pExtiConfig->Trigger = EXTI_TRIGGER_RISING;
+ 262 .loc 1 285 0
+ 263 003e 0122 movs r2, #1
+ 264 0040 8A60 str r2, [r1, #8]
+ 265 .L24:
+ 286:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
+ 287:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** else
+ 288:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** {
+ 289:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** pExtiConfig->Trigger = EXTI_TRIGGER_NONE;
+ 290:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
+ 291:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
+ 292:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* Get falling configuration */
+ 293:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* Check if configuration of selected line is enable */
+ 294:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** if ((EXTI->FTSR & maskline) != 0x00u)
+ 266 .loc 1 294 0
+ 267 0042 164A ldr r2, .L30
+ 268 0044 D268 ldr r2, [r2, #12]
+ 269 0046 1342 tst r3, r2
+ ARM GAS /tmp/ccoU2NQy.s page 11
+
+
+ 270 0048 03D0 beq .L25
+ 295:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** {
+ 296:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** pExtiConfig->Trigger |= EXTI_TRIGGER_FALLING;
+ 271 .loc 1 296 0
+ 272 004a 0223 movs r3, #2
+ 273 .LVL24:
+ 274 004c 8A68 ldr r2, [r1, #8]
+ 275 004e 1343 orrs r3, r2
+ 276 0050 8B60 str r3, [r1, #8]
+ 277 .L25:
+ 297:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
+ 298:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
+ 299:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* Get Gpio port selection for gpio lines */
+ 300:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** if ((pExtiConfig->Line & EXTI_GPIO) == EXTI_GPIO)
+ 278 .loc 1 300 0
+ 279 0052 C022 movs r2, #192
+ 280 0054 D204 lsls r2, r2, #19
+ 281 0056 1040 ands r0, r2
+ 282 0058 9042 cmp r0, r2
+ 283 005a 09D0 beq .L29
+ 301:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** {
+ 302:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** assert_param(IS_EXTI_GPIO_PIN(linepos));
+ 303:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
+ 304:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** regval = SYSCFG->EXTICR[linepos >> 2u];
+ 305:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** pExtiConfig->GPIOSel = ((regval << (SYSCFG_EXTICR1_EXTI1_Pos * (3uL - (linepos & 0x03u)))) >>
+ 306:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
+ 307:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** else
+ 308:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** {
+ 309:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** pExtiConfig->GPIOSel = 0x00u;
+ 284 .loc 1 309 0
+ 285 005c 0023 movs r3, #0
+ 286 005e CB60 str r3, [r1, #12]
+ 310:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
+ 311:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
+ 312:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** else
+ 313:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** {
+ 314:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* No Trigger selected */
+ 315:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** pExtiConfig->Trigger = EXTI_TRIGGER_NONE;
+ 316:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** pExtiConfig->GPIOSel = 0x00u;
+ 317:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
+ 318:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
+ 319:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** return HAL_OK;
+ 287 .loc 1 319 0
+ 288 0060 0020 movs r0, #0
+ 289 0062 16E0 b .L18
+ 290 .LVL25:
+ 291 .L19:
+ 269:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
+ 292 .loc 1 269 0
+ 293 0064 0022 movs r2, #0
+ 294 0066 4A60 str r2, [r1, #4]
+ 295 0068 DBE7 b .L20
+ 296 .L23:
+ 289:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
+ 297 .loc 1 289 0
+ 298 006a 0022 movs r2, #0
+ 299 006c 8A60 str r2, [r1, #8]
+ ARM GAS /tmp/ccoU2NQy.s page 12
+
+
+ 300 006e E8E7 b .L24
+ 301 .LVL26:
+ 302 .L29:
+ 304:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** pExtiConfig->GPIOSel = ((regval << (SYSCFG_EXTICR1_EXTI1_Pos * (3uL - (linepos & 0x03u)))) >>
+ 303 .loc 1 304 0
+ 304 0070 A308 lsrs r3, r4, #2
+ 305 0072 0233 adds r3, r3, #2
+ 306 0074 9B00 lsls r3, r3, #2
+ 307 0076 0A4A ldr r2, .L30+4
+ 308 0078 9B58 ldr r3, [r3, r2]
+ 309 .LVL27:
+ 305:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
+ 310 .loc 1 305 0
+ 311 007a 0322 movs r2, #3
+ 312 007c A243 bics r2, r4
+ 313 007e 9200 lsls r2, r2, #2
+ 314 0080 9340 lsls r3, r3, r2
+ 315 .LVL28:
+ 316 0082 1B0E lsrs r3, r3, #24
+ 317 0084 CB60 str r3, [r1, #12]
+ 318 .loc 1 319 0
+ 319 0086 0020 movs r0, #0
+ 320 0088 03E0 b .L18
+ 321 .LVL29:
+ 322 .L22:
+ 315:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** pExtiConfig->GPIOSel = 0x00u;
+ 323 .loc 1 315 0
+ 324 008a 0023 movs r3, #0
+ 325 .LVL30:
+ 326 008c 8B60 str r3, [r1, #8]
+ 316:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
+ 327 .loc 1 316 0
+ 328 008e CB60 str r3, [r1, #12]
+ 329 .loc 1 319 0
+ 330 0090 0020 movs r0, #0
+ 331 .LVL31:
+ 332 .L18:
+ 320:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
+ 333 .loc 1 320 0
+ 334 @ sp needed
+ 335 0092 30BD pop {r4, r5, pc}
+ 336 .LVL32:
+ 337 .L27:
+ 247:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
+ 338 .loc 1 247 0
+ 339 0094 0120 movs r0, #1
+ 340 .LVL33:
+ 341 0096 FCE7 b .L18
+ 342 .LVL34:
+ 343 .L28:
+ 344 0098 0120 movs r0, #1
+ 345 .LVL35:
+ 346 009a FAE7 b .L18
+ 347 .L31:
+ 348 .align 2
+ 349 .L30:
+ 350 009c 00040140 .word 1073808384
+ ARM GAS /tmp/ccoU2NQy.s page 13
+
+
+ 351 00a0 00000140 .word 1073807360
+ 352 .cfi_endproc
+ 353 .LFE41:
+ 355 .section .text.HAL_EXTI_ClearConfigLine,"ax",%progbits
+ 356 .align 1
+ 357 .global HAL_EXTI_ClearConfigLine
+ 358 .syntax unified
+ 359 .code 16
+ 360 .thumb_func
+ 361 .fpu softvfp
+ 363 HAL_EXTI_ClearConfigLine:
+ 364 .LFB42:
+ 321:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
+ 322:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /**
+ 323:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * @brief Clear whole configuration of a dedicated Exti line.
+ 324:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * @param hexti Exti handle.
+ 325:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * @retval HAL Status.
+ 326:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** */
+ 327:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** HAL_StatusTypeDef HAL_EXTI_ClearConfigLine(EXTI_HandleTypeDef *hexti)
+ 328:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** {
+ 365 .loc 1 328 0
+ 366 .cfi_startproc
+ 367 @ args = 0, pretend = 0, frame = 0
+ 368 @ frame_needed = 0, uses_anonymous_args = 0
+ 369 .LVL36:
+ 370 0000 30B5 push {r4, r5, lr}
+ 371 .LCFI2:
+ 372 .cfi_def_cfa_offset 12
+ 373 .cfi_offset 4, -12
+ 374 .cfi_offset 5, -8
+ 375 .cfi_offset 14, -4
+ 329:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** uint32_t regval;
+ 330:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** uint32_t linepos;
+ 331:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** uint32_t maskline;
+ 332:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
+ 333:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* Check null pointer */
+ 334:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** if (hexti == NULL)
+ 376 .loc 1 334 0
+ 377 0002 0028 cmp r0, #0
+ 378 0004 2CD0 beq .L34
+ 335:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** {
+ 336:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** return HAL_ERROR;
+ 337:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
+ 338:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
+ 339:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* Check the parameter */
+ 340:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** assert_param(IS_EXTI_LINE(hexti->Line));
+ 341:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
+ 342:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* compute line mask */
+ 343:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** linepos = (hexti->Line & EXTI_PIN_MASK);
+ 379 .loc 1 343 0
+ 380 0006 0568 ldr r5, [r0]
+ 381 0008 1F22 movs r2, #31
+ 382 000a 2A40 ands r2, r5
+ 383 .LVL37:
+ 344:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** maskline = (1uL << linepos);
+ 384 .loc 1 344 0
+ 385 000c 0123 movs r3, #1
+ ARM GAS /tmp/ccoU2NQy.s page 14
+
+
+ 386 000e 9340 lsls r3, r3, r2
+ 387 .LVL38:
+ 345:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
+ 346:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* 1] Clear interrupt mode */
+ 347:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** EXTI->IMR = (EXTI->IMR & ~maskline);
+ 388 .loc 1 347 0
+ 389 0010 1549 ldr r1, .L38
+ 390 0012 0C68 ldr r4, [r1]
+ 391 0014 DB43 mvns r3, r3
+ 392 .LVL39:
+ 393 0016 1C40 ands r4, r3
+ 394 0018 0C60 str r4, [r1]
+ 348:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
+ 349:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* 2] Clear event mode */
+ 350:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** EXTI->EMR = (EXTI->EMR & ~maskline);
+ 395 .loc 1 350 0
+ 396 001a 4C68 ldr r4, [r1, #4]
+ 397 001c 1C40 ands r4, r3
+ 398 001e 4C60 str r4, [r1, #4]
+ 351:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
+ 352:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* 3] Clear triggers in case of configurable lines */
+ 353:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** if ((hexti->Line & EXTI_CONFIG) != 0x00u)
+ 399 .loc 1 353 0
+ 400 0020 0168 ldr r1, [r0]
+ 401 0022 8901 lsls r1, r1, #6
+ 402 0024 1ED5 bpl .L35
+ 354:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** {
+ 355:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** EXTI->RTSR = (EXTI->RTSR & ~maskline);
+ 403 .loc 1 355 0
+ 404 0026 1049 ldr r1, .L38
+ 405 0028 8C68 ldr r4, [r1, #8]
+ 406 002a 1C40 ands r4, r3
+ 407 002c 8C60 str r4, [r1, #8]
+ 356:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** EXTI->FTSR = (EXTI->FTSR & ~maskline);
+ 408 .loc 1 356 0
+ 409 002e CC68 ldr r4, [r1, #12]
+ 410 0030 2340 ands r3, r4
+ 411 .LVL40:
+ 412 0032 CB60 str r3, [r1, #12]
+ 357:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
+ 358:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* Get Gpio port selection for gpio lines */
+ 359:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** if ((hexti->Line & EXTI_GPIO) == EXTI_GPIO)
+ 413 .loc 1 359 0
+ 414 0034 0368 ldr r3, [r0]
+ 415 0036 C021 movs r1, #192
+ 416 0038 C904 lsls r1, r1, #19
+ 417 003a 0B40 ands r3, r1
+ 418 003c 8B42 cmp r3, r1
+ 419 003e 01D0 beq .L37
+ 360:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** {
+ 361:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** assert_param(IS_EXTI_GPIO_PIN(linepos));
+ 362:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
+ 363:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** regval = SYSCFG->EXTICR[linepos >> 2u];
+ 364:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** regval &= ~(SYSCFG_EXTICR1_EXTI0 << (SYSCFG_EXTICR1_EXTI1_Pos * (linepos & 0x03u)));
+ 365:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** SYSCFG->EXTICR[linepos >> 2u] = regval;
+ 366:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
+ 367:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
+ ARM GAS /tmp/ccoU2NQy.s page 15
+
+
+ 368:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
+ 369:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** return HAL_OK;
+ 420 .loc 1 369 0
+ 421 0040 0020 movs r0, #0
+ 422 .LVL41:
+ 423 0042 10E0 b .L33
+ 424 .LVL42:
+ 425 .L37:
+ 363:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** regval &= ~(SYSCFG_EXTICR1_EXTI0 << (SYSCFG_EXTICR1_EXTI1_Pos * (linepos & 0x03u)));
+ 426 .loc 1 363 0
+ 427 0044 9208 lsrs r2, r2, #2
+ 428 .LVL43:
+ 429 0046 0948 ldr r0, .L38+4
+ 430 .LVL44:
+ 431 0048 0232 adds r2, r2, #2
+ 432 004a 9200 lsls r2, r2, #2
+ 433 004c 1158 ldr r1, [r2, r0]
+ 434 .LVL45:
+ 364:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** SYSCFG->EXTICR[linepos >> 2u] = regval;
+ 435 .loc 1 364 0
+ 436 004e 0323 movs r3, #3
+ 437 0050 1D40 ands r5, r3
+ 438 .LVL46:
+ 439 0052 AD00 lsls r5, r5, #2
+ 440 0054 0C33 adds r3, r3, #12
+ 441 0056 AB40 lsls r3, r3, r5
+ 442 0058 9943 bics r1, r3
+ 443 .LVL47:
+ 365:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
+ 444 .loc 1 365 0
+ 445 005a 1150 str r1, [r2, r0]
+ 446 .loc 1 369 0
+ 447 005c 0020 movs r0, #0
+ 448 005e 02E0 b .L33
+ 449 .LVL48:
+ 450 .L34:
+ 336:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
+ 451 .loc 1 336 0
+ 452 0060 0120 movs r0, #1
+ 453 .LVL49:
+ 454 0062 00E0 b .L33
+ 455 .LVL50:
+ 456 .L35:
+ 457 .loc 1 369 0
+ 458 0064 0020 movs r0, #0
+ 459 .LVL51:
+ 460 .L33:
+ 370:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
+ 461 .loc 1 370 0
+ 462 @ sp needed
+ 463 0066 30BD pop {r4, r5, pc}
+ 464 .L39:
+ 465 .align 2
+ 466 .L38:
+ 467 0068 00040140 .word 1073808384
+ 468 006c 00000140 .word 1073807360
+ 469 .cfi_endproc
+ ARM GAS /tmp/ccoU2NQy.s page 16
+
+
+ 470 .LFE42:
+ 472 .section .text.HAL_EXTI_RegisterCallback,"ax",%progbits
+ 473 .align 1
+ 474 .global HAL_EXTI_RegisterCallback
+ 475 .syntax unified
+ 476 .code 16
+ 477 .thumb_func
+ 478 .fpu softvfp
+ 480 HAL_EXTI_RegisterCallback:
+ 481 .LFB43:
+ 371:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
+ 372:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /**
+ 373:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * @brief Register callback for a dedicated Exti line.
+ 374:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * @param hexti Exti handle.
+ 375:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * @param CallbackID User callback identifier.
+ 376:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * This parameter can be one of @arg @ref EXTI_CallbackIDTypeDef values.
+ 377:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * @param pPendingCbfn function pointer to be stored as callback.
+ 378:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * @retval HAL Status.
+ 379:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** */
+ 380:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** HAL_StatusTypeDef HAL_EXTI_RegisterCallback(EXTI_HandleTypeDef *hexti, EXTI_CallbackIDTypeDef Callb
+ 381:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** {
+ 482 .loc 1 381 0
+ 483 .cfi_startproc
+ 484 @ args = 0, pretend = 0, frame = 0
+ 485 @ frame_needed = 0, uses_anonymous_args = 0
+ 486 @ link register save eliminated.
+ 487 .LVL52:
+ 382:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** HAL_StatusTypeDef status = HAL_OK;
+ 383:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
+ 384:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** switch (CallbackID)
+ 488 .loc 1 384 0
+ 489 0000 0029 cmp r1, #0
+ 490 0002 02D1 bne .L44
+ 385:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** {
+ 386:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** case HAL_EXTI_COMMON_CB_ID:
+ 387:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** hexti->PendingCallback = pPendingCbfn;
+ 491 .loc 1 387 0
+ 492 0004 4260 str r2, [r0, #4]
+ 382:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** HAL_StatusTypeDef status = HAL_OK;
+ 493 .loc 1 382 0
+ 494 0006 0020 movs r0, #0
+ 495 .LVL53:
+ 496 .L41:
+ 388:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** break;
+ 389:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
+ 390:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** default:
+ 391:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** status = HAL_ERROR;
+ 392:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** break;
+ 393:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
+ 394:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
+ 395:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** return status;
+ 396:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
+ 497 .loc 1 396 0
+ 498 @ sp needed
+ 499 0008 7047 bx lr
+ 500 .LVL54:
+ 501 .L44:
+ ARM GAS /tmp/ccoU2NQy.s page 17
+
+
+ 391:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** break;
+ 502 .loc 1 391 0
+ 503 000a 0120 movs r0, #1
+ 504 .LVL55:
+ 505 000c FCE7 b .L41
+ 506 .cfi_endproc
+ 507 .LFE43:
+ 509 .section .text.HAL_EXTI_GetHandle,"ax",%progbits
+ 510 .align 1
+ 511 .global HAL_EXTI_GetHandle
+ 512 .syntax unified
+ 513 .code 16
+ 514 .thumb_func
+ 515 .fpu softvfp
+ 517 HAL_EXTI_GetHandle:
+ 518 .LFB44:
+ 397:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
+ 398:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /**
+ 399:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * @brief Store line number as handle private field.
+ 400:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * @param hexti Exti handle.
+ 401:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * @param ExtiLine Exti line number.
+ 402:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * This parameter can be from 0 to @ref EXTI_LINE_NB.
+ 403:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * @retval HAL Status.
+ 404:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** */
+ 405:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** HAL_StatusTypeDef HAL_EXTI_GetHandle(EXTI_HandleTypeDef *hexti, uint32_t ExtiLine)
+ 406:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** {
+ 519 .loc 1 406 0
+ 520 .cfi_startproc
+ 521 @ args = 0, pretend = 0, frame = 0
+ 522 @ frame_needed = 0, uses_anonymous_args = 0
+ 523 @ link register save eliminated.
+ 524 .LVL56:
+ 407:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* Check the parameters */
+ 408:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** assert_param(IS_EXTI_LINE(ExtiLine));
+ 409:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
+ 410:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* Check null pointer */
+ 411:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** if (hexti == NULL)
+ 525 .loc 1 411 0
+ 526 0000 0028 cmp r0, #0
+ 527 0002 02D0 beq .L47
+ 412:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** {
+ 413:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** return HAL_ERROR;
+ 414:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
+ 415:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** else
+ 416:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** {
+ 417:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* Store line number as handle private field */
+ 418:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** hexti->Line = ExtiLine;
+ 528 .loc 1 418 0
+ 529 0004 0160 str r1, [r0]
+ 419:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
+ 420:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** return HAL_OK;
+ 530 .loc 1 420 0
+ 531 0006 0020 movs r0, #0
+ 532 .LVL57:
+ 533 .L46:
+ 421:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
+ 422:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
+ ARM GAS /tmp/ccoU2NQy.s page 18
+
+
+ 534 .loc 1 422 0
+ 535 @ sp needed
+ 536 0008 7047 bx lr
+ 537 .LVL58:
+ 538 .L47:
+ 413:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
+ 539 .loc 1 413 0
+ 540 000a 0120 movs r0, #1
+ 541 .LVL59:
+ 542 000c FCE7 b .L46
+ 543 .cfi_endproc
+ 544 .LFE44:
+ 546 .section .text.HAL_EXTI_IRQHandler,"ax",%progbits
+ 547 .align 1
+ 548 .global HAL_EXTI_IRQHandler
+ 549 .syntax unified
+ 550 .code 16
+ 551 .thumb_func
+ 552 .fpu softvfp
+ 554 HAL_EXTI_IRQHandler:
+ 555 .LFB45:
+ 423:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
+ 424:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /**
+ 425:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * @}
+ 426:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** */
+ 427:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
+ 428:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /** @addtogroup EXTI_Exported_Functions_Group2
+ 429:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * @brief EXTI IO functions.
+ 430:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** *
+ 431:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** @verbatim
+ 432:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** ===============================================================================
+ 433:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** ##### IO operation functions #####
+ 434:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** ===============================================================================
+ 435:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
+ 436:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** @endverbatim
+ 437:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * @{
+ 438:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** */
+ 439:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
+ 440:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /**
+ 441:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * @brief Handle EXTI interrupt request.
+ 442:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * @param hexti Exti handle.
+ 443:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * @retval none.
+ 444:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** */
+ 445:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** void HAL_EXTI_IRQHandler(EXTI_HandleTypeDef *hexti)
+ 446:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** {
+ 556 .loc 1 446 0
+ 557 .cfi_startproc
+ 558 @ args = 0, pretend = 0, frame = 0
+ 559 @ frame_needed = 0, uses_anonymous_args = 0
+ 560 .LVL60:
+ 561 0000 10B5 push {r4, lr}
+ 562 .LCFI3:
+ 563 .cfi_def_cfa_offset 8
+ 564 .cfi_offset 4, -8
+ 565 .cfi_offset 14, -4
+ 447:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** uint32_t regval;
+ 448:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** uint32_t maskline;
+ ARM GAS /tmp/ccoU2NQy.s page 19
+
+
+ 449:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
+ 450:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* Compute line mask */
+ 451:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** maskline = (1uL << (hexti->Line & EXTI_PIN_MASK));
+ 566 .loc 1 451 0
+ 567 0002 1F22 movs r2, #31
+ 568 0004 0368 ldr r3, [r0]
+ 569 0006 1A40 ands r2, r3
+ 570 0008 0123 movs r3, #1
+ 571 000a 9340 lsls r3, r3, r2
+ 572 .LVL61:
+ 452:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
+ 453:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* Get pending bit */
+ 454:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** regval = (EXTI->PR & maskline);
+ 573 .loc 1 454 0
+ 574 000c 054A ldr r2, .L50
+ 575 000e 5269 ldr r2, [r2, #20]
+ 576 .LVL62:
+ 455:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** if (regval != 0x00u)
+ 577 .loc 1 455 0
+ 578 0010 1342 tst r3, r2
+ 579 0012 05D0 beq .L48
+ 456:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** {
+ 457:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* Clear pending bit */
+ 458:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** EXTI->PR = maskline;
+ 580 .loc 1 458 0
+ 581 0014 034A ldr r2, .L50
+ 582 .LVL63:
+ 583 0016 5361 str r3, [r2, #20]
+ 459:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
+ 460:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* Call callback */
+ 461:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** if (hexti->PendingCallback != NULL)
+ 584 .loc 1 461 0
+ 585 0018 4368 ldr r3, [r0, #4]
+ 586 .LVL64:
+ 587 001a 002B cmp r3, #0
+ 588 001c 00D0 beq .L48
+ 462:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** {
+ 463:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** hexti->PendingCallback();
+ 589 .loc 1 463 0
+ 590 001e 9847 blx r3
+ 591 .LVL65:
+ 592 .L48:
+ 464:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
+ 465:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
+ 466:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
+ 593 .loc 1 466 0
+ 594 @ sp needed
+ 595 0020 10BD pop {r4, pc}
+ 596 .L51:
+ 597 0022 C046 .align 2
+ 598 .L50:
+ 599 0024 00040140 .word 1073808384
+ 600 .cfi_endproc
+ 601 .LFE45:
+ 603 .section .text.HAL_EXTI_GetPending,"ax",%progbits
+ 604 .align 1
+ 605 .global HAL_EXTI_GetPending
+ ARM GAS /tmp/ccoU2NQy.s page 20
+
+
+ 606 .syntax unified
+ 607 .code 16
+ 608 .thumb_func
+ 609 .fpu softvfp
+ 611 HAL_EXTI_GetPending:
+ 612 .LFB46:
+ 467:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
+ 468:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /**
+ 469:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * @brief Get interrupt pending bit of a dedicated line.
+ 470:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * @param hexti Exti handle.
+ 471:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * @param Edge Specify which pending edge as to be checked.
+ 472:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * This parameter can be one of the following values:
+ 473:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * @arg @ref EXTI_TRIGGER_RISING_FALLING
+ 474:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * This parameter is kept for compatibility with other series.
+ 475:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * @retval 1 if interrupt is pending else 0.
+ 476:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** */
+ 477:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** uint32_t HAL_EXTI_GetPending(EXTI_HandleTypeDef *hexti, uint32_t Edge)
+ 478:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** {
+ 613 .loc 1 478 0
+ 614 .cfi_startproc
+ 615 @ args = 0, pretend = 0, frame = 0
+ 616 @ frame_needed = 0, uses_anonymous_args = 0
+ 617 @ link register save eliminated.
+ 618 .LVL66:
+ 479:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** uint32_t regval;
+ 480:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** uint32_t linepos;
+ 481:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** uint32_t maskline;
+ 482:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
+ 483:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* Check parameters */
+ 484:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** assert_param(IS_EXTI_LINE(hexti->Line));
+ 485:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** assert_param(IS_EXTI_CONFIG_LINE(hexti->Line));
+ 486:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** assert_param(IS_EXTI_PENDING_EDGE(Edge));
+ 487:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
+ 488:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* Compute line mask */
+ 489:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** linepos = (hexti->Line & EXTI_PIN_MASK);
+ 619 .loc 1 489 0
+ 620 0000 0268 ldr r2, [r0]
+ 621 0002 1F23 movs r3, #31
+ 622 0004 1340 ands r3, r2
+ 623 .LVL67:
+ 490:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** maskline = (1uL << linepos);
+ 624 .loc 1 490 0
+ 625 0006 0120 movs r0, #1
+ 626 .LVL68:
+ 627 0008 9840 lsls r0, r0, r3
+ 628 .LVL69:
+ 491:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
+ 492:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* return 1 if bit is set else 0 */
+ 493:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** regval = ((EXTI->PR & maskline) >> linepos);
+ 629 .loc 1 493 0
+ 630 000a 024A ldr r2, .L53
+ 631 000c 5269 ldr r2, [r2, #20]
+ 632 000e 1040 ands r0, r2
+ 633 .LVL70:
+ 634 0010 D840 lsrs r0, r0, r3
+ 635 .LVL71:
+ 494:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** return regval;
+ ARM GAS /tmp/ccoU2NQy.s page 21
+
+
+ 495:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
+ 636 .loc 1 495 0
+ 637 @ sp needed
+ 638 0012 7047 bx lr
+ 639 .L54:
+ 640 .align 2
+ 641 .L53:
+ 642 0014 00040140 .word 1073808384
+ 643 .cfi_endproc
+ 644 .LFE46:
+ 646 .section .text.HAL_EXTI_ClearPending,"ax",%progbits
+ 647 .align 1
+ 648 .global HAL_EXTI_ClearPending
+ 649 .syntax unified
+ 650 .code 16
+ 651 .thumb_func
+ 652 .fpu softvfp
+ 654 HAL_EXTI_ClearPending:
+ 655 .LFB47:
+ 496:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
+ 497:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /**
+ 498:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * @brief Clear interrupt pending bit of a dedicated line.
+ 499:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * @param hexti Exti handle.
+ 500:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * @param Edge Specify which pending edge as to be clear.
+ 501:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * This parameter can be one of the following values:
+ 502:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * @arg @ref EXTI_TRIGGER_RISING_FALLING
+ 503:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * This parameter is kept for compatibility with other series.
+ 504:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * @retval None.
+ 505:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** */
+ 506:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** void HAL_EXTI_ClearPending(EXTI_HandleTypeDef *hexti, uint32_t Edge)
+ 507:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** {
+ 656 .loc 1 507 0
+ 657 .cfi_startproc
+ 658 @ args = 0, pretend = 0, frame = 0
+ 659 @ frame_needed = 0, uses_anonymous_args = 0
+ 660 @ link register save eliminated.
+ 661 .LVL72:
+ 508:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** uint32_t maskline;
+ 509:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
+ 510:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* Check parameters */
+ 511:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** assert_param(IS_EXTI_LINE(hexti->Line));
+ 512:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** assert_param(IS_EXTI_CONFIG_LINE(hexti->Line));
+ 513:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** assert_param(IS_EXTI_PENDING_EDGE(Edge));
+ 514:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
+ 515:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* Compute line mask */
+ 516:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** maskline = (1uL << (hexti->Line & EXTI_PIN_MASK));
+ 662 .loc 1 516 0
+ 663 0000 0368 ldr r3, [r0]
+ 664 0002 1F22 movs r2, #31
+ 665 0004 1A40 ands r2, r3
+ 666 0006 0123 movs r3, #1
+ 667 0008 9340 lsls r3, r3, r2
+ 668 .LVL73:
+ 517:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
+ 518:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* Clear Pending bit */
+ 519:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** EXTI->PR = maskline;
+ 669 .loc 1 519 0
+ ARM GAS /tmp/ccoU2NQy.s page 22
+
+
+ 670 000a 014A ldr r2, .L56
+ 671 000c 5361 str r3, [r2, #20]
+ 520:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
+ 672 .loc 1 520 0
+ 673 @ sp needed
+ 674 000e 7047 bx lr
+ 675 .L57:
+ 676 .align 2
+ 677 .L56:
+ 678 0010 00040140 .word 1073808384
+ 679 .cfi_endproc
+ 680 .LFE47:
+ 682 .section .text.HAL_EXTI_GenerateSWI,"ax",%progbits
+ 683 .align 1
+ 684 .global HAL_EXTI_GenerateSWI
+ 685 .syntax unified
+ 686 .code 16
+ 687 .thumb_func
+ 688 .fpu softvfp
+ 690 HAL_EXTI_GenerateSWI:
+ 691 .LFB48:
+ 521:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
+ 522:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /**
+ 523:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * @brief Generate a software interrupt for a dedicated line.
+ 524:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * @param hexti Exti handle.
+ 525:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** * @retval None.
+ 526:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** */
+ 527:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** void HAL_EXTI_GenerateSWI(EXTI_HandleTypeDef *hexti)
+ 528:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** {
+ 692 .loc 1 528 0
+ 693 .cfi_startproc
+ 694 @ args = 0, pretend = 0, frame = 0
+ 695 @ frame_needed = 0, uses_anonymous_args = 0
+ 696 @ link register save eliminated.
+ 697 .LVL74:
+ 529:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** uint32_t maskline;
+ 530:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
+ 531:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* Check parameters */
+ 532:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** assert_param(IS_EXTI_LINE(hexti->Line));
+ 533:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** assert_param(IS_EXTI_CONFIG_LINE(hexti->Line));
+ 534:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
+ 535:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* Compute line mask */
+ 536:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** maskline = (1uL << (hexti->Line & EXTI_PIN_MASK));
+ 698 .loc 1 536 0
+ 699 0000 0368 ldr r3, [r0]
+ 700 0002 1F22 movs r2, #31
+ 701 0004 1A40 ands r2, r3
+ 702 0006 0123 movs r3, #1
+ 703 0008 9340 lsls r3, r3, r2
+ 704 .LVL75:
+ 537:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c ****
+ 538:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** /* Generate Software interrupt */
+ 539:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** EXTI->SWIER = maskline;
+ 705 .loc 1 539 0
+ 706 000a 014A ldr r2, .L59
+ 707 000c 1361 str r3, [r2, #16]
+ 540:Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c **** }
+ ARM GAS /tmp/ccoU2NQy.s page 23
+
+
+ 708 .loc 1 540 0
+ 709 @ sp needed
+ 710 000e 7047 bx lr
+ 711 .L60:
+ 712 .align 2
+ 713 .L59:
+ 714 0010 00040140 .word 1073808384
+ 715 .cfi_endproc
+ 716 .LFE48:
+ 718 .text
+ 719 .Letext0:
+ 720 .file 2 "/usr/include/newlib/machine/_default_types.h"
+ 721 .file 3 "/usr/include/newlib/sys/_stdint.h"
+ 722 .file 4 "Drivers/CMSIS/Device/ST/STM32F0xx/Include/system_stm32f0xx.h"
+ 723 .file 5 "Drivers/CMSIS/Device/ST/STM32F0xx/Include/stm32f072xb.h"
+ 724 .file 6 "Drivers/STM32F0xx_HAL_Driver/Inc/stm32f0xx_hal_def.h"
+ 725 .file 7 "Drivers/STM32F0xx_HAL_Driver/Inc/stm32f0xx_hal_exti.h"
+ 726 .file 8 "Drivers/STM32F0xx_HAL_Driver/Inc/stm32f0xx_hal.h"
+ ARM GAS /tmp/ccoU2NQy.s page 24
+
+
+DEFINED SYMBOLS
+ *ABS*:0000000000000000 stm32f0xx_hal_exti.c
+ /tmp/ccoU2NQy.s:16 .text.HAL_EXTI_SetConfigLine:0000000000000000 $t
+ /tmp/ccoU2NQy.s:23 .text.HAL_EXTI_SetConfigLine:0000000000000000 HAL_EXTI_SetConfigLine
+ /tmp/ccoU2NQy.s:190 .text.HAL_EXTI_SetConfigLine:00000000000000b8 $d
+ /tmp/ccoU2NQy.s:196 .text.HAL_EXTI_GetConfigLine:0000000000000000 $t
+ /tmp/ccoU2NQy.s:203 .text.HAL_EXTI_GetConfigLine:0000000000000000 HAL_EXTI_GetConfigLine
+ /tmp/ccoU2NQy.s:350 .text.HAL_EXTI_GetConfigLine:000000000000009c $d
+ /tmp/ccoU2NQy.s:356 .text.HAL_EXTI_ClearConfigLine:0000000000000000 $t
+ /tmp/ccoU2NQy.s:363 .text.HAL_EXTI_ClearConfigLine:0000000000000000 HAL_EXTI_ClearConfigLine
+ /tmp/ccoU2NQy.s:467 .text.HAL_EXTI_ClearConfigLine:0000000000000068 $d
+ /tmp/ccoU2NQy.s:473 .text.HAL_EXTI_RegisterCallback:0000000000000000 $t
+ /tmp/ccoU2NQy.s:480 .text.HAL_EXTI_RegisterCallback:0000000000000000 HAL_EXTI_RegisterCallback
+ /tmp/ccoU2NQy.s:510 .text.HAL_EXTI_GetHandle:0000000000000000 $t
+ /tmp/ccoU2NQy.s:517 .text.HAL_EXTI_GetHandle:0000000000000000 HAL_EXTI_GetHandle
+ /tmp/ccoU2NQy.s:547 .text.HAL_EXTI_IRQHandler:0000000000000000 $t
+ /tmp/ccoU2NQy.s:554 .text.HAL_EXTI_IRQHandler:0000000000000000 HAL_EXTI_IRQHandler
+ /tmp/ccoU2NQy.s:599 .text.HAL_EXTI_IRQHandler:0000000000000024 $d
+ /tmp/ccoU2NQy.s:604 .text.HAL_EXTI_GetPending:0000000000000000 $t
+ /tmp/ccoU2NQy.s:611 .text.HAL_EXTI_GetPending:0000000000000000 HAL_EXTI_GetPending
+ /tmp/ccoU2NQy.s:642 .text.HAL_EXTI_GetPending:0000000000000014 $d
+ /tmp/ccoU2NQy.s:647 .text.HAL_EXTI_ClearPending:0000000000000000 $t
+ /tmp/ccoU2NQy.s:654 .text.HAL_EXTI_ClearPending:0000000000000000 HAL_EXTI_ClearPending
+ /tmp/ccoU2NQy.s:678 .text.HAL_EXTI_ClearPending:0000000000000010 $d
+ /tmp/ccoU2NQy.s:683 .text.HAL_EXTI_GenerateSWI:0000000000000000 $t
+ /tmp/ccoU2NQy.s:690 .text.HAL_EXTI_GenerateSWI:0000000000000000 HAL_EXTI_GenerateSWI
+ /tmp/ccoU2NQy.s:714 .text.HAL_EXTI_GenerateSWI:0000000000000010 $d
+
+NO UNDEFINED SYMBOLS