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