ARM GAS /tmp/cc2d5rNl.s page 1 1 .cpu cortex-m4 2 .arch armv7e-m 3 .fpu fpv4-sp-d16 4 .eabi_attribute 27, 1 5 .eabi_attribute 28, 1 6 .eabi_attribute 20, 1 7 .eabi_attribute 21, 1 8 .eabi_attribute 23, 3 9 .eabi_attribute 24, 1 10 .eabi_attribute 25, 1 11 .eabi_attribute 26, 1 12 .eabi_attribute 30, 1 13 .eabi_attribute 34, 1 14 .eabi_attribute 18, 4 15 .file "stm32f4xx_hal_dma.c" 16 .text 17 .Ltext0: 18 .cfi_sections .debug_frame 19 .section .text.DMA_SetConfig,"ax",%progbits 20 .align 1 21 .syntax unified 22 .thumb 23 .thumb_func 25 DMA_SetConfig: 26 .LVL0: 27 .LFB142: 28 .file 1 "Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c" 1:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /** 2:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** ****************************************************************************** 3:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @file stm32f4xx_hal_dma.c 4:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @author MCD Application Team 5:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @brief DMA HAL module driver. 6:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * 7:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * This file provides firmware functions to manage the following 8:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * functionalities of the Direct Memory Access (DMA) peripheral: 9:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * + Initialization and de-initialization functions 10:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * + IO operation functions 11:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * + Peripheral State and errors functions 12:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** @verbatim 13:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** ============================================================================== 14:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** ##### How to use this driver ##### 15:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** ============================================================================== 16:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** [..] 17:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** (#) Enable and configure the peripheral to be connected to the DMA Stream 18:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** (except for internal SRAM/FLASH memories: no initialization is 19:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** necessary) please refer to Reference manual for connection between peripherals 20:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** and DMA requests. 21:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 22:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** (#) For a given Stream, program the required configuration through the following parameters: 23:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** Transfer Direction, Source and Destination data formats, 24:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** Circular, Normal or peripheral flow control mode, Stream Priority level, 25:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** Source and Destination Increment mode, FIFO mode and its Threshold (if needed), 26:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** Burst mode for Source and/or Destination (if needed) using HAL_DMA_Init() function. 27:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 28:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** -@- Prior to HAL_DMA_Init() the clock must be enabled for DMA through the following macros: 29:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** __HAL_RCC_DMA1_CLK_ENABLE() or __HAL_RCC_DMA2_CLK_ENABLE(). 30:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** ARM GAS /tmp/cc2d5rNl.s page 2 31:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** *** Polling mode IO operation *** 32:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** ================================= 33:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** [..] 34:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** (+) Use HAL_DMA_Start() to start DMA transfer after the configuration of Source 35:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** address and destination address and the Length of data to be transferred. 36:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** (+) Use HAL_DMA_PollForTransfer() to poll for the end of current transfer, in this 37:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** case a fixed Timeout can be configured by User depending from his application. 38:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** (+) Use HAL_DMA_Abort() function to abort the current transfer. 39:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 40:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** *** Interrupt mode IO operation *** 41:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** =================================== 42:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** [..] 43:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** (+) Configure the DMA interrupt priority using HAL_NVIC_SetPriority() 44:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** (+) Enable the DMA IRQ handler using HAL_NVIC_EnableIRQ() 45:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** (+) Use HAL_DMA_Start_IT() to start DMA transfer after the configuration of 46:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** Source address and destination address and the Length of data to be transferred. In t 47:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** case the DMA interrupt is configured 48:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** (+) Use HAL_DMA_IRQHandler() called under DMA_IRQHandler() Interrupt subroutine 49:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** (+) At the end of data transfer HAL_DMA_IRQHandler() function is executed and user can 50:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** add his own function by customization of function pointer XferCpltCallback and 51:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** XferErrorCallback (i.e a member of DMA handle structure). 52:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** [..] 53:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** (#) Use HAL_DMA_GetState() function to return the DMA state and HAL_DMA_GetError() in case of 54:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** detection. 55:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 56:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** (#) Use HAL_DMA_Abort_IT() function to abort the current transfer 57:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 58:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** -@- In Memory-to-Memory transfer mode, Circular mode is not allowed. 59:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 60:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** -@- The FIFO is used mainly to reduce bus usage and to allow data packing/unpacking: it is 61:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** possible to set different Data Sizes for the Peripheral and the Memory (ie. you can set 62:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** Half-Word data size for the peripheral to access its data register and set Word data siz 63:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** for the Memory to gain in access time. Each two half words will be packed and written in 64:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** a single access to a Word in the Memory). 65:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 66:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** -@- When FIFO is disabled, it is not allowed to configure different Data Sizes for Source 67:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** and Destination. In this case the Peripheral Data Size will be applied to both Source 68:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** and Destination. 69:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 70:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** *** DMA HAL driver macros list *** 71:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** ============================================= 72:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** [..] 73:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** Below the list of most used macros in DMA HAL driver. 74:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 75:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** (+) __HAL_DMA_ENABLE: Enable the specified DMA Stream. 76:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** (+) __HAL_DMA_DISABLE: Disable the specified DMA Stream. 77:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** (+) __HAL_DMA_GET_IT_SOURCE: Check whether the specified DMA Stream interrupt has occurred or 78:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 79:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** [..] 80:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** (@) You can refer to the DMA HAL driver header file for more useful macros 81:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 82:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** @endverbatim 83:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** ****************************************************************************** 84:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @attention 85:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * 86:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** *

© Copyright (c) 2017 STMicroelectronics. 87:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * All rights reserved.

ARM GAS /tmp/cc2d5rNl.s page 3 88:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * 89:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * This software component is licensed by ST under BSD 3-Clause license, 90:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * the "License"; You may not use this file except in compliance with the 91:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * License. You may obtain a copy of the License at: 92:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * opensource.org/licenses/BSD-3-Clause 93:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * 94:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** ****************************************************************************** 95:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** */ 96:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 97:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Includes ------------------------------------------------------------------*/ 98:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** #include "stm32f4xx_hal.h" 99:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 100:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /** @addtogroup STM32F4xx_HAL_Driver 101:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @{ 102:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** */ 103:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 104:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /** @defgroup DMA DMA 105:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @brief DMA HAL module driver 106:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @{ 107:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** */ 108:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 109:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** #ifdef HAL_DMA_MODULE_ENABLED 110:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 111:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Private types -------------------------------------------------------------*/ 112:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** typedef struct 113:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 114:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** __IO uint32_t ISR; /*!< DMA interrupt status register */ 115:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** __IO uint32_t Reserved0; 116:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** __IO uint32_t IFCR; /*!< DMA interrupt flag clear register */ 117:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } DMA_Base_Registers; 118:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 119:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Private variables ---------------------------------------------------------*/ 120:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Private constants ---------------------------------------------------------*/ 121:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /** @addtogroup DMA_Private_Constants 122:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @{ 123:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** */ 124:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** #define HAL_TIMEOUT_DMA_ABORT 5U /* 5 ms */ 125:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /** 126:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @} 127:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** */ 128:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Private macros ------------------------------------------------------------*/ 129:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Private functions ---------------------------------------------------------*/ 130:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /** @addtogroup DMA_Private_Functions 131:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @{ 132:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** */ 133:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** static void DMA_SetConfig(DMA_HandleTypeDef *hdma, uint32_t SrcAddress, uint32_t DstAddress, uint32 134:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** static uint32_t DMA_CalcBaseAndBitshift(DMA_HandleTypeDef *hdma); 135:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** static HAL_StatusTypeDef DMA_CheckFifoParam(DMA_HandleTypeDef *hdma); 136:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 137:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /** 138:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @} 139:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** */ 140:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 141:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Exported functions ---------------------------------------------------------*/ 142:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /** @addtogroup DMA_Exported_Functions 143:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @{ 144:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** */ ARM GAS /tmp/cc2d5rNl.s page 4 145:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 146:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /** @addtogroup DMA_Exported_Functions_Group1 147:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * 148:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** @verbatim 149:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** =============================================================================== 150:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** ##### Initialization and de-initialization functions ##### 151:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** =============================================================================== 152:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** [..] 153:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** This section provides functions allowing to initialize the DMA Stream source 154:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** and destination addresses, incrementation and data sizes, transfer direction, 155:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** circular/normal mode selection, memory-to-memory mode selection and Stream priority value. 156:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** [..] 157:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** The HAL_DMA_Init() function follows the DMA configuration procedures as described in 158:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** reference manual. 159:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 160:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** @endverbatim 161:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @{ 162:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** */ 163:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 164:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /** 165:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @brief Initialize the DMA according to the specified 166:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * parameters in the DMA_InitTypeDef and create the associated handle. 167:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @param hdma Pointer to a DMA_HandleTypeDef structure that contains 168:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * the configuration information for the specified DMA Stream. 169:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @retval HAL status 170:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** */ 171:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** HAL_StatusTypeDef HAL_DMA_Init(DMA_HandleTypeDef *hdma) 172:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 173:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** uint32_t tmp = 0U; 174:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** uint32_t tickstart = HAL_GetTick(); 175:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** DMA_Base_Registers *regs; 176:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 177:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Check the DMA peripheral state */ 178:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if(hdma == NULL) 179:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 180:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** return HAL_ERROR; 181:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 182:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 183:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Check the parameters */ 184:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** assert_param(IS_DMA_STREAM_ALL_INSTANCE(hdma->Instance)); 185:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** assert_param(IS_DMA_CHANNEL(hdma->Init.Channel)); 186:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** assert_param(IS_DMA_DIRECTION(hdma->Init.Direction)); 187:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** assert_param(IS_DMA_PERIPHERAL_INC_STATE(hdma->Init.PeriphInc)); 188:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** assert_param(IS_DMA_MEMORY_INC_STATE(hdma->Init.MemInc)); 189:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** assert_param(IS_DMA_PERIPHERAL_DATA_SIZE(hdma->Init.PeriphDataAlignment)); 190:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** assert_param(IS_DMA_MEMORY_DATA_SIZE(hdma->Init.MemDataAlignment)); 191:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** assert_param(IS_DMA_MODE(hdma->Init.Mode)); 192:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** assert_param(IS_DMA_PRIORITY(hdma->Init.Priority)); 193:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** assert_param(IS_DMA_FIFO_MODE_STATE(hdma->Init.FIFOMode)); 194:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Check the memory burst, peripheral burst and FIFO threshold parameters only 195:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** when FIFO mode is enabled */ 196:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if(hdma->Init.FIFOMode != DMA_FIFOMODE_DISABLE) 197:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 198:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** assert_param(IS_DMA_FIFO_THRESHOLD(hdma->Init.FIFOThreshold)); 199:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** assert_param(IS_DMA_MEMORY_BURST(hdma->Init.MemBurst)); 200:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** assert_param(IS_DMA_PERIPHERAL_BURST(hdma->Init.PeriphBurst)); 201:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } ARM GAS /tmp/cc2d5rNl.s page 5 202:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 203:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Allocate lock resource */ 204:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** __HAL_UNLOCK(hdma); 205:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 206:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Change DMA peripheral state */ 207:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->State = HAL_DMA_STATE_BUSY; 208:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 209:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Disable the peripheral */ 210:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** __HAL_DMA_DISABLE(hdma); 211:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 212:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Check if the DMA Stream is effectively disabled */ 213:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** while((hdma->Instance->CR & DMA_SxCR_EN) != RESET) 214:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 215:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Check for the Timeout */ 216:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if((HAL_GetTick() - tickstart ) > HAL_TIMEOUT_DMA_ABORT) 217:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 218:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Update error code */ 219:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->ErrorCode = HAL_DMA_ERROR_TIMEOUT; 220:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 221:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Change the DMA state */ 222:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->State = HAL_DMA_STATE_TIMEOUT; 223:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 224:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** return HAL_TIMEOUT; 225:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 226:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 227:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 228:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Get the CR register value */ 229:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** tmp = hdma->Instance->CR; 230:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 231:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Clear CHSEL, MBURST, PBURST, PL, MSIZE, PSIZE, MINC, PINC, CIRC, DIR, CT and DBM bits */ 232:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** tmp &= ((uint32_t)~(DMA_SxCR_CHSEL | DMA_SxCR_MBURST | DMA_SxCR_PBURST | \ 233:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** DMA_SxCR_PL | DMA_SxCR_MSIZE | DMA_SxCR_PSIZE | \ 234:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** DMA_SxCR_MINC | DMA_SxCR_PINC | DMA_SxCR_CIRC | \ 235:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** DMA_SxCR_DIR | DMA_SxCR_CT | DMA_SxCR_DBM)); 236:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 237:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Prepare the DMA Stream configuration */ 238:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** tmp |= hdma->Init.Channel | hdma->Init.Direction | 239:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->Init.PeriphInc | hdma->Init.MemInc | 240:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->Init.PeriphDataAlignment | hdma->Init.MemDataAlignment | 241:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->Init.Mode | hdma->Init.Priority; 242:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 243:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* the Memory burst and peripheral burst are not used when the FIFO is disabled */ 244:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if(hdma->Init.FIFOMode == DMA_FIFOMODE_ENABLE) 245:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 246:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Get memory burst and peripheral burst */ 247:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** tmp |= hdma->Init.MemBurst | hdma->Init.PeriphBurst; 248:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 249:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 250:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Write to DMA Stream CR register */ 251:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->Instance->CR = tmp; 252:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 253:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Get the FCR register value */ 254:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** tmp = hdma->Instance->FCR; 255:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 256:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Clear Direct mode and FIFO threshold bits */ 257:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** tmp &= (uint32_t)~(DMA_SxFCR_DMDIS | DMA_SxFCR_FTH); 258:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** ARM GAS /tmp/cc2d5rNl.s page 6 259:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Prepare the DMA Stream FIFO configuration */ 260:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** tmp |= hdma->Init.FIFOMode; 261:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 262:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* The FIFO threshold is not used when the FIFO mode is disabled */ 263:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if(hdma->Init.FIFOMode == DMA_FIFOMODE_ENABLE) 264:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 265:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Get the FIFO threshold */ 266:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** tmp |= hdma->Init.FIFOThreshold; 267:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 268:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Check compatibility between FIFO threshold level and size of the memory burst */ 269:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* for INCR4, INCR8, INCR16 bursts */ 270:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if (hdma->Init.MemBurst != DMA_MBURST_SINGLE) 271:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 272:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if (DMA_CheckFifoParam(hdma) != HAL_OK) 273:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 274:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Update error code */ 275:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->ErrorCode = HAL_DMA_ERROR_PARAM; 276:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 277:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Change the DMA state */ 278:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->State = HAL_DMA_STATE_READY; 279:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 280:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** return HAL_ERROR; 281:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 282:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 283:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 284:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 285:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Write to DMA Stream FCR */ 286:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->Instance->FCR = tmp; 287:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 288:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Initialize StreamBaseAddress and StreamIndex parameters to be used to calculate 289:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** DMA steam Base Address needed by HAL_DMA_IRQHandler() and HAL_DMA_PollForTransfer() */ 290:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** regs = (DMA_Base_Registers *)DMA_CalcBaseAndBitshift(hdma); 291:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 292:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Clear all interrupt flags */ 293:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** regs->IFCR = 0x3FU << hdma->StreamIndex; 294:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 295:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Initialize the error code */ 296:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->ErrorCode = HAL_DMA_ERROR_NONE; 297:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 298:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Initialize the DMA state */ 299:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->State = HAL_DMA_STATE_READY; 300:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 301:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** return HAL_OK; 302:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 303:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 304:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /** 305:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @brief DeInitializes the DMA peripheral 306:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @param hdma pointer to a DMA_HandleTypeDef structure that contains 307:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * the configuration information for the specified DMA Stream. 308:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @retval HAL status 309:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** */ 310:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** HAL_StatusTypeDef HAL_DMA_DeInit(DMA_HandleTypeDef *hdma) 311:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 312:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** DMA_Base_Registers *regs; 313:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 314:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Check the DMA peripheral state */ 315:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if(hdma == NULL) ARM GAS /tmp/cc2d5rNl.s page 7 316:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 317:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** return HAL_ERROR; 318:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 319:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 320:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Check the DMA peripheral state */ 321:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if(hdma->State == HAL_DMA_STATE_BUSY) 322:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 323:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Return error status */ 324:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** return HAL_BUSY; 325:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 326:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 327:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Check the parameters */ 328:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** assert_param(IS_DMA_STREAM_ALL_INSTANCE(hdma->Instance)); 329:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 330:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Disable the selected DMA Streamx */ 331:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** __HAL_DMA_DISABLE(hdma); 332:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 333:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Reset DMA Streamx control register */ 334:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->Instance->CR = 0U; 335:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 336:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Reset DMA Streamx number of data to transfer register */ 337:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->Instance->NDTR = 0U; 338:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 339:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Reset DMA Streamx peripheral address register */ 340:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->Instance->PAR = 0U; 341:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 342:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Reset DMA Streamx memory 0 address register */ 343:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->Instance->M0AR = 0U; 344:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 345:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Reset DMA Streamx memory 1 address register */ 346:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->Instance->M1AR = 0U; 347:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 348:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Reset DMA Streamx FIFO control register */ 349:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->Instance->FCR = 0x00000021U; 350:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 351:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Get DMA steam Base Address */ 352:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** regs = (DMA_Base_Registers *)DMA_CalcBaseAndBitshift(hdma); 353:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 354:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Clean all callbacks */ 355:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->XferCpltCallback = NULL; 356:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->XferHalfCpltCallback = NULL; 357:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->XferM1CpltCallback = NULL; 358:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->XferM1HalfCpltCallback = NULL; 359:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->XferErrorCallback = NULL; 360:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->XferAbortCallback = NULL; 361:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 362:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Clear all interrupt flags at correct offset within the register */ 363:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** regs->IFCR = 0x3FU << hdma->StreamIndex; 364:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 365:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Reset the error code */ 366:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->ErrorCode = HAL_DMA_ERROR_NONE; 367:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 368:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Reset the DMA state */ 369:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->State = HAL_DMA_STATE_RESET; 370:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 371:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Release Lock */ 372:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** __HAL_UNLOCK(hdma); ARM GAS /tmp/cc2d5rNl.s page 8 373:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 374:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** return HAL_OK; 375:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 376:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 377:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /** 378:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @} 379:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** */ 380:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 381:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /** @addtogroup DMA_Exported_Functions_Group2 382:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * 383:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** @verbatim 384:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** =============================================================================== 385:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** ##### IO operation functions ##### 386:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** =============================================================================== 387:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** [..] This section provides functions allowing to: 388:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** (+) Configure the source, destination address and data length and Start DMA transfer 389:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** (+) Configure the source, destination address and data length and 390:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** Start DMA transfer with interrupt 391:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** (+) Abort DMA transfer 392:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** (+) Poll for transfer complete 393:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** (+) Handle DMA interrupt request 394:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 395:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** @endverbatim 396:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @{ 397:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** */ 398:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 399:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /** 400:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @brief Starts the DMA Transfer. 401:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @param hdma pointer to a DMA_HandleTypeDef structure that contains 402:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * the configuration information for the specified DMA Stream. 403:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @param SrcAddress The source memory Buffer address 404:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @param DstAddress The destination memory Buffer address 405:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @param DataLength The length of data to be transferred from source to destination 406:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @retval HAL status 407:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** */ 408:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** HAL_StatusTypeDef HAL_DMA_Start(DMA_HandleTypeDef *hdma, uint32_t SrcAddress, uint32_t DstAddress, 409:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 410:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** HAL_StatusTypeDef status = HAL_OK; 411:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 412:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Check the parameters */ 413:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** assert_param(IS_DMA_BUFFER_SIZE(DataLength)); 414:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 415:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Process locked */ 416:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** __HAL_LOCK(hdma); 417:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 418:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if(HAL_DMA_STATE_READY == hdma->State) 419:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 420:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Change DMA peripheral state */ 421:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->State = HAL_DMA_STATE_BUSY; 422:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 423:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Initialize the error code */ 424:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->ErrorCode = HAL_DMA_ERROR_NONE; 425:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 426:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Configure the source, destination address and the data length */ 427:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** DMA_SetConfig(hdma, SrcAddress, DstAddress, DataLength); 428:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 429:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Enable the Peripheral */ ARM GAS /tmp/cc2d5rNl.s page 9 430:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** __HAL_DMA_ENABLE(hdma); 431:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 432:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** else 433:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 434:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Process unlocked */ 435:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** __HAL_UNLOCK(hdma); 436:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 437:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Return error status */ 438:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** status = HAL_BUSY; 439:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 440:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** return status; 441:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 442:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 443:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /** 444:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @brief Start the DMA Transfer with interrupt enabled. 445:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @param hdma pointer to a DMA_HandleTypeDef structure that contains 446:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * the configuration information for the specified DMA Stream. 447:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @param SrcAddress The source memory Buffer address 448:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @param DstAddress The destination memory Buffer address 449:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @param DataLength The length of data to be transferred from source to destination 450:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @retval HAL status 451:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** */ 452:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** HAL_StatusTypeDef HAL_DMA_Start_IT(DMA_HandleTypeDef *hdma, uint32_t SrcAddress, uint32_t DstAddres 453:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 454:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** HAL_StatusTypeDef status = HAL_OK; 455:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 456:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* calculate DMA base and stream number */ 457:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** DMA_Base_Registers *regs = (DMA_Base_Registers *)hdma->StreamBaseAddress; 458:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 459:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Check the parameters */ 460:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** assert_param(IS_DMA_BUFFER_SIZE(DataLength)); 461:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 462:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Process locked */ 463:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** __HAL_LOCK(hdma); 464:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 465:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if(HAL_DMA_STATE_READY == hdma->State) 466:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 467:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Change DMA peripheral state */ 468:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->State = HAL_DMA_STATE_BUSY; 469:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 470:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Initialize the error code */ 471:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->ErrorCode = HAL_DMA_ERROR_NONE; 472:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 473:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Configure the source, destination address and the data length */ 474:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** DMA_SetConfig(hdma, SrcAddress, DstAddress, DataLength); 475:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 476:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Clear all interrupt flags at correct offset within the register */ 477:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** regs->IFCR = 0x3FU << hdma->StreamIndex; 478:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 479:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Enable Common interrupts*/ 480:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->Instance->CR |= DMA_IT_TC | DMA_IT_TE | DMA_IT_DME; 481:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->Instance->FCR |= DMA_IT_FE; 482:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 483:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if(hdma->XferHalfCpltCallback != NULL) 484:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 485:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->Instance->CR |= DMA_IT_HT; 486:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } ARM GAS /tmp/cc2d5rNl.s page 10 487:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 488:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Enable the Peripheral */ 489:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** __HAL_DMA_ENABLE(hdma); 490:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 491:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** else 492:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 493:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Process unlocked */ 494:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** __HAL_UNLOCK(hdma); 495:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 496:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Return error status */ 497:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** status = HAL_BUSY; 498:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 499:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 500:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** return status; 501:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 502:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 503:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /** 504:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @brief Aborts the DMA Transfer. 505:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @param hdma pointer to a DMA_HandleTypeDef structure that contains 506:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * the configuration information for the specified DMA Stream. 507:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * 508:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @note After disabling a DMA Stream, a check for wait until the DMA Stream is 509:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * effectively disabled is added. If a Stream is disabled 510:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * while a data transfer is ongoing, the current data will be transferred 511:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * and the Stream will be effectively disabled only after the transfer of 512:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * this single data is finished. 513:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @retval HAL status 514:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** */ 515:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** HAL_StatusTypeDef HAL_DMA_Abort(DMA_HandleTypeDef *hdma) 516:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 517:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* calculate DMA base and stream number */ 518:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** DMA_Base_Registers *regs = (DMA_Base_Registers *)hdma->StreamBaseAddress; 519:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 520:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** uint32_t tickstart = HAL_GetTick(); 521:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 522:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if(hdma->State != HAL_DMA_STATE_BUSY) 523:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 524:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->ErrorCode = HAL_DMA_ERROR_NO_XFER; 525:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 526:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Process Unlocked */ 527:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** __HAL_UNLOCK(hdma); 528:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 529:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** return HAL_ERROR; 530:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 531:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** else 532:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 533:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Disable all the transfer interrupts */ 534:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->Instance->CR &= ~(DMA_IT_TC | DMA_IT_TE | DMA_IT_DME); 535:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->Instance->FCR &= ~(DMA_IT_FE); 536:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 537:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if((hdma->XferHalfCpltCallback != NULL) || (hdma->XferM1HalfCpltCallback != NULL)) 538:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 539:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->Instance->CR &= ~(DMA_IT_HT); 540:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 541:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 542:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Disable the stream */ 543:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** __HAL_DMA_DISABLE(hdma); ARM GAS /tmp/cc2d5rNl.s page 11 544:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 545:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Check if the DMA Stream is effectively disabled */ 546:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** while((hdma->Instance->CR & DMA_SxCR_EN) != RESET) 547:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 548:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Check for the Timeout */ 549:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if((HAL_GetTick() - tickstart ) > HAL_TIMEOUT_DMA_ABORT) 550:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 551:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Update error code */ 552:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->ErrorCode = HAL_DMA_ERROR_TIMEOUT; 553:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 554:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Process Unlocked */ 555:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** __HAL_UNLOCK(hdma); 556:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 557:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Change the DMA state */ 558:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->State = HAL_DMA_STATE_TIMEOUT; 559:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 560:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** return HAL_TIMEOUT; 561:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 562:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 563:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 564:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Clear all interrupt flags at correct offset within the register */ 565:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** regs->IFCR = 0x3FU << hdma->StreamIndex; 566:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 567:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Process Unlocked */ 568:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** __HAL_UNLOCK(hdma); 569:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 570:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Change the DMA state*/ 571:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->State = HAL_DMA_STATE_READY; 572:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 573:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** return HAL_OK; 574:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 575:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 576:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /** 577:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @brief Aborts the DMA Transfer in Interrupt mode. 578:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @param hdma pointer to a DMA_HandleTypeDef structure that contains 579:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * the configuration information for the specified DMA Stream. 580:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @retval HAL status 581:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** */ 582:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** HAL_StatusTypeDef HAL_DMA_Abort_IT(DMA_HandleTypeDef *hdma) 583:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 584:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if(hdma->State != HAL_DMA_STATE_BUSY) 585:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 586:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->ErrorCode = HAL_DMA_ERROR_NO_XFER; 587:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** return HAL_ERROR; 588:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 589:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** else 590:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 591:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Set Abort State */ 592:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->State = HAL_DMA_STATE_ABORT; 593:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 594:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Disable the stream */ 595:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** __HAL_DMA_DISABLE(hdma); 596:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 597:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 598:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** return HAL_OK; 599:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 600:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** ARM GAS /tmp/cc2d5rNl.s page 12 601:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /** 602:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @brief Polling for transfer complete. 603:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @param hdma pointer to a DMA_HandleTypeDef structure that contains 604:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * the configuration information for the specified DMA Stream. 605:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @param CompleteLevel Specifies the DMA level complete. 606:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @note The polling mode is kept in this version for legacy. it is recommanded to use the IT mo 607:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * This model could be used for debug purpose. 608:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @note The HAL_DMA_PollForTransfer API cannot be used in circular and double buffering mode (a 609:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @param Timeout Timeout duration. 610:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @retval HAL status 611:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** */ 612:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** HAL_StatusTypeDef HAL_DMA_PollForTransfer(DMA_HandleTypeDef *hdma, HAL_DMA_LevelCompleteTypeDef Com 613:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 614:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** HAL_StatusTypeDef status = HAL_OK; 615:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** uint32_t mask_cpltlevel; 616:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** uint32_t tickstart = HAL_GetTick(); 617:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** uint32_t tmpisr; 618:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 619:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* calculate DMA base and stream number */ 620:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** DMA_Base_Registers *regs; 621:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 622:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if(HAL_DMA_STATE_BUSY != hdma->State) 623:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 624:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* No transfer ongoing */ 625:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->ErrorCode = HAL_DMA_ERROR_NO_XFER; 626:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** __HAL_UNLOCK(hdma); 627:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** return HAL_ERROR; 628:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 629:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 630:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Polling mode not supported in circular mode and double buffering mode */ 631:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if ((hdma->Instance->CR & DMA_SxCR_CIRC) != RESET) 632:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 633:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->ErrorCode = HAL_DMA_ERROR_NOT_SUPPORTED; 634:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** return HAL_ERROR; 635:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 636:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 637:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Get the level transfer complete flag */ 638:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if(CompleteLevel == HAL_DMA_FULL_TRANSFER) 639:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 640:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Transfer Complete flag */ 641:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** mask_cpltlevel = DMA_FLAG_TCIF0_4 << hdma->StreamIndex; 642:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 643:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** else 644:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 645:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Half Transfer Complete flag */ 646:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** mask_cpltlevel = DMA_FLAG_HTIF0_4 << hdma->StreamIndex; 647:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 648:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 649:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** regs = (DMA_Base_Registers *)hdma->StreamBaseAddress; 650:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** tmpisr = regs->ISR; 651:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 652:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** while(((tmpisr & mask_cpltlevel) == RESET) && ((hdma->ErrorCode & HAL_DMA_ERROR_TE) == RESET)) 653:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 654:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Check for the Timeout (Not applicable in circular mode)*/ 655:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if(Timeout != HAL_MAX_DELAY) 656:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 657:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if((Timeout == 0U)||((HAL_GetTick() - tickstart ) > Timeout)) ARM GAS /tmp/cc2d5rNl.s page 13 658:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 659:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Update error code */ 660:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->ErrorCode = HAL_DMA_ERROR_TIMEOUT; 661:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 662:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Process Unlocked */ 663:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** __HAL_UNLOCK(hdma); 664:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 665:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Change the DMA state */ 666:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->State = HAL_DMA_STATE_READY; 667:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 668:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** return HAL_TIMEOUT; 669:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 670:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 671:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 672:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Get the ISR register value */ 673:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** tmpisr = regs->ISR; 674:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 675:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if((tmpisr & (DMA_FLAG_TEIF0_4 << hdma->StreamIndex)) != RESET) 676:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 677:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Update error code */ 678:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->ErrorCode |= HAL_DMA_ERROR_TE; 679:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 680:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Clear the transfer error flag */ 681:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** regs->IFCR = DMA_FLAG_TEIF0_4 << hdma->StreamIndex; 682:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 683:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 684:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if((tmpisr & (DMA_FLAG_FEIF0_4 << hdma->StreamIndex)) != RESET) 685:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 686:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Update error code */ 687:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->ErrorCode |= HAL_DMA_ERROR_FE; 688:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 689:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Clear the FIFO error flag */ 690:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** regs->IFCR = DMA_FLAG_FEIF0_4 << hdma->StreamIndex; 691:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 692:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 693:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if((tmpisr & (DMA_FLAG_DMEIF0_4 << hdma->StreamIndex)) != RESET) 694:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 695:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Update error code */ 696:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->ErrorCode |= HAL_DMA_ERROR_DME; 697:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 698:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Clear the Direct Mode error flag */ 699:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** regs->IFCR = DMA_FLAG_DMEIF0_4 << hdma->StreamIndex; 700:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 701:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 702:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 703:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if(hdma->ErrorCode != HAL_DMA_ERROR_NONE) 704:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 705:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if((hdma->ErrorCode & HAL_DMA_ERROR_TE) != RESET) 706:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 707:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** HAL_DMA_Abort(hdma); 708:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 709:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Clear the half transfer and transfer complete flags */ 710:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** regs->IFCR = (DMA_FLAG_HTIF0_4 | DMA_FLAG_TCIF0_4) << hdma->StreamIndex; 711:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 712:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Process Unlocked */ 713:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** __HAL_UNLOCK(hdma); 714:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** ARM GAS /tmp/cc2d5rNl.s page 14 715:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Change the DMA state */ 716:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->State= HAL_DMA_STATE_READY; 717:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 718:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** return HAL_ERROR; 719:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 720:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 721:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 722:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Get the level transfer complete flag */ 723:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if(CompleteLevel == HAL_DMA_FULL_TRANSFER) 724:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 725:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Clear the half transfer and transfer complete flags */ 726:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** regs->IFCR = (DMA_FLAG_HTIF0_4 | DMA_FLAG_TCIF0_4) << hdma->StreamIndex; 727:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 728:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Process Unlocked */ 729:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** __HAL_UNLOCK(hdma); 730:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 731:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->State = HAL_DMA_STATE_READY; 732:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 733:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** else 734:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 735:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Clear the half transfer and transfer complete flags */ 736:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** regs->IFCR = (DMA_FLAG_HTIF0_4) << hdma->StreamIndex; 737:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 738:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 739:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** return status; 740:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 741:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 742:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /** 743:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @brief Handles DMA interrupt request. 744:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @param hdma pointer to a DMA_HandleTypeDef structure that contains 745:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * the configuration information for the specified DMA Stream. 746:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @retval None 747:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** */ 748:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** void HAL_DMA_IRQHandler(DMA_HandleTypeDef *hdma) 749:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 750:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** uint32_t tmpisr; 751:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** __IO uint32_t count = 0U; 752:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** uint32_t timeout = SystemCoreClock / 9600U; 753:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 754:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* calculate DMA base and stream number */ 755:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** DMA_Base_Registers *regs = (DMA_Base_Registers *)hdma->StreamBaseAddress; 756:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 757:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** tmpisr = regs->ISR; 758:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 759:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Transfer Error Interrupt management ***************************************/ 760:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if ((tmpisr & (DMA_FLAG_TEIF0_4 << hdma->StreamIndex)) != RESET) 761:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 762:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if(__HAL_DMA_GET_IT_SOURCE(hdma, DMA_IT_TE) != RESET) 763:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 764:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Disable the transfer error interrupt */ 765:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->Instance->CR &= ~(DMA_IT_TE); 766:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 767:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Clear the transfer error flag */ 768:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** regs->IFCR = DMA_FLAG_TEIF0_4 << hdma->StreamIndex; 769:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 770:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Update error code */ 771:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->ErrorCode |= HAL_DMA_ERROR_TE; ARM GAS /tmp/cc2d5rNl.s page 15 772:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 773:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 774:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* FIFO Error Interrupt management ******************************************/ 775:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if ((tmpisr & (DMA_FLAG_FEIF0_4 << hdma->StreamIndex)) != RESET) 776:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 777:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if(__HAL_DMA_GET_IT_SOURCE(hdma, DMA_IT_FE) != RESET) 778:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 779:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Clear the FIFO error flag */ 780:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** regs->IFCR = DMA_FLAG_FEIF0_4 << hdma->StreamIndex; 781:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 782:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Update error code */ 783:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->ErrorCode |= HAL_DMA_ERROR_FE; 784:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 785:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 786:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Direct Mode Error Interrupt management ***********************************/ 787:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if ((tmpisr & (DMA_FLAG_DMEIF0_4 << hdma->StreamIndex)) != RESET) 788:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 789:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if(__HAL_DMA_GET_IT_SOURCE(hdma, DMA_IT_DME) != RESET) 790:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 791:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Clear the direct mode error flag */ 792:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** regs->IFCR = DMA_FLAG_DMEIF0_4 << hdma->StreamIndex; 793:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 794:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Update error code */ 795:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->ErrorCode |= HAL_DMA_ERROR_DME; 796:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 797:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 798:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Half Transfer Complete Interrupt management ******************************/ 799:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if ((tmpisr & (DMA_FLAG_HTIF0_4 << hdma->StreamIndex)) != RESET) 800:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 801:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if(__HAL_DMA_GET_IT_SOURCE(hdma, DMA_IT_HT) != RESET) 802:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 803:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Clear the half transfer complete flag */ 804:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** regs->IFCR = DMA_FLAG_HTIF0_4 << hdma->StreamIndex; 805:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 806:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Multi_Buffering mode enabled */ 807:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if(((hdma->Instance->CR) & (uint32_t)(DMA_SxCR_DBM)) != RESET) 808:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 809:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Current memory buffer used is Memory 0 */ 810:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if((hdma->Instance->CR & DMA_SxCR_CT) == RESET) 811:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 812:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if(hdma->XferHalfCpltCallback != NULL) 813:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 814:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Half transfer callback */ 815:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->XferHalfCpltCallback(hdma); 816:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 817:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 818:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Current memory buffer used is Memory 1 */ 819:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** else 820:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 821:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if(hdma->XferM1HalfCpltCallback != NULL) 822:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 823:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Half transfer callback */ 824:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->XferM1HalfCpltCallback(hdma); 825:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 826:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 827:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 828:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** else ARM GAS /tmp/cc2d5rNl.s page 16 829:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 830:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Disable the half transfer interrupt if the DMA mode is not CIRCULAR */ 831:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if((hdma->Instance->CR & DMA_SxCR_CIRC) == RESET) 832:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 833:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Disable the half transfer interrupt */ 834:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->Instance->CR &= ~(DMA_IT_HT); 835:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 836:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 837:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if(hdma->XferHalfCpltCallback != NULL) 838:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 839:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Half transfer callback */ 840:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->XferHalfCpltCallback(hdma); 841:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 842:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 843:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 844:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 845:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Transfer Complete Interrupt management ***********************************/ 846:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if ((tmpisr & (DMA_FLAG_TCIF0_4 << hdma->StreamIndex)) != RESET) 847:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 848:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if(__HAL_DMA_GET_IT_SOURCE(hdma, DMA_IT_TC) != RESET) 849:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 850:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Clear the transfer complete flag */ 851:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** regs->IFCR = DMA_FLAG_TCIF0_4 << hdma->StreamIndex; 852:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 853:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if(HAL_DMA_STATE_ABORT == hdma->State) 854:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 855:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Disable all the transfer interrupts */ 856:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->Instance->CR &= ~(DMA_IT_TC | DMA_IT_TE | DMA_IT_DME); 857:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->Instance->FCR &= ~(DMA_IT_FE); 858:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 859:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if((hdma->XferHalfCpltCallback != NULL) || (hdma->XferM1HalfCpltCallback != NULL)) 860:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 861:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->Instance->CR &= ~(DMA_IT_HT); 862:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 863:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 864:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Clear all interrupt flags at correct offset within the register */ 865:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** regs->IFCR = 0x3FU << hdma->StreamIndex; 866:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 867:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Process Unlocked */ 868:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** __HAL_UNLOCK(hdma); 869:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 870:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Change the DMA state */ 871:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->State = HAL_DMA_STATE_READY; 872:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 873:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if(hdma->XferAbortCallback != NULL) 874:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 875:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->XferAbortCallback(hdma); 876:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 877:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** return; 878:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 879:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 880:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if(((hdma->Instance->CR) & (uint32_t)(DMA_SxCR_DBM)) != RESET) 881:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 882:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Current memory buffer used is Memory 0 */ 883:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if((hdma->Instance->CR & DMA_SxCR_CT) == RESET) 884:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 885:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if(hdma->XferM1CpltCallback != NULL) ARM GAS /tmp/cc2d5rNl.s page 17 886:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 887:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Transfer complete Callback for memory1 */ 888:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->XferM1CpltCallback(hdma); 889:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 890:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 891:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Current memory buffer used is Memory 1 */ 892:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** else 893:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 894:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if(hdma->XferCpltCallback != NULL) 895:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 896:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Transfer complete Callback for memory0 */ 897:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->XferCpltCallback(hdma); 898:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 899:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 900:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 901:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Disable the transfer complete interrupt if the DMA mode is not CIRCULAR */ 902:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** else 903:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 904:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if((hdma->Instance->CR & DMA_SxCR_CIRC) == RESET) 905:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 906:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Disable the transfer complete interrupt */ 907:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->Instance->CR &= ~(DMA_IT_TC); 908:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 909:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Process Unlocked */ 910:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** __HAL_UNLOCK(hdma); 911:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 912:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Change the DMA state */ 913:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->State = HAL_DMA_STATE_READY; 914:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 915:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 916:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if(hdma->XferCpltCallback != NULL) 917:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 918:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Transfer complete callback */ 919:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->XferCpltCallback(hdma); 920:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 921:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 922:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 923:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 924:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 925:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* manage error case */ 926:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if(hdma->ErrorCode != HAL_DMA_ERROR_NONE) 927:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 928:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if((hdma->ErrorCode & HAL_DMA_ERROR_TE) != RESET) 929:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 930:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->State = HAL_DMA_STATE_ABORT; 931:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 932:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Disable the stream */ 933:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** __HAL_DMA_DISABLE(hdma); 934:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 935:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** do 936:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 937:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if (++count > timeout) 938:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 939:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break; 940:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 941:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 942:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** while((hdma->Instance->CR & DMA_SxCR_EN) != RESET); ARM GAS /tmp/cc2d5rNl.s page 18 943:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 944:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Process Unlocked */ 945:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** __HAL_UNLOCK(hdma); 946:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 947:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Change the DMA state */ 948:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->State = HAL_DMA_STATE_READY; 949:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 950:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 951:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if(hdma->XferErrorCallback != NULL) 952:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 953:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Transfer error callback */ 954:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->XferErrorCallback(hdma); 955:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 956:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 957:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 958:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 959:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /** 960:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @brief Register callbacks 961:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @param hdma pointer to a DMA_HandleTypeDef structure that contains 962:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * the configuration information for the specified DMA Stream. 963:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @param CallbackID User Callback identifer 964:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * a DMA_HandleTypeDef structure as parameter. 965:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @param pCallback pointer to private callbacsk function which has pointer to 966:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * a DMA_HandleTypeDef structure as parameter. 967:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @retval HAL status 968:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** */ 969:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** HAL_StatusTypeDef HAL_DMA_RegisterCallback(DMA_HandleTypeDef *hdma, HAL_DMA_CallbackIDTypeDef Callb 970:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 971:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 972:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** HAL_StatusTypeDef status = HAL_OK; 973:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 974:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Process locked */ 975:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** __HAL_LOCK(hdma); 976:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 977:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if(HAL_DMA_STATE_READY == hdma->State) 978:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 979:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** switch (CallbackID) 980:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 981:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** case HAL_DMA_XFER_CPLT_CB_ID: 982:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->XferCpltCallback = pCallback; 983:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break; 984:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 985:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** case HAL_DMA_XFER_HALFCPLT_CB_ID: 986:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->XferHalfCpltCallback = pCallback; 987:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break; 988:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 989:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** case HAL_DMA_XFER_M1CPLT_CB_ID: 990:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->XferM1CpltCallback = pCallback; 991:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break; 992:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 993:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** case HAL_DMA_XFER_M1HALFCPLT_CB_ID: 994:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->XferM1HalfCpltCallback = pCallback; 995:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break; 996:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 997:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** case HAL_DMA_XFER_ERROR_CB_ID: 998:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->XferErrorCallback = pCallback; 999:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break; ARM GAS /tmp/cc2d5rNl.s page 19 1000:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1001:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** case HAL_DMA_XFER_ABORT_CB_ID: 1002:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->XferAbortCallback = pCallback; 1003:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break; 1004:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1005:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** default: 1006:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break; 1007:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 1008:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 1009:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** else 1010:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1011:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Return error status */ 1012:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** status = HAL_ERROR; 1013:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 1014:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1015:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Release Lock */ 1016:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** __HAL_UNLOCK(hdma); 1017:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1018:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** return status; 1019:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 1020:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1021:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /** 1022:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @brief UnRegister callbacks 1023:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @param hdma pointer to a DMA_HandleTypeDef structure that contains 1024:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * the configuration information for the specified DMA Stream. 1025:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @param CallbackID User Callback identifer 1026:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * a HAL_DMA_CallbackIDTypeDef ENUM as parameter. 1027:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @retval HAL status 1028:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** */ 1029:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** HAL_StatusTypeDef HAL_DMA_UnRegisterCallback(DMA_HandleTypeDef *hdma, HAL_DMA_CallbackIDTypeDef Cal 1030:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1031:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** HAL_StatusTypeDef status = HAL_OK; 1032:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1033:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Process locked */ 1034:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** __HAL_LOCK(hdma); 1035:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1036:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if(HAL_DMA_STATE_READY == hdma->State) 1037:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1038:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** switch (CallbackID) 1039:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1040:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** case HAL_DMA_XFER_CPLT_CB_ID: 1041:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->XferCpltCallback = NULL; 1042:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break; 1043:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1044:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** case HAL_DMA_XFER_HALFCPLT_CB_ID: 1045:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->XferHalfCpltCallback = NULL; 1046:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break; 1047:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1048:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** case HAL_DMA_XFER_M1CPLT_CB_ID: 1049:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->XferM1CpltCallback = NULL; 1050:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break; 1051:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1052:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** case HAL_DMA_XFER_M1HALFCPLT_CB_ID: 1053:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->XferM1HalfCpltCallback = NULL; 1054:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break; 1055:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1056:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** case HAL_DMA_XFER_ERROR_CB_ID: ARM GAS /tmp/cc2d5rNl.s page 20 1057:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->XferErrorCallback = NULL; 1058:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break; 1059:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1060:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** case HAL_DMA_XFER_ABORT_CB_ID: 1061:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->XferAbortCallback = NULL; 1062:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break; 1063:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1064:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** case HAL_DMA_XFER_ALL_CB_ID: 1065:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->XferCpltCallback = NULL; 1066:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->XferHalfCpltCallback = NULL; 1067:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->XferM1CpltCallback = NULL; 1068:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->XferM1HalfCpltCallback = NULL; 1069:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->XferErrorCallback = NULL; 1070:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->XferAbortCallback = NULL; 1071:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break; 1072:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1073:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** default: 1074:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** status = HAL_ERROR; 1075:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break; 1076:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 1077:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 1078:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** else 1079:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1080:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** status = HAL_ERROR; 1081:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 1082:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1083:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Release Lock */ 1084:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** __HAL_UNLOCK(hdma); 1085:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1086:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** return status; 1087:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 1088:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1089:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /** 1090:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @} 1091:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** */ 1092:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1093:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /** @addtogroup DMA_Exported_Functions_Group3 1094:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * 1095:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** @verbatim 1096:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** =============================================================================== 1097:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** ##### State and Errors functions ##### 1098:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** =============================================================================== 1099:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** [..] 1100:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** This subsection provides functions allowing to 1101:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** (+) Check the DMA state 1102:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** (+) Get error code 1103:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1104:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** @endverbatim 1105:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @{ 1106:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** */ 1107:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1108:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /** 1109:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @brief Returns the DMA state. 1110:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @param hdma pointer to a DMA_HandleTypeDef structure that contains 1111:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * the configuration information for the specified DMA Stream. 1112:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @retval HAL state 1113:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** */ ARM GAS /tmp/cc2d5rNl.s page 21 1114:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** HAL_DMA_StateTypeDef HAL_DMA_GetState(DMA_HandleTypeDef *hdma) 1115:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1116:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** return hdma->State; 1117:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 1118:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1119:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /** 1120:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @brief Return the DMA error code 1121:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @param hdma pointer to a DMA_HandleTypeDef structure that contains 1122:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * the configuration information for the specified DMA Stream. 1123:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @retval DMA Error Code 1124:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** */ 1125:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** uint32_t HAL_DMA_GetError(DMA_HandleTypeDef *hdma) 1126:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1127:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** return hdma->ErrorCode; 1128:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 1129:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1130:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /** 1131:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @} 1132:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** */ 1133:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1134:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /** 1135:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @} 1136:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** */ 1137:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1138:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /** @addtogroup DMA_Private_Functions 1139:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @{ 1140:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** */ 1141:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1142:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /** 1143:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @brief Sets the DMA Transfer parameter. 1144:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @param hdma pointer to a DMA_HandleTypeDef structure that contains 1145:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * the configuration information for the specified DMA Stream. 1146:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @param SrcAddress The source memory Buffer address 1147:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @param DstAddress The destination memory Buffer address 1148:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @param DataLength The length of data to be transferred from source to destination 1149:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @retval HAL status 1150:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** */ 1151:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** static void DMA_SetConfig(DMA_HandleTypeDef *hdma, uint32_t SrcAddress, uint32_t DstAddress, uint32 1152:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 29 .loc 1 1152 1 view -0 30 .cfi_startproc 31 @ args = 0, pretend = 0, frame = 0 32 @ frame_needed = 0, uses_anonymous_args = 0 33 @ link register save eliminated. 34 .loc 1 1152 1 is_stmt 0 view .LVU1 35 0000 30B4 push {r4, r5} 36 .LCFI0: 37 .cfi_def_cfa_offset 8 38 .cfi_offset 4, -8 39 .cfi_offset 5, -4 1153:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Clear DBM bit */ 1154:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->Instance->CR &= (uint32_t)(~DMA_SxCR_DBM); 40 .loc 1 1154 3 is_stmt 1 view .LVU2 41 .loc 1 1154 7 is_stmt 0 view .LVU3 42 0002 0568 ldr r5, [r0] 43 .loc 1 1154 22 view .LVU4 44 0004 2C68 ldr r4, [r5] ARM GAS /tmp/cc2d5rNl.s page 22 45 0006 24F48024 bic r4, r4, #262144 46 000a 2C60 str r4, [r5] 1155:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1156:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Configure DMA Stream data length */ 1157:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->Instance->NDTR = DataLength; 47 .loc 1 1157 3 is_stmt 1 view .LVU5 48 .loc 1 1157 7 is_stmt 0 view .LVU6 49 000c 0468 ldr r4, [r0] 50 .loc 1 1157 24 view .LVU7 51 000e 6360 str r3, [r4, #4] 1158:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1159:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Memory to Peripheral */ 1160:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if((hdma->Init.Direction) == DMA_MEMORY_TO_PERIPH) 52 .loc 1 1160 3 is_stmt 1 view .LVU8 53 .loc 1 1160 17 is_stmt 0 view .LVU9 54 0010 8368 ldr r3, [r0, #8] 55 .LVL1: 56 .loc 1 1160 5 view .LVU10 57 0012 402B cmp r3, #64 58 0014 05D0 beq .L5 1161:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1162:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Configure DMA Stream destination address */ 1163:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->Instance->PAR = DstAddress; 1164:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1165:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Configure DMA Stream source address */ 1166:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->Instance->M0AR = SrcAddress; 1167:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 1168:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Peripheral to Memory */ 1169:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** else 1170:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1171:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Configure DMA Stream source address */ 1172:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->Instance->PAR = SrcAddress; 59 .loc 1 1172 5 is_stmt 1 view .LVU11 60 .loc 1 1172 9 is_stmt 0 view .LVU12 61 0016 0368 ldr r3, [r0] 62 .loc 1 1172 25 view .LVU13 63 0018 9960 str r1, [r3, #8] 64 .LVL2: 1173:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1174:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Configure DMA Stream destination address */ 1175:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->Instance->M0AR = DstAddress; 65 .loc 1 1175 5 is_stmt 1 view .LVU14 66 .loc 1 1175 9 is_stmt 0 view .LVU15 67 001a 0368 ldr r3, [r0] 68 .loc 1 1175 26 view .LVU16 69 001c DA60 str r2, [r3, #12] 70 .L1: 1176:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 1177:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 71 .loc 1 1177 1 view .LVU17 72 001e 30BC pop {r4, r5} 73 .LCFI1: 74 .cfi_remember_state 75 .cfi_restore 5 76 .cfi_restore 4 77 .cfi_def_cfa_offset 0 78 0020 7047 bx lr ARM GAS /tmp/cc2d5rNl.s page 23 79 .LVL3: 80 .L5: 81 .LCFI2: 82 .cfi_restore_state 1163:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 83 .loc 1 1163 5 is_stmt 1 view .LVU18 1163:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 84 .loc 1 1163 9 is_stmt 0 view .LVU19 85 0022 0368 ldr r3, [r0] 1163:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 86 .loc 1 1163 25 view .LVU20 87 0024 9A60 str r2, [r3, #8] 88 .LVL4: 1166:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 89 .loc 1 1166 5 is_stmt 1 view .LVU21 1166:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 90 .loc 1 1166 9 is_stmt 0 view .LVU22 91 0026 0368 ldr r3, [r0] 1166:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 92 .loc 1 1166 26 view .LVU23 93 0028 D960 str r1, [r3, #12] 94 002a F8E7 b .L1 95 .cfi_endproc 96 .LFE142: 98 .section .text.DMA_CalcBaseAndBitshift,"ax",%progbits 99 .align 1 100 .syntax unified 101 .thumb 102 .thumb_func 104 DMA_CalcBaseAndBitshift: 105 .LVL5: 106 .LFB143: 1178:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1179:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /** 1180:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @brief Returns the DMA Stream base address depending on stream number 1181:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @param hdma pointer to a DMA_HandleTypeDef structure that contains 1182:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * the configuration information for the specified DMA Stream. 1183:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @retval Stream base address 1184:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** */ 1185:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** static uint32_t DMA_CalcBaseAndBitshift(DMA_HandleTypeDef *hdma) 1186:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 107 .loc 1 1186 1 is_stmt 1 view -0 108 .cfi_startproc 109 @ args = 0, pretend = 0, frame = 0 110 @ frame_needed = 0, uses_anonymous_args = 0 111 @ link register save eliminated. 112 .loc 1 1186 1 is_stmt 0 view .LVU25 113 0000 10B4 push {r4} 114 .LCFI3: 115 .cfi_def_cfa_offset 4 116 .cfi_offset 4, -4 1187:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** uint32_t stream_number = (((uint32_t)hdma->Instance & 0xFFU) - 16U) / 24U; 117 .loc 1 1187 3 is_stmt 1 view .LVU26 118 .loc 1 1187 44 is_stmt 0 view .LVU27 119 0002 0368 ldr r3, [r0] 120 .loc 1 1187 55 view .LVU28 121 0004 D9B2 uxtb r1, r3 ARM GAS /tmp/cc2d5rNl.s page 24 122 .loc 1 1187 64 view .LVU29 123 0006 1039 subs r1, r1, #16 124 .loc 1 1187 12 view .LVU30 125 0008 0C4A ldr r2, .L10 126 000a A2FB0142 umull r4, r2, r2, r1 127 000e 1209 lsrs r2, r2, #4 128 .LVL6: 1188:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1189:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* lookup table for necessary bitshift of flags within status registers */ 1190:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** static const uint8_t flagBitshiftOffset[8U] = {0U, 6U, 16U, 22U, 0U, 6U, 16U, 22U}; 129 .loc 1 1190 3 is_stmt 1 view .LVU31 1191:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->StreamIndex = flagBitshiftOffset[stream_number]; 130 .loc 1 1191 3 view .LVU32 131 .loc 1 1191 41 is_stmt 0 view .LVU33 132 0010 0B4C ldr r4, .L10+4 133 0012 A25C ldrb r2, [r4, r2] @ zero_extendqisi2 134 .LVL7: 135 .loc 1 1191 21 view .LVU34 136 0014 C265 str r2, [r0, #92] 1192:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1193:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if (stream_number > 3U) 137 .loc 1 1193 3 is_stmt 1 view .LVU35 138 .loc 1 1193 6 is_stmt 0 view .LVU36 139 0016 5F29 cmp r1, #95 140 0018 09D9 bls .L7 1194:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1195:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* return pointer to HISR and HIFCR */ 1196:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->StreamBaseAddress = (((uint32_t)hdma->Instance & (uint32_t)(~0x3FFU)) + 4U); 141 .loc 1 1196 5 is_stmt 1 view .LVU37 142 .loc 1 1196 58 is_stmt 0 view .LVU38 143 001a 23F47F73 bic r3, r3, #1020 144 001e 23F00303 bic r3, r3, #3 145 .loc 1 1196 81 view .LVU39 146 0022 0433 adds r3, r3, #4 147 .loc 1 1196 29 view .LVU40 148 0024 8365 str r3, [r0, #88] 149 .L8: 1197:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 1198:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** else 1199:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1200:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* return pointer to LISR and LIFCR */ 1201:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->StreamBaseAddress = ((uint32_t)hdma->Instance & (uint32_t)(~0x3FFU)); 1202:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 1203:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1204:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** return hdma->StreamBaseAddress; 150 .loc 1 1204 3 is_stmt 1 view .LVU41 1205:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 151 .loc 1 1205 1 is_stmt 0 view .LVU42 152 0026 806D ldr r0, [r0, #88] 153 .LVL8: 154 .loc 1 1205 1 view .LVU43 155 0028 5DF8044B ldr r4, [sp], #4 156 .LCFI4: 157 .cfi_remember_state 158 .cfi_restore 4 159 .cfi_def_cfa_offset 0 160 002c 7047 bx lr ARM GAS /tmp/cc2d5rNl.s page 25 161 .LVL9: 162 .L7: 163 .LCFI5: 164 .cfi_restore_state 1201:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 165 .loc 1 1201 5 is_stmt 1 view .LVU44 1201:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 166 .loc 1 1201 57 is_stmt 0 view .LVU45 167 002e 23F47F73 bic r3, r3, #1020 168 0032 23F00303 bic r3, r3, #3 1201:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 169 .loc 1 1201 29 view .LVU46 170 0036 8365 str r3, [r0, #88] 171 0038 F5E7 b .L8 172 .L11: 173 003a 00BF .align 2 174 .L10: 175 003c ABAAAAAA .word -1431655765 176 0040 00000000 .word .LANCHOR0 177 .cfi_endproc 178 .LFE143: 180 .section .text.DMA_CheckFifoParam,"ax",%progbits 181 .align 1 182 .syntax unified 183 .thumb 184 .thumb_func 186 DMA_CheckFifoParam: 187 .LVL10: 188 .LFB144: 1206:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1207:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /** 1208:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @brief Check compatibility between FIFO threshold level and size of the memory burst 1209:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @param hdma pointer to a DMA_HandleTypeDef structure that contains 1210:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * the configuration information for the specified DMA Stream. 1211:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @retval HAL status 1212:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** */ 1213:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** static HAL_StatusTypeDef DMA_CheckFifoParam(DMA_HandleTypeDef *hdma) 1214:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 189 .loc 1 1214 1 is_stmt 1 view -0 190 .cfi_startproc 191 @ args = 0, pretend = 0, frame = 0 192 @ frame_needed = 0, uses_anonymous_args = 0 193 @ link register save eliminated. 1215:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** HAL_StatusTypeDef status = HAL_OK; 194 .loc 1 1215 3 view .LVU48 1216:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** uint32_t tmp = hdma->Init.FIFOThreshold; 195 .loc 1 1216 3 view .LVU49 196 .loc 1 1216 12 is_stmt 0 view .LVU50 197 0000 836A ldr r3, [r0, #40] 198 .LVL11: 1217:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1218:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Memory Data size equal to Byte */ 1219:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if(hdma->Init.MemDataAlignment == DMA_MDATAALIGN_BYTE) 199 .loc 1 1219 3 is_stmt 1 view .LVU51 200 .loc 1 1219 16 is_stmt 0 view .LVU52 201 0002 8269 ldr r2, [r0, #24] 202 .loc 1 1219 5 view .LVU53 ARM GAS /tmp/cc2d5rNl.s page 26 203 0004 92B9 cbnz r2, .L13 1220:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1221:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** switch (tmp) 204 .loc 1 1221 5 is_stmt 1 view .LVU54 205 0006 012B cmp r3, #1 206 0008 0AD0 beq .L14 207 000a 022B cmp r3, #2 208 000c 02D0 beq .L15 209 000e 0BB1 cbz r3, .L15 210 0010 0020 movs r0, #0 211 .LVL12: 212 .loc 1 1221 5 is_stmt 0 view .LVU55 213 0012 7047 bx lr 214 .LVL13: 215 .L15: 1222:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1223:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** case DMA_FIFO_THRESHOLD_1QUARTERFULL: 1224:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** case DMA_FIFO_THRESHOLD_3QUARTERSFULL: 1225:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if ((hdma->Init.MemBurst & DMA_SxCR_MBURST_1) == DMA_SxCR_MBURST_1) 216 .loc 1 1225 7 is_stmt 1 view .LVU56 217 .loc 1 1225 22 is_stmt 0 view .LVU57 218 0014 C36A ldr r3, [r0, #44] 219 .LVL14: 220 .loc 1 1225 10 view .LVU58 221 0016 13F0807F tst r3, #16777216 222 001a 28D1 bne .L23 1215:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** uint32_t tmp = hdma->Init.FIFOThreshold; 223 .loc 1 1215 21 view .LVU59 224 001c 0020 movs r0, #0 225 .LVL15: 1215:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** uint32_t tmp = hdma->Init.FIFOThreshold; 226 .loc 1 1215 21 view .LVU60 227 001e 7047 bx lr 228 .LVL16: 229 .L14: 1226:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1227:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** status = HAL_ERROR; 1228:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 1229:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break; 1230:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** case DMA_FIFO_THRESHOLD_HALFFULL: 1231:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if (hdma->Init.MemBurst == DMA_MBURST_INC16) 230 .loc 1 1231 7 is_stmt 1 view .LVU61 231 .loc 1 1231 21 is_stmt 0 view .LVU62 232 0020 C36A ldr r3, [r0, #44] 233 .LVL17: 234 .loc 1 1231 10 view .LVU63 235 0022 B3F1C07F cmp r3, #25165824 236 0026 24D0 beq .L24 1215:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** uint32_t tmp = hdma->Init.FIFOThreshold; 237 .loc 1 1215 21 view .LVU64 238 0028 0020 movs r0, #0 239 .LVL18: 1215:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** uint32_t tmp = hdma->Init.FIFOThreshold; 240 .loc 1 1215 21 view .LVU65 241 002a 7047 bx lr 242 .LVL19: 243 .L13: ARM GAS /tmp/cc2d5rNl.s page 27 1232:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1233:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** status = HAL_ERROR; 1234:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 1235:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break; 1236:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** case DMA_FIFO_THRESHOLD_FULL: 1237:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break; 1238:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** default: 1239:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break; 1240:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 1241:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 1242:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1243:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Memory Data size equal to Half-Word */ 1244:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** else if (hdma->Init.MemDataAlignment == DMA_MDATAALIGN_HALFWORD) 244 .loc 1 1244 8 is_stmt 1 view .LVU66 245 .loc 1 1244 11 is_stmt 0 view .LVU67 246 002c B2F5005F cmp r2, #8192 247 0030 09D0 beq .L31 1245:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1246:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** switch (tmp) 1247:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1248:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** case DMA_FIFO_THRESHOLD_1QUARTERFULL: 1249:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** case DMA_FIFO_THRESHOLD_3QUARTERSFULL: 1250:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** status = HAL_ERROR; 1251:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break; 1252:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** case DMA_FIFO_THRESHOLD_HALFFULL: 1253:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if ((hdma->Init.MemBurst & DMA_SxCR_MBURST_1) == DMA_SxCR_MBURST_1) 1254:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1255:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** status = HAL_ERROR; 1256:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 1257:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break; 1258:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** case DMA_FIFO_THRESHOLD_FULL: 1259:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if (hdma->Init.MemBurst == DMA_MBURST_INC16) 1260:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1261:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** status = HAL_ERROR; 1262:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 1263:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break; 1264:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** default: 1265:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break; 1266:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 1267:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 1268:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1269:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Memory Data size equal to Word */ 1270:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** else 1271:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1272:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** switch (tmp) 248 .loc 1 1272 5 is_stmt 1 view .LVU68 249 0032 022B cmp r3, #2 250 0034 25D9 bls .L28 251 0036 032B cmp r3, #3 252 0038 25D1 bne .L29 1273:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1274:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** case DMA_FIFO_THRESHOLD_1QUARTERFULL: 1275:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** case DMA_FIFO_THRESHOLD_HALFFULL: 1276:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** case DMA_FIFO_THRESHOLD_3QUARTERSFULL: 1277:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** status = HAL_ERROR; 1278:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break; 1279:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** case DMA_FIFO_THRESHOLD_FULL: ARM GAS /tmp/cc2d5rNl.s page 28 1280:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if ((hdma->Init.MemBurst & DMA_SxCR_MBURST_1) == DMA_SxCR_MBURST_1) 253 .loc 1 1280 7 view .LVU69 254 .loc 1 1280 22 is_stmt 0 view .LVU70 255 003a C36A ldr r3, [r0, #44] 256 .LVL20: 257 .loc 1 1280 10 view .LVU71 258 003c 13F0807F tst r3, #16777216 259 0040 23D1 bne .L30 1215:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** uint32_t tmp = hdma->Init.FIFOThreshold; 260 .loc 1 1215 21 view .LVU72 261 0042 0020 movs r0, #0 262 .LVL21: 1215:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** uint32_t tmp = hdma->Init.FIFOThreshold; 263 .loc 1 1215 21 view .LVU73 264 0044 7047 bx lr 265 .LVL22: 266 .L31: 1246:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 267 .loc 1 1246 5 is_stmt 1 view .LVU74 268 0046 032B cmp r3, #3 269 0048 03D8 bhi .L18 270 004a DFE803F0 tbb [pc, r3] 271 .L20: 272 004e 14 .byte (.L25-.L20)/2 273 004f 04 .byte (.L21-.L20)/2 274 0050 14 .byte (.L25-.L20)/2 275 0051 0A .byte (.L19-.L20)/2 276 .p2align 1 277 .L18: 278 0052 0020 movs r0, #0 279 .LVL23: 1246:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 280 .loc 1 1246 5 is_stmt 0 view .LVU75 281 0054 7047 bx lr 282 .LVL24: 283 .L21: 1253:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 284 .loc 1 1253 7 is_stmt 1 view .LVU76 1253:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 285 .loc 1 1253 22 is_stmt 0 view .LVU77 286 0056 C36A ldr r3, [r0, #44] 287 .LVL25: 1253:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 288 .loc 1 1253 10 view .LVU78 289 0058 13F0807F tst r3, #16777216 290 005c 0DD1 bne .L26 1215:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** uint32_t tmp = hdma->Init.FIFOThreshold; 291 .loc 1 1215 21 view .LVU79 292 005e 0020 movs r0, #0 293 .LVL26: 1215:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** uint32_t tmp = hdma->Init.FIFOThreshold; 294 .loc 1 1215 21 view .LVU80 295 0060 7047 bx lr 296 .LVL27: 297 .L19: 1259:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 298 .loc 1 1259 7 is_stmt 1 view .LVU81 ARM GAS /tmp/cc2d5rNl.s page 29 1259:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 299 .loc 1 1259 21 is_stmt 0 view .LVU82 300 0062 C36A ldr r3, [r0, #44] 301 .LVL28: 1259:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 302 .loc 1 1259 10 view .LVU83 303 0064 B3F1C07F cmp r3, #25165824 304 0068 09D0 beq .L27 1215:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** uint32_t tmp = hdma->Init.FIFOThreshold; 305 .loc 1 1215 21 view .LVU84 306 006a 0020 movs r0, #0 307 .LVL29: 1215:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** uint32_t tmp = hdma->Init.FIFOThreshold; 308 .loc 1 1215 21 view .LVU85 309 006c 7047 bx lr 310 .LVL30: 311 .L23: 1227:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 312 .loc 1 1227 16 view .LVU86 313 006e 0120 movs r0, #1 314 .LVL31: 1227:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 315 .loc 1 1227 16 view .LVU87 316 0070 7047 bx lr 317 .LVL32: 318 .L24: 1233:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 319 .loc 1 1233 16 view .LVU88 320 0072 0120 movs r0, #1 321 .LVL33: 1233:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 322 .loc 1 1233 16 view .LVU89 323 0074 7047 bx lr 324 .LVL34: 325 .L25: 1250:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break; 326 .loc 1 1250 14 view .LVU90 327 0076 0120 movs r0, #1 328 .LVL35: 1250:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break; 329 .loc 1 1250 14 view .LVU91 330 0078 7047 bx lr 331 .LVL36: 332 .L26: 1255:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 333 .loc 1 1255 16 view .LVU92 334 007a 0120 movs r0, #1 335 .LVL37: 1255:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 336 .loc 1 1255 16 view .LVU93 337 007c 7047 bx lr 338 .LVL38: 339 .L27: 1261:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 340 .loc 1 1261 16 view .LVU94 341 007e 0120 movs r0, #1 342 .LVL39: ARM GAS /tmp/cc2d5rNl.s page 30 1261:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 343 .loc 1 1261 16 view .LVU95 344 0080 7047 bx lr 345 .LVL40: 346 .L28: 1277:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break; 347 .loc 1 1277 14 view .LVU96 348 0082 0120 movs r0, #1 349 .LVL41: 1277:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break; 350 .loc 1 1277 14 view .LVU97 351 0084 7047 bx lr 352 .LVL42: 353 .L29: 1272:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 354 .loc 1 1272 5 view .LVU98 355 0086 0020 movs r0, #0 356 .LVL43: 1272:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 357 .loc 1 1272 5 view .LVU99 358 0088 7047 bx lr 359 .LVL44: 360 .L30: 1281:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1282:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** status = HAL_ERROR; 361 .loc 1 1282 16 view .LVU100 362 008a 0120 movs r0, #1 363 .LVL45: 1283:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 1284:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break; 1285:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** default: 1286:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break; 1287:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 1288:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 1289:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1290:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** return status; 364 .loc 1 1290 3 is_stmt 1 view .LVU101 1291:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 365 .loc 1 1291 1 is_stmt 0 view .LVU102 366 008c 7047 bx lr 367 .cfi_endproc 368 .LFE144: 370 .section .text.HAL_DMA_Init,"ax",%progbits 371 .align 1 372 .global HAL_DMA_Init 373 .syntax unified 374 .thumb 375 .thumb_func 377 HAL_DMA_Init: 378 .LVL46: 379 .LFB130: 172:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** uint32_t tmp = 0U; 380 .loc 1 172 1 is_stmt 1 view -0 381 .cfi_startproc 382 @ args = 0, pretend = 0, frame = 0 383 @ frame_needed = 0, uses_anonymous_args = 0 172:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** uint32_t tmp = 0U; ARM GAS /tmp/cc2d5rNl.s page 31 384 .loc 1 172 1 is_stmt 0 view .LVU104 385 0000 70B5 push {r4, r5, r6, lr} 386 .LCFI6: 387 .cfi_def_cfa_offset 16 388 .cfi_offset 4, -16 389 .cfi_offset 5, -12 390 .cfi_offset 6, -8 391 .cfi_offset 14, -4 392 0002 0446 mov r4, r0 173:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** uint32_t tickstart = HAL_GetTick(); 393 .loc 1 173 3 is_stmt 1 view .LVU105 394 .LVL47: 174:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** DMA_Base_Registers *regs; 395 .loc 1 174 3 view .LVU106 174:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** DMA_Base_Registers *regs; 396 .loc 1 174 24 is_stmt 0 view .LVU107 397 0004 FFF7FEFF bl HAL_GetTick 398 .LVL48: 175:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 399 .loc 1 175 3 is_stmt 1 view .LVU108 178:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 400 .loc 1 178 3 view .LVU109 178:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 401 .loc 1 178 5 is_stmt 0 view .LVU110 402 0008 002C cmp r4, #0 403 000a 5BD0 beq .L38 404 000c 0546 mov r5, r0 184:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** assert_param(IS_DMA_CHANNEL(hdma->Init.Channel)); 405 .loc 1 184 3 is_stmt 1 view .LVU111 185:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** assert_param(IS_DMA_DIRECTION(hdma->Init.Direction)); 406 .loc 1 185 3 view .LVU112 186:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** assert_param(IS_DMA_PERIPHERAL_INC_STATE(hdma->Init.PeriphInc)); 407 .loc 1 186 3 view .LVU113 187:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** assert_param(IS_DMA_MEMORY_INC_STATE(hdma->Init.MemInc)); 408 .loc 1 187 3 view .LVU114 188:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** assert_param(IS_DMA_PERIPHERAL_DATA_SIZE(hdma->Init.PeriphDataAlignment)); 409 .loc 1 188 3 view .LVU115 189:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** assert_param(IS_DMA_MEMORY_DATA_SIZE(hdma->Init.MemDataAlignment)); 410 .loc 1 189 3 view .LVU116 190:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** assert_param(IS_DMA_MODE(hdma->Init.Mode)); 411 .loc 1 190 3 view .LVU117 191:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** assert_param(IS_DMA_PRIORITY(hdma->Init.Priority)); 412 .loc 1 191 3 view .LVU118 192:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** assert_param(IS_DMA_FIFO_MODE_STATE(hdma->Init.FIFOMode)); 413 .loc 1 192 3 view .LVU119 193:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Check the memory burst, peripheral burst and FIFO threshold parameters only 414 .loc 1 193 3 view .LVU120 196:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 415 .loc 1 196 3 view .LVU121 198:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** assert_param(IS_DMA_MEMORY_BURST(hdma->Init.MemBurst)); 416 .loc 1 198 5 view .LVU122 199:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** assert_param(IS_DMA_PERIPHERAL_BURST(hdma->Init.PeriphBurst)); 417 .loc 1 199 5 view .LVU123 200:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 418 .loc 1 200 5 view .LVU124 204:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 419 .loc 1 204 3 view .LVU125 ARM GAS /tmp/cc2d5rNl.s page 32 204:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 420 .loc 1 204 3 view .LVU126 421 000e 0023 movs r3, #0 422 0010 84F83430 strb r3, [r4, #52] 204:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 423 .loc 1 204 3 view .LVU127 207:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 424 .loc 1 207 3 view .LVU128 207:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 425 .loc 1 207 15 is_stmt 0 view .LVU129 426 0014 0223 movs r3, #2 427 0016 84F83530 strb r3, [r4, #53] 210:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 428 .loc 1 210 3 is_stmt 1 view .LVU130 429 001a 2268 ldr r2, [r4] 430 001c 1368 ldr r3, [r2] 431 001e 23F00103 bic r3, r3, #1 432 0022 1360 str r3, [r2] 213:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 433 .loc 1 213 3 view .LVU131 434 .LVL49: 435 .L34: 213:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 436 .loc 1 213 8 view .LVU132 213:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 437 .loc 1 213 14 is_stmt 0 view .LVU133 438 0024 2368 ldr r3, [r4] 213:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 439 .loc 1 213 24 view .LVU134 440 0026 1A68 ldr r2, [r3] 213:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 441 .loc 1 213 8 view .LVU135 442 0028 12F0010F tst r2, #1 443 002c 0AD0 beq .L40 216:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 444 .loc 1 216 5 is_stmt 1 view .LVU136 216:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 445 .loc 1 216 9 is_stmt 0 view .LVU137 446 002e FFF7FEFF bl HAL_GetTick 447 .LVL50: 216:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 448 .loc 1 216 23 view .LVU138 449 0032 431B subs r3, r0, r5 216:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 450 .loc 1 216 7 view .LVU139 451 0034 052B cmp r3, #5 452 0036 F5D9 bls .L34 219:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 453 .loc 1 219 7 is_stmt 1 view .LVU140 219:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 454 .loc 1 219 23 is_stmt 0 view .LVU141 455 0038 2023 movs r3, #32 456 003a 6365 str r3, [r4, #84] 222:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 457 .loc 1 222 7 is_stmt 1 view .LVU142 222:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 458 .loc 1 222 19 is_stmt 0 view .LVU143 ARM GAS /tmp/cc2d5rNl.s page 33 459 003c 0320 movs r0, #3 460 003e 84F83500 strb r0, [r4, #53] 224:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 461 .loc 1 224 7 is_stmt 1 view .LVU144 462 .LVL51: 463 .L33: 302:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 464 .loc 1 302 1 is_stmt 0 view .LVU145 465 0042 70BD pop {r4, r5, r6, pc} 466 .LVL52: 467 .L40: 229:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 468 .loc 1 229 3 is_stmt 1 view .LVU146 229:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 469 .loc 1 229 7 is_stmt 0 view .LVU147 470 0044 1A68 ldr r2, [r3] 471 .LVL53: 232:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** DMA_SxCR_PL | DMA_SxCR_MSIZE | DMA_SxCR_PSIZE | \ 472 .loc 1 232 3 is_stmt 1 view .LVU148 232:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** DMA_SxCR_PL | DMA_SxCR_MSIZE | DMA_SxCR_PSIZE | \ 473 .loc 1 232 7 is_stmt 0 view .LVU149 474 0046 2048 ldr r0, .L43 475 0048 1040 ands r0, r0, r2 476 .LVL54: 238:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->Init.PeriphInc | hdma->Init.MemInc | 477 .loc 1 238 3 is_stmt 1 view .LVU150 238:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->Init.PeriphInc | hdma->Init.MemInc | 478 .loc 1 238 21 is_stmt 0 view .LVU151 479 004a 6168 ldr r1, [r4, #4] 238:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->Init.PeriphInc | hdma->Init.MemInc | 480 .loc 1 238 54 view .LVU152 481 004c A268 ldr r2, [r4, #8] 238:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->Init.PeriphInc | hdma->Init.MemInc | 482 .loc 1 238 42 view .LVU153 483 004e 0A43 orrs r2, r2, r1 239:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->Init.PeriphDataAlignment | hdma->Init.MemDataAlignment | 484 .loc 1 239 21 view .LVU154 485 0050 E168 ldr r1, [r4, #12] 238:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->Init.PeriphInc | hdma->Init.MemInc | 486 .loc 1 238 72 view .LVU155 487 0052 0A43 orrs r2, r2, r1 239:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->Init.PeriphDataAlignment | hdma->Init.MemDataAlignment | 488 .loc 1 239 54 view .LVU156 489 0054 2169 ldr r1, [r4, #16] 239:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->Init.PeriphDataAlignment | hdma->Init.MemDataAlignment | 490 .loc 1 239 42 view .LVU157 491 0056 0A43 orrs r2, r2, r1 240:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->Init.Mode | hdma->Init.Priority; 492 .loc 1 240 21 view .LVU158 493 0058 6169 ldr r1, [r4, #20] 239:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->Init.PeriphDataAlignment | hdma->Init.MemDataAlignment | 494 .loc 1 239 72 view .LVU159 495 005a 0A43 orrs r2, r2, r1 240:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->Init.Mode | hdma->Init.Priority; 496 .loc 1 240 54 view .LVU160 497 005c A169 ldr r1, [r4, #24] 240:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->Init.Mode | hdma->Init.Priority; ARM GAS /tmp/cc2d5rNl.s page 34 498 .loc 1 240 42 view .LVU161 499 005e 0A43 orrs r2, r2, r1 241:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 500 .loc 1 241 21 view .LVU162 501 0060 E169 ldr r1, [r4, #28] 240:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->Init.Mode | hdma->Init.Priority; 502 .loc 1 240 72 view .LVU163 503 0062 0A43 orrs r2, r2, r1 241:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 504 .loc 1 241 54 view .LVU164 505 0064 216A ldr r1, [r4, #32] 241:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 506 .loc 1 241 42 view .LVU165 507 0066 0A43 orrs r2, r2, r1 238:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->Init.PeriphInc | hdma->Init.MemInc | 508 .loc 1 238 7 view .LVU166 509 0068 0243 orrs r2, r2, r0 510 .LVL55: 244:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 511 .loc 1 244 3 is_stmt 1 view .LVU167 244:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 512 .loc 1 244 16 is_stmt 0 view .LVU168 513 006a 616A ldr r1, [r4, #36] 244:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 514 .loc 1 244 5 view .LVU169 515 006c 0429 cmp r1, #4 516 006e 1ED0 beq .L41 517 .L36: 251:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 518 .loc 1 251 3 is_stmt 1 view .LVU170 251:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 519 .loc 1 251 22 is_stmt 0 view .LVU171 520 0070 1A60 str r2, [r3] 254:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 521 .loc 1 254 3 is_stmt 1 view .LVU172 254:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 522 .loc 1 254 13 is_stmt 0 view .LVU173 523 0072 2668 ldr r6, [r4] 254:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 524 .loc 1 254 7 view .LVU174 525 0074 7569 ldr r5, [r6, #20] 526 .LVL56: 257:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 527 .loc 1 257 3 is_stmt 1 view .LVU175 257:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 528 .loc 1 257 7 is_stmt 0 view .LVU176 529 0076 25F00705 bic r5, r5, #7 530 .LVL57: 260:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 531 .loc 1 260 3 is_stmt 1 view .LVU177 260:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 532 .loc 1 260 20 is_stmt 0 view .LVU178 533 007a 636A ldr r3, [r4, #36] 260:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 534 .loc 1 260 7 view .LVU179 535 007c 1D43 orrs r5, r5, r3 536 .LVL58: ARM GAS /tmp/cc2d5rNl.s page 35 263:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 537 .loc 1 263 3 is_stmt 1 view .LVU180 263:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 538 .loc 1 263 5 is_stmt 0 view .LVU181 539 007e 042B cmp r3, #4 540 0080 07D1 bne .L37 266:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 541 .loc 1 266 5 is_stmt 1 view .LVU182 266:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 542 .loc 1 266 22 is_stmt 0 view .LVU183 543 0082 A36A ldr r3, [r4, #40] 266:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 544 .loc 1 266 9 view .LVU184 545 0084 1D43 orrs r5, r5, r3 546 .LVL59: 270:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 547 .loc 1 270 5 is_stmt 1 view .LVU185 270:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 548 .loc 1 270 19 is_stmt 0 view .LVU186 549 0086 E36A ldr r3, [r4, #44] 270:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 550 .loc 1 270 8 view .LVU187 551 0088 1BB1 cbz r3, .L37 272:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 552 .loc 1 272 7 is_stmt 1 view .LVU188 272:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 553 .loc 1 272 11 is_stmt 0 view .LVU189 554 008a 2046 mov r0, r4 555 008c FFF7FEFF bl DMA_CheckFifoParam 556 .LVL60: 272:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 557 .loc 1 272 10 view .LVU190 558 0090 90B9 cbnz r0, .L42 559 .L37: 286:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 560 .loc 1 286 3 is_stmt 1 view .LVU191 286:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 561 .loc 1 286 23 is_stmt 0 view .LVU192 562 0092 7561 str r5, [r6, #20] 290:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 563 .loc 1 290 3 is_stmt 1 view .LVU193 290:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 564 .loc 1 290 32 is_stmt 0 view .LVU194 565 0094 2046 mov r0, r4 566 0096 FFF7FEFF bl DMA_CalcBaseAndBitshift 567 .LVL61: 293:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 568 .loc 1 293 3 is_stmt 1 view .LVU195 293:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 569 .loc 1 293 29 is_stmt 0 view .LVU196 570 009a E26D ldr r2, [r4, #92] 293:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 571 .loc 1 293 22 view .LVU197 572 009c 3F23 movs r3, #63 573 009e 9340 lsls r3, r3, r2 293:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 574 .loc 1 293 14 view .LVU198 ARM GAS /tmp/cc2d5rNl.s page 36 575 00a0 8360 str r3, [r0, #8] 296:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 576 .loc 1 296 3 is_stmt 1 view .LVU199 296:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 577 .loc 1 296 19 is_stmt 0 view .LVU200 578 00a2 0020 movs r0, #0 579 .LVL62: 296:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 580 .loc 1 296 19 view .LVU201 581 00a4 6065 str r0, [r4, #84] 299:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 582 .loc 1 299 3 is_stmt 1 view .LVU202 299:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 583 .loc 1 299 15 is_stmt 0 view .LVU203 584 00a6 0123 movs r3, #1 585 00a8 84F83530 strb r3, [r4, #53] 301:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 586 .loc 1 301 3 is_stmt 1 view .LVU204 301:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 587 .loc 1 301 10 is_stmt 0 view .LVU205 588 00ac C9E7 b .L33 589 .LVL63: 590 .L41: 247:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 591 .loc 1 247 5 is_stmt 1 view .LVU206 247:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 592 .loc 1 247 23 is_stmt 0 view .LVU207 593 00ae E16A ldr r1, [r4, #44] 247:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 594 .loc 1 247 45 view .LVU208 595 00b0 206B ldr r0, [r4, #48] 247:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 596 .loc 1 247 33 view .LVU209 597 00b2 0143 orrs r1, r1, r0 247:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 598 .loc 1 247 9 view .LVU210 599 00b4 0A43 orrs r2, r2, r1 600 .LVL64: 247:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 601 .loc 1 247 9 view .LVU211 602 00b6 DBE7 b .L36 603 .LVL65: 604 .L42: 275:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 605 .loc 1 275 9 is_stmt 1 view .LVU212 275:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 606 .loc 1 275 25 is_stmt 0 view .LVU213 607 00b8 4023 movs r3, #64 608 00ba 6365 str r3, [r4, #84] 278:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 609 .loc 1 278 9 is_stmt 1 view .LVU214 278:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 610 .loc 1 278 21 is_stmt 0 view .LVU215 611 00bc 0120 movs r0, #1 612 00be 84F83500 strb r0, [r4, #53] 280:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 613 .loc 1 280 9 is_stmt 1 view .LVU216 ARM GAS /tmp/cc2d5rNl.s page 37 280:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 614 .loc 1 280 16 is_stmt 0 view .LVU217 615 00c2 BEE7 b .L33 616 .LVL66: 617 .L38: 180:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 618 .loc 1 180 12 view .LVU218 619 00c4 0120 movs r0, #1 620 .LVL67: 180:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 621 .loc 1 180 12 view .LVU219 622 00c6 BCE7 b .L33 623 .L44: 624 .align 2 625 .L43: 626 00c8 3F8010F0 .word -267354049 627 .cfi_endproc 628 .LFE130: 630 .section .text.HAL_DMA_DeInit,"ax",%progbits 631 .align 1 632 .global HAL_DMA_DeInit 633 .syntax unified 634 .thumb 635 .thumb_func 637 HAL_DMA_DeInit: 638 .LVL68: 639 .LFB131: 311:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** DMA_Base_Registers *regs; 640 .loc 1 311 1 is_stmt 1 view -0 641 .cfi_startproc 642 @ args = 0, pretend = 0, frame = 0 643 @ frame_needed = 0, uses_anonymous_args = 0 312:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 644 .loc 1 312 3 view .LVU221 315:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 645 .loc 1 315 3 view .LVU222 315:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 646 .loc 1 315 5 is_stmt 0 view .LVU223 647 0000 0028 cmp r0, #0 648 0002 2DD0 beq .L47 311:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** DMA_Base_Registers *regs; 649 .loc 1 311 1 view .LVU224 650 0004 38B5 push {r3, r4, r5, lr} 651 .LCFI7: 652 .cfi_def_cfa_offset 16 653 .cfi_offset 3, -16 654 .cfi_offset 4, -12 655 .cfi_offset 5, -8 656 .cfi_offset 14, -4 657 0006 0546 mov r5, r0 321:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 658 .loc 1 321 3 is_stmt 1 view .LVU225 321:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 659 .loc 1 321 10 is_stmt 0 view .LVU226 660 0008 90F83500 ldrb r0, [r0, #53] @ zero_extendqisi2 661 .LVL69: 321:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { ARM GAS /tmp/cc2d5rNl.s page 38 662 .loc 1 321 10 view .LVU227 663 000c C0B2 uxtb r0, r0 321:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 664 .loc 1 321 5 view .LVU228 665 000e 0228 cmp r0, #2 666 0010 25D0 beq .L46 328:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 667 .loc 1 328 3 is_stmt 1 view .LVU229 331:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 668 .loc 1 331 3 view .LVU230 669 0012 2A68 ldr r2, [r5] 670 0014 1368 ldr r3, [r2] 671 0016 23F00103 bic r3, r3, #1 672 001a 1360 str r3, [r2] 334:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 673 .loc 1 334 3 view .LVU231 334:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 674 .loc 1 334 7 is_stmt 0 view .LVU232 675 001c 2B68 ldr r3, [r5] 334:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 676 .loc 1 334 24 view .LVU233 677 001e 0024 movs r4, #0 678 0020 1C60 str r4, [r3] 337:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 679 .loc 1 337 3 is_stmt 1 view .LVU234 337:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 680 .loc 1 337 7 is_stmt 0 view .LVU235 681 0022 2B68 ldr r3, [r5] 337:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 682 .loc 1 337 24 view .LVU236 683 0024 5C60 str r4, [r3, #4] 340:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 684 .loc 1 340 3 is_stmt 1 view .LVU237 340:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 685 .loc 1 340 7 is_stmt 0 view .LVU238 686 0026 2B68 ldr r3, [r5] 340:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 687 .loc 1 340 24 view .LVU239 688 0028 9C60 str r4, [r3, #8] 343:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 689 .loc 1 343 3 is_stmt 1 view .LVU240 343:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 690 .loc 1 343 7 is_stmt 0 view .LVU241 691 002a 2B68 ldr r3, [r5] 343:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 692 .loc 1 343 24 view .LVU242 693 002c DC60 str r4, [r3, #12] 346:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 694 .loc 1 346 3 is_stmt 1 view .LVU243 346:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 695 .loc 1 346 7 is_stmt 0 view .LVU244 696 002e 2B68 ldr r3, [r5] 346:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 697 .loc 1 346 24 view .LVU245 698 0030 1C61 str r4, [r3, #16] 349:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 699 .loc 1 349 3 is_stmt 1 view .LVU246 ARM GAS /tmp/cc2d5rNl.s page 39 349:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 700 .loc 1 349 7 is_stmt 0 view .LVU247 701 0032 2B68 ldr r3, [r5] 349:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 702 .loc 1 349 24 view .LVU248 703 0034 2122 movs r2, #33 704 0036 5A61 str r2, [r3, #20] 352:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 705 .loc 1 352 3 is_stmt 1 view .LVU249 352:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 706 .loc 1 352 32 is_stmt 0 view .LVU250 707 0038 2846 mov r0, r5 708 003a FFF7FEFF bl DMA_CalcBaseAndBitshift 709 .LVL70: 355:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->XferHalfCpltCallback = NULL; 710 .loc 1 355 3 is_stmt 1 view .LVU251 355:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->XferHalfCpltCallback = NULL; 711 .loc 1 355 26 is_stmt 0 view .LVU252 712 003e EC63 str r4, [r5, #60] 356:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->XferM1CpltCallback = NULL; 713 .loc 1 356 3 is_stmt 1 view .LVU253 356:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->XferM1CpltCallback = NULL; 714 .loc 1 356 30 is_stmt 0 view .LVU254 715 0040 2C64 str r4, [r5, #64] 357:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->XferM1HalfCpltCallback = NULL; 716 .loc 1 357 3 is_stmt 1 view .LVU255 357:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->XferM1HalfCpltCallback = NULL; 717 .loc 1 357 28 is_stmt 0 view .LVU256 718 0042 6C64 str r4, [r5, #68] 358:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->XferErrorCallback = NULL; 719 .loc 1 358 3 is_stmt 1 view .LVU257 358:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->XferErrorCallback = NULL; 720 .loc 1 358 32 is_stmt 0 view .LVU258 721 0044 AC64 str r4, [r5, #72] 359:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->XferAbortCallback = NULL; 722 .loc 1 359 3 is_stmt 1 view .LVU259 359:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->XferAbortCallback = NULL; 723 .loc 1 359 27 is_stmt 0 view .LVU260 724 0046 EC64 str r4, [r5, #76] 360:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 725 .loc 1 360 3 is_stmt 1 view .LVU261 360:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 726 .loc 1 360 27 is_stmt 0 view .LVU262 727 0048 2C65 str r4, [r5, #80] 363:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 728 .loc 1 363 3 is_stmt 1 view .LVU263 363:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 729 .loc 1 363 29 is_stmt 0 view .LVU264 730 004a EA6D ldr r2, [r5, #92] 363:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 731 .loc 1 363 22 view .LVU265 732 004c 3F23 movs r3, #63 733 004e 9340 lsls r3, r3, r2 363:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 734 .loc 1 363 14 view .LVU266 735 0050 8360 str r3, [r0, #8] 366:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** ARM GAS /tmp/cc2d5rNl.s page 40 736 .loc 1 366 3 is_stmt 1 view .LVU267 366:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 737 .loc 1 366 19 is_stmt 0 view .LVU268 738 0052 6C65 str r4, [r5, #84] 369:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 739 .loc 1 369 3 is_stmt 1 view .LVU269 369:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 740 .loc 1 369 15 is_stmt 0 view .LVU270 741 0054 85F83540 strb r4, [r5, #53] 372:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 742 .loc 1 372 3 is_stmt 1 view .LVU271 372:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 743 .loc 1 372 3 view .LVU272 744 0058 85F83440 strb r4, [r5, #52] 372:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 745 .loc 1 372 3 view .LVU273 374:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 746 .loc 1 374 3 view .LVU274 374:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 747 .loc 1 374 10 is_stmt 0 view .LVU275 748 005c 2046 mov r0, r4 749 .LVL71: 750 .L46: 375:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 751 .loc 1 375 1 view .LVU276 752 005e 38BD pop {r3, r4, r5, pc} 753 .LVL72: 754 .L47: 755 .LCFI8: 756 .cfi_def_cfa_offset 0 757 .cfi_restore 3 758 .cfi_restore 4 759 .cfi_restore 5 760 .cfi_restore 14 317:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 761 .loc 1 317 12 view .LVU277 762 0060 0120 movs r0, #1 763 .LVL73: 375:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 764 .loc 1 375 1 view .LVU278 765 0062 7047 bx lr 766 .cfi_endproc 767 .LFE131: 769 .section .text.HAL_DMA_Start,"ax",%progbits 770 .align 1 771 .global HAL_DMA_Start 772 .syntax unified 773 .thumb 774 .thumb_func 776 HAL_DMA_Start: 777 .LVL74: 778 .LFB132: 409:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** HAL_StatusTypeDef status = HAL_OK; 779 .loc 1 409 1 is_stmt 1 view -0 780 .cfi_startproc 781 @ args = 0, pretend = 0, frame = 0 782 @ frame_needed = 0, uses_anonymous_args = 0 ARM GAS /tmp/cc2d5rNl.s page 41 409:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** HAL_StatusTypeDef status = HAL_OK; 783 .loc 1 409 1 is_stmt 0 view .LVU280 784 0000 38B5 push {r3, r4, r5, lr} 785 .LCFI9: 786 .cfi_def_cfa_offset 16 787 .cfi_offset 3, -16 788 .cfi_offset 4, -12 789 .cfi_offset 5, -8 790 .cfi_offset 14, -4 791 0002 0446 mov r4, r0 410:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 792 .loc 1 410 3 is_stmt 1 view .LVU281 793 .LVL75: 413:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 794 .loc 1 413 3 view .LVU282 416:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 795 .loc 1 416 3 view .LVU283 416:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 796 .loc 1 416 3 view .LVU284 797 0004 90F83400 ldrb r0, [r0, #52] @ zero_extendqisi2 798 .LVL76: 416:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 799 .loc 1 416 3 is_stmt 0 view .LVU285 800 0008 0128 cmp r0, #1 801 000a 1BD0 beq .L55 416:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 802 .loc 1 416 3 is_stmt 1 discriminator 2 view .LVU286 803 000c 0120 movs r0, #1 804 000e 84F83400 strb r0, [r4, #52] 416:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 805 .loc 1 416 3 discriminator 2 view .LVU287 418:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 806 .loc 1 418 3 discriminator 2 view .LVU288 418:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 807 .loc 1 418 33 is_stmt 0 discriminator 2 view .LVU289 808 0012 94F83500 ldrb r0, [r4, #53] @ zero_extendqisi2 809 0016 C0B2 uxtb r0, r0 418:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 810 .loc 1 418 5 discriminator 2 view .LVU290 811 0018 0128 cmp r0, #1 812 001a 04D0 beq .L57 435:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 813 .loc 1 435 5 is_stmt 1 view .LVU291 435:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 814 .loc 1 435 5 view .LVU292 815 001c 0023 movs r3, #0 816 .LVL77: 435:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 817 .loc 1 435 5 is_stmt 0 view .LVU293 818 001e 84F83430 strb r3, [r4, #52] 435:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 819 .loc 1 435 5 is_stmt 1 view .LVU294 438:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 820 .loc 1 438 5 view .LVU295 821 .LVL78: 438:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 822 .loc 1 438 12 is_stmt 0 view .LVU296 ARM GAS /tmp/cc2d5rNl.s page 42 823 0022 0220 movs r0, #2 824 .LVL79: 825 .L53: 441:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 826 .loc 1 441 1 view .LVU297 827 0024 38BD pop {r3, r4, r5, pc} 828 .LVL80: 829 .L57: 421:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 830 .loc 1 421 5 is_stmt 1 view .LVU298 421:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 831 .loc 1 421 17 is_stmt 0 view .LVU299 832 0026 0220 movs r0, #2 833 0028 84F83500 strb r0, [r4, #53] 424:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 834 .loc 1 424 5 is_stmt 1 view .LVU300 424:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 835 .loc 1 424 21 is_stmt 0 view .LVU301 836 002c 0025 movs r5, #0 837 002e 6565 str r5, [r4, #84] 427:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 838 .loc 1 427 5 is_stmt 1 view .LVU302 839 0030 2046 mov r0, r4 840 0032 FFF7FEFF bl DMA_SetConfig 841 .LVL81: 430:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 842 .loc 1 430 5 view .LVU303 843 0036 2268 ldr r2, [r4] 844 0038 1368 ldr r3, [r2] 845 003a 43F00103 orr r3, r3, #1 846 003e 1360 str r3, [r2] 410:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 847 .loc 1 410 21 is_stmt 0 view .LVU304 848 0040 2846 mov r0, r5 849 0042 EFE7 b .L53 850 .LVL82: 851 .L55: 416:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 852 .loc 1 416 3 view .LVU305 853 0044 0220 movs r0, #2 854 0046 EDE7 b .L53 855 .cfi_endproc 856 .LFE132: 858 .section .text.HAL_DMA_Start_IT,"ax",%progbits 859 .align 1 860 .global HAL_DMA_Start_IT 861 .syntax unified 862 .thumb 863 .thumb_func 865 HAL_DMA_Start_IT: 866 .LVL83: 867 .LFB133: 453:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** HAL_StatusTypeDef status = HAL_OK; 868 .loc 1 453 1 is_stmt 1 view -0 869 .cfi_startproc 870 @ args = 0, pretend = 0, frame = 0 871 @ frame_needed = 0, uses_anonymous_args = 0 ARM GAS /tmp/cc2d5rNl.s page 43 453:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** HAL_StatusTypeDef status = HAL_OK; 872 .loc 1 453 1 is_stmt 0 view .LVU307 873 0000 38B5 push {r3, r4, r5, lr} 874 .LCFI10: 875 .cfi_def_cfa_offset 16 876 .cfi_offset 3, -16 877 .cfi_offset 4, -12 878 .cfi_offset 5, -8 879 .cfi_offset 14, -4 880 0002 0446 mov r4, r0 454:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 881 .loc 1 454 3 is_stmt 1 view .LVU308 882 .LVL84: 457:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 883 .loc 1 457 3 view .LVU309 457:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 884 .loc 1 457 56 is_stmt 0 view .LVU310 885 0004 856D ldr r5, [r0, #88] 886 .LVL85: 460:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 887 .loc 1 460 3 is_stmt 1 view .LVU311 463:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 888 .loc 1 463 3 view .LVU312 463:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 889 .loc 1 463 3 view .LVU313 890 0006 90F83400 ldrb r0, [r0, #52] @ zero_extendqisi2 891 .LVL86: 463:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 892 .loc 1 463 3 is_stmt 0 view .LVU314 893 000a 0128 cmp r0, #1 894 000c 30D0 beq .L62 463:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 895 .loc 1 463 3 is_stmt 1 discriminator 2 view .LVU315 896 000e 0120 movs r0, #1 897 0010 84F83400 strb r0, [r4, #52] 463:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 898 .loc 1 463 3 discriminator 2 view .LVU316 465:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 899 .loc 1 465 3 discriminator 2 view .LVU317 465:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 900 .loc 1 465 33 is_stmt 0 discriminator 2 view .LVU318 901 0014 94F83500 ldrb r0, [r4, #53] @ zero_extendqisi2 902 0018 C0B2 uxtb r0, r0 465:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 903 .loc 1 465 5 discriminator 2 view .LVU319 904 001a 0128 cmp r0, #1 905 001c 04D0 beq .L64 494:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 906 .loc 1 494 5 is_stmt 1 view .LVU320 494:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 907 .loc 1 494 5 view .LVU321 908 001e 0023 movs r3, #0 909 .LVL87: 494:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 910 .loc 1 494 5 is_stmt 0 view .LVU322 911 0020 84F83430 strb r3, [r4, #52] 494:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** ARM GAS /tmp/cc2d5rNl.s page 44 912 .loc 1 494 5 is_stmt 1 view .LVU323 497:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 913 .loc 1 497 5 view .LVU324 914 .LVL88: 497:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 915 .loc 1 497 12 is_stmt 0 view .LVU325 916 0024 0220 movs r0, #2 917 .LVL89: 918 .L59: 501:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 919 .loc 1 501 1 view .LVU326 920 0026 38BD pop {r3, r4, r5, pc} 921 .LVL90: 922 .L64: 468:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 923 .loc 1 468 5 is_stmt 1 view .LVU327 468:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 924 .loc 1 468 17 is_stmt 0 view .LVU328 925 0028 0220 movs r0, #2 926 002a 84F83500 strb r0, [r4, #53] 471:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 927 .loc 1 471 5 is_stmt 1 view .LVU329 471:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 928 .loc 1 471 21 is_stmt 0 view .LVU330 929 002e 0020 movs r0, #0 930 0030 6065 str r0, [r4, #84] 474:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 931 .loc 1 474 5 is_stmt 1 view .LVU331 932 0032 2046 mov r0, r4 933 0034 FFF7FEFF bl DMA_SetConfig 934 .LVL91: 477:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 935 .loc 1 477 5 view .LVU332 477:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 936 .loc 1 477 31 is_stmt 0 view .LVU333 937 0038 E26D ldr r2, [r4, #92] 477:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 938 .loc 1 477 24 view .LVU334 939 003a 3F23 movs r3, #63 940 003c 9340 lsls r3, r3, r2 477:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 941 .loc 1 477 16 view .LVU335 942 003e AB60 str r3, [r5, #8] 480:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->Instance->FCR |= DMA_IT_FE; 943 .loc 1 480 5 is_stmt 1 view .LVU336 480:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->Instance->FCR |= DMA_IT_FE; 944 .loc 1 480 9 is_stmt 0 view .LVU337 945 0040 2268 ldr r2, [r4] 480:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->Instance->FCR |= DMA_IT_FE; 946 .loc 1 480 25 view .LVU338 947 0042 1368 ldr r3, [r2] 948 0044 43F01603 orr r3, r3, #22 949 0048 1360 str r3, [r2] 481:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 950 .loc 1 481 5 is_stmt 1 view .LVU339 481:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 951 .loc 1 481 9 is_stmt 0 view .LVU340 ARM GAS /tmp/cc2d5rNl.s page 45 952 004a 2268 ldr r2, [r4] 481:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 953 .loc 1 481 25 view .LVU341 954 004c 5369 ldr r3, [r2, #20] 955 004e 43F08003 orr r3, r3, #128 956 0052 5361 str r3, [r2, #20] 483:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 957 .loc 1 483 5 is_stmt 1 view .LVU342 483:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 958 .loc 1 483 12 is_stmt 0 view .LVU343 959 0054 236C ldr r3, [r4, #64] 483:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 960 .loc 1 483 7 view .LVU344 961 0056 23B1 cbz r3, .L61 485:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 962 .loc 1 485 7 is_stmt 1 view .LVU345 485:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 963 .loc 1 485 11 is_stmt 0 view .LVU346 964 0058 2268 ldr r2, [r4] 485:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 965 .loc 1 485 27 view .LVU347 966 005a 1368 ldr r3, [r2] 967 005c 43F00803 orr r3, r3, #8 968 0060 1360 str r3, [r2] 969 .L61: 489:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 970 .loc 1 489 5 is_stmt 1 view .LVU348 971 0062 2268 ldr r2, [r4] 972 0064 1368 ldr r3, [r2] 973 0066 43F00103 orr r3, r3, #1 974 006a 1360 str r3, [r2] 454:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 975 .loc 1 454 21 is_stmt 0 view .LVU349 976 006c 0020 movs r0, #0 977 006e DAE7 b .L59 978 .LVL92: 979 .L62: 463:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 980 .loc 1 463 3 view .LVU350 981 0070 0220 movs r0, #2 982 0072 D8E7 b .L59 983 .cfi_endproc 984 .LFE133: 986 .section .text.HAL_DMA_Abort,"ax",%progbits 987 .align 1 988 .global HAL_DMA_Abort 989 .syntax unified 990 .thumb 991 .thumb_func 993 HAL_DMA_Abort: 994 .LVL93: 995 .LFB134: 516:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* calculate DMA base and stream number */ 996 .loc 1 516 1 is_stmt 1 view -0 997 .cfi_startproc 998 @ args = 0, pretend = 0, frame = 0 999 @ frame_needed = 0, uses_anonymous_args = 0 ARM GAS /tmp/cc2d5rNl.s page 46 516:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* calculate DMA base and stream number */ 1000 .loc 1 516 1 is_stmt 0 view .LVU352 1001 0000 70B5 push {r4, r5, r6, lr} 1002 .LCFI11: 1003 .cfi_def_cfa_offset 16 1004 .cfi_offset 4, -16 1005 .cfi_offset 5, -12 1006 .cfi_offset 6, -8 1007 .cfi_offset 14, -4 1008 0002 0446 mov r4, r0 518:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1009 .loc 1 518 3 is_stmt 1 view .LVU353 518:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1010 .loc 1 518 56 is_stmt 0 view .LVU354 1011 0004 866D ldr r6, [r0, #88] 1012 .LVL94: 520:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1013 .loc 1 520 3 is_stmt 1 view .LVU355 520:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1014 .loc 1 520 24 is_stmt 0 view .LVU356 1015 0006 FFF7FEFF bl HAL_GetTick 1016 .LVL95: 522:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1017 .loc 1 522 3 is_stmt 1 view .LVU357 522:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1018 .loc 1 522 10 is_stmt 0 view .LVU358 1019 000a 94F83530 ldrb r3, [r4, #53] @ zero_extendqisi2 1020 000e DBB2 uxtb r3, r3 522:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1021 .loc 1 522 5 view .LVU359 1022 0010 022B cmp r3, #2 1023 0012 06D0 beq .L66 524:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1024 .loc 1 524 5 is_stmt 1 view .LVU360 524:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1025 .loc 1 524 21 is_stmt 0 view .LVU361 1026 0014 8023 movs r3, #128 1027 0016 6365 str r3, [r4, #84] 527:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1028 .loc 1 527 5 is_stmt 1 view .LVU362 527:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1029 .loc 1 527 5 view .LVU363 1030 0018 0023 movs r3, #0 1031 001a 84F83430 strb r3, [r4, #52] 527:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1032 .loc 1 527 5 view .LVU364 529:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 1033 .loc 1 529 5 view .LVU365 529:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 1034 .loc 1 529 12 is_stmt 0 view .LVU366 1035 001e 0120 movs r0, #1 1036 .LVL96: 1037 .L67: 574:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1038 .loc 1 574 1 view .LVU367 1039 0020 70BD pop {r4, r5, r6, pc} 1040 .LVL97: ARM GAS /tmp/cc2d5rNl.s page 47 1041 .L66: 574:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1042 .loc 1 574 1 view .LVU368 1043 0022 0546 mov r5, r0 534:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->Instance->FCR &= ~(DMA_IT_FE); 1044 .loc 1 534 5 is_stmt 1 view .LVU369 534:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->Instance->FCR &= ~(DMA_IT_FE); 1045 .loc 1 534 9 is_stmt 0 view .LVU370 1046 0024 2268 ldr r2, [r4] 534:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->Instance->FCR &= ~(DMA_IT_FE); 1047 .loc 1 534 25 view .LVU371 1048 0026 1368 ldr r3, [r2] 1049 0028 23F01603 bic r3, r3, #22 1050 002c 1360 str r3, [r2] 535:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1051 .loc 1 535 5 is_stmt 1 view .LVU372 535:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1052 .loc 1 535 9 is_stmt 0 view .LVU373 1053 002e 2268 ldr r2, [r4] 535:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1054 .loc 1 535 25 view .LVU374 1055 0030 5369 ldr r3, [r2, #20] 1056 0032 23F08003 bic r3, r3, #128 1057 0036 5361 str r3, [r2, #20] 537:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1058 .loc 1 537 5 is_stmt 1 view .LVU375 537:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1059 .loc 1 537 13 is_stmt 0 view .LVU376 1060 0038 236C ldr r3, [r4, #64] 537:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1061 .loc 1 537 7 view .LVU377 1062 003a E3B1 cbz r3, .L73 1063 .L68: 539:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 1064 .loc 1 539 7 is_stmt 1 view .LVU378 539:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 1065 .loc 1 539 11 is_stmt 0 view .LVU379 1066 003c 2268 ldr r2, [r4] 539:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 1067 .loc 1 539 27 view .LVU380 1068 003e 1368 ldr r3, [r2] 1069 0040 23F00803 bic r3, r3, #8 1070 0044 1360 str r3, [r2] 1071 .L69: 543:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1072 .loc 1 543 5 is_stmt 1 view .LVU381 1073 0046 2268 ldr r2, [r4] 1074 0048 1368 ldr r3, [r2] 1075 004a 23F00103 bic r3, r3, #1 1076 004e 1360 str r3, [r2] 546:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1077 .loc 1 546 5 view .LVU382 1078 .LVL98: 1079 .L70: 546:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1080 .loc 1 546 10 view .LVU383 546:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { ARM GAS /tmp/cc2d5rNl.s page 48 1081 .loc 1 546 16 is_stmt 0 view .LVU384 1082 0050 2368 ldr r3, [r4] 546:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1083 .loc 1 546 26 view .LVU385 1084 0052 1B68 ldr r3, [r3] 546:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1085 .loc 1 546 10 view .LVU386 1086 0054 13F0010F tst r3, #1 1087 0058 11D0 beq .L74 549:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1088 .loc 1 549 7 is_stmt 1 view .LVU387 549:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1089 .loc 1 549 11 is_stmt 0 view .LVU388 1090 005a FFF7FEFF bl HAL_GetTick 1091 .LVL99: 549:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1092 .loc 1 549 25 view .LVU389 1093 005e 431B subs r3, r0, r5 549:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1094 .loc 1 549 9 view .LVU390 1095 0060 052B cmp r3, #5 1096 0062 F5D9 bls .L70 552:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1097 .loc 1 552 9 is_stmt 1 view .LVU391 552:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1098 .loc 1 552 25 is_stmt 0 view .LVU392 1099 0064 2023 movs r3, #32 1100 0066 6365 str r3, [r4, #84] 555:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1101 .loc 1 555 9 is_stmt 1 view .LVU393 555:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1102 .loc 1 555 9 view .LVU394 1103 0068 0023 movs r3, #0 1104 006a 84F83430 strb r3, [r4, #52] 555:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1105 .loc 1 555 9 view .LVU395 558:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1106 .loc 1 558 9 view .LVU396 558:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1107 .loc 1 558 21 is_stmt 0 view .LVU397 1108 006e 0320 movs r0, #3 1109 0070 84F83500 strb r0, [r4, #53] 560:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 1110 .loc 1 560 9 is_stmt 1 view .LVU398 560:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 1111 .loc 1 560 16 is_stmt 0 view .LVU399 1112 0074 D4E7 b .L67 1113 .LVL100: 1114 .L73: 537:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1115 .loc 1 537 53 discriminator 1 view .LVU400 1116 0076 A36C ldr r3, [r4, #72] 537:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1117 .loc 1 537 45 discriminator 1 view .LVU401 1118 0078 002B cmp r3, #0 1119 007a DFD1 bne .L68 1120 007c E3E7 b .L69 ARM GAS /tmp/cc2d5rNl.s page 49 1121 .LVL101: 1122 .L74: 565:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1123 .loc 1 565 5 is_stmt 1 view .LVU402 565:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1124 .loc 1 565 31 is_stmt 0 view .LVU403 1125 007e E26D ldr r2, [r4, #92] 565:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1126 .loc 1 565 24 view .LVU404 1127 0080 3F23 movs r3, #63 1128 0082 9340 lsls r3, r3, r2 565:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1129 .loc 1 565 16 view .LVU405 1130 0084 B360 str r3, [r6, #8] 568:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1131 .loc 1 568 5 is_stmt 1 view .LVU406 568:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1132 .loc 1 568 5 view .LVU407 1133 0086 0020 movs r0, #0 1134 0088 84F83400 strb r0, [r4, #52] 568:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1135 .loc 1 568 5 view .LVU408 571:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 1136 .loc 1 571 5 view .LVU409 571:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 1137 .loc 1 571 17 is_stmt 0 view .LVU410 1138 008c 0123 movs r3, #1 1139 008e 84F83530 strb r3, [r4, #53] 573:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 1140 .loc 1 573 3 is_stmt 1 view .LVU411 573:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 1141 .loc 1 573 10 is_stmt 0 view .LVU412 1142 0092 C5E7 b .L67 1143 .cfi_endproc 1144 .LFE134: 1146 .section .text.HAL_DMA_Abort_IT,"ax",%progbits 1147 .align 1 1148 .global HAL_DMA_Abort_IT 1149 .syntax unified 1150 .thumb 1151 .thumb_func 1153 HAL_DMA_Abort_IT: 1154 .LVL102: 1155 .LFB135: 583:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if(hdma->State != HAL_DMA_STATE_BUSY) 1156 .loc 1 583 1 is_stmt 1 view -0 1157 .cfi_startproc 1158 @ args = 0, pretend = 0, frame = 0 1159 @ frame_needed = 0, uses_anonymous_args = 0 1160 @ link register save eliminated. 584:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1161 .loc 1 584 3 view .LVU414 584:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1162 .loc 1 584 10 is_stmt 0 view .LVU415 1163 0000 90F83530 ldrb r3, [r0, #53] @ zero_extendqisi2 1164 0004 DBB2 uxtb r3, r3 584:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { ARM GAS /tmp/cc2d5rNl.s page 50 1165 .loc 1 584 5 view .LVU416 1166 0006 022B cmp r3, #2 1167 0008 03D0 beq .L76 586:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** return HAL_ERROR; 1168 .loc 1 586 5 is_stmt 1 view .LVU417 586:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** return HAL_ERROR; 1169 .loc 1 586 21 is_stmt 0 view .LVU418 1170 000a 8023 movs r3, #128 1171 000c 4365 str r3, [r0, #84] 587:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 1172 .loc 1 587 5 is_stmt 1 view .LVU419 587:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 1173 .loc 1 587 12 is_stmt 0 view .LVU420 1174 000e 0120 movs r0, #1 1175 .LVL103: 587:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 1176 .loc 1 587 12 view .LVU421 1177 0010 7047 bx lr 1178 .LVL104: 1179 .L76: 592:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1180 .loc 1 592 5 is_stmt 1 view .LVU422 592:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1181 .loc 1 592 17 is_stmt 0 view .LVU423 1182 0012 0523 movs r3, #5 1183 0014 80F83530 strb r3, [r0, #53] 595:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 1184 .loc 1 595 5 is_stmt 1 view .LVU424 1185 0018 0268 ldr r2, [r0] 1186 001a 1368 ldr r3, [r2] 1187 001c 23F00103 bic r3, r3, #1 1188 0020 1360 str r3, [r2] 598:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 1189 .loc 1 598 3 view .LVU425 598:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 1190 .loc 1 598 10 is_stmt 0 view .LVU426 1191 0022 0020 movs r0, #0 1192 .LVL105: 599:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1193 .loc 1 599 1 view .LVU427 1194 0024 7047 bx lr 1195 .cfi_endproc 1196 .LFE135: 1198 .section .text.HAL_DMA_PollForTransfer,"ax",%progbits 1199 .align 1 1200 .global HAL_DMA_PollForTransfer 1201 .syntax unified 1202 .thumb 1203 .thumb_func 1205 HAL_DMA_PollForTransfer: 1206 .LVL106: 1207 .LFB136: 613:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** HAL_StatusTypeDef status = HAL_OK; 1208 .loc 1 613 1 is_stmt 1 view -0 1209 .cfi_startproc 1210 @ args = 0, pretend = 0, frame = 0 1211 @ frame_needed = 0, uses_anonymous_args = 0 ARM GAS /tmp/cc2d5rNl.s page 51 613:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** HAL_StatusTypeDef status = HAL_OK; 1212 .loc 1 613 1 is_stmt 0 view .LVU429 1213 0000 2DE9F047 push {r4, r5, r6, r7, r8, r9, r10, lr} 1214 .LCFI12: 1215 .cfi_def_cfa_offset 32 1216 .cfi_offset 4, -32 1217 .cfi_offset 5, -28 1218 .cfi_offset 6, -24 1219 .cfi_offset 7, -20 1220 .cfi_offset 8, -16 1221 .cfi_offset 9, -12 1222 .cfi_offset 10, -8 1223 .cfi_offset 14, -4 1224 0004 0446 mov r4, r0 1225 0006 8846 mov r8, r1 1226 0008 1646 mov r6, r2 614:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** uint32_t mask_cpltlevel; 1227 .loc 1 614 3 is_stmt 1 view .LVU430 1228 .LVL107: 615:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** uint32_t tickstart = HAL_GetTick(); 1229 .loc 1 615 3 view .LVU431 616:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** uint32_t tmpisr; 1230 .loc 1 616 3 view .LVU432 616:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** uint32_t tmpisr; 1231 .loc 1 616 24 is_stmt 0 view .LVU433 1232 000a FFF7FEFF bl HAL_GetTick 1233 .LVL108: 617:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1234 .loc 1 617 3 is_stmt 1 view .LVU434 620:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1235 .loc 1 620 3 view .LVU435 622:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1236 .loc 1 622 3 view .LVU436 622:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1237 .loc 1 622 32 is_stmt 0 view .LVU437 1238 000e 94F83530 ldrb r3, [r4, #53] @ zero_extendqisi2 1239 0012 DBB2 uxtb r3, r3 622:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1240 .loc 1 622 5 view .LVU438 1241 0014 022B cmp r3, #2 1242 0016 07D0 beq .L79 625:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** __HAL_UNLOCK(hdma); 1243 .loc 1 625 5 is_stmt 1 view .LVU439 625:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** __HAL_UNLOCK(hdma); 1244 .loc 1 625 21 is_stmt 0 view .LVU440 1245 0018 8023 movs r3, #128 1246 001a 6365 str r3, [r4, #84] 626:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** return HAL_ERROR; 1247 .loc 1 626 5 is_stmt 1 view .LVU441 626:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** return HAL_ERROR; 1248 .loc 1 626 5 view .LVU442 1249 001c 0023 movs r3, #0 1250 001e 84F83430 strb r3, [r4, #52] 626:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** return HAL_ERROR; 1251 .loc 1 626 5 view .LVU443 627:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 1252 .loc 1 627 5 view .LVU444 ARM GAS /tmp/cc2d5rNl.s page 52 627:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 1253 .loc 1 627 12 is_stmt 0 view .LVU445 1254 0022 0120 movs r0, #1 1255 .LVL109: 1256 .L80: 740:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1257 .loc 1 740 1 view .LVU446 1258 0024 BDE8F087 pop {r4, r5, r6, r7, r8, r9, r10, pc} 1259 .LVL110: 1260 .L79: 740:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1261 .loc 1 740 1 view .LVU447 1262 0028 8146 mov r9, r0 631:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1263 .loc 1 631 3 is_stmt 1 view .LVU448 631:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1264 .loc 1 631 12 is_stmt 0 view .LVU449 1265 002a 2368 ldr r3, [r4] 631:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1266 .loc 1 631 22 view .LVU450 1267 002c 1B68 ldr r3, [r3] 631:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1268 .loc 1 631 6 view .LVU451 1269 002e 13F4807F tst r3, #256 1270 0032 3BD1 bne .L95 638:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1271 .loc 1 638 3 is_stmt 1 view .LVU452 638:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1272 .loc 1 638 5 is_stmt 0 view .LVU453 1273 0034 B8F1000F cmp r8, #0 1274 0038 3DD1 bne .L82 641:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 1275 .loc 1 641 5 is_stmt 1 view .LVU454 641:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 1276 .loc 1 641 46 is_stmt 0 view .LVU455 1277 003a E36D ldr r3, [r4, #92] 641:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 1278 .loc 1 641 20 view .LVU456 1279 003c 4FF0200A mov r10, #32 1280 0040 0AFA03FA lsl r10, r10, r3 1281 .LVL111: 1282 .L83: 649:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** tmpisr = regs->ISR; 1283 .loc 1 649 3 is_stmt 1 view .LVU457 649:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** tmpisr = regs->ISR; 1284 .loc 1 649 36 is_stmt 0 view .LVU458 1285 0044 A76D ldr r7, [r4, #88] 1286 .LVL112: 650:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1287 .loc 1 650 3 is_stmt 1 view .LVU459 650:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1288 .loc 1 650 10 is_stmt 0 view .LVU460 1289 0046 3B68 ldr r3, [r7] 1290 .LVL113: 652:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1291 .loc 1 652 3 is_stmt 1 view .LVU461 1292 .L84: ARM GAS /tmp/cc2d5rNl.s page 53 652:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1293 .loc 1 652 8 view .LVU462 1294 0048 1AEA030F tst r10, r3 1295 004c 43D1 bne .L90 652:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1296 .loc 1 652 55 is_stmt 0 discriminator 1 view .LVU463 1297 004e 636D ldr r3, [r4, #84] 1298 .LVL114: 652:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1299 .loc 1 652 46 discriminator 1 view .LVU464 1300 0050 13F0010F tst r3, #1 1301 0054 3FD1 bne .L90 655:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1302 .loc 1 655 5 is_stmt 1 view .LVU465 655:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1303 .loc 1 655 7 is_stmt 0 view .LVU466 1304 0056 B6F1FF3F cmp r6, #-1 1305 005a 07D0 beq .L85 657:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1306 .loc 1 657 7 is_stmt 1 view .LVU467 657:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1307 .loc 1 657 9 is_stmt 0 view .LVU468 1308 005c 002E cmp r6, #0 1309 005e 30D0 beq .L86 657:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1310 .loc 1 657 29 discriminator 1 view .LVU469 1311 0060 FFF7FEFF bl HAL_GetTick 1312 .LVL115: 657:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1313 .loc 1 657 43 discriminator 1 view .LVU470 1314 0064 A0EB0900 sub r0, r0, r9 657:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1315 .loc 1 657 25 discriminator 1 view .LVU471 1316 0068 B042 cmp r0, r6 1317 006a 2AD8 bhi .L86 1318 .L85: 673:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1319 .loc 1 673 5 is_stmt 1 view .LVU472 673:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1320 .loc 1 673 12 is_stmt 0 view .LVU473 1321 006c 3B68 ldr r3, [r7] 1322 .LVL116: 675:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1323 .loc 1 675 5 is_stmt 1 view .LVU474 675:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1324 .loc 1 675 43 is_stmt 0 view .LVU475 1325 006e E16D ldr r1, [r4, #92] 675:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1326 .loc 1 675 36 view .LVU476 1327 0070 0822 movs r2, #8 1328 0072 8A40 lsls r2, r2, r1 675:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1329 .loc 1 675 7 view .LVU477 1330 0074 1A42 tst r2, r3 1331 0076 04D0 beq .L87 678:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1332 .loc 1 678 7 is_stmt 1 view .LVU478 ARM GAS /tmp/cc2d5rNl.s page 54 678:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1333 .loc 1 678 23 is_stmt 0 view .LVU479 1334 0078 616D ldr r1, [r4, #84] 1335 007a 41F00101 orr r1, r1, #1 1336 007e 6165 str r1, [r4, #84] 681:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 1337 .loc 1 681 7 is_stmt 1 view .LVU480 681:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 1338 .loc 1 681 18 is_stmt 0 view .LVU481 1339 0080 BA60 str r2, [r7, #8] 1340 .L87: 684:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1341 .loc 1 684 5 is_stmt 1 view .LVU482 684:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1342 .loc 1 684 43 is_stmt 0 view .LVU483 1343 0082 E16D ldr r1, [r4, #92] 684:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1344 .loc 1 684 36 view .LVU484 1345 0084 0122 movs r2, #1 1346 0086 8A40 lsls r2, r2, r1 684:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1347 .loc 1 684 7 view .LVU485 1348 0088 1A42 tst r2, r3 1349 008a 04D0 beq .L88 687:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1350 .loc 1 687 7 is_stmt 1 view .LVU486 687:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1351 .loc 1 687 23 is_stmt 0 view .LVU487 1352 008c 616D ldr r1, [r4, #84] 1353 008e 41F00201 orr r1, r1, #2 1354 0092 6165 str r1, [r4, #84] 690:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 1355 .loc 1 690 7 is_stmt 1 view .LVU488 690:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 1356 .loc 1 690 18 is_stmt 0 view .LVU489 1357 0094 BA60 str r2, [r7, #8] 1358 .L88: 693:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1359 .loc 1 693 5 is_stmt 1 view .LVU490 693:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1360 .loc 1 693 44 is_stmt 0 view .LVU491 1361 0096 E26D ldr r2, [r4, #92] 693:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1362 .loc 1 693 37 view .LVU492 1363 0098 0425 movs r5, #4 1364 009a 9540 lsls r5, r5, r2 693:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1365 .loc 1 693 7 view .LVU493 1366 009c 1D42 tst r5, r3 1367 009e D3D0 beq .L84 696:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1368 .loc 1 696 7 is_stmt 1 view .LVU494 696:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1369 .loc 1 696 23 is_stmt 0 view .LVU495 1370 00a0 626D ldr r2, [r4, #84] 1371 00a2 42F00402 orr r2, r2, #4 1372 00a6 6265 str r2, [r4, #84] ARM GAS /tmp/cc2d5rNl.s page 55 699:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 1373 .loc 1 699 7 is_stmt 1 view .LVU496 699:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 1374 .loc 1 699 18 is_stmt 0 view .LVU497 1375 00a8 BD60 str r5, [r7, #8] 1376 00aa CDE7 b .L84 1377 .LVL117: 1378 .L95: 633:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** return HAL_ERROR; 1379 .loc 1 633 5 is_stmt 1 view .LVU498 633:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** return HAL_ERROR; 1380 .loc 1 633 21 is_stmt 0 view .LVU499 1381 00ac 4FF48073 mov r3, #256 1382 00b0 6365 str r3, [r4, #84] 634:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 1383 .loc 1 634 5 is_stmt 1 view .LVU500 634:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 1384 .loc 1 634 12 is_stmt 0 view .LVU501 1385 00b2 0120 movs r0, #1 1386 .LVL118: 634:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 1387 .loc 1 634 12 view .LVU502 1388 00b4 B6E7 b .L80 1389 .LVL119: 1390 .L82: 646:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 1391 .loc 1 646 5 is_stmt 1 view .LVU503 646:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 1392 .loc 1 646 46 is_stmt 0 view .LVU504 1393 00b6 E36D ldr r3, [r4, #92] 646:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 1394 .loc 1 646 20 view .LVU505 1395 00b8 4FF0100A mov r10, #16 1396 00bc 0AFA03FA lsl r10, r10, r3 1397 .LVL120: 646:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 1398 .loc 1 646 20 view .LVU506 1399 00c0 C0E7 b .L83 1400 .LVL121: 1401 .L86: 660:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1402 .loc 1 660 9 is_stmt 1 view .LVU507 660:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1403 .loc 1 660 25 is_stmt 0 view .LVU508 1404 00c2 2023 movs r3, #32 1405 00c4 6365 str r3, [r4, #84] 663:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1406 .loc 1 663 9 is_stmt 1 view .LVU509 663:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1407 .loc 1 663 9 view .LVU510 1408 00c6 0023 movs r3, #0 1409 00c8 84F83430 strb r3, [r4, #52] 663:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1410 .loc 1 663 9 view .LVU511 666:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1411 .loc 1 666 9 view .LVU512 666:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** ARM GAS /tmp/cc2d5rNl.s page 56 1412 .loc 1 666 21 is_stmt 0 view .LVU513 1413 00cc 0123 movs r3, #1 1414 00ce 84F83530 strb r3, [r4, #53] 668:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 1415 .loc 1 668 9 is_stmt 1 view .LVU514 668:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 1416 .loc 1 668 16 is_stmt 0 view .LVU515 1417 00d2 0320 movs r0, #3 1418 00d4 A6E7 b .L80 1419 .L90: 703:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1420 .loc 1 703 3 is_stmt 1 view .LVU516 703:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1421 .loc 1 703 10 is_stmt 0 view .LVU517 1422 00d6 636D ldr r3, [r4, #84] 703:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1423 .loc 1 703 5 view .LVU518 1424 00d8 1BB1 cbz r3, .L92 705:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1425 .loc 1 705 5 is_stmt 1 view .LVU519 705:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1426 .loc 1 705 13 is_stmt 0 view .LVU520 1427 00da 636D ldr r3, [r4, #84] 705:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1428 .loc 1 705 7 view .LVU521 1429 00dc 13F0010F tst r3, #1 1430 00e0 0ED1 bne .L96 1431 .L92: 723:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1432 .loc 1 723 3 is_stmt 1 view .LVU522 723:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1433 .loc 1 723 5 is_stmt 0 view .LVU523 1434 00e2 B8F1000F cmp r8, #0 1435 00e6 19D1 bne .L93 726:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1436 .loc 1 726 5 is_stmt 1 view .LVU524 726:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1437 .loc 1 726 63 is_stmt 0 view .LVU525 1438 00e8 E26D ldr r2, [r4, #92] 726:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1439 .loc 1 726 56 view .LVU526 1440 00ea 3023 movs r3, #48 1441 00ec 9340 lsls r3, r3, r2 726:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1442 .loc 1 726 16 view .LVU527 1443 00ee BB60 str r3, [r7, #8] 729:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1444 .loc 1 729 5 is_stmt 1 view .LVU528 729:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1445 .loc 1 729 5 view .LVU529 1446 00f0 0023 movs r3, #0 1447 00f2 84F83430 strb r3, [r4, #52] 729:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1448 .loc 1 729 5 view .LVU530 731:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 1449 .loc 1 731 5 view .LVU531 731:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } ARM GAS /tmp/cc2d5rNl.s page 57 1450 .loc 1 731 17 is_stmt 0 view .LVU532 1451 00f6 0123 movs r3, #1 1452 00f8 84F83530 strb r3, [r4, #53] 739:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 1453 .loc 1 739 10 view .LVU533 1454 00fc 4046 mov r0, r8 1455 00fe 91E7 b .L80 1456 .L96: 707:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1457 .loc 1 707 7 is_stmt 1 view .LVU534 1458 0100 2046 mov r0, r4 1459 0102 FFF7FEFF bl HAL_DMA_Abort 1460 .LVL122: 710:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1461 .loc 1 710 7 view .LVU535 710:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1462 .loc 1 710 65 is_stmt 0 view .LVU536 1463 0106 E26D ldr r2, [r4, #92] 710:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1464 .loc 1 710 58 view .LVU537 1465 0108 3023 movs r3, #48 1466 010a 9340 lsls r3, r3, r2 710:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1467 .loc 1 710 18 view .LVU538 1468 010c BB60 str r3, [r7, #8] 713:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1469 .loc 1 713 7 is_stmt 1 view .LVU539 713:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1470 .loc 1 713 7 view .LVU540 1471 010e 0023 movs r3, #0 1472 0110 84F83430 strb r3, [r4, #52] 713:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1473 .loc 1 713 7 view .LVU541 716:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1474 .loc 1 716 7 view .LVU542 716:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1475 .loc 1 716 18 is_stmt 0 view .LVU543 1476 0114 0120 movs r0, #1 1477 0116 84F83500 strb r0, [r4, #53] 718:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 1478 .loc 1 718 7 is_stmt 1 view .LVU544 718:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 1479 .loc 1 718 14 is_stmt 0 view .LVU545 1480 011a 83E7 b .L80 1481 .L93: 736:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 1482 .loc 1 736 5 is_stmt 1 view .LVU546 736:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 1483 .loc 1 736 44 is_stmt 0 view .LVU547 1484 011c E26D ldr r2, [r4, #92] 736:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 1485 .loc 1 736 37 view .LVU548 1486 011e 1023 movs r3, #16 1487 0120 9340 lsls r3, r3, r2 736:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 1488 .loc 1 736 16 view .LVU549 1489 0122 BB60 str r3, [r7, #8] ARM GAS /tmp/cc2d5rNl.s page 58 739:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 1490 .loc 1 739 10 view .LVU550 1491 0124 0020 movs r0, #0 1492 0126 7DE7 b .L80 1493 .cfi_endproc 1494 .LFE136: 1496 .section .text.HAL_DMA_IRQHandler,"ax",%progbits 1497 .align 1 1498 .global HAL_DMA_IRQHandler 1499 .syntax unified 1500 .thumb 1501 .thumb_func 1503 HAL_DMA_IRQHandler: 1504 .LVL123: 1505 .LFB137: 749:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** uint32_t tmpisr; 1506 .loc 1 749 1 is_stmt 1 view -0 1507 .cfi_startproc 1508 @ args = 0, pretend = 0, frame = 8 1509 @ frame_needed = 0, uses_anonymous_args = 0 749:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** uint32_t tmpisr; 1510 .loc 1 749 1 is_stmt 0 view .LVU552 1511 0000 F0B5 push {r4, r5, r6, r7, lr} 1512 .LCFI13: 1513 .cfi_def_cfa_offset 20 1514 .cfi_offset 4, -20 1515 .cfi_offset 5, -16 1516 .cfi_offset 6, -12 1517 .cfi_offset 7, -8 1518 .cfi_offset 14, -4 1519 0002 83B0 sub sp, sp, #12 1520 .LCFI14: 1521 .cfi_def_cfa_offset 32 1522 0004 0446 mov r4, r0 750:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** __IO uint32_t count = 0U; 1523 .loc 1 750 3 is_stmt 1 view .LVU553 751:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** uint32_t timeout = SystemCoreClock / 9600U; 1524 .loc 1 751 3 view .LVU554 751:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** uint32_t timeout = SystemCoreClock / 9600U; 1525 .loc 1 751 17 is_stmt 0 view .LVU555 1526 0006 0023 movs r3, #0 1527 0008 0193 str r3, [sp, #4] 752:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1528 .loc 1 752 3 is_stmt 1 view .LVU556 752:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1529 .loc 1 752 38 is_stmt 0 view .LVU557 1530 000a 724B ldr r3, .L120 1531 000c 1D68 ldr r5, [r3] 752:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1532 .loc 1 752 12 view .LVU558 1533 000e 724B ldr r3, .L120+4 1534 0010 A3FB0535 umull r3, r5, r3, r5 1535 0014 AD0A lsrs r5, r5, #10 1536 .LVL124: 755:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1537 .loc 1 755 3 is_stmt 1 view .LVU559 755:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** ARM GAS /tmp/cc2d5rNl.s page 59 1538 .loc 1 755 56 is_stmt 0 view .LVU560 1539 0016 876D ldr r7, [r0, #88] 1540 .LVL125: 757:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1541 .loc 1 757 3 is_stmt 1 view .LVU561 757:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1542 .loc 1 757 10 is_stmt 0 view .LVU562 1543 0018 3E68 ldr r6, [r7] 1544 .LVL126: 760:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1545 .loc 1 760 3 is_stmt 1 view .LVU563 760:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1546 .loc 1 760 42 is_stmt 0 view .LVU564 1547 001a C26D ldr r2, [r0, #92] 760:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1548 .loc 1 760 35 view .LVU565 1549 001c 0823 movs r3, #8 1550 001e 9340 lsls r3, r3, r2 760:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1551 .loc 1 760 6 view .LVU566 1552 0020 3342 tst r3, r6 1553 0022 10D0 beq .L98 762:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1554 .loc 1 762 5 is_stmt 1 view .LVU567 762:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1555 .loc 1 762 8 is_stmt 0 view .LVU568 1556 0024 0368 ldr r3, [r0] 1557 0026 1A68 ldr r2, [r3] 762:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1558 .loc 1 762 7 view .LVU569 1559 0028 12F0040F tst r2, #4 1560 002c 0BD0 beq .L98 765:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1561 .loc 1 765 7 is_stmt 1 view .LVU570 765:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1562 .loc 1 765 27 is_stmt 0 view .LVU571 1563 002e 1A68 ldr r2, [r3] 1564 0030 22F00402 bic r2, r2, #4 1565 0034 1A60 str r2, [r3] 768:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1566 .loc 1 768 7 is_stmt 1 view .LVU572 768:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1567 .loc 1 768 44 is_stmt 0 view .LVU573 1568 0036 C26D ldr r2, [r0, #92] 768:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1569 .loc 1 768 37 view .LVU574 1570 0038 0823 movs r3, #8 1571 003a 9340 lsls r3, r3, r2 768:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1572 .loc 1 768 18 view .LVU575 1573 003c BB60 str r3, [r7, #8] 771:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 1574 .loc 1 771 7 is_stmt 1 view .LVU576 771:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 1575 .loc 1 771 23 is_stmt 0 view .LVU577 1576 003e 436D ldr r3, [r0, #84] 1577 0040 43F00103 orr r3, r3, #1 ARM GAS /tmp/cc2d5rNl.s page 60 1578 0044 4365 str r3, [r0, #84] 1579 .L98: 775:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1580 .loc 1 775 3 is_stmt 1 view .LVU578 775:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1581 .loc 1 775 42 is_stmt 0 view .LVU579 1582 0046 E26D ldr r2, [r4, #92] 775:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1583 .loc 1 775 35 view .LVU580 1584 0048 0123 movs r3, #1 1585 004a 9340 lsls r3, r3, r2 775:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1586 .loc 1 775 6 view .LVU581 1587 004c 3342 tst r3, r6 1588 004e 09D0 beq .L99 777:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1589 .loc 1 777 5 is_stmt 1 view .LVU582 777:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1590 .loc 1 777 8 is_stmt 0 view .LVU583 1591 0050 2268 ldr r2, [r4] 1592 0052 5269 ldr r2, [r2, #20] 777:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1593 .loc 1 777 7 view .LVU584 1594 0054 12F0800F tst r2, #128 1595 0058 04D0 beq .L99 780:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1596 .loc 1 780 7 is_stmt 1 view .LVU585 780:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1597 .loc 1 780 18 is_stmt 0 view .LVU586 1598 005a BB60 str r3, [r7, #8] 783:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 1599 .loc 1 783 7 is_stmt 1 view .LVU587 783:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 1600 .loc 1 783 23 is_stmt 0 view .LVU588 1601 005c 636D ldr r3, [r4, #84] 1602 005e 43F00203 orr r3, r3, #2 1603 0062 6365 str r3, [r4, #84] 1604 .L99: 787:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1605 .loc 1 787 3 is_stmt 1 view .LVU589 787:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1606 .loc 1 787 43 is_stmt 0 view .LVU590 1607 0064 E26D ldr r2, [r4, #92] 787:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1608 .loc 1 787 36 view .LVU591 1609 0066 0423 movs r3, #4 1610 0068 9340 lsls r3, r3, r2 787:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1611 .loc 1 787 6 view .LVU592 1612 006a 3342 tst r3, r6 1613 006c 09D0 beq .L100 789:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1614 .loc 1 789 5 is_stmt 1 view .LVU593 789:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1615 .loc 1 789 8 is_stmt 0 view .LVU594 1616 006e 2268 ldr r2, [r4] 1617 0070 1268 ldr r2, [r2] ARM GAS /tmp/cc2d5rNl.s page 61 789:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1618 .loc 1 789 7 view .LVU595 1619 0072 12F0020F tst r2, #2 1620 0076 04D0 beq .L100 792:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1621 .loc 1 792 7 is_stmt 1 view .LVU596 792:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1622 .loc 1 792 18 is_stmt 0 view .LVU597 1623 0078 BB60 str r3, [r7, #8] 795:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 1624 .loc 1 795 7 is_stmt 1 view .LVU598 795:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 1625 .loc 1 795 23 is_stmt 0 view .LVU599 1626 007a 636D ldr r3, [r4, #84] 1627 007c 43F00403 orr r3, r3, #4 1628 0080 6365 str r3, [r4, #84] 1629 .L100: 799:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1630 .loc 1 799 3 is_stmt 1 view .LVU600 799:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1631 .loc 1 799 42 is_stmt 0 view .LVU601 1632 0082 E26D ldr r2, [r4, #92] 799:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1633 .loc 1 799 35 view .LVU602 1634 0084 1023 movs r3, #16 1635 0086 9340 lsls r3, r3, r2 799:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1636 .loc 1 799 6 view .LVU603 1637 0088 3342 tst r3, r6 1638 008a 24D0 beq .L101 801:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1639 .loc 1 801 5 is_stmt 1 view .LVU604 801:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1640 .loc 1 801 8 is_stmt 0 view .LVU605 1641 008c 2268 ldr r2, [r4] 1642 008e 1268 ldr r2, [r2] 801:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1643 .loc 1 801 7 view .LVU606 1644 0090 12F0080F tst r2, #8 1645 0094 1FD0 beq .L101 804:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1646 .loc 1 804 7 is_stmt 1 view .LVU607 804:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1647 .loc 1 804 18 is_stmt 0 view .LVU608 1648 0096 BB60 str r3, [r7, #8] 807:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1649 .loc 1 807 7 is_stmt 1 view .LVU609 807:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1650 .loc 1 807 16 is_stmt 0 view .LVU610 1651 0098 2368 ldr r3, [r4] 807:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1652 .loc 1 807 26 view .LVU611 1653 009a 1A68 ldr r2, [r3] 807:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1654 .loc 1 807 9 view .LVU612 1655 009c 12F4802F tst r2, #262144 1656 00a0 0DD0 beq .L102 ARM GAS /tmp/cc2d5rNl.s page 62 810:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1657 .loc 1 810 9 is_stmt 1 view .LVU613 810:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1658 .loc 1 810 27 is_stmt 0 view .LVU614 1659 00a2 1B68 ldr r3, [r3] 810:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1660 .loc 1 810 11 view .LVU615 1661 00a4 13F4002F tst r3, #524288 1662 00a8 04D1 bne .L103 812:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1663 .loc 1 812 11 is_stmt 1 view .LVU616 812:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1664 .loc 1 812 18 is_stmt 0 view .LVU617 1665 00aa 236C ldr r3, [r4, #64] 812:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1666 .loc 1 812 13 view .LVU618 1667 00ac 9BB1 cbz r3, .L101 815:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 1668 .loc 1 815 13 is_stmt 1 view .LVU619 1669 00ae 2046 mov r0, r4 1670 .LVL127: 815:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 1671 .loc 1 815 13 is_stmt 0 view .LVU620 1672 00b0 9847 blx r3 1673 .LVL128: 1674 00b2 10E0 b .L101 1675 .LVL129: 1676 .L103: 821:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1677 .loc 1 821 11 is_stmt 1 view .LVU621 821:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1678 .loc 1 821 18 is_stmt 0 view .LVU622 1679 00b4 A36C ldr r3, [r4, #72] 821:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1680 .loc 1 821 13 view .LVU623 1681 00b6 73B1 cbz r3, .L101 824:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 1682 .loc 1 824 13 is_stmt 1 view .LVU624 1683 00b8 2046 mov r0, r4 1684 .LVL130: 824:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 1685 .loc 1 824 13 is_stmt 0 view .LVU625 1686 00ba 9847 blx r3 1687 .LVL131: 1688 00bc 0BE0 b .L101 1689 .LVL132: 1690 .L102: 831:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1691 .loc 1 831 9 is_stmt 1 view .LVU626 831:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1692 .loc 1 831 27 is_stmt 0 view .LVU627 1693 00be 1A68 ldr r2, [r3] 831:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1694 .loc 1 831 11 view .LVU628 1695 00c0 12F4807F tst r2, #256 1696 00c4 03D1 bne .L104 834:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } ARM GAS /tmp/cc2d5rNl.s page 63 1697 .loc 1 834 11 is_stmt 1 view .LVU629 834:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 1698 .loc 1 834 31 is_stmt 0 view .LVU630 1699 00c6 1A68 ldr r2, [r3] 1700 00c8 22F00802 bic r2, r2, #8 1701 00cc 1A60 str r2, [r3] 1702 .L104: 837:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1703 .loc 1 837 9 is_stmt 1 view .LVU631 837:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1704 .loc 1 837 16 is_stmt 0 view .LVU632 1705 00ce 236C ldr r3, [r4, #64] 837:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1706 .loc 1 837 11 view .LVU633 1707 00d0 0BB1 cbz r3, .L101 840:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 1708 .loc 1 840 11 is_stmt 1 view .LVU634 1709 00d2 2046 mov r0, r4 1710 .LVL133: 840:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 1711 .loc 1 840 11 is_stmt 0 view .LVU635 1712 00d4 9847 blx r3 1713 .LVL134: 1714 .L101: 846:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1715 .loc 1 846 3 is_stmt 1 view .LVU636 846:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1716 .loc 1 846 42 is_stmt 0 view .LVU637 1717 00d6 E26D ldr r2, [r4, #92] 846:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1718 .loc 1 846 35 view .LVU638 1719 00d8 2023 movs r3, #32 1720 00da 9340 lsls r3, r3, r2 846:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1721 .loc 1 846 6 view .LVU639 1722 00dc 3342 tst r3, r6 1723 00de 55D0 beq .L105 848:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1724 .loc 1 848 5 is_stmt 1 view .LVU640 848:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1725 .loc 1 848 8 is_stmt 0 view .LVU641 1726 00e0 2268 ldr r2, [r4] 1727 00e2 1268 ldr r2, [r2] 848:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1728 .loc 1 848 7 view .LVU642 1729 00e4 12F0100F tst r2, #16 1730 00e8 50D0 beq .L105 851:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1731 .loc 1 851 7 is_stmt 1 view .LVU643 851:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1732 .loc 1 851 18 is_stmt 0 view .LVU644 1733 00ea BB60 str r3, [r7, #8] 853:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1734 .loc 1 853 7 is_stmt 1 view .LVU645 853:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1735 .loc 1 853 37 is_stmt 0 view .LVU646 1736 00ec 94F83530 ldrb r3, [r4, #53] @ zero_extendqisi2 ARM GAS /tmp/cc2d5rNl.s page 64 1737 00f0 DBB2 uxtb r3, r3 853:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1738 .loc 1 853 9 view .LVU647 1739 00f2 052B cmp r3, #5 1740 00f4 0ED0 beq .L118 880:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1741 .loc 1 880 7 is_stmt 1 view .LVU648 880:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1742 .loc 1 880 16 is_stmt 0 view .LVU649 1743 00f6 2368 ldr r3, [r4] 880:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1744 .loc 1 880 26 view .LVU650 1745 00f8 1A68 ldr r2, [r3] 880:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1746 .loc 1 880 9 view .LVU651 1747 00fa 12F4802F tst r2, #262144 1748 00fe 33D0 beq .L111 883:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1749 .loc 1 883 9 is_stmt 1 view .LVU652 883:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1750 .loc 1 883 27 is_stmt 0 view .LVU653 1751 0100 1B68 ldr r3, [r3] 883:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1752 .loc 1 883 11 view .LVU654 1753 0102 13F4002F tst r3, #524288 1754 0106 2AD1 bne .L112 885:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1755 .loc 1 885 11 is_stmt 1 view .LVU655 885:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1756 .loc 1 885 18 is_stmt 0 view .LVU656 1757 0108 636C ldr r3, [r4, #68] 885:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1758 .loc 1 885 13 view .LVU657 1759 010a 002B cmp r3, #0 1760 010c 3ED0 beq .L105 888:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 1761 .loc 1 888 13 is_stmt 1 view .LVU658 1762 010e 2046 mov r0, r4 1763 0110 9847 blx r3 1764 .LVL135: 1765 0112 3BE0 b .L105 1766 .L118: 856:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->Instance->FCR &= ~(DMA_IT_FE); 1767 .loc 1 856 9 view .LVU659 856:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->Instance->FCR &= ~(DMA_IT_FE); 1768 .loc 1 856 13 is_stmt 0 view .LVU660 1769 0114 2268 ldr r2, [r4] 856:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->Instance->FCR &= ~(DMA_IT_FE); 1770 .loc 1 856 29 view .LVU661 1771 0116 1368 ldr r3, [r2] 1772 0118 23F01603 bic r3, r3, #22 1773 011c 1360 str r3, [r2] 857:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1774 .loc 1 857 9 is_stmt 1 view .LVU662 857:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1775 .loc 1 857 13 is_stmt 0 view .LVU663 1776 011e 2268 ldr r2, [r4] ARM GAS /tmp/cc2d5rNl.s page 65 857:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1777 .loc 1 857 29 view .LVU664 1778 0120 5369 ldr r3, [r2, #20] 1779 0122 23F08003 bic r3, r3, #128 1780 0126 5361 str r3, [r2, #20] 859:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1781 .loc 1 859 9 is_stmt 1 view .LVU665 859:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1782 .loc 1 859 17 is_stmt 0 view .LVU666 1783 0128 236C ldr r3, [r4, #64] 859:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1784 .loc 1 859 11 view .LVU667 1785 012a A3B1 cbz r3, .L119 1786 .L107: 861:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 1787 .loc 1 861 11 is_stmt 1 view .LVU668 861:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 1788 .loc 1 861 15 is_stmt 0 view .LVU669 1789 012c 2268 ldr r2, [r4] 861:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 1790 .loc 1 861 31 view .LVU670 1791 012e 1368 ldr r3, [r2] 1792 0130 23F00803 bic r3, r3, #8 1793 0134 1360 str r3, [r2] 1794 .L108: 865:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1795 .loc 1 865 9 is_stmt 1 view .LVU671 865:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1796 .loc 1 865 35 is_stmt 0 view .LVU672 1797 0136 E26D ldr r2, [r4, #92] 865:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1798 .loc 1 865 28 view .LVU673 1799 0138 3F23 movs r3, #63 1800 013a 9340 lsls r3, r3, r2 865:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1801 .loc 1 865 20 view .LVU674 1802 013c BB60 str r3, [r7, #8] 868:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1803 .loc 1 868 9 is_stmt 1 view .LVU675 868:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1804 .loc 1 868 9 view .LVU676 1805 013e 0023 movs r3, #0 1806 0140 84F83430 strb r3, [r4, #52] 868:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1807 .loc 1 868 9 view .LVU677 871:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1808 .loc 1 871 9 view .LVU678 871:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1809 .loc 1 871 21 is_stmt 0 view .LVU679 1810 0144 0123 movs r3, #1 1811 0146 84F83530 strb r3, [r4, #53] 873:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1812 .loc 1 873 9 is_stmt 1 view .LVU680 873:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1813 .loc 1 873 16 is_stmt 0 view .LVU681 1814 014a 236D ldr r3, [r4, #80] 873:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { ARM GAS /tmp/cc2d5rNl.s page 66 1815 .loc 1 873 11 view .LVU682 1816 014c 002B cmp r3, #0 1817 014e 3FD0 beq .L97 875:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 1818 .loc 1 875 11 is_stmt 1 view .LVU683 1819 0150 2046 mov r0, r4 1820 0152 9847 blx r3 1821 .LVL136: 877:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 1822 .loc 1 877 9 view .LVU684 1823 0154 3CE0 b .L97 1824 .L119: 859:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1825 .loc 1 859 57 is_stmt 0 discriminator 1 view .LVU685 1826 0156 A36C ldr r3, [r4, #72] 859:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1827 .loc 1 859 49 discriminator 1 view .LVU686 1828 0158 002B cmp r3, #0 1829 015a E7D1 bne .L107 1830 015c EBE7 b .L108 1831 .L112: 894:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1832 .loc 1 894 11 is_stmt 1 view .LVU687 894:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1833 .loc 1 894 18 is_stmt 0 view .LVU688 1834 015e E36B ldr r3, [r4, #60] 894:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1835 .loc 1 894 13 view .LVU689 1836 0160 A3B1 cbz r3, .L105 897:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 1837 .loc 1 897 13 is_stmt 1 view .LVU690 1838 0162 2046 mov r0, r4 1839 0164 9847 blx r3 1840 .LVL137: 1841 0166 11E0 b .L105 1842 .L111: 904:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1843 .loc 1 904 9 view .LVU691 904:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1844 .loc 1 904 27 is_stmt 0 view .LVU692 1845 0168 1A68 ldr r2, [r3] 904:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1846 .loc 1 904 11 view .LVU693 1847 016a 12F4807F tst r2, #256 1848 016e 09D1 bne .L113 907:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1849 .loc 1 907 11 is_stmt 1 view .LVU694 907:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1850 .loc 1 907 31 is_stmt 0 view .LVU695 1851 0170 1A68 ldr r2, [r3] 1852 0172 22F01002 bic r2, r2, #16 1853 0176 1A60 str r2, [r3] 910:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1854 .loc 1 910 11 is_stmt 1 view .LVU696 910:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1855 .loc 1 910 11 view .LVU697 1856 0178 0023 movs r3, #0 ARM GAS /tmp/cc2d5rNl.s page 67 1857 017a 84F83430 strb r3, [r4, #52] 910:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1858 .loc 1 910 11 view .LVU698 913:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 1859 .loc 1 913 11 view .LVU699 913:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 1860 .loc 1 913 23 is_stmt 0 view .LVU700 1861 017e 0123 movs r3, #1 1862 0180 84F83530 strb r3, [r4, #53] 1863 .L113: 916:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1864 .loc 1 916 9 is_stmt 1 view .LVU701 916:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1865 .loc 1 916 16 is_stmt 0 view .LVU702 1866 0184 E36B ldr r3, [r4, #60] 916:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1867 .loc 1 916 11 view .LVU703 1868 0186 0BB1 cbz r3, .L105 919:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 1869 .loc 1 919 11 is_stmt 1 view .LVU704 1870 0188 2046 mov r0, r4 1871 018a 9847 blx r3 1872 .LVL138: 1873 .L105: 926:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1874 .loc 1 926 3 view .LVU705 926:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1875 .loc 1 926 10 is_stmt 0 view .LVU706 1876 018c 636D ldr r3, [r4, #84] 926:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1877 .loc 1 926 5 view .LVU707 1878 018e FBB1 cbz r3, .L97 928:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1879 .loc 1 928 5 is_stmt 1 view .LVU708 928:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1880 .loc 1 928 13 is_stmt 0 view .LVU709 1881 0190 636D ldr r3, [r4, #84] 928:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1882 .loc 1 928 7 view .LVU710 1883 0192 13F0010F tst r3, #1 1884 0196 17D0 beq .L114 930:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1885 .loc 1 930 7 is_stmt 1 view .LVU711 930:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1886 .loc 1 930 19 is_stmt 0 view .LVU712 1887 0198 0523 movs r3, #5 1888 019a 84F83530 strb r3, [r4, #53] 933:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1889 .loc 1 933 7 is_stmt 1 view .LVU713 1890 019e 2268 ldr r2, [r4] 1891 01a0 1368 ldr r3, [r2] 1892 01a2 23F00103 bic r3, r3, #1 1893 01a6 1360 str r3, [r2] 1894 .L116: 935:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1895 .loc 1 935 7 view .LVU714 937:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { ARM GAS /tmp/cc2d5rNl.s page 68 1896 .loc 1 937 9 view .LVU715 937:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1897 .loc 1 937 13 is_stmt 0 view .LVU716 1898 01a8 019B ldr r3, [sp, #4] 1899 01aa 0133 adds r3, r3, #1 937:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1900 .loc 1 937 12 view .LVU717 1901 01ac 0193 str r3, [sp, #4] 1902 01ae AB42 cmp r3, r5 1903 01b0 04D8 bhi .L115 942:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1904 .loc 1 942 12 is_stmt 1 view .LVU718 942:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1905 .loc 1 942 18 is_stmt 0 view .LVU719 1906 01b2 2368 ldr r3, [r4] 942:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1907 .loc 1 942 28 view .LVU720 1908 01b4 1B68 ldr r3, [r3] 942:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1909 .loc 1 942 7 view .LVU721 1910 01b6 13F0010F tst r3, #1 1911 01ba F5D1 bne .L116 1912 .L115: 945:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1913 .loc 1 945 7 is_stmt 1 view .LVU722 945:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1914 .loc 1 945 7 view .LVU723 1915 01bc 0023 movs r3, #0 1916 01be 84F83430 strb r3, [r4, #52] 945:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1917 .loc 1 945 7 view .LVU724 948:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 1918 .loc 1 948 7 view .LVU725 948:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 1919 .loc 1 948 19 is_stmt 0 view .LVU726 1920 01c2 0123 movs r3, #1 1921 01c4 84F83530 strb r3, [r4, #53] 1922 .L114: 951:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1923 .loc 1 951 5 is_stmt 1 view .LVU727 951:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1924 .loc 1 951 12 is_stmt 0 view .LVU728 1925 01c8 E36C ldr r3, [r4, #76] 951:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1926 .loc 1 951 7 view .LVU729 1927 01ca 0BB1 cbz r3, .L97 954:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 1928 .loc 1 954 7 is_stmt 1 view .LVU730 1929 01cc 2046 mov r0, r4 1930 01ce 9847 blx r3 1931 .LVL139: 1932 .L97: 957:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1933 .loc 1 957 1 is_stmt 0 view .LVU731 1934 01d0 03B0 add sp, sp, #12 1935 .LCFI15: 1936 .cfi_def_cfa_offset 20 ARM GAS /tmp/cc2d5rNl.s page 69 1937 @ sp needed 1938 01d2 F0BD pop {r4, r5, r6, r7, pc} 1939 .LVL140: 1940 .L121: 957:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1941 .loc 1 957 1 view .LVU732 1942 .align 2 1943 .L120: 1944 01d4 00000000 .word SystemCoreClock 1945 01d8 B5814E1B .word 458129845 1946 .cfi_endproc 1947 .LFE137: 1949 .section .text.HAL_DMA_RegisterCallback,"ax",%progbits 1950 .align 1 1951 .global HAL_DMA_RegisterCallback 1952 .syntax unified 1953 .thumb 1954 .thumb_func 1956 HAL_DMA_RegisterCallback: 1957 .LVL141: 1958 .LFB138: 970:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1959 .loc 1 970 1 is_stmt 1 view -0 1960 .cfi_startproc 1961 @ args = 0, pretend = 0, frame = 0 1962 @ frame_needed = 0, uses_anonymous_args = 0 1963 @ link register save eliminated. 970:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1964 .loc 1 970 1 is_stmt 0 view .LVU734 1965 0000 0346 mov r3, r0 972:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1966 .loc 1 972 3 is_stmt 1 view .LVU735 1967 .LVL142: 975:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1968 .loc 1 975 3 view .LVU736 975:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1969 .loc 1 975 3 view .LVU737 1970 0002 90F83400 ldrb r0, [r0, #52] @ zero_extendqisi2 1971 .LVL143: 975:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1972 .loc 1 975 3 is_stmt 0 view .LVU738 1973 0006 0128 cmp r0, #1 1974 0008 27D0 beq .L132 975:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1975 .loc 1 975 3 is_stmt 1 discriminator 2 view .LVU739 1976 000a 0120 movs r0, #1 1977 000c 83F83400 strb r0, [r3, #52] 975:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1978 .loc 1 975 3 discriminator 2 view .LVU740 977:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1979 .loc 1 977 3 discriminator 2 view .LVU741 977:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1980 .loc 1 977 33 is_stmt 0 discriminator 2 view .LVU742 1981 0010 93F83500 ldrb r0, [r3, #53] @ zero_extendqisi2 1982 0014 C0B2 uxtb r0, r0 977:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 1983 .loc 1 977 5 discriminator 2 view .LVU743 ARM GAS /tmp/cc2d5rNl.s page 70 1984 0016 0128 cmp r0, #1 1985 0018 04D0 beq .L135 1012:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 1986 .loc 1 1012 12 view .LVU744 1987 001a 0120 movs r0, #1 1988 .L124: 1989 .LVL144: 1016:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1990 .loc 1 1016 3 is_stmt 1 view .LVU745 1016:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1991 .loc 1 1016 3 view .LVU746 1992 001c 0022 movs r2, #0 1993 .LVL145: 1016:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1994 .loc 1 1016 3 is_stmt 0 view .LVU747 1995 001e 83F83420 strb r2, [r3, #52] 1016:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 1996 .loc 1 1016 3 is_stmt 1 view .LVU748 1018:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 1997 .loc 1 1018 3 view .LVU749 1018:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 1998 .loc 1 1018 10 is_stmt 0 view .LVU750 1999 0022 7047 bx lr 2000 .LVL146: 2001 .L135: 979:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 2002 .loc 1 979 5 is_stmt 1 view .LVU751 2003 0024 0529 cmp r1, #5 2004 0026 16D8 bhi .L134 2005 0028 DFE801F0 tbb [pc, r1] 2006 .L126: 2007 002c 03 .byte (.L131-.L126)/2 2008 002d 06 .byte (.L130-.L126)/2 2009 002e 09 .byte (.L129-.L126)/2 2010 002f 0C .byte (.L128-.L126)/2 2011 0030 0F .byte (.L127-.L126)/2 2012 0031 12 .byte (.L125-.L126)/2 2013 .p2align 1 2014 .L131: 982:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break; 2015 .loc 1 982 7 view .LVU752 982:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break; 2016 .loc 1 982 30 is_stmt 0 view .LVU753 2017 0032 DA63 str r2, [r3, #60] 983:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 2018 .loc 1 983 7 is_stmt 1 view .LVU754 972:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 2019 .loc 1 972 21 is_stmt 0 view .LVU755 2020 0034 0846 mov r0, r1 983:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 2021 .loc 1 983 7 view .LVU756 2022 0036 F1E7 b .L124 2023 .L130: 986:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break; 2024 .loc 1 986 7 is_stmt 1 view .LVU757 986:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break; 2025 .loc 1 986 34 is_stmt 0 view .LVU758 ARM GAS /tmp/cc2d5rNl.s page 71 2026 0038 1A64 str r2, [r3, #64] 987:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 2027 .loc 1 987 7 is_stmt 1 view .LVU759 972:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 2028 .loc 1 972 21 is_stmt 0 view .LVU760 2029 003a 0020 movs r0, #0 987:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 2030 .loc 1 987 7 view .LVU761 2031 003c EEE7 b .L124 2032 .L129: 990:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break; 2033 .loc 1 990 7 is_stmt 1 view .LVU762 990:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break; 2034 .loc 1 990 32 is_stmt 0 view .LVU763 2035 003e 5A64 str r2, [r3, #68] 991:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 2036 .loc 1 991 7 is_stmt 1 view .LVU764 972:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 2037 .loc 1 972 21 is_stmt 0 view .LVU765 2038 0040 0020 movs r0, #0 991:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 2039 .loc 1 991 7 view .LVU766 2040 0042 EBE7 b .L124 2041 .L128: 994:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break; 2042 .loc 1 994 7 is_stmt 1 view .LVU767 994:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break; 2043 .loc 1 994 36 is_stmt 0 view .LVU768 2044 0044 9A64 str r2, [r3, #72] 995:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 2045 .loc 1 995 7 is_stmt 1 view .LVU769 972:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 2046 .loc 1 972 21 is_stmt 0 view .LVU770 2047 0046 0020 movs r0, #0 995:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 2048 .loc 1 995 7 view .LVU771 2049 0048 E8E7 b .L124 2050 .L127: 998:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break; 2051 .loc 1 998 7 is_stmt 1 view .LVU772 998:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break; 2052 .loc 1 998 31 is_stmt 0 view .LVU773 2053 004a DA64 str r2, [r3, #76] 999:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 2054 .loc 1 999 7 is_stmt 1 view .LVU774 972:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 2055 .loc 1 972 21 is_stmt 0 view .LVU775 2056 004c 0020 movs r0, #0 999:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 2057 .loc 1 999 7 view .LVU776 2058 004e E5E7 b .L124 2059 .L125: 1002:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break; 2060 .loc 1 1002 7 is_stmt 1 view .LVU777 1002:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break; 2061 .loc 1 1002 31 is_stmt 0 view .LVU778 2062 0050 1A65 str r2, [r3, #80] ARM GAS /tmp/cc2d5rNl.s page 72 1003:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 2063 .loc 1 1003 7 is_stmt 1 view .LVU779 972:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 2064 .loc 1 972 21 is_stmt 0 view .LVU780 2065 0052 0020 movs r0, #0 1003:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 2066 .loc 1 1003 7 view .LVU781 2067 0054 E2E7 b .L124 2068 .L134: 979:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 2069 .loc 1 979 5 view .LVU782 2070 0056 0020 movs r0, #0 2071 0058 E0E7 b .L124 2072 .L132: 975:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 2073 .loc 1 975 3 view .LVU783 2074 005a 0220 movs r0, #2 1019:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 2075 .loc 1 1019 1 view .LVU784 2076 005c 7047 bx lr 2077 .cfi_endproc 2078 .LFE138: 2080 .section .text.HAL_DMA_UnRegisterCallback,"ax",%progbits 2081 .align 1 2082 .global HAL_DMA_UnRegisterCallback 2083 .syntax unified 2084 .thumb 2085 .thumb_func 2087 HAL_DMA_UnRegisterCallback: 2088 .LVL147: 2089 .LFB139: 1030:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** HAL_StatusTypeDef status = HAL_OK; 2090 .loc 1 1030 1 is_stmt 1 view -0 2091 .cfi_startproc 2092 @ args = 0, pretend = 0, frame = 0 2093 @ frame_needed = 0, uses_anonymous_args = 0 2094 @ link register save eliminated. 1030:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** HAL_StatusTypeDef status = HAL_OK; 2095 .loc 1 1030 1 is_stmt 0 view .LVU786 2096 0000 0346 mov r3, r0 1031:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 2097 .loc 1 1031 3 is_stmt 1 view .LVU787 2098 .LVL148: 1034:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 2099 .loc 1 1034 3 view .LVU788 1034:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 2100 .loc 1 1034 3 view .LVU789 2101 0002 90F83420 ldrb r2, [r0, #52] @ zero_extendqisi2 2102 0006 012A cmp r2, #1 2103 0008 2FD0 beq .L147 1034:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 2104 .loc 1 1034 3 discriminator 2 view .LVU790 2105 000a 0122 movs r2, #1 2106 000c 80F83420 strb r2, [r0, #52] 1034:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 2107 .loc 1 1034 3 discriminator 2 view .LVU791 1036:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { ARM GAS /tmp/cc2d5rNl.s page 73 2108 .loc 1 1036 3 discriminator 2 view .LVU792 1036:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 2109 .loc 1 1036 33 is_stmt 0 discriminator 2 view .LVU793 2110 0010 90F83500 ldrb r0, [r0, #53] @ zero_extendqisi2 2111 .LVL149: 1036:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 2112 .loc 1 1036 33 discriminator 2 view .LVU794 2113 0014 C0B2 uxtb r0, r0 1036:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 2114 .loc 1 1036 5 discriminator 2 view .LVU795 2115 0016 9042 cmp r0, r2 2116 0018 04D0 beq .L149 1080:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 2117 .loc 1 1080 12 view .LVU796 2118 001a 0120 movs r0, #1 2119 .L138: 2120 .LVL150: 1084:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 2121 .loc 1 1084 3 is_stmt 1 view .LVU797 1084:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 2122 .loc 1 1084 3 view .LVU798 2123 001c 0022 movs r2, #0 2124 001e 83F83420 strb r2, [r3, #52] 1084:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 2125 .loc 1 1084 3 view .LVU799 1086:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 2126 .loc 1 1086 3 view .LVU800 1086:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 2127 .loc 1 1086 10 is_stmt 0 view .LVU801 2128 0022 7047 bx lr 2129 .LVL151: 2130 .L149: 1038:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** { 2131 .loc 1 1038 5 is_stmt 1 view .LVU802 2132 0024 0629 cmp r1, #6 2133 0026 F9D8 bhi .L138 2134 0028 DFE801F0 tbb [pc, r1] 2135 .L140: 2136 002c 04 .byte (.L146-.L140)/2 2137 002d 08 .byte (.L145-.L140)/2 2138 002e 0B .byte (.L144-.L140)/2 2139 002f 0E .byte (.L143-.L140)/2 2140 0030 11 .byte (.L142-.L140)/2 2141 0031 14 .byte (.L141-.L140)/2 2142 0032 17 .byte (.L139-.L140)/2 2143 0033 00 .p2align 1 2144 .L146: 1041:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break; 2145 .loc 1 1041 7 view .LVU803 1041:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break; 2146 .loc 1 1041 30 is_stmt 0 view .LVU804 2147 0034 0022 movs r2, #0 2148 0036 DA63 str r2, [r3, #60] 1042:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 2149 .loc 1 1042 7 is_stmt 1 view .LVU805 1031:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 2150 .loc 1 1031 21 is_stmt 0 view .LVU806 ARM GAS /tmp/cc2d5rNl.s page 74 2151 0038 0846 mov r0, r1 1042:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 2152 .loc 1 1042 7 view .LVU807 2153 003a EFE7 b .L138 2154 .L145: 1045:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break; 2155 .loc 1 1045 7 is_stmt 1 view .LVU808 1045:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break; 2156 .loc 1 1045 34 is_stmt 0 view .LVU809 2157 003c 0020 movs r0, #0 2158 003e 1864 str r0, [r3, #64] 1046:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 2159 .loc 1 1046 7 is_stmt 1 view .LVU810 2160 0040 ECE7 b .L138 2161 .L144: 1049:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break; 2162 .loc 1 1049 7 view .LVU811 1049:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break; 2163 .loc 1 1049 32 is_stmt 0 view .LVU812 2164 0042 0020 movs r0, #0 2165 0044 5864 str r0, [r3, #68] 1050:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 2166 .loc 1 1050 7 is_stmt 1 view .LVU813 2167 0046 E9E7 b .L138 2168 .L143: 1053:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break; 2169 .loc 1 1053 7 view .LVU814 1053:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break; 2170 .loc 1 1053 36 is_stmt 0 view .LVU815 2171 0048 0020 movs r0, #0 2172 004a 9864 str r0, [r3, #72] 1054:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 2173 .loc 1 1054 7 is_stmt 1 view .LVU816 2174 004c E6E7 b .L138 2175 .L142: 1057:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break; 2176 .loc 1 1057 7 view .LVU817 1057:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break; 2177 .loc 1 1057 31 is_stmt 0 view .LVU818 2178 004e 0020 movs r0, #0 2179 0050 D864 str r0, [r3, #76] 1058:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 2180 .loc 1 1058 7 is_stmt 1 view .LVU819 2181 0052 E3E7 b .L138 2182 .L141: 1061:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break; 2183 .loc 1 1061 7 view .LVU820 1061:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break; 2184 .loc 1 1061 31 is_stmt 0 view .LVU821 2185 0054 0020 movs r0, #0 2186 0056 1865 str r0, [r3, #80] 1062:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 2187 .loc 1 1062 7 is_stmt 1 view .LVU822 2188 0058 E0E7 b .L138 2189 .L139: 1065:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->XferHalfCpltCallback = NULL; 2190 .loc 1 1065 7 view .LVU823 ARM GAS /tmp/cc2d5rNl.s page 75 1065:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->XferHalfCpltCallback = NULL; 2191 .loc 1 1065 30 is_stmt 0 view .LVU824 2192 005a 0020 movs r0, #0 2193 005c D863 str r0, [r3, #60] 1066:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->XferM1CpltCallback = NULL; 2194 .loc 1 1066 7 is_stmt 1 view .LVU825 1066:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->XferM1CpltCallback = NULL; 2195 .loc 1 1066 34 is_stmt 0 view .LVU826 2196 005e 1864 str r0, [r3, #64] 1067:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->XferM1HalfCpltCallback = NULL; 2197 .loc 1 1067 7 is_stmt 1 view .LVU827 1067:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->XferM1HalfCpltCallback = NULL; 2198 .loc 1 1067 32 is_stmt 0 view .LVU828 2199 0060 5864 str r0, [r3, #68] 1068:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->XferErrorCallback = NULL; 2200 .loc 1 1068 7 is_stmt 1 view .LVU829 1068:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->XferErrorCallback = NULL; 2201 .loc 1 1068 36 is_stmt 0 view .LVU830 2202 0062 9864 str r0, [r3, #72] 1069:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->XferAbortCallback = NULL; 2203 .loc 1 1069 7 is_stmt 1 view .LVU831 1069:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->XferAbortCallback = NULL; 2204 .loc 1 1069 31 is_stmt 0 view .LVU832 2205 0064 D864 str r0, [r3, #76] 1070:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break; 2206 .loc 1 1070 7 is_stmt 1 view .LVU833 1070:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break; 2207 .loc 1 1070 31 is_stmt 0 view .LVU834 2208 0066 1865 str r0, [r3, #80] 1071:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 2209 .loc 1 1071 7 is_stmt 1 view .LVU835 2210 0068 D8E7 b .L138 2211 .LVL152: 2212 .L147: 1034:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 2213 .loc 1 1034 3 is_stmt 0 view .LVU836 2214 006a 0220 movs r0, #2 2215 .LVL153: 1087:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 2216 .loc 1 1087 1 view .LVU837 2217 006c 7047 bx lr 2218 .cfi_endproc 2219 .LFE139: 2221 .section .text.HAL_DMA_GetState,"ax",%progbits 2222 .align 1 2223 .global HAL_DMA_GetState 2224 .syntax unified 2225 .thumb 2226 .thumb_func 2228 HAL_DMA_GetState: 2229 .LVL154: 2230 .LFB140: 1115:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** return hdma->State; 2231 .loc 1 1115 1 is_stmt 1 view -0 2232 .cfi_startproc 2233 @ args = 0, pretend = 0, frame = 0 2234 @ frame_needed = 0, uses_anonymous_args = 0 ARM GAS /tmp/cc2d5rNl.s page 76 2235 @ link register save eliminated. 1116:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 2236 .loc 1 1116 3 view .LVU839 1116:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 2237 .loc 1 1116 14 is_stmt 0 view .LVU840 2238 0000 90F83500 ldrb r0, [r0, #53] @ zero_extendqisi2 2239 .LVL155: 1117:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 2240 .loc 1 1117 1 view .LVU841 2241 0004 7047 bx lr 2242 .cfi_endproc 2243 .LFE140: 2245 .section .text.HAL_DMA_GetError,"ax",%progbits 2246 .align 1 2247 .global HAL_DMA_GetError 2248 .syntax unified 2249 .thumb 2250 .thumb_func 2252 HAL_DMA_GetError: 2253 .LVL156: 2254 .LFB141: 1126:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** return hdma->ErrorCode; 2255 .loc 1 1126 1 is_stmt 1 view -0 2256 .cfi_startproc 2257 @ args = 0, pretend = 0, frame = 0 2258 @ frame_needed = 0, uses_anonymous_args = 0 2259 @ link register save eliminated. 1127:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 2260 .loc 1 1127 3 view .LVU843 1127:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** } 2261 .loc 1 1127 14 is_stmt 0 view .LVU844 2262 0000 406D ldr r0, [r0, #84] 2263 .LVL157: 1128:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** 2264 .loc 1 1128 1 view .LVU845 2265 0002 7047 bx lr 2266 .cfi_endproc 2267 .LFE141: 2269 .section .rodata.flagBitshiftOffset.0,"a" 2270 .align 2 2271 .set .LANCHOR0,. + 0 2274 flagBitshiftOffset.0: 2275 0000 00061016 .ascii "\000\006\020\026\000\006\020\026" 2275 00061016 2276 .text 2277 .Letext0: 2278 .file 2 "/home/gitc/\346\241\214\351\235\242/gcc-arm-none-eabi-10.3-2021.10/arm-none-eabi/include/ 2279 .file 3 "/home/gitc/\346\241\214\351\235\242/gcc-arm-none-eabi-10.3-2021.10/arm-none-eabi/include/ 2280 .file 4 "Drivers/CMSIS/Device/ST/STM32F4xx/Include/stm32f407xx.h" 2281 .file 5 "Drivers/CMSIS/Device/ST/STM32F4xx/Include/stm32f4xx.h" 2282 .file 6 "Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_def.h" 2283 .file 7 "Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_dma.h" 2284 .file 8 "Drivers/CMSIS/Device/ST/STM32F4xx/Include/system_stm32f4xx.h" 2285 .file 9 "Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal.h" ARM GAS /tmp/cc2d5rNl.s page 77 DEFINED SYMBOLS *ABS*:0000000000000000 stm32f4xx_hal_dma.c /tmp/cc2d5rNl.s:20 .text.DMA_SetConfig:0000000000000000 $t /tmp/cc2d5rNl.s:25 .text.DMA_SetConfig:0000000000000000 DMA_SetConfig /tmp/cc2d5rNl.s:99 .text.DMA_CalcBaseAndBitshift:0000000000000000 $t /tmp/cc2d5rNl.s:104 .text.DMA_CalcBaseAndBitshift:0000000000000000 DMA_CalcBaseAndBitshift /tmp/cc2d5rNl.s:175 .text.DMA_CalcBaseAndBitshift:000000000000003c $d /tmp/cc2d5rNl.s:181 .text.DMA_CheckFifoParam:0000000000000000 $t /tmp/cc2d5rNl.s:186 .text.DMA_CheckFifoParam:0000000000000000 DMA_CheckFifoParam /tmp/cc2d5rNl.s:272 .text.DMA_CheckFifoParam:000000000000004e $d /tmp/cc2d5rNl.s:276 .text.DMA_CheckFifoParam:0000000000000052 $t /tmp/cc2d5rNl.s:371 .text.HAL_DMA_Init:0000000000000000 $t /tmp/cc2d5rNl.s:377 .text.HAL_DMA_Init:0000000000000000 HAL_DMA_Init /tmp/cc2d5rNl.s:626 .text.HAL_DMA_Init:00000000000000c8 $d /tmp/cc2d5rNl.s:631 .text.HAL_DMA_DeInit:0000000000000000 $t /tmp/cc2d5rNl.s:637 .text.HAL_DMA_DeInit:0000000000000000 HAL_DMA_DeInit /tmp/cc2d5rNl.s:770 .text.HAL_DMA_Start:0000000000000000 $t /tmp/cc2d5rNl.s:776 .text.HAL_DMA_Start:0000000000000000 HAL_DMA_Start /tmp/cc2d5rNl.s:859 .text.HAL_DMA_Start_IT:0000000000000000 $t /tmp/cc2d5rNl.s:865 .text.HAL_DMA_Start_IT:0000000000000000 HAL_DMA_Start_IT /tmp/cc2d5rNl.s:987 .text.HAL_DMA_Abort:0000000000000000 $t /tmp/cc2d5rNl.s:993 .text.HAL_DMA_Abort:0000000000000000 HAL_DMA_Abort /tmp/cc2d5rNl.s:1147 .text.HAL_DMA_Abort_IT:0000000000000000 $t /tmp/cc2d5rNl.s:1153 .text.HAL_DMA_Abort_IT:0000000000000000 HAL_DMA_Abort_IT /tmp/cc2d5rNl.s:1199 .text.HAL_DMA_PollForTransfer:0000000000000000 $t /tmp/cc2d5rNl.s:1205 .text.HAL_DMA_PollForTransfer:0000000000000000 HAL_DMA_PollForTransfer /tmp/cc2d5rNl.s:1497 .text.HAL_DMA_IRQHandler:0000000000000000 $t /tmp/cc2d5rNl.s:1503 .text.HAL_DMA_IRQHandler:0000000000000000 HAL_DMA_IRQHandler /tmp/cc2d5rNl.s:1944 .text.HAL_DMA_IRQHandler:00000000000001d4 $d /tmp/cc2d5rNl.s:1950 .text.HAL_DMA_RegisterCallback:0000000000000000 $t /tmp/cc2d5rNl.s:1956 .text.HAL_DMA_RegisterCallback:0000000000000000 HAL_DMA_RegisterCallback /tmp/cc2d5rNl.s:2007 .text.HAL_DMA_RegisterCallback:000000000000002c $d /tmp/cc2d5rNl.s:2013 .text.HAL_DMA_RegisterCallback:0000000000000032 $t /tmp/cc2d5rNl.s:2081 .text.HAL_DMA_UnRegisterCallback:0000000000000000 $t /tmp/cc2d5rNl.s:2087 .text.HAL_DMA_UnRegisterCallback:0000000000000000 HAL_DMA_UnRegisterCallback /tmp/cc2d5rNl.s:2136 .text.HAL_DMA_UnRegisterCallback:000000000000002c $d /tmp/cc2d5rNl.s:2222 .text.HAL_DMA_GetState:0000000000000000 $t /tmp/cc2d5rNl.s:2228 .text.HAL_DMA_GetState:0000000000000000 HAL_DMA_GetState /tmp/cc2d5rNl.s:2246 .text.HAL_DMA_GetError:0000000000000000 $t /tmp/cc2d5rNl.s:2252 .text.HAL_DMA_GetError:0000000000000000 HAL_DMA_GetError /tmp/cc2d5rNl.s:2270 .rodata.flagBitshiftOffset.0:0000000000000000 $d /tmp/cc2d5rNl.s:2274 .rodata.flagBitshiftOffset.0:0000000000000000 flagBitshiftOffset.0 /tmp/cc2d5rNl.s:2143 .text.HAL_DMA_UnRegisterCallback:0000000000000033 $d /tmp/cc2d5rNl.s:2143 .text.HAL_DMA_UnRegisterCallback:0000000000000034 $t UNDEFINED SYMBOLS HAL_GetTick SystemCoreClock