ARM GAS /tmp/cclaiPAO.s page 1 1 .cpu cortex-m3 2 .eabi_attribute 20, 1 3 .eabi_attribute 21, 1 4 .eabi_attribute 23, 3 5 .eabi_attribute 24, 1 6 .eabi_attribute 25, 1 7 .eabi_attribute 26, 1 8 .eabi_attribute 30, 1 9 .eabi_attribute 34, 1 10 .eabi_attribute 18, 4 11 .file "stm32f1xx_hal_dma.c" 12 .text 13 .Ltext0: 14 .cfi_sections .debug_frame 15 .section .text.DMA_SetConfig,"ax",%progbits 16 .align 1 17 .arch armv7-m 18 .syntax unified 19 .thumb 20 .thumb_func 21 .fpu softvfp 23 DMA_SetConfig: 24 .LVL0: 25 .LFB77: 26 .file 1 "Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c" 1:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /** 2:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** ****************************************************************************** 3:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * @file stm32f1xx_hal_dma.c 4:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * @author MCD Application Team 5:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * @brief DMA HAL module driver. 6:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * This file provides firmware functions to manage the following 7:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * functionalities of the Direct Memory Access (DMA) peripheral: 8:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * + Initialization and de-initialization functions 9:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * + IO operation functions 10:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * + Peripheral State and errors functions 11:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** @verbatim 12:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** ============================================================================== 13:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** ##### How to use this driver ##### 14:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** ============================================================================== 15:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** [..] 16:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** (#) Enable and configure the peripheral to be connected to the DMA Channel 17:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** (except for internal SRAM / FLASH memories: no initialization is 18:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** necessary). Please refer to the Reference manual for connection between peripherals 19:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** and DMA requests. 20:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 21:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** (#) For a given Channel, program the required configuration through the following parameters: 22:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** Channel request, Transfer Direction, Source and Destination data formats, 23:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** Circular or Normal mode, Channel Priority level, Source and Destination Increment mode 24:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** using HAL_DMA_Init() function. 25:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 26:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** (#) Use HAL_DMA_GetState() function to return the DMA state and HAL_DMA_GetError() in case of er 27:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** detection. 28:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 29:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** (#) Use HAL_DMA_Abort() function to abort the current transfer 30:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 31:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** -@- In Memory-to-Memory transfer mode, Circular mode is not allowed. 32:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** *** Polling mode IO operation *** ARM GAS /tmp/cclaiPAO.s page 2 33:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** ================================= 34:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** [..] 35:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** (+) Use HAL_DMA_Start() to start DMA transfer after the configuration of Source 36:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** address and destination address and the Length of data to be transferred 37:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** (+) Use HAL_DMA_PollForTransfer() to poll for the end of current transfer, in this 38:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** case a fixed Timeout can be configured by User depending from his application. 39:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 40:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** *** Interrupt mode IO operation *** 41:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** =================================== 42:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** [..] 43:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** (+) Configure the DMA interrupt priority using HAL_NVIC_SetPriority() 44:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** (+) Enable the DMA IRQ handler using HAL_NVIC_EnableIRQ() 45:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** (+) Use HAL_DMA_Start_IT() to start DMA transfer after the configuration of 46:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** Source address and destination address and the Length of data to be transferred. 47:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** In this case the DMA interrupt is configured 48:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** (+) Use HAL_DMA_IRQHandler() called under DMA_IRQHandler() Interrupt subroutine 49:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** (+) At the end of data transfer HAL_DMA_IRQHandler() function is executed and user can 50:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** add his own function by customization of function pointer XferCpltCallback and 51:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** XferErrorCallback (i.e. a member of DMA handle structure). 52:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 53:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** *** DMA HAL driver macros list *** 54:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** ============================================= 55:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** [..] 56:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** Below the list of most used macros in DMA HAL driver. 57:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 58:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** (+) __HAL_DMA_ENABLE: Enable the specified DMA Channel. 59:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** (+) __HAL_DMA_DISABLE: Disable the specified DMA Channel. 60:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** (+) __HAL_DMA_GET_FLAG: Get the DMA Channel pending flags. 61:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** (+) __HAL_DMA_CLEAR_FLAG: Clear the DMA Channel pending flags. 62:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** (+) __HAL_DMA_ENABLE_IT: Enable the specified DMA Channel interrupts. 63:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** (+) __HAL_DMA_DISABLE_IT: Disable the specified DMA Channel interrupts. 64:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** (+) __HAL_DMA_GET_IT_SOURCE: Check whether the specified DMA Channel interrupt has occurred 65:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 66:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** [..] 67:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** (@) You can refer to the DMA HAL driver header file for more useful macros 68:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 69:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** @endverbatim 70:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** ****************************************************************************** 71:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * @attention 72:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * 73:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** *

© Copyright (c) 2016 STMicroelectronics. 74:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * All rights reserved.

75:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * 76:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * This software component is licensed by ST under BSD 3-Clause license, 77:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * the "License"; You may not use this file except in compliance with the 78:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * License. You may obtain a copy of the License at: 79:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * opensource.org/licenses/BSD-3-Clause 80:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * 81:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** ****************************************************************************** 82:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** */ 83:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 84:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Includes ------------------------------------------------------------------*/ 85:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** #include "stm32f1xx_hal.h" 86:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 87:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /** @addtogroup STM32F1xx_HAL_Driver 88:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * @{ 89:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** */ ARM GAS /tmp/cclaiPAO.s page 3 90:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 91:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /** @defgroup DMA DMA 92:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * @brief DMA HAL module driver 93:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * @{ 94:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** */ 95:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 96:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** #ifdef HAL_DMA_MODULE_ENABLED 97:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 98:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Private typedef -----------------------------------------------------------*/ 99:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Private define ------------------------------------------------------------*/ 100:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Private macro -------------------------------------------------------------*/ 101:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Private variables ---------------------------------------------------------*/ 102:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Private function prototypes -----------------------------------------------*/ 103:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /** @defgroup DMA_Private_Functions DMA Private Functions 104:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * @{ 105:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** */ 106:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** static void DMA_SetConfig(DMA_HandleTypeDef *hdma, uint32_t SrcAddress, uint32_t DstAddress, uint32 107:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /** 108:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * @} 109:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** */ 110:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 111:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Exported functions ---------------------------------------------------------*/ 112:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 113:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /** @defgroup DMA_Exported_Functions DMA Exported Functions 114:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * @{ 115:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** */ 116:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 117:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /** @defgroup DMA_Exported_Functions_Group1 Initialization and de-initialization functions 118:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * @brief Initialization and de-initialization functions 119:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * 120:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** @verbatim 121:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** =============================================================================== 122:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** ##### Initialization and de-initialization functions ##### 123:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** =============================================================================== 124:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** [..] 125:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** This section provides functions allowing to initialize the DMA Channel source 126:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** and destination addresses, incrementation and data sizes, transfer direction, 127:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** circular/normal mode selection, memory-to-memory mode selection and Channel priority value. 128:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** [..] 129:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** The HAL_DMA_Init() function follows the DMA configuration procedures as described in 130:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** reference manual. 131:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 132:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** @endverbatim 133:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * @{ 134:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** */ 135:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 136:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /** 137:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * @brief Initialize the DMA according to the specified 138:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * parameters in the DMA_InitTypeDef and initialize the associated handle. 139:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * @param hdma: Pointer to a DMA_HandleTypeDef structure that contains 140:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * the configuration information for the specified DMA Channel. 141:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * @retval HAL status 142:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** */ 143:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** HAL_StatusTypeDef HAL_DMA_Init(DMA_HandleTypeDef *hdma) 144:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 145:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** uint32_t tmp = 0U; 146:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** ARM GAS /tmp/cclaiPAO.s page 4 147:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Check the DMA handle allocation */ 148:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** if(hdma == NULL) 149:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 150:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** return HAL_ERROR; 151:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 152:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 153:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Check the parameters */ 154:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** assert_param(IS_DMA_ALL_INSTANCE(hdma->Instance)); 155:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** assert_param(IS_DMA_DIRECTION(hdma->Init.Direction)); 156:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** assert_param(IS_DMA_PERIPHERAL_INC_STATE(hdma->Init.PeriphInc)); 157:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** assert_param(IS_DMA_MEMORY_INC_STATE(hdma->Init.MemInc)); 158:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** assert_param(IS_DMA_PERIPHERAL_DATA_SIZE(hdma->Init.PeriphDataAlignment)); 159:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** assert_param(IS_DMA_MEMORY_DATA_SIZE(hdma->Init.MemDataAlignment)); 160:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** assert_param(IS_DMA_MODE(hdma->Init.Mode)); 161:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** assert_param(IS_DMA_PRIORITY(hdma->Init.Priority)); 162:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 163:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** #if defined (DMA2) 164:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* calculation of the channel index */ 165:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** if ((uint32_t)(hdma->Instance) < (uint32_t)(DMA2_Channel1)) 166:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 167:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* DMA1 */ 168:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->ChannelIndex = (((uint32_t)hdma->Instance - (uint32_t)DMA1_Channel1) / ((uint32_t)DMA1_Ch 169:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->DmaBaseAddress = DMA1; 170:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 171:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** else 172:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 173:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* DMA2 */ 174:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->ChannelIndex = (((uint32_t)hdma->Instance - (uint32_t)DMA2_Channel1) / ((uint32_t)DMA2_Ch 175:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->DmaBaseAddress = DMA2; 176:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 177:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** #else 178:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* DMA1 */ 179:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->ChannelIndex = (((uint32_t)hdma->Instance - (uint32_t)DMA1_Channel1) / ((uint32_t)DMA1_Chan 180:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->DmaBaseAddress = DMA1; 181:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** #endif /* DMA2 */ 182:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 183:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Change DMA peripheral state */ 184:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->State = HAL_DMA_STATE_BUSY; 185:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 186:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Get the CR register value */ 187:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** tmp = hdma->Instance->CCR; 188:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 189:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Clear PL, MSIZE, PSIZE, MINC, PINC, CIRC and DIR bits */ 190:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** tmp &= ((uint32_t)~(DMA_CCR_PL | DMA_CCR_MSIZE | DMA_CCR_PSIZE | \ 191:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** DMA_CCR_MINC | DMA_CCR_PINC | DMA_CCR_CIRC | \ 192:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** DMA_CCR_DIR)); 193:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 194:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Prepare the DMA Channel configuration */ 195:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** tmp |= hdma->Init.Direction | 196:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->Init.PeriphInc | hdma->Init.MemInc | 197:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->Init.PeriphDataAlignment | hdma->Init.MemDataAlignment | 198:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->Init.Mode | hdma->Init.Priority; 199:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 200:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Write to DMA Channel CR register */ 201:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->Instance->CCR = tmp; 202:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 203:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Initialise the error code */ ARM GAS /tmp/cclaiPAO.s page 5 204:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->ErrorCode = HAL_DMA_ERROR_NONE; 205:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 206:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Initialize the DMA state*/ 207:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->State = HAL_DMA_STATE_READY; 208:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Allocate lock resource and initialize it */ 209:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->Lock = HAL_UNLOCKED; 210:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 211:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** return HAL_OK; 212:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 213:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 214:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /** 215:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * @brief DeInitialize the DMA peripheral. 216:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * @param hdma: pointer to a DMA_HandleTypeDef structure that contains 217:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * the configuration information for the specified DMA Channel. 218:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * @retval HAL status 219:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** */ 220:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** HAL_StatusTypeDef HAL_DMA_DeInit(DMA_HandleTypeDef *hdma) 221:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 222:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Check the DMA handle allocation */ 223:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** if(hdma == NULL) 224:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 225:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** return HAL_ERROR; 226:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 227:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 228:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Check the parameters */ 229:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** assert_param(IS_DMA_ALL_INSTANCE(hdma->Instance)); 230:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 231:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Disable the selected DMA Channelx */ 232:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** __HAL_DMA_DISABLE(hdma); 233:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 234:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Reset DMA Channel control register */ 235:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->Instance->CCR = 0U; 236:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 237:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Reset DMA Channel Number of Data to Transfer register */ 238:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->Instance->CNDTR = 0U; 239:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 240:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Reset DMA Channel peripheral address register */ 241:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->Instance->CPAR = 0U; 242:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 243:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Reset DMA Channel memory address register */ 244:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->Instance->CMAR = 0U; 245:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 246:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** #if defined (DMA2) 247:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* calculation of the channel index */ 248:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** if ((uint32_t)(hdma->Instance) < (uint32_t)(DMA2_Channel1)) 249:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 250:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* DMA1 */ 251:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->ChannelIndex = (((uint32_t)hdma->Instance - (uint32_t)DMA1_Channel1) / ((uint32_t)DMA1_Ch 252:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->DmaBaseAddress = DMA1; 253:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 254:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** else 255:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 256:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* DMA2 */ 257:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->ChannelIndex = (((uint32_t)hdma->Instance - (uint32_t)DMA2_Channel1) / ((uint32_t)DMA2_Ch 258:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->DmaBaseAddress = DMA2; 259:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 260:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** #else ARM GAS /tmp/cclaiPAO.s page 6 261:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* DMA1 */ 262:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->ChannelIndex = (((uint32_t)hdma->Instance - (uint32_t)DMA1_Channel1) / ((uint32_t)DMA1_Chan 263:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->DmaBaseAddress = DMA1; 264:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** #endif /* DMA2 */ 265:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 266:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Clear all flags */ 267:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->DmaBaseAddress->IFCR = (DMA_ISR_GIF1 << (hdma->ChannelIndex)); 268:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 269:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Clean all callbacks */ 270:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->XferCpltCallback = NULL; 271:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->XferHalfCpltCallback = NULL; 272:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->XferErrorCallback = NULL; 273:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->XferAbortCallback = NULL; 274:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 275:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Reset the error code */ 276:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->ErrorCode = HAL_DMA_ERROR_NONE; 277:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 278:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Reset the DMA state */ 279:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->State = HAL_DMA_STATE_RESET; 280:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 281:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Release Lock */ 282:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** __HAL_UNLOCK(hdma); 283:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 284:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** return HAL_OK; 285:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 286:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 287:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /** 288:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * @} 289:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** */ 290:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 291:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /** @defgroup DMA_Exported_Functions_Group2 Input and Output operation functions 292:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * @brief Input and Output operation functions 293:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * 294:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** @verbatim 295:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** =============================================================================== 296:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** ##### IO operation functions ##### 297:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** =============================================================================== 298:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** [..] This section provides functions allowing to: 299:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** (+) Configure the source, destination address and data length and Start DMA transfer 300:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** (+) Configure the source, destination address and data length and 301:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** Start DMA transfer with interrupt 302:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** (+) Abort DMA transfer 303:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** (+) Poll for transfer complete 304:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** (+) Handle DMA interrupt request 305:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 306:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** @endverbatim 307:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * @{ 308:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** */ 309:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 310:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /** 311:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * @brief Start the DMA Transfer. 312:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * @param hdma: pointer to a DMA_HandleTypeDef structure that contains 313:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * the configuration information for the specified DMA Channel. 314:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * @param SrcAddress: The source memory Buffer address 315:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * @param DstAddress: The destination memory Buffer address 316:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * @param DataLength: The length of data to be transferred from source to destination 317:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * @retval HAL status ARM GAS /tmp/cclaiPAO.s page 7 318:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** */ 319:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** HAL_StatusTypeDef HAL_DMA_Start(DMA_HandleTypeDef *hdma, uint32_t SrcAddress, uint32_t DstAddress, 320:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 321:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** HAL_StatusTypeDef status = HAL_OK; 322:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 323:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Check the parameters */ 324:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** assert_param(IS_DMA_BUFFER_SIZE(DataLength)); 325:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 326:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Process locked */ 327:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** __HAL_LOCK(hdma); 328:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 329:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** if(HAL_DMA_STATE_READY == hdma->State) 330:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 331:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Change DMA peripheral state */ 332:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->State = HAL_DMA_STATE_BUSY; 333:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->ErrorCode = HAL_DMA_ERROR_NONE; 334:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 335:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Disable the peripheral */ 336:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** __HAL_DMA_DISABLE(hdma); 337:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 338:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Configure the source, destination address and the data length & clear flags*/ 339:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** DMA_SetConfig(hdma, SrcAddress, DstAddress, DataLength); 340:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 341:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Enable the Peripheral */ 342:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** __HAL_DMA_ENABLE(hdma); 343:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 344:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** else 345:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 346:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Process Unlocked */ 347:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** __HAL_UNLOCK(hdma); 348:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** status = HAL_BUSY; 349:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 350:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** return status; 351:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 352:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 353:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /** 354:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * @brief Start the DMA Transfer with interrupt enabled. 355:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * @param hdma: pointer to a DMA_HandleTypeDef structure that contains 356:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * the configuration information for the specified DMA Channel. 357:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * @param SrcAddress: The source memory Buffer address 358:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * @param DstAddress: The destination memory Buffer address 359:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * @param DataLength: The length of data to be transferred from source to destination 360:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * @retval HAL status 361:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** */ 362:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** HAL_StatusTypeDef HAL_DMA_Start_IT(DMA_HandleTypeDef *hdma, uint32_t SrcAddress, uint32_t DstAddres 363:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 364:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** HAL_StatusTypeDef status = HAL_OK; 365:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 366:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Check the parameters */ 367:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** assert_param(IS_DMA_BUFFER_SIZE(DataLength)); 368:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 369:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Process locked */ 370:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** __HAL_LOCK(hdma); 371:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 372:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** if(HAL_DMA_STATE_READY == hdma->State) 373:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 374:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Change DMA peripheral state */ ARM GAS /tmp/cclaiPAO.s page 8 375:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->State = HAL_DMA_STATE_BUSY; 376:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->ErrorCode = HAL_DMA_ERROR_NONE; 377:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 378:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Disable the peripheral */ 379:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** __HAL_DMA_DISABLE(hdma); 380:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 381:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Configure the source, destination address and the data length & clear flags*/ 382:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** DMA_SetConfig(hdma, SrcAddress, DstAddress, DataLength); 383:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 384:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Enable the transfer complete interrupt */ 385:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Enable the transfer Error interrupt */ 386:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** if(NULL != hdma->XferHalfCpltCallback) 387:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 388:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Enable the Half transfer complete interrupt as well */ 389:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** __HAL_DMA_ENABLE_IT(hdma, (DMA_IT_TC | DMA_IT_HT | DMA_IT_TE)); 390:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 391:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** else 392:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 393:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** __HAL_DMA_DISABLE_IT(hdma, DMA_IT_HT); 394:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** __HAL_DMA_ENABLE_IT(hdma, (DMA_IT_TC | DMA_IT_TE)); 395:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 396:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Enable the Peripheral */ 397:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** __HAL_DMA_ENABLE(hdma); 398:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 399:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** else 400:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 401:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Process Unlocked */ 402:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** __HAL_UNLOCK(hdma); 403:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 404:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Remain BUSY */ 405:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** status = HAL_BUSY; 406:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 407:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** return status; 408:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 409:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 410:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /** 411:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * @brief Abort the DMA Transfer. 412:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * @param hdma: pointer to a DMA_HandleTypeDef structure that contains 413:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * the configuration information for the specified DMA Channel. 414:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * @retval HAL status 415:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** */ 416:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** HAL_StatusTypeDef HAL_DMA_Abort(DMA_HandleTypeDef *hdma) 417:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 418:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** HAL_StatusTypeDef status = HAL_OK; 419:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 420:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** if(hdma->State != HAL_DMA_STATE_BUSY) 421:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 422:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* no transfer ongoing */ 423:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->ErrorCode = HAL_DMA_ERROR_NO_XFER; 424:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 425:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Process Unlocked */ 426:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** __HAL_UNLOCK(hdma); 427:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 428:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** return HAL_ERROR; 429:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 430:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** else 431:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** ARM GAS /tmp/cclaiPAO.s page 9 432:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 433:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Disable DMA IT */ 434:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** __HAL_DMA_DISABLE_IT(hdma, (DMA_IT_TC | DMA_IT_HT | DMA_IT_TE)); 435:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 436:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Disable the channel */ 437:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** __HAL_DMA_DISABLE(hdma); 438:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 439:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Clear all flags */ 440:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->DmaBaseAddress->IFCR = (DMA_ISR_GIF1 << hdma->ChannelIndex); 441:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 442:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Change the DMA state */ 443:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->State = HAL_DMA_STATE_READY; 444:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 445:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Process Unlocked */ 446:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** __HAL_UNLOCK(hdma); 447:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 448:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** return status; 449:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 450:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 451:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /** 452:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * @brief Aborts the DMA Transfer in Interrupt mode. 453:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * @param hdma : pointer to a DMA_HandleTypeDef structure that contains 454:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * the configuration information for the specified DMA Channel. 455:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * @retval HAL status 456:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** */ 457:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** HAL_StatusTypeDef HAL_DMA_Abort_IT(DMA_HandleTypeDef *hdma) 458:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 459:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** HAL_StatusTypeDef status = HAL_OK; 460:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 461:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** if(HAL_DMA_STATE_BUSY != hdma->State) 462:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 463:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* no transfer ongoing */ 464:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->ErrorCode = HAL_DMA_ERROR_NO_XFER; 465:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 466:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** status = HAL_ERROR; 467:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 468:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** else 469:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 470:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Disable DMA IT */ 471:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** __HAL_DMA_DISABLE_IT(hdma, (DMA_IT_TC | DMA_IT_HT | DMA_IT_TE)); 472:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 473:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Disable the channel */ 474:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** __HAL_DMA_DISABLE(hdma); 475:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 476:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Clear all flags */ 477:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** __HAL_DMA_CLEAR_FLAG(hdma, __HAL_DMA_GET_GI_FLAG_INDEX(hdma)); 478:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 479:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Change the DMA state */ 480:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->State = HAL_DMA_STATE_READY; 481:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 482:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Process Unlocked */ 483:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** __HAL_UNLOCK(hdma); 484:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 485:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Call User Abort callback */ 486:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** if(hdma->XferAbortCallback != NULL) 487:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 488:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->XferAbortCallback(hdma); ARM GAS /tmp/cclaiPAO.s page 10 489:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 490:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 491:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** return status; 492:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 493:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 494:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /** 495:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * @brief Polling for transfer complete. 496:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * @param hdma: pointer to a DMA_HandleTypeDef structure that contains 497:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * the configuration information for the specified DMA Channel. 498:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * @param CompleteLevel: Specifies the DMA level complete. 499:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * @param Timeout: Timeout duration. 500:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * @retval HAL status 501:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** */ 502:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** HAL_StatusTypeDef HAL_DMA_PollForTransfer(DMA_HandleTypeDef *hdma, uint32_t CompleteLevel, uint32_t 503:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 504:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** uint32_t temp; 505:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** uint32_t tickstart = 0U; 506:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 507:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** if(HAL_DMA_STATE_BUSY != hdma->State) 508:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 509:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* no transfer ongoing */ 510:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->ErrorCode = HAL_DMA_ERROR_NO_XFER; 511:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** __HAL_UNLOCK(hdma); 512:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** return HAL_ERROR; 513:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 514:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 515:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Polling mode not supported in circular mode */ 516:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** if (RESET != (hdma->Instance->CCR & DMA_CCR_CIRC)) 517:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 518:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->ErrorCode = HAL_DMA_ERROR_NOT_SUPPORTED; 519:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** return HAL_ERROR; 520:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 521:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 522:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Get the level transfer complete flag */ 523:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** if(CompleteLevel == HAL_DMA_FULL_TRANSFER) 524:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 525:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Transfer Complete flag */ 526:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** temp = __HAL_DMA_GET_TC_FLAG_INDEX(hdma); 527:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 528:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** else 529:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 530:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Half Transfer Complete flag */ 531:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** temp = __HAL_DMA_GET_HT_FLAG_INDEX(hdma); 532:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 533:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 534:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Get tick */ 535:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** tickstart = HAL_GetTick(); 536:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 537:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** while(__HAL_DMA_GET_FLAG(hdma, temp) == RESET) 538:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 539:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** if((__HAL_DMA_GET_FLAG(hdma, __HAL_DMA_GET_TE_FLAG_INDEX(hdma)) != RESET)) 540:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 541:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* When a DMA transfer error occurs */ 542:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* A hardware clear of its EN bits is performed */ 543:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Clear all flags */ 544:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->DmaBaseAddress->IFCR = (DMA_ISR_GIF1 << hdma->ChannelIndex); 545:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** ARM GAS /tmp/cclaiPAO.s page 11 546:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Update error code */ 547:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** SET_BIT(hdma->ErrorCode, HAL_DMA_ERROR_TE); 548:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 549:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Change the DMA state */ 550:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->State= HAL_DMA_STATE_READY; 551:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 552:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Process Unlocked */ 553:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** __HAL_UNLOCK(hdma); 554:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 555:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** return HAL_ERROR; 556:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 557:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Check for the Timeout */ 558:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** if(Timeout != HAL_MAX_DELAY) 559:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 560:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** if((Timeout == 0U) || ((HAL_GetTick() - tickstart) > Timeout)) 561:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 562:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Update error code */ 563:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** SET_BIT(hdma->ErrorCode, HAL_DMA_ERROR_TIMEOUT); 564:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 565:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Change the DMA state */ 566:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->State = HAL_DMA_STATE_READY; 567:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 568:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Process Unlocked */ 569:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** __HAL_UNLOCK(hdma); 570:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 571:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** return HAL_ERROR; 572:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 573:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 574:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 575:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 576:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** if(CompleteLevel == HAL_DMA_FULL_TRANSFER) 577:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 578:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Clear the transfer complete flag */ 579:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** __HAL_DMA_CLEAR_FLAG(hdma, __HAL_DMA_GET_TC_FLAG_INDEX(hdma)); 580:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 581:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* The selected Channelx EN bit is cleared (DMA is disabled and 582:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** all transfers are complete) */ 583:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->State = HAL_DMA_STATE_READY; 584:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 585:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** else 586:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 587:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Clear the half transfer complete flag */ 588:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** __HAL_DMA_CLEAR_FLAG(hdma, __HAL_DMA_GET_HT_FLAG_INDEX(hdma)); 589:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 590:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 591:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Process unlocked */ 592:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** __HAL_UNLOCK(hdma); 593:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 594:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** return HAL_OK; 595:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 596:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 597:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /** 598:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * @brief Handles DMA interrupt request. 599:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * @param hdma: pointer to a DMA_HandleTypeDef structure that contains 600:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * the configuration information for the specified DMA Channel. 601:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * @retval None 602:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** */ ARM GAS /tmp/cclaiPAO.s page 12 603:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** void HAL_DMA_IRQHandler(DMA_HandleTypeDef *hdma) 604:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 605:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** uint32_t flag_it = hdma->DmaBaseAddress->ISR; 606:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** uint32_t source_it = hdma->Instance->CCR; 607:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 608:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Half Transfer Complete Interrupt management ******************************/ 609:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** if (((flag_it & (DMA_FLAG_HT1 << hdma->ChannelIndex)) != RESET) && ((source_it & DMA_IT_HT) != RE 610:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 611:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Disable the half transfer interrupt if the DMA mode is not CIRCULAR */ 612:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** if((hdma->Instance->CCR & DMA_CCR_CIRC) == 0U) 613:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 614:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Disable the half transfer interrupt */ 615:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** __HAL_DMA_DISABLE_IT(hdma, DMA_IT_HT); 616:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 617:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Clear the half transfer complete flag */ 618:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** __HAL_DMA_CLEAR_FLAG(hdma, __HAL_DMA_GET_HT_FLAG_INDEX(hdma)); 619:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 620:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* DMA peripheral state is not updated in Half Transfer */ 621:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* but in Transfer Complete case */ 622:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 623:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** if(hdma->XferHalfCpltCallback != NULL) 624:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 625:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Half transfer callback */ 626:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->XferHalfCpltCallback(hdma); 627:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 628:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 629:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 630:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Transfer Complete Interrupt management ***********************************/ 631:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** else if (((flag_it & (DMA_FLAG_TC1 << hdma->ChannelIndex)) != RESET) && ((source_it & DMA_IT_TC) 632:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 633:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** if((hdma->Instance->CCR & DMA_CCR_CIRC) == 0U) 634:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 635:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Disable the transfer complete and error interrupt */ 636:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** __HAL_DMA_DISABLE_IT(hdma, DMA_IT_TE | DMA_IT_TC); 637:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 638:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Change the DMA state */ 639:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->State = HAL_DMA_STATE_READY; 640:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 641:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Clear the transfer complete flag */ 642:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** __HAL_DMA_CLEAR_FLAG(hdma, __HAL_DMA_GET_TC_FLAG_INDEX(hdma)); 643:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 644:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Process Unlocked */ 645:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** __HAL_UNLOCK(hdma); 646:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 647:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** if(hdma->XferCpltCallback != NULL) 648:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 649:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Transfer complete callback */ 650:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->XferCpltCallback(hdma); 651:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 652:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 653:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 654:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Transfer Error Interrupt management **************************************/ 655:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** else if (( RESET != (flag_it & (DMA_FLAG_TE1 << hdma->ChannelIndex))) && (RESET != (source_it & D 656:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 657:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* When a DMA transfer error occurs */ 658:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* A hardware clear of its EN bits is performed */ 659:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Disable ALL DMA IT */ ARM GAS /tmp/cclaiPAO.s page 13 660:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** __HAL_DMA_DISABLE_IT(hdma, (DMA_IT_TC | DMA_IT_HT | DMA_IT_TE)); 661:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 662:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Clear all flags */ 663:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->DmaBaseAddress->IFCR = (DMA_ISR_GIF1 << hdma->ChannelIndex); 664:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 665:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Update error code */ 666:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->ErrorCode = HAL_DMA_ERROR_TE; 667:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 668:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Change the DMA state */ 669:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->State = HAL_DMA_STATE_READY; 670:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 671:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Process Unlocked */ 672:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** __HAL_UNLOCK(hdma); 673:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 674:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** if (hdma->XferErrorCallback != NULL) 675:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 676:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Transfer error callback */ 677:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->XferErrorCallback(hdma); 678:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 679:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 680:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** return; 681:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 682:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 683:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /** 684:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * @brief Register callbacks 685:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * @param hdma: pointer to a DMA_HandleTypeDef structure that contains 686:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * the configuration information for the specified DMA Channel. 687:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * @param CallbackID: User Callback identifer 688:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * a HAL_DMA_CallbackIDTypeDef ENUM as parameter. 689:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * @param pCallback: pointer to private callbacsk function which has pointer to 690:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * a DMA_HandleTypeDef structure as parameter. 691:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * @retval HAL status 692:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** */ 693:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** HAL_StatusTypeDef HAL_DMA_RegisterCallback(DMA_HandleTypeDef *hdma, HAL_DMA_CallbackIDTypeDef Callb 694:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 695:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** HAL_StatusTypeDef status = HAL_OK; 696:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 697:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Process locked */ 698:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** __HAL_LOCK(hdma); 699:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 700:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** if(HAL_DMA_STATE_READY == hdma->State) 701:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 702:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** switch (CallbackID) 703:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 704:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** case HAL_DMA_XFER_CPLT_CB_ID: 705:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->XferCpltCallback = pCallback; 706:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** break; 707:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 708:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** case HAL_DMA_XFER_HALFCPLT_CB_ID: 709:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->XferHalfCpltCallback = pCallback; 710:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** break; 711:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 712:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** case HAL_DMA_XFER_ERROR_CB_ID: 713:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->XferErrorCallback = pCallback; 714:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** break; 715:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 716:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** case HAL_DMA_XFER_ABORT_CB_ID: ARM GAS /tmp/cclaiPAO.s page 14 717:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->XferAbortCallback = pCallback; 718:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** break; 719:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 720:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** default: 721:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** status = HAL_ERROR; 722:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** break; 723:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 724:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 725:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** else 726:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 727:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** status = HAL_ERROR; 728:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 729:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 730:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Release Lock */ 731:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** __HAL_UNLOCK(hdma); 732:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 733:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** return status; 734:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 735:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 736:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /** 737:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * @brief UnRegister callbacks 738:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * @param hdma: pointer to a DMA_HandleTypeDef structure that contains 739:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * the configuration information for the specified DMA Channel. 740:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * @param CallbackID: User Callback identifer 741:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * a HAL_DMA_CallbackIDTypeDef ENUM as parameter. 742:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * @retval HAL status 743:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** */ 744:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** HAL_StatusTypeDef HAL_DMA_UnRegisterCallback(DMA_HandleTypeDef *hdma, HAL_DMA_CallbackIDTypeDef Cal 745:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 746:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** HAL_StatusTypeDef status = HAL_OK; 747:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 748:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Process locked */ 749:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** __HAL_LOCK(hdma); 750:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 751:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** if(HAL_DMA_STATE_READY == hdma->State) 752:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 753:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** switch (CallbackID) 754:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 755:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** case HAL_DMA_XFER_CPLT_CB_ID: 756:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->XferCpltCallback = NULL; 757:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** break; 758:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 759:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** case HAL_DMA_XFER_HALFCPLT_CB_ID: 760:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->XferHalfCpltCallback = NULL; 761:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** break; 762:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 763:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** case HAL_DMA_XFER_ERROR_CB_ID: 764:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->XferErrorCallback = NULL; 765:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** break; 766:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 767:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** case HAL_DMA_XFER_ABORT_CB_ID: 768:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->XferAbortCallback = NULL; 769:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** break; 770:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 771:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** case HAL_DMA_XFER_ALL_CB_ID: 772:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->XferCpltCallback = NULL; 773:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->XferHalfCpltCallback = NULL; ARM GAS /tmp/cclaiPAO.s page 15 774:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->XferErrorCallback = NULL; 775:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->XferAbortCallback = NULL; 776:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** break; 777:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 778:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** default: 779:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** status = HAL_ERROR; 780:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** break; 781:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 782:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 783:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** else 784:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 785:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** status = HAL_ERROR; 786:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 787:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 788:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Release Lock */ 789:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** __HAL_UNLOCK(hdma); 790:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 791:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** return status; 792:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 793:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 794:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /** 795:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * @} 796:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** */ 797:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 798:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /** @defgroup DMA_Exported_Functions_Group3 Peripheral State and Errors functions 799:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * @brief Peripheral State and Errors functions 800:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * 801:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** @verbatim 802:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** =============================================================================== 803:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** ##### Peripheral State and Errors functions ##### 804:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** =============================================================================== 805:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** [..] 806:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** This subsection provides functions allowing to 807:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** (+) Check the DMA state 808:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** (+) Get error code 809:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 810:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** @endverbatim 811:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * @{ 812:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** */ 813:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 814:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /** 815:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * @brief Return the DMA hande state. 816:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * @param hdma: pointer to a DMA_HandleTypeDef structure that contains 817:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * the configuration information for the specified DMA Channel. 818:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * @retval HAL state 819:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** */ 820:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** HAL_DMA_StateTypeDef HAL_DMA_GetState(DMA_HandleTypeDef *hdma) 821:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 822:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Return DMA handle state */ 823:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** return hdma->State; 824:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 825:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 826:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /** 827:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * @brief Return the DMA error code. 828:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * @param hdma : pointer to a DMA_HandleTypeDef structure that contains 829:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * the configuration information for the specified DMA Channel. 830:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * @retval DMA Error Code ARM GAS /tmp/cclaiPAO.s page 16 831:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** */ 832:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** uint32_t HAL_DMA_GetError(DMA_HandleTypeDef *hdma) 833:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 834:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** return hdma->ErrorCode; 835:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 836:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 837:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /** 838:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * @} 839:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** */ 840:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 841:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /** 842:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * @} 843:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** */ 844:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 845:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /** @addtogroup DMA_Private_Functions 846:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * @{ 847:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** */ 848:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 849:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /** 850:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * @brief Sets the DMA Transfer parameter. 851:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * @param hdma: pointer to a DMA_HandleTypeDef structure that contains 852:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * the configuration information for the specified DMA Channel. 853:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * @param SrcAddress: The source memory Buffer address 854:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * @param DstAddress: The destination memory Buffer address 855:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * @param DataLength: The length of data to be transferred from source to destination 856:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** * @retval HAL status 857:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** */ 858:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** static void DMA_SetConfig(DMA_HandleTypeDef *hdma, uint32_t SrcAddress, uint32_t DstAddress, uint32 859:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 27 .loc 1 859 1 view -0 28 .cfi_startproc 29 @ args = 0, pretend = 0, frame = 0 30 @ frame_needed = 0, uses_anonymous_args = 0 31 @ link register save eliminated. 32 .loc 1 859 1 is_stmt 0 view .LVU1 33 0000 70B4 push {r4, r5, r6} 34 .LCFI0: 35 .cfi_def_cfa_offset 12 36 .cfi_offset 4, -12 37 .cfi_offset 5, -8 38 .cfi_offset 6, -4 860:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Clear all flags */ 861:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->DmaBaseAddress->IFCR = (DMA_ISR_GIF1 << hdma->ChannelIndex); 39 .loc 1 861 3 is_stmt 1 view .LVU2 40 .loc 1 861 53 is_stmt 0 view .LVU3 41 0002 066C ldr r6, [r0, #64] 42 .loc 1 861 7 view .LVU4 43 0004 C56B ldr r5, [r0, #60] 44 .loc 1 861 46 view .LVU5 45 0006 0124 movs r4, #1 46 0008 B440 lsls r4, r4, r6 47 .loc 1 861 30 view .LVU6 48 000a 6C60 str r4, [r5, #4] 862:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 863:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Configure DMA Channel data length */ 864:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->Instance->CNDTR = DataLength; 49 .loc 1 864 3 is_stmt 1 view .LVU7 ARM GAS /tmp/cclaiPAO.s page 17 50 .loc 1 864 7 is_stmt 0 view .LVU8 51 000c 0468 ldr r4, [r0] 52 .loc 1 864 25 view .LVU9 53 000e 6360 str r3, [r4, #4] 865:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 866:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Memory to Peripheral */ 867:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** if((hdma->Init.Direction) == DMA_MEMORY_TO_PERIPH) 54 .loc 1 867 3 is_stmt 1 view .LVU10 55 .loc 1 867 17 is_stmt 0 view .LVU11 56 0010 4368 ldr r3, [r0, #4] 57 .LVL1: 58 .loc 1 867 5 view .LVU12 59 0012 102B cmp r3, #16 60 0014 05D0 beq .L5 868:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 869:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Configure DMA Channel destination address */ 870:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->Instance->CPAR = DstAddress; 871:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 872:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Configure DMA Channel source address */ 873:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->Instance->CMAR = SrcAddress; 874:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 875:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Peripheral to Memory */ 876:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** else 877:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 878:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Configure DMA Channel source address */ 879:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->Instance->CPAR = SrcAddress; 61 .loc 1 879 5 is_stmt 1 view .LVU13 62 .loc 1 879 9 is_stmt 0 view .LVU14 63 0016 0368 ldr r3, [r0] 64 .loc 1 879 26 view .LVU15 65 0018 9960 str r1, [r3, #8] 66 .LVL2: 880:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 881:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Configure DMA Channel destination address */ 882:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->Instance->CMAR = DstAddress; 67 .loc 1 882 5 is_stmt 1 view .LVU16 68 .loc 1 882 9 is_stmt 0 view .LVU17 69 001a 0368 ldr r3, [r0] 70 .loc 1 882 26 view .LVU18 71 001c DA60 str r2, [r3, #12] 72 .L1: 883:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 884:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 73 .loc 1 884 1 view .LVU19 74 001e 70BC pop {r4, r5, r6} 75 .LCFI1: 76 .cfi_remember_state 77 .cfi_restore 6 78 .cfi_restore 5 79 .cfi_restore 4 80 .cfi_def_cfa_offset 0 81 0020 7047 bx lr 82 .LVL3: 83 .L5: 84 .LCFI2: 85 .cfi_restore_state 870:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** ARM GAS /tmp/cclaiPAO.s page 18 86 .loc 1 870 5 is_stmt 1 view .LVU20 870:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 87 .loc 1 870 9 is_stmt 0 view .LVU21 88 0022 0368 ldr r3, [r0] 870:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 89 .loc 1 870 26 view .LVU22 90 0024 9A60 str r2, [r3, #8] 91 .LVL4: 873:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 92 .loc 1 873 5 is_stmt 1 view .LVU23 873:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 93 .loc 1 873 9 is_stmt 0 view .LVU24 94 0026 0368 ldr r3, [r0] 873:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 95 .loc 1 873 26 view .LVU25 96 0028 D960 str r1, [r3, #12] 97 002a F8E7 b .L1 98 .cfi_endproc 99 .LFE77: 101 .section .text.HAL_DMA_Init,"ax",%progbits 102 .align 1 103 .global HAL_DMA_Init 104 .syntax unified 105 .thumb 106 .thumb_func 107 .fpu softvfp 109 HAL_DMA_Init: 110 .LVL5: 111 .LFB65: 144:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** uint32_t tmp = 0U; 112 .loc 1 144 1 is_stmt 1 view -0 113 .cfi_startproc 114 @ args = 0, pretend = 0, frame = 0 115 @ frame_needed = 0, uses_anonymous_args = 0 116 @ link register save eliminated. 145:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 117 .loc 1 145 3 view .LVU27 148:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 118 .loc 1 148 3 view .LVU28 148:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 119 .loc 1 148 5 is_stmt 0 view .LVU29 120 0000 60B3 cbz r0, .L8 144:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** uint32_t tmp = 0U; 121 .loc 1 144 1 view .LVU30 122 0002 10B4 push {r4} 123 .LCFI3: 124 .cfi_def_cfa_offset 4 125 .cfi_offset 4, -4 126 0004 0246 mov r2, r0 154:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** assert_param(IS_DMA_DIRECTION(hdma->Init.Direction)); 127 .loc 1 154 3 is_stmt 1 view .LVU31 155:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** assert_param(IS_DMA_PERIPHERAL_INC_STATE(hdma->Init.PeriphInc)); 128 .loc 1 155 3 view .LVU32 156:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** assert_param(IS_DMA_MEMORY_INC_STATE(hdma->Init.MemInc)); 129 .loc 1 156 3 view .LVU33 157:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** assert_param(IS_DMA_PERIPHERAL_DATA_SIZE(hdma->Init.PeriphDataAlignment)); 130 .loc 1 157 3 view .LVU34 ARM GAS /tmp/cclaiPAO.s page 19 158:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** assert_param(IS_DMA_MEMORY_DATA_SIZE(hdma->Init.MemDataAlignment)); 131 .loc 1 158 3 view .LVU35 159:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** assert_param(IS_DMA_MODE(hdma->Init.Mode)); 132 .loc 1 159 3 view .LVU36 160:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** assert_param(IS_DMA_PRIORITY(hdma->Init.Priority)); 133 .loc 1 160 3 view .LVU37 161:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 134 .loc 1 161 3 view .LVU38 179:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->DmaBaseAddress = DMA1; 135 .loc 1 179 3 view .LVU39 179:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->DmaBaseAddress = DMA1; 136 .loc 1 179 40 is_stmt 0 view .LVU40 137 0006 0168 ldr r1, [r0] 179:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->DmaBaseAddress = DMA1; 138 .loc 1 179 51 view .LVU41 139 0008 154B ldr r3, .L13 140 000a 0B44 add r3, r3, r1 179:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->DmaBaseAddress = DMA1; 141 .loc 1 179 78 view .LVU42 142 000c 1548 ldr r0, .L13+4 143 .LVL6: 179:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->DmaBaseAddress = DMA1; 144 .loc 1 179 78 view .LVU43 145 000e A0FB0303 umull r0, r3, r0, r3 146 0012 1B09 lsrs r3, r3, #4 179:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->DmaBaseAddress = DMA1; 147 .loc 1 179 133 view .LVU44 148 0014 9B00 lsls r3, r3, #2 179:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->DmaBaseAddress = DMA1; 149 .loc 1 179 22 view .LVU45 150 0016 1364 str r3, [r2, #64] 180:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** #endif /* DMA2 */ 151 .loc 1 180 3 is_stmt 1 view .LVU46 180:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** #endif /* DMA2 */ 152 .loc 1 180 24 is_stmt 0 view .LVU47 153 0018 134B ldr r3, .L13+8 154 001a D363 str r3, [r2, #60] 184:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 155 .loc 1 184 3 is_stmt 1 view .LVU48 184:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 156 .loc 1 184 15 is_stmt 0 view .LVU49 157 001c 0223 movs r3, #2 158 001e 82F82130 strb r3, [r2, #33] 187:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 159 .loc 1 187 3 is_stmt 1 view .LVU50 187:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 160 .loc 1 187 7 is_stmt 0 view .LVU51 161 0022 0868 ldr r0, [r1] 162 .LVL7: 190:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** DMA_CCR_MINC | DMA_CCR_PINC | DMA_CCR_CIRC | \ 163 .loc 1 190 3 is_stmt 1 view .LVU52 190:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** DMA_CCR_MINC | DMA_CCR_PINC | DMA_CCR_CIRC | \ 164 .loc 1 190 7 is_stmt 0 view .LVU53 165 0024 20F47F50 bic r0, r0, #16320 166 .LVL8: 190:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** DMA_CCR_MINC | DMA_CCR_PINC | DMA_CCR_CIRC | \ 167 .loc 1 190 7 view .LVU54 ARM GAS /tmp/cclaiPAO.s page 20 168 0028 20F03000 bic r0, r0, #48 169 .LVL9: 195:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->Init.PeriphInc | hdma->Init.MemInc | 170 .loc 1 195 3 is_stmt 1 view .LVU55 195:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->Init.PeriphInc | hdma->Init.MemInc | 171 .loc 1 195 21 is_stmt 0 view .LVU56 172 002c 5368 ldr r3, [r2, #4] 196:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->Init.PeriphDataAlignment | hdma->Init.MemDataAlignment | 173 .loc 1 196 21 view .LVU57 174 002e 9468 ldr r4, [r2, #8] 195:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->Init.PeriphInc | hdma->Init.MemInc | 175 .loc 1 195 39 view .LVU58 176 0030 2343 orrs r3, r3, r4 196:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->Init.PeriphDataAlignment | hdma->Init.MemDataAlignment | 177 .loc 1 196 54 view .LVU59 178 0032 D468 ldr r4, [r2, #12] 196:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->Init.PeriphDataAlignment | hdma->Init.MemDataAlignment | 179 .loc 1 196 42 view .LVU60 180 0034 2343 orrs r3, r3, r4 197:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->Init.Mode | hdma->Init.Priority; 181 .loc 1 197 21 view .LVU61 182 0036 1469 ldr r4, [r2, #16] 196:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->Init.PeriphDataAlignment | hdma->Init.MemDataAlignment | 183 .loc 1 196 72 view .LVU62 184 0038 2343 orrs r3, r3, r4 197:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->Init.Mode | hdma->Init.Priority; 185 .loc 1 197 54 view .LVU63 186 003a 5469 ldr r4, [r2, #20] 197:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->Init.Mode | hdma->Init.Priority; 187 .loc 1 197 42 view .LVU64 188 003c 2343 orrs r3, r3, r4 198:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 189 .loc 1 198 21 view .LVU65 190 003e 9469 ldr r4, [r2, #24] 197:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->Init.Mode | hdma->Init.Priority; 191 .loc 1 197 72 view .LVU66 192 0040 2343 orrs r3, r3, r4 198:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 193 .loc 1 198 54 view .LVU67 194 0042 D469 ldr r4, [r2, #28] 198:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 195 .loc 1 198 42 view .LVU68 196 0044 2343 orrs r3, r3, r4 195:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->Init.PeriphInc | hdma->Init.MemInc | 197 .loc 1 195 7 view .LVU69 198 0046 0343 orrs r3, r3, r0 199 .LVL10: 201:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 200 .loc 1 201 3 is_stmt 1 view .LVU70 201:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 201 .loc 1 201 23 is_stmt 0 view .LVU71 202 0048 0B60 str r3, [r1] 204:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 203 .loc 1 204 3 is_stmt 1 view .LVU72 204:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 204 .loc 1 204 19 is_stmt 0 view .LVU73 205 004a 0020 movs r0, #0 ARM GAS /tmp/cclaiPAO.s page 21 206 004c 9063 str r0, [r2, #56] 207:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Allocate lock resource and initialize it */ 207 .loc 1 207 3 is_stmt 1 view .LVU74 207:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Allocate lock resource and initialize it */ 208 .loc 1 207 15 is_stmt 0 view .LVU75 209 004e 0123 movs r3, #1 210 .LVL11: 207:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Allocate lock resource and initialize it */ 211 .loc 1 207 15 view .LVU76 212 0050 82F82130 strb r3, [r2, #33] 209:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 213 .loc 1 209 3 is_stmt 1 view .LVU77 209:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 214 .loc 1 209 14 is_stmt 0 view .LVU78 215 0054 82F82000 strb r0, [r2, #32] 211:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 216 .loc 1 211 3 is_stmt 1 view .LVU79 212:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 217 .loc 1 212 1 is_stmt 0 view .LVU80 218 0058 10BC pop {r4} 219 .LCFI4: 220 .cfi_restore 4 221 .cfi_def_cfa_offset 0 222 005a 7047 bx lr 223 .LVL12: 224 .L8: 150:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 225 .loc 1 150 12 view .LVU81 226 005c 0120 movs r0, #1 227 .LVL13: 212:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 228 .loc 1 212 1 view .LVU82 229 005e 7047 bx lr 230 .L14: 231 .align 2 232 .L13: 233 0060 F8FFFDBF .word -1073872904 234 0064 CDCCCCCC .word -858993459 235 0068 00000240 .word 1073872896 236 .cfi_endproc 237 .LFE65: 239 .section .text.HAL_DMA_DeInit,"ax",%progbits 240 .align 1 241 .global HAL_DMA_DeInit 242 .syntax unified 243 .thumb 244 .thumb_func 245 .fpu softvfp 247 HAL_DMA_DeInit: 248 .LVL14: 249 .LFB66: 221:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Check the DMA handle allocation */ 250 .loc 1 221 1 is_stmt 1 view -0 251 .cfi_startproc 252 @ args = 0, pretend = 0, frame = 0 253 @ frame_needed = 0, uses_anonymous_args = 0 254 @ link register save eliminated. ARM GAS /tmp/cclaiPAO.s page 22 223:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 255 .loc 1 223 3 view .LVU84 223:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 256 .loc 1 223 5 is_stmt 0 view .LVU85 257 0000 0028 cmp r0, #0 258 0002 29D0 beq .L17 221:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Check the DMA handle allocation */ 259 .loc 1 221 1 view .LVU86 260 0004 10B4 push {r4} 261 .LCFI5: 262 .cfi_def_cfa_offset 4 263 .cfi_offset 4, -4 264 0006 0346 mov r3, r0 229:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 265 .loc 1 229 3 is_stmt 1 view .LVU87 232:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 266 .loc 1 232 3 view .LVU88 267 0008 0168 ldr r1, [r0] 268 000a 0A68 ldr r2, [r1] 269 000c 22F00102 bic r2, r2, #1 270 0010 0A60 str r2, [r1] 235:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 271 .loc 1 235 3 view .LVU89 235:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 272 .loc 1 235 7 is_stmt 0 view .LVU90 273 0012 0268 ldr r2, [r0] 235:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 274 .loc 1 235 24 view .LVU91 275 0014 0020 movs r0, #0 276 .LVL15: 235:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 277 .loc 1 235 24 view .LVU92 278 0016 1060 str r0, [r2] 238:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 279 .loc 1 238 3 is_stmt 1 view .LVU93 238:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 280 .loc 1 238 7 is_stmt 0 view .LVU94 281 0018 1A68 ldr r2, [r3] 238:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 282 .loc 1 238 25 view .LVU95 283 001a 5060 str r0, [r2, #4] 241:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 284 .loc 1 241 3 is_stmt 1 view .LVU96 241:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 285 .loc 1 241 7 is_stmt 0 view .LVU97 286 001c 1A68 ldr r2, [r3] 241:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 287 .loc 1 241 25 view .LVU98 288 001e 9060 str r0, [r2, #8] 244:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 289 .loc 1 244 3 is_stmt 1 view .LVU99 244:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 290 .loc 1 244 7 is_stmt 0 view .LVU100 291 0020 1A68 ldr r2, [r3] 244:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 292 .loc 1 244 24 view .LVU101 293 0022 D060 str r0, [r2, #12] ARM GAS /tmp/cclaiPAO.s page 23 262:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->DmaBaseAddress = DMA1; 294 .loc 1 262 3 is_stmt 1 view .LVU102 262:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->DmaBaseAddress = DMA1; 295 .loc 1 262 40 is_stmt 0 view .LVU103 296 0024 1968 ldr r1, [r3] 262:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->DmaBaseAddress = DMA1; 297 .loc 1 262 51 view .LVU104 298 0026 0D4A ldr r2, .L22 299 0028 0A44 add r2, r2, r1 262:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->DmaBaseAddress = DMA1; 300 .loc 1 262 78 view .LVU105 301 002a 0D49 ldr r1, .L22+4 302 002c A1FB0212 umull r1, r2, r1, r2 303 0030 1209 lsrs r2, r2, #4 262:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->DmaBaseAddress = DMA1; 304 .loc 1 262 133 view .LVU106 305 0032 9200 lsls r2, r2, #2 262:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->DmaBaseAddress = DMA1; 306 .loc 1 262 22 view .LVU107 307 0034 1A64 str r2, [r3, #64] 263:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** #endif /* DMA2 */ 308 .loc 1 263 3 is_stmt 1 view .LVU108 263:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** #endif /* DMA2 */ 309 .loc 1 263 24 is_stmt 0 view .LVU109 310 0036 0B4C ldr r4, .L22+8 311 0038 DC63 str r4, [r3, #60] 267:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 312 .loc 1 267 3 is_stmt 1 view .LVU110 267:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 313 .loc 1 267 46 is_stmt 0 view .LVU111 314 003a 0121 movs r1, #1 315 003c 01FA02F2 lsl r2, r1, r2 267:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 316 .loc 1 267 30 view .LVU112 317 0040 6260 str r2, [r4, #4] 270:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->XferHalfCpltCallback = NULL; 318 .loc 1 270 3 is_stmt 1 view .LVU113 270:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->XferHalfCpltCallback = NULL; 319 .loc 1 270 26 is_stmt 0 view .LVU114 320 0042 9862 str r0, [r3, #40] 271:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->XferErrorCallback = NULL; 321 .loc 1 271 3 is_stmt 1 view .LVU115 271:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->XferErrorCallback = NULL; 322 .loc 1 271 30 is_stmt 0 view .LVU116 323 0044 D862 str r0, [r3, #44] 272:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->XferAbortCallback = NULL; 324 .loc 1 272 3 is_stmt 1 view .LVU117 272:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->XferAbortCallback = NULL; 325 .loc 1 272 27 is_stmt 0 view .LVU118 326 0046 1863 str r0, [r3, #48] 273:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 327 .loc 1 273 3 is_stmt 1 view .LVU119 273:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 328 .loc 1 273 27 is_stmt 0 view .LVU120 329 0048 5863 str r0, [r3, #52] 276:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 330 .loc 1 276 3 is_stmt 1 view .LVU121 ARM GAS /tmp/cclaiPAO.s page 24 276:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 331 .loc 1 276 19 is_stmt 0 view .LVU122 332 004a 9863 str r0, [r3, #56] 279:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 333 .loc 1 279 3 is_stmt 1 view .LVU123 279:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 334 .loc 1 279 15 is_stmt 0 view .LVU124 335 004c 83F82100 strb r0, [r3, #33] 282:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 336 .loc 1 282 3 is_stmt 1 view .LVU125 282:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 337 .loc 1 282 3 view .LVU126 338 0050 83F82000 strb r0, [r3, #32] 284:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 339 .loc 1 284 3 view .LVU127 285:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 340 .loc 1 285 1 is_stmt 0 view .LVU128 341 0054 10BC pop {r4} 342 .LCFI6: 343 .cfi_restore 4 344 .cfi_def_cfa_offset 0 345 0056 7047 bx lr 346 .LVL16: 347 .L17: 225:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 348 .loc 1 225 12 view .LVU129 349 0058 0120 movs r0, #1 350 .LVL17: 285:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 351 .loc 1 285 1 view .LVU130 352 005a 7047 bx lr 353 .L23: 354 .align 2 355 .L22: 356 005c F8FFFDBF .word -1073872904 357 0060 CDCCCCCC .word -858993459 358 0064 00000240 .word 1073872896 359 .cfi_endproc 360 .LFE66: 362 .section .text.HAL_DMA_Start,"ax",%progbits 363 .align 1 364 .global HAL_DMA_Start 365 .syntax unified 366 .thumb 367 .thumb_func 368 .fpu softvfp 370 HAL_DMA_Start: 371 .LVL18: 372 .LFB67: 320:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** HAL_StatusTypeDef status = HAL_OK; 373 .loc 1 320 1 is_stmt 1 view -0 374 .cfi_startproc 375 @ args = 0, pretend = 0, frame = 0 376 @ frame_needed = 0, uses_anonymous_args = 0 320:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** HAL_StatusTypeDef status = HAL_OK; 377 .loc 1 320 1 is_stmt 0 view .LVU132 378 0000 70B5 push {r4, r5, r6, lr} ARM GAS /tmp/cclaiPAO.s page 25 379 .LCFI7: 380 .cfi_def_cfa_offset 16 381 .cfi_offset 4, -16 382 .cfi_offset 5, -12 383 .cfi_offset 6, -8 384 .cfi_offset 14, -4 321:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 385 .loc 1 321 3 is_stmt 1 view .LVU133 386 .LVL19: 324:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 387 .loc 1 324 3 view .LVU134 327:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 388 .loc 1 327 3 view .LVU135 327:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 389 .loc 1 327 3 view .LVU136 390 0002 90F82040 ldrb r4, [r0, #32] @ zero_extendqisi2 391 0006 012C cmp r4, #1 392 0008 20D0 beq .L27 327:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 393 .loc 1 327 3 discriminator 2 view .LVU137 394 000a 0124 movs r4, #1 395 000c 80F82040 strb r4, [r0, #32] 329:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 396 .loc 1 329 3 discriminator 2 view .LVU138 329:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 397 .loc 1 329 33 is_stmt 0 discriminator 2 view .LVU139 398 0010 90F82140 ldrb r4, [r0, #33] @ zero_extendqisi2 329:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 399 .loc 1 329 5 discriminator 2 view .LVU140 400 0014 012C cmp r4, #1 401 0016 04D0 beq .L29 347:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** status = HAL_BUSY; 402 .loc 1 347 4 is_stmt 1 view .LVU141 347:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** status = HAL_BUSY; 403 .loc 1 347 4 view .LVU142 404 0018 0023 movs r3, #0 405 .LVL20: 347:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** status = HAL_BUSY; 406 .loc 1 347 4 is_stmt 0 view .LVU143 407 001a 80F82030 strb r3, [r0, #32] 348:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 408 .loc 1 348 4 is_stmt 1 view .LVU144 409 .LVL21: 348:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 410 .loc 1 348 11 is_stmt 0 view .LVU145 411 001e 0220 movs r0, #2 412 .LVL22: 413 .L25: 351:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 414 .loc 1 351 1 view .LVU146 415 0020 70BD pop {r4, r5, r6, pc} 416 .LVL23: 417 .L29: 351:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 418 .loc 1 351 1 view .LVU147 419 0022 0446 mov r4, r0 332:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->ErrorCode = HAL_DMA_ERROR_NONE; ARM GAS /tmp/cclaiPAO.s page 26 420 .loc 1 332 5 is_stmt 1 view .LVU148 332:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->ErrorCode = HAL_DMA_ERROR_NONE; 421 .loc 1 332 17 is_stmt 0 view .LVU149 422 0024 0220 movs r0, #2 423 .LVL24: 332:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->ErrorCode = HAL_DMA_ERROR_NONE; 424 .loc 1 332 17 view .LVU150 425 0026 84F82100 strb r0, [r4, #33] 333:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 426 .loc 1 333 5 is_stmt 1 view .LVU151 333:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 427 .loc 1 333 21 is_stmt 0 view .LVU152 428 002a 0025 movs r5, #0 429 002c A563 str r5, [r4, #56] 336:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 430 .loc 1 336 5 is_stmt 1 view .LVU153 431 002e 2668 ldr r6, [r4] 432 0030 3068 ldr r0, [r6] 433 0032 20F00100 bic r0, r0, #1 434 0036 3060 str r0, [r6] 339:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 435 .loc 1 339 5 view .LVU154 436 0038 2046 mov r0, r4 437 003a FFF7FEFF bl DMA_SetConfig 438 .LVL25: 342:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 439 .loc 1 342 5 view .LVU155 440 003e 2268 ldr r2, [r4] 441 0040 1368 ldr r3, [r2] 442 0042 43F00103 orr r3, r3, #1 443 0046 1360 str r3, [r2] 321:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 444 .loc 1 321 21 is_stmt 0 view .LVU156 445 0048 2846 mov r0, r5 446 004a E9E7 b .L25 447 .LVL26: 448 .L27: 327:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 449 .loc 1 327 3 view .LVU157 450 004c 0220 movs r0, #2 451 .LVL27: 327:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 452 .loc 1 327 3 view .LVU158 453 004e E7E7 b .L25 454 .cfi_endproc 455 .LFE67: 457 .section .text.HAL_DMA_Start_IT,"ax",%progbits 458 .align 1 459 .global HAL_DMA_Start_IT 460 .syntax unified 461 .thumb 462 .thumb_func 463 .fpu softvfp 465 HAL_DMA_Start_IT: 466 .LVL28: 467 .LFB68: 363:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** HAL_StatusTypeDef status = HAL_OK; ARM GAS /tmp/cclaiPAO.s page 27 468 .loc 1 363 1 is_stmt 1 view -0 469 .cfi_startproc 470 @ args = 0, pretend = 0, frame = 0 471 @ frame_needed = 0, uses_anonymous_args = 0 363:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** HAL_StatusTypeDef status = HAL_OK; 472 .loc 1 363 1 is_stmt 0 view .LVU160 473 0000 38B5 push {r3, r4, r5, lr} 474 .LCFI8: 475 .cfi_def_cfa_offset 16 476 .cfi_offset 3, -16 477 .cfi_offset 4, -12 478 .cfi_offset 5, -8 479 .cfi_offset 14, -4 364:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 480 .loc 1 364 3 is_stmt 1 view .LVU161 481 .LVL29: 367:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 482 .loc 1 367 3 view .LVU162 370:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 483 .loc 1 370 3 view .LVU163 370:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 484 .loc 1 370 3 view .LVU164 485 0002 90F82040 ldrb r4, [r0, #32] @ zero_extendqisi2 486 0006 012C cmp r4, #1 487 0008 32D0 beq .L35 370:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 488 .loc 1 370 3 discriminator 2 view .LVU165 489 000a 0124 movs r4, #1 490 000c 80F82040 strb r4, [r0, #32] 372:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 491 .loc 1 372 3 discriminator 2 view .LVU166 372:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 492 .loc 1 372 33 is_stmt 0 discriminator 2 view .LVU167 493 0010 90F82140 ldrb r4, [r0, #33] @ zero_extendqisi2 372:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 494 .loc 1 372 5 discriminator 2 view .LVU168 495 0014 012C cmp r4, #1 496 0016 04D0 beq .L37 402:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 497 .loc 1 402 5 is_stmt 1 view .LVU169 402:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 498 .loc 1 402 5 view .LVU170 499 0018 0023 movs r3, #0 500 .LVL30: 402:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 501 .loc 1 402 5 is_stmt 0 view .LVU171 502 001a 80F82030 strb r3, [r0, #32] 405:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 503 .loc 1 405 5 is_stmt 1 view .LVU172 504 .LVL31: 405:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 505 .loc 1 405 12 is_stmt 0 view .LVU173 506 001e 0220 movs r0, #2 507 .LVL32: 508 .L31: 408:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 509 .loc 1 408 1 view .LVU174 ARM GAS /tmp/cclaiPAO.s page 28 510 0020 38BD pop {r3, r4, r5, pc} 511 .LVL33: 512 .L37: 408:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 513 .loc 1 408 1 view .LVU175 514 0022 0446 mov r4, r0 375:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->ErrorCode = HAL_DMA_ERROR_NONE; 515 .loc 1 375 5 is_stmt 1 view .LVU176 375:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->ErrorCode = HAL_DMA_ERROR_NONE; 516 .loc 1 375 17 is_stmt 0 view .LVU177 517 0024 0220 movs r0, #2 518 .LVL34: 375:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->ErrorCode = HAL_DMA_ERROR_NONE; 519 .loc 1 375 17 view .LVU178 520 0026 84F82100 strb r0, [r4, #33] 376:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 521 .loc 1 376 5 is_stmt 1 view .LVU179 376:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 522 .loc 1 376 21 is_stmt 0 view .LVU180 523 002a 0020 movs r0, #0 524 002c A063 str r0, [r4, #56] 379:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 525 .loc 1 379 5 is_stmt 1 view .LVU181 526 002e 2568 ldr r5, [r4] 527 0030 2868 ldr r0, [r5] 528 0032 20F00100 bic r0, r0, #1 529 0036 2860 str r0, [r5] 382:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 530 .loc 1 382 5 view .LVU182 531 0038 2046 mov r0, r4 532 003a FFF7FEFF bl DMA_SetConfig 533 .LVL35: 386:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 534 .loc 1 386 5 view .LVU183 386:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 535 .loc 1 386 20 is_stmt 0 view .LVU184 536 003e E36A ldr r3, [r4, #44] 386:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 537 .loc 1 386 7 view .LVU185 538 0040 5BB1 cbz r3, .L33 389:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 539 .loc 1 389 7 is_stmt 1 view .LVU186 540 0042 2268 ldr r2, [r4] 541 0044 1368 ldr r3, [r2] 542 0046 43F00E03 orr r3, r3, #14 543 004a 1360 str r3, [r2] 544 .L34: 397:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 545 .loc 1 397 5 view .LVU187 546 004c 2268 ldr r2, [r4] 547 004e 1368 ldr r3, [r2] 548 0050 43F00103 orr r3, r3, #1 549 0054 1360 str r3, [r2] 364:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 550 .loc 1 364 21 is_stmt 0 view .LVU188 551 0056 0020 movs r0, #0 552 0058 E2E7 b .L31 ARM GAS /tmp/cclaiPAO.s page 29 553 .L33: 393:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** __HAL_DMA_ENABLE_IT(hdma, (DMA_IT_TC | DMA_IT_TE)); 554 .loc 1 393 7 is_stmt 1 view .LVU189 555 005a 2268 ldr r2, [r4] 556 005c 1368 ldr r3, [r2] 557 005e 23F00403 bic r3, r3, #4 558 0062 1360 str r3, [r2] 394:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 559 .loc 1 394 7 view .LVU190 560 0064 2268 ldr r2, [r4] 561 0066 1368 ldr r3, [r2] 562 0068 43F00A03 orr r3, r3, #10 563 006c 1360 str r3, [r2] 564 006e EDE7 b .L34 565 .LVL36: 566 .L35: 370:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 567 .loc 1 370 3 is_stmt 0 view .LVU191 568 0070 0220 movs r0, #2 569 .LVL37: 370:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 570 .loc 1 370 3 view .LVU192 571 0072 D5E7 b .L31 572 .cfi_endproc 573 .LFE68: 575 .section .text.HAL_DMA_Abort,"ax",%progbits 576 .align 1 577 .global HAL_DMA_Abort 578 .syntax unified 579 .thumb 580 .thumb_func 581 .fpu softvfp 583 HAL_DMA_Abort: 584 .LVL38: 585 .LFB69: 417:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** HAL_StatusTypeDef status = HAL_OK; 586 .loc 1 417 1 is_stmt 1 view -0 587 .cfi_startproc 588 @ args = 0, pretend = 0, frame = 0 589 @ frame_needed = 0, uses_anonymous_args = 0 590 @ link register save eliminated. 418:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 591 .loc 1 418 3 view .LVU194 420:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 592 .loc 1 420 3 view .LVU195 420:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 593 .loc 1 420 10 is_stmt 0 view .LVU196 594 0000 90F82130 ldrb r3, [r0, #33] @ zero_extendqisi2 420:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 595 .loc 1 420 5 view .LVU197 596 0004 022B cmp r3, #2 597 0006 06D0 beq .L39 423:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 598 .loc 1 423 5 is_stmt 1 view .LVU198 423:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 599 .loc 1 423 21 is_stmt 0 view .LVU199 600 0008 0423 movs r3, #4 ARM GAS /tmp/cclaiPAO.s page 30 601 000a 8363 str r3, [r0, #56] 426:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 602 .loc 1 426 5 is_stmt 1 view .LVU200 426:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 603 .loc 1 426 5 view .LVU201 604 000c 0023 movs r3, #0 605 000e 80F82030 strb r3, [r0, #32] 428:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 606 .loc 1 428 5 view .LVU202 428:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 607 .loc 1 428 12 is_stmt 0 view .LVU203 608 0012 0120 movs r0, #1 609 .LVL39: 428:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 610 .loc 1 428 12 view .LVU204 611 0014 7047 bx lr 612 .LVL40: 613 .L39: 434:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 614 .loc 1 434 5 is_stmt 1 view .LVU205 615 0016 0268 ldr r2, [r0] 616 0018 1368 ldr r3, [r2] 617 001a 23F00E03 bic r3, r3, #14 618 001e 1360 str r3, [r2] 437:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 619 .loc 1 437 5 view .LVU206 620 0020 0268 ldr r2, [r0] 621 0022 1368 ldr r3, [r2] 622 0024 23F00103 bic r3, r3, #1 623 0028 1360 str r3, [r2] 440:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 624 .loc 1 440 5 view .LVU207 440:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 625 .loc 1 440 55 is_stmt 0 view .LVU208 626 002a 036C ldr r3, [r0, #64] 440:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 627 .loc 1 440 9 view .LVU209 628 002c C16B ldr r1, [r0, #60] 440:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 629 .loc 1 440 48 view .LVU210 630 002e 0122 movs r2, #1 631 0030 02FA03F3 lsl r3, r2, r3 440:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 632 .loc 1 440 32 view .LVU211 633 0034 4B60 str r3, [r1, #4] 443:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 634 .loc 1 443 3 is_stmt 1 view .LVU212 443:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 635 .loc 1 443 15 is_stmt 0 view .LVU213 636 0036 80F82120 strb r2, [r0, #33] 446:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 637 .loc 1 446 3 is_stmt 1 view .LVU214 446:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 638 .loc 1 446 3 view .LVU215 639 003a 0023 movs r3, #0 640 003c 80F82030 strb r3, [r0, #32] 448:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } ARM GAS /tmp/cclaiPAO.s page 31 641 .loc 1 448 3 view .LVU216 448:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 642 .loc 1 448 10 is_stmt 0 view .LVU217 643 0040 1846 mov r0, r3 644 .LVL41: 449:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 645 .loc 1 449 1 view .LVU218 646 0042 7047 bx lr 647 .cfi_endproc 648 .LFE69: 650 .section .text.HAL_DMA_Abort_IT,"ax",%progbits 651 .align 1 652 .global HAL_DMA_Abort_IT 653 .syntax unified 654 .thumb 655 .thumb_func 656 .fpu softvfp 658 HAL_DMA_Abort_IT: 659 .LVL42: 660 .LFB70: 458:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** HAL_StatusTypeDef status = HAL_OK; 661 .loc 1 458 1 is_stmt 1 view -0 662 .cfi_startproc 663 @ args = 0, pretend = 0, frame = 0 664 @ frame_needed = 0, uses_anonymous_args = 0 458:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** HAL_StatusTypeDef status = HAL_OK; 665 .loc 1 458 1 is_stmt 0 view .LVU220 666 0000 08B5 push {r3, lr} 667 .LCFI9: 668 .cfi_def_cfa_offset 8 669 .cfi_offset 3, -8 670 .cfi_offset 14, -4 459:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 671 .loc 1 459 3 is_stmt 1 view .LVU221 672 .LVL43: 461:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 673 .loc 1 461 3 view .LVU222 461:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 674 .loc 1 461 32 is_stmt 0 view .LVU223 675 0002 90F82130 ldrb r3, [r0, #33] @ zero_extendqisi2 461:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 676 .loc 1 461 5 view .LVU224 677 0006 022B cmp r3, #2 678 0008 03D0 beq .L42 464:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 679 .loc 1 464 5 is_stmt 1 view .LVU225 464:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 680 .loc 1 464 21 is_stmt 0 view .LVU226 681 000a 0423 movs r3, #4 682 000c 8363 str r3, [r0, #56] 466:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 683 .loc 1 466 5 is_stmt 1 view .LVU227 684 .LVL44: 466:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 685 .loc 1 466 12 is_stmt 0 view .LVU228 686 000e 0120 movs r0, #1 687 .LVL45: ARM GAS /tmp/cclaiPAO.s page 32 688 .L43: 491:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 689 .loc 1 491 3 is_stmt 1 view .LVU229 492:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 690 .loc 1 492 1 is_stmt 0 view .LVU230 691 0010 08BD pop {r3, pc} 692 .LVL46: 693 .L42: 471:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 694 .loc 1 471 5 is_stmt 1 view .LVU231 695 0012 0268 ldr r2, [r0] 696 0014 1368 ldr r3, [r2] 697 0016 23F00E03 bic r3, r3, #14 698 001a 1360 str r3, [r2] 474:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 699 .loc 1 474 5 view .LVU232 700 001c 0268 ldr r2, [r0] 701 001e 1368 ldr r3, [r2] 702 0020 23F00103 bic r3, r3, #1 703 0024 1360 str r3, [r2] 477:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 704 .loc 1 477 5 view .LVU233 705 0026 0368 ldr r3, [r0] 706 0028 194A ldr r2, .L54 707 002a 9342 cmp r3, r2 708 002c 14D0 beq .L45 477:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 709 .loc 1 477 5 is_stmt 0 discriminator 1 view .LVU234 710 002e 1432 adds r2, r2, #20 711 0030 9342 cmp r3, r2 712 0032 1FD0 beq .L46 477:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 713 .loc 1 477 5 discriminator 3 view .LVU235 714 0034 1432 adds r2, r2, #20 715 0036 9342 cmp r3, r2 716 0038 1ED0 beq .L47 477:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 717 .loc 1 477 5 discriminator 5 view .LVU236 718 003a 1432 adds r2, r2, #20 719 003c 9342 cmp r3, r2 720 003e 1ED0 beq .L48 477:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 721 .loc 1 477 5 discriminator 7 view .LVU237 722 0040 1432 adds r2, r2, #20 723 0042 9342 cmp r3, r2 724 0044 1ED0 beq .L49 477:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 725 .loc 1 477 5 discriminator 9 view .LVU238 726 0046 1432 adds r2, r2, #20 727 0048 9342 cmp r3, r2 728 004a 02D0 beq .L53 477:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 729 .loc 1 477 5 view .LVU239 730 004c 4FF08072 mov r2, #16777216 731 0050 03E0 b .L44 732 .L53: 733 0052 4FF48012 mov r2, #1048576 ARM GAS /tmp/cclaiPAO.s page 33 734 0056 00E0 b .L44 735 .L45: 736 0058 0122 movs r2, #1 737 .L44: 477:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 738 .loc 1 477 5 discriminator 24 view .LVU240 739 005a 0E4B ldr r3, .L54+4 740 005c 5A60 str r2, [r3, #4] 480:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 741 .loc 1 480 5 is_stmt 1 discriminator 24 view .LVU241 480:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 742 .loc 1 480 17 is_stmt 0 discriminator 24 view .LVU242 743 005e 0123 movs r3, #1 744 0060 80F82130 strb r3, [r0, #33] 483:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 745 .loc 1 483 5 is_stmt 1 discriminator 24 view .LVU243 483:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 746 .loc 1 483 5 discriminator 24 view .LVU244 747 0064 0023 movs r3, #0 748 0066 80F82030 strb r3, [r0, #32] 486:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 749 .loc 1 486 5 discriminator 24 view .LVU245 486:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 750 .loc 1 486 12 is_stmt 0 discriminator 24 view .LVU246 751 006a 436B ldr r3, [r0, #52] 486:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 752 .loc 1 486 7 discriminator 24 view .LVU247 753 006c 6BB1 cbz r3, .L51 488:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 754 .loc 1 488 7 is_stmt 1 view .LVU248 755 006e 9847 blx r3 756 .LVL47: 459:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 757 .loc 1 459 21 is_stmt 0 view .LVU249 758 0070 0020 movs r0, #0 759 0072 CDE7 b .L43 760 .LVL48: 761 .L46: 477:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 762 .loc 1 477 5 view .LVU250 763 0074 1022 movs r2, #16 764 0076 F0E7 b .L44 765 .L47: 766 0078 4FF48072 mov r2, #256 767 007c EDE7 b .L44 768 .L48: 769 007e 4FF48052 mov r2, #4096 770 0082 EAE7 b .L44 771 .L49: 772 0084 4FF48032 mov r2, #65536 773 0088 E7E7 b .L44 774 .L51: 459:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 775 .loc 1 459 21 view .LVU251 776 008a 0020 movs r0, #0 777 .LVL49: 459:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** ARM GAS /tmp/cclaiPAO.s page 34 778 .loc 1 459 21 view .LVU252 779 008c C0E7 b .L43 780 .L55: 781 008e 00BF .align 2 782 .L54: 783 0090 08000240 .word 1073872904 784 0094 00000240 .word 1073872896 785 .cfi_endproc 786 .LFE70: 788 .section .text.HAL_DMA_PollForTransfer,"ax",%progbits 789 .align 1 790 .global HAL_DMA_PollForTransfer 791 .syntax unified 792 .thumb 793 .thumb_func 794 .fpu softvfp 796 HAL_DMA_PollForTransfer: 797 .LVL50: 798 .LFB71: 503:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** uint32_t temp; 799 .loc 1 503 1 is_stmt 1 view -0 800 .cfi_startproc 801 @ args = 0, pretend = 0, frame = 0 802 @ frame_needed = 0, uses_anonymous_args = 0 504:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** uint32_t tickstart = 0U; 803 .loc 1 504 3 view .LVU254 505:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 804 .loc 1 505 3 view .LVU255 507:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 805 .loc 1 507 3 view .LVU256 507:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 806 .loc 1 507 32 is_stmt 0 view .LVU257 807 0000 90F82130 ldrb r3, [r0, #33] @ zero_extendqisi2 507:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 808 .loc 1 507 5 view .LVU258 809 0004 022B cmp r3, #2 810 0006 06D0 beq .L57 510:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** __HAL_UNLOCK(hdma); 811 .loc 1 510 5 is_stmt 1 view .LVU259 510:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** __HAL_UNLOCK(hdma); 812 .loc 1 510 21 is_stmt 0 view .LVU260 813 0008 0423 movs r3, #4 814 000a 8363 str r3, [r0, #56] 511:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** return HAL_ERROR; 815 .loc 1 511 5 is_stmt 1 view .LVU261 511:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** return HAL_ERROR; 816 .loc 1 511 5 view .LVU262 817 000c 0023 movs r3, #0 818 000e 80F82030 strb r3, [r0, #32] 512:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 819 .loc 1 512 5 view .LVU263 512:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 820 .loc 1 512 12 is_stmt 0 view .LVU264 821 0012 0120 movs r0, #1 822 .LVL51: 595:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 823 .loc 1 595 1 view .LVU265 ARM GAS /tmp/cclaiPAO.s page 35 824 0014 7047 bx lr 825 .LVL52: 826 .L57: 503:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** uint32_t temp; 827 .loc 1 503 1 view .LVU266 828 0016 2DE9F041 push {r4, r5, r6, r7, r8, lr} 829 .LCFI10: 830 .cfi_def_cfa_offset 24 831 .cfi_offset 4, -24 832 .cfi_offset 5, -20 833 .cfi_offset 6, -16 834 .cfi_offset 7, -12 835 .cfi_offset 8, -8 836 .cfi_offset 14, -4 516:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 837 .loc 1 516 3 is_stmt 1 view .LVU267 516:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 838 .loc 1 516 21 is_stmt 0 view .LVU268 839 001a 0368 ldr r3, [r0] 516:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 840 .loc 1 516 31 view .LVU269 841 001c 1C68 ldr r4, [r3] 516:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 842 .loc 1 516 6 view .LVU270 843 001e 14F0200F tst r4, #32 844 0022 15D1 bne .L105 523:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 845 .loc 1 523 3 is_stmt 1 view .LVU271 523:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 846 .loc 1 523 5 is_stmt 0 view .LVU272 847 0024 E9B9 cbnz r1, .L60 526:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 848 .loc 1 526 5 is_stmt 1 view .LVU273 526:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 849 .loc 1 526 12 is_stmt 0 view .LVU274 850 0026 7F4C ldr r4, .L114 851 0028 A342 cmp r3, r4 852 002a 32D0 beq .L72 526:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 853 .loc 1 526 12 discriminator 1 view .LVU275 854 002c 1434 adds r4, r4, #20 855 002e A342 cmp r3, r4 856 0030 37D0 beq .L73 526:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 857 .loc 1 526 12 discriminator 3 view .LVU276 858 0032 1434 adds r4, r4, #20 859 0034 A342 cmp r3, r4 860 0036 36D0 beq .L74 526:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 861 .loc 1 526 12 discriminator 5 view .LVU277 862 0038 1434 adds r4, r4, #20 863 003a A342 cmp r3, r4 864 003c 36D0 beq .L75 526:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 865 .loc 1 526 12 discriminator 7 view .LVU278 866 003e 1434 adds r4, r4, #20 867 0040 A342 cmp r3, r4 ARM GAS /tmp/cclaiPAO.s page 36 868 0042 36D0 beq .L76 526:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 869 .loc 1 526 12 discriminator 9 view .LVU279 870 0044 1434 adds r4, r4, #20 871 0046 A342 cmp r3, r4 872 0048 08D0 beq .L106 526:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 873 .loc 1 526 12 view .LVU280 874 004a 4FF00076 mov r6, #33554432 875 004e 21E0 b .L61 876 .L105: 518:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** return HAL_ERROR; 877 .loc 1 518 5 is_stmt 1 view .LVU281 518:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** return HAL_ERROR; 878 .loc 1 518 21 is_stmt 0 view .LVU282 879 0050 4FF48073 mov r3, #256 880 0054 8363 str r3, [r0, #56] 519:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 881 .loc 1 519 5 is_stmt 1 view .LVU283 519:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 882 .loc 1 519 12 is_stmt 0 view .LVU284 883 0056 0120 movs r0, #1 884 .LVL53: 885 .L58: 595:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 886 .loc 1 595 1 view .LVU285 887 0058 BDE8F081 pop {r4, r5, r6, r7, r8, pc} 888 .LVL54: 889 .L106: 526:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 890 .loc 1 526 12 view .LVU286 891 005c 4FF40016 mov r6, #2097152 892 0060 18E0 b .L61 893 .L60: 531:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 894 .loc 1 531 5 is_stmt 1 view .LVU287 531:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 895 .loc 1 531 12 is_stmt 0 view .LVU288 896 0062 704C ldr r4, .L114 897 0064 A342 cmp r3, r4 898 0066 27D0 beq .L78 531:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 899 .loc 1 531 12 discriminator 1 view .LVU289 900 0068 1434 adds r4, r4, #20 901 006a A342 cmp r3, r4 902 006c 26D0 beq .L79 531:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 903 .loc 1 531 12 discriminator 3 view .LVU290 904 006e 1434 adds r4, r4, #20 905 0070 A342 cmp r3, r4 906 0072 25D0 beq .L80 531:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 907 .loc 1 531 12 discriminator 5 view .LVU291 908 0074 1434 adds r4, r4, #20 909 0076 A342 cmp r3, r4 910 0078 25D0 beq .L81 531:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } ARM GAS /tmp/cclaiPAO.s page 37 911 .loc 1 531 12 discriminator 7 view .LVU292 912 007a 1434 adds r4, r4, #20 913 007c A342 cmp r3, r4 914 007e 25D0 beq .L82 531:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 915 .loc 1 531 12 discriminator 9 view .LVU293 916 0080 1434 adds r4, r4, #20 917 0082 A342 cmp r3, r4 918 0084 02D0 beq .L107 531:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 919 .loc 1 531 12 view .LVU294 920 0086 4FF08066 mov r6, #67108864 921 008a 03E0 b .L61 922 .L107: 923 008c 4FF48006 mov r6, #4194304 924 0090 00E0 b .L61 925 .L72: 526:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 926 .loc 1 526 12 view .LVU295 927 0092 0226 movs r6, #2 928 .L61: 929 0094 1546 mov r5, r2 930 0096 0F46 mov r7, r1 931 0098 0446 mov r4, r0 932 .LVL55: 535:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 933 .loc 1 535 3 is_stmt 1 view .LVU296 535:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 934 .loc 1 535 15 is_stmt 0 view .LVU297 935 009a FFF7FEFF bl HAL_GetTick 936 .LVL56: 535:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 937 .loc 1 535 15 view .LVU298 938 009e 8046 mov r8, r0 939 .LVL57: 537:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 940 .loc 1 537 3 is_stmt 1 view .LVU299 537:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 941 .loc 1 537 8 is_stmt 0 view .LVU300 942 00a0 20E0 b .L65 943 .LVL58: 944 .L73: 526:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 945 .loc 1 526 12 view .LVU301 946 00a2 2026 movs r6, #32 947 00a4 F6E7 b .L61 948 .L74: 949 00a6 4FF40076 mov r6, #512 950 00aa F3E7 b .L61 951 .L75: 952 00ac 4FF40056 mov r6, #8192 953 00b0 F0E7 b .L61 954 .L76: 955 00b2 4FF40036 mov r6, #131072 956 00b6 EDE7 b .L61 957 .L78: 531:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } ARM GAS /tmp/cclaiPAO.s page 38 958 .loc 1 531 12 view .LVU302 959 00b8 0426 movs r6, #4 960 00ba EBE7 b .L61 961 .L79: 962 00bc 4026 movs r6, #64 963 00be E9E7 b .L61 964 .L80: 965 00c0 4FF48066 mov r6, #1024 966 00c4 E6E7 b .L61 967 .L81: 968 00c6 4FF48046 mov r6, #16384 969 00ca E3E7 b .L61 970 .L82: 971 00cc 4FF48026 mov r6, #262144 972 00d0 E0E7 b .L61 973 .LVL59: 974 .L111: 539:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 975 .loc 1 539 9 view .LVU303 976 00d2 4FF40003 mov r3, #8388608 977 00d6 00E0 b .L63 978 .L84: 979 00d8 0823 movs r3, #8 980 .L63: 539:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 981 .loc 1 539 7 discriminator 24 view .LVU304 982 00da 1A42 tst r2, r3 983 00dc 29D1 bne .L108 558:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 984 .loc 1 558 5 is_stmt 1 view .LVU305 558:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 985 .loc 1 558 7 is_stmt 0 view .LVU306 986 00de B5F1FF3F cmp r5, #-1 987 00e2 35D1 bne .L109 988 .L65: 537:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 989 .loc 1 537 9 view .LVU307 990 00e4 504B ldr r3, .L114+4 991 00e6 1B68 ldr r3, [r3] 537:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 992 .loc 1 537 8 view .LVU308 993 00e8 3342 tst r3, r6 994 00ea 43D1 bne .L110 539:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 995 .loc 1 539 5 is_stmt 1 view .LVU309 539:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 996 .loc 1 539 9 is_stmt 0 view .LVU310 997 00ec 4E4B ldr r3, .L114+4 998 00ee 1A68 ldr r2, [r3] 999 00f0 2368 ldr r3, [r4] 1000 00f2 4C49 ldr r1, .L114 1001 00f4 8B42 cmp r3, r1 1002 00f6 EFD0 beq .L84 539:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 1003 .loc 1 539 9 discriminator 1 view .LVU311 1004 00f8 1431 adds r1, r1, #20 1005 00fa 8B42 cmp r3, r1 ARM GAS /tmp/cclaiPAO.s page 39 1006 00fc 0ED0 beq .L85 539:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 1007 .loc 1 539 9 discriminator 3 view .LVU312 1008 00fe 1431 adds r1, r1, #20 1009 0100 8B42 cmp r3, r1 1010 0102 0DD0 beq .L86 539:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 1011 .loc 1 539 9 discriminator 5 view .LVU313 1012 0104 1431 adds r1, r1, #20 1013 0106 8B42 cmp r3, r1 1014 0108 0DD0 beq .L87 539:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 1015 .loc 1 539 9 discriminator 7 view .LVU314 1016 010a 1431 adds r1, r1, #20 1017 010c 8B42 cmp r3, r1 1018 010e 0DD0 beq .L88 539:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 1019 .loc 1 539 9 discriminator 9 view .LVU315 1020 0110 1431 adds r1, r1, #20 1021 0112 8B42 cmp r3, r1 1022 0114 DDD0 beq .L111 539:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 1023 .loc 1 539 9 view .LVU316 1024 0116 4FF00063 mov r3, #134217728 1025 011a DEE7 b .L63 1026 .L85: 1027 011c 8023 movs r3, #128 1028 011e DCE7 b .L63 1029 .L86: 1030 0120 4FF40063 mov r3, #2048 1031 0124 D9E7 b .L63 1032 .L87: 1033 0126 4FF40043 mov r3, #32768 1034 012a D6E7 b .L63 1035 .L88: 1036 012c 4FF40023 mov r3, #524288 1037 0130 D3E7 b .L63 1038 .L108: 544:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 1039 .loc 1 544 7 is_stmt 1 view .LVU317 544:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 1040 .loc 1 544 57 is_stmt 0 view .LVU318 1041 0132 236C ldr r3, [r4, #64] 544:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 1042 .loc 1 544 11 view .LVU319 1043 0134 E26B ldr r2, [r4, #60] 544:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 1044 .loc 1 544 50 view .LVU320 1045 0136 0120 movs r0, #1 1046 0138 00FA03F3 lsl r3, r0, r3 544:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 1047 .loc 1 544 34 view .LVU321 1048 013c 5360 str r3, [r2, #4] 547:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 1049 .loc 1 547 7 is_stmt 1 view .LVU322 1050 013e A36B ldr r3, [r4, #56] 1051 0140 0343 orrs r3, r3, r0 ARM GAS /tmp/cclaiPAO.s page 40 1052 0142 A363 str r3, [r4, #56] 550:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 1053 .loc 1 550 7 view .LVU323 550:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 1054 .loc 1 550 18 is_stmt 0 view .LVU324 1055 0144 84F82100 strb r0, [r4, #33] 553:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 1056 .loc 1 553 7 is_stmt 1 view .LVU325 553:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 1057 .loc 1 553 7 view .LVU326 1058 0148 0023 movs r3, #0 1059 014a 84F82030 strb r3, [r4, #32] 555:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 1060 .loc 1 555 7 view .LVU327 555:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 1061 .loc 1 555 14 is_stmt 0 view .LVU328 1062 014e 83E7 b .L58 1063 .L109: 560:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 1064 .loc 1 560 7 is_stmt 1 view .LVU329 560:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 1065 .loc 1 560 9 is_stmt 0 view .LVU330 1066 0150 2DB1 cbz r5, .L66 560:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 1067 .loc 1 560 31 discriminator 1 view .LVU331 1068 0152 FFF7FEFF bl HAL_GetTick 1069 .LVL60: 560:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 1070 .loc 1 560 45 discriminator 1 view .LVU332 1071 0156 A0EB0800 sub r0, r0, r8 560:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 1072 .loc 1 560 26 discriminator 1 view .LVU333 1073 015a A842 cmp r0, r5 1074 015c C2D9 bls .L65 1075 .L66: 563:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 1076 .loc 1 563 9 is_stmt 1 view .LVU334 1077 015e A36B ldr r3, [r4, #56] 1078 0160 43F02003 orr r3, r3, #32 1079 0164 A363 str r3, [r4, #56] 566:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 1080 .loc 1 566 9 view .LVU335 566:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 1081 .loc 1 566 21 is_stmt 0 view .LVU336 1082 0166 0120 movs r0, #1 1083 0168 84F82100 strb r0, [r4, #33] 569:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 1084 .loc 1 569 9 is_stmt 1 view .LVU337 569:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 1085 .loc 1 569 9 view .LVU338 1086 016c 0023 movs r3, #0 1087 016e 84F82030 strb r3, [r4, #32] 571:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 1088 .loc 1 571 9 view .LVU339 571:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 1089 .loc 1 571 16 is_stmt 0 view .LVU340 1090 0172 71E7 b .L58 ARM GAS /tmp/cclaiPAO.s page 41 1091 .L110: 576:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 1092 .loc 1 576 3 is_stmt 1 view .LVU341 576:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 1093 .loc 1 576 5 is_stmt 0 view .LVU342 1094 0174 6FBB cbnz r7, .L68 579:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 1095 .loc 1 579 5 is_stmt 1 view .LVU343 1096 0176 2368 ldr r3, [r4] 1097 0178 2A4A ldr r2, .L114 1098 017a 9342 cmp r3, r2 1099 017c 14D0 beq .L90 579:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 1100 .loc 1 579 5 is_stmt 0 discriminator 1 view .LVU344 1101 017e 1432 adds r2, r2, #20 1102 0180 9342 cmp r3, r2 1103 0182 1BD0 beq .L91 579:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 1104 .loc 1 579 5 discriminator 3 view .LVU345 1105 0184 1432 adds r2, r2, #20 1106 0186 9342 cmp r3, r2 1107 0188 1AD0 beq .L92 579:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 1108 .loc 1 579 5 discriminator 5 view .LVU346 1109 018a 1432 adds r2, r2, #20 1110 018c 9342 cmp r3, r2 1111 018e 1AD0 beq .L93 579:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 1112 .loc 1 579 5 discriminator 7 view .LVU347 1113 0190 1432 adds r2, r2, #20 1114 0192 9342 cmp r3, r2 1115 0194 1AD0 beq .L94 579:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 1116 .loc 1 579 5 discriminator 9 view .LVU348 1117 0196 1432 adds r2, r2, #20 1118 0198 9342 cmp r3, r2 1119 019a 02D0 beq .L112 579:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 1120 .loc 1 579 5 view .LVU349 1121 019c 4FF00072 mov r2, #33554432 1122 01a0 03E0 b .L69 1123 .L112: 1124 01a2 4FF40012 mov r2, #2097152 1125 01a6 00E0 b .L69 1126 .L90: 1127 01a8 0222 movs r2, #2 1128 .L69: 579:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 1129 .loc 1 579 5 discriminator 24 view .LVU350 1130 01aa 1F4B ldr r3, .L114+4 1131 01ac 5A60 str r2, [r3, #4] 583:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 1132 .loc 1 583 5 is_stmt 1 discriminator 24 view .LVU351 583:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 1133 .loc 1 583 17 is_stmt 0 discriminator 24 view .LVU352 1134 01ae 0123 movs r3, #1 1135 01b0 84F82130 strb r3, [r4, #33] ARM GAS /tmp/cclaiPAO.s page 42 1136 .L70: 592:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 1137 .loc 1 592 3 is_stmt 1 view .LVU353 592:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 1138 .loc 1 592 3 view .LVU354 1139 01b4 0020 movs r0, #0 1140 01b6 84F82000 strb r0, [r4, #32] 594:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 1141 .loc 1 594 3 view .LVU355 594:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 1142 .loc 1 594 10 is_stmt 0 view .LVU356 1143 01ba 4DE7 b .L58 1144 .L91: 579:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 1145 .loc 1 579 5 view .LVU357 1146 01bc 2022 movs r2, #32 1147 01be F4E7 b .L69 1148 .L92: 1149 01c0 4FF40072 mov r2, #512 1150 01c4 F1E7 b .L69 1151 .L93: 1152 01c6 4FF40052 mov r2, #8192 1153 01ca EEE7 b .L69 1154 .L94: 1155 01cc 4FF40032 mov r2, #131072 1156 01d0 EBE7 b .L69 1157 .L68: 588:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 1158 .loc 1 588 5 is_stmt 1 view .LVU358 1159 01d2 2368 ldr r3, [r4] 1160 01d4 134A ldr r2, .L114 1161 01d6 9342 cmp r3, r2 1162 01d8 14D0 beq .L96 588:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 1163 .loc 1 588 5 is_stmt 0 discriminator 1 view .LVU359 1164 01da 1432 adds r2, r2, #20 1165 01dc 9342 cmp r3, r2 1166 01de 15D0 beq .L97 588:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 1167 .loc 1 588 5 discriminator 3 view .LVU360 1168 01e0 1432 adds r2, r2, #20 1169 01e2 9342 cmp r3, r2 1170 01e4 14D0 beq .L98 588:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 1171 .loc 1 588 5 discriminator 5 view .LVU361 1172 01e6 1432 adds r2, r2, #20 1173 01e8 9342 cmp r3, r2 1174 01ea 14D0 beq .L99 588:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 1175 .loc 1 588 5 discriminator 7 view .LVU362 1176 01ec 1432 adds r2, r2, #20 1177 01ee 9342 cmp r3, r2 1178 01f0 14D0 beq .L100 588:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 1179 .loc 1 588 5 discriminator 9 view .LVU363 1180 01f2 1432 adds r2, r2, #20 1181 01f4 9342 cmp r3, r2 ARM GAS /tmp/cclaiPAO.s page 43 1182 01f6 02D0 beq .L113 588:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 1183 .loc 1 588 5 view .LVU364 1184 01f8 4FF08062 mov r2, #67108864 1185 01fc 03E0 b .L71 1186 .L113: 1187 01fe 4FF48002 mov r2, #4194304 1188 0202 00E0 b .L71 1189 .L96: 1190 0204 0422 movs r2, #4 1191 .L71: 588:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 1192 .loc 1 588 5 discriminator 24 view .LVU365 1193 0206 084B ldr r3, .L114+4 1194 0208 5A60 str r2, [r3, #4] 1195 020a D3E7 b .L70 1196 .L97: 588:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 1197 .loc 1 588 5 view .LVU366 1198 020c 4022 movs r2, #64 1199 020e FAE7 b .L71 1200 .L98: 1201 0210 4FF48062 mov r2, #1024 1202 0214 F7E7 b .L71 1203 .L99: 1204 0216 4FF48042 mov r2, #16384 1205 021a F4E7 b .L71 1206 .L100: 1207 021c 4FF48022 mov r2, #262144 1208 0220 F1E7 b .L71 1209 .L115: 1210 0222 00BF .align 2 1211 .L114: 1212 0224 08000240 .word 1073872904 1213 0228 00000240 .word 1073872896 1214 .cfi_endproc 1215 .LFE71: 1217 .section .text.HAL_DMA_IRQHandler,"ax",%progbits 1218 .align 1 1219 .global HAL_DMA_IRQHandler 1220 .syntax unified 1221 .thumb 1222 .thumb_func 1223 .fpu softvfp 1225 HAL_DMA_IRQHandler: 1226 .LVL61: 1227 .LFB72: 604:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** uint32_t flag_it = hdma->DmaBaseAddress->ISR; 1228 .loc 1 604 1 is_stmt 1 view -0 1229 .cfi_startproc 1230 @ args = 0, pretend = 0, frame = 0 1231 @ frame_needed = 0, uses_anonymous_args = 0 604:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** uint32_t flag_it = hdma->DmaBaseAddress->ISR; 1232 .loc 1 604 1 is_stmt 0 view .LVU368 1233 0000 38B5 push {r3, r4, r5, lr} 1234 .LCFI11: 1235 .cfi_def_cfa_offset 16 ARM GAS /tmp/cclaiPAO.s page 44 1236 .cfi_offset 3, -16 1237 .cfi_offset 4, -12 1238 .cfi_offset 5, -8 1239 .cfi_offset 14, -4 605:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** uint32_t source_it = hdma->Instance->CCR; 1240 .loc 1 605 3 is_stmt 1 view .LVU369 605:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** uint32_t source_it = hdma->Instance->CCR; 1241 .loc 1 605 26 is_stmt 0 view .LVU370 1242 0002 C36B ldr r3, [r0, #60] 605:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** uint32_t source_it = hdma->Instance->CCR; 1243 .loc 1 605 12 view .LVU371 1244 0004 1A68 ldr r2, [r3] 1245 .LVL62: 606:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 1246 .loc 1 606 3 is_stmt 1 view .LVU372 606:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 1247 .loc 1 606 28 is_stmt 0 view .LVU373 1248 0006 0468 ldr r4, [r0] 606:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 1249 .loc 1 606 12 view .LVU374 1250 0008 2568 ldr r5, [r4] 1251 .LVL63: 609:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 1252 .loc 1 609 3 is_stmt 1 view .LVU375 609:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 1253 .loc 1 609 40 is_stmt 0 view .LVU376 1254 000a 016C ldr r1, [r0, #64] 609:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 1255 .loc 1 609 33 view .LVU377 1256 000c 0423 movs r3, #4 1257 000e 8B40 lsls r3, r3, r1 609:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 1258 .loc 1 609 6 view .LVU378 1259 0010 1342 tst r3, r2 1260 0012 35D0 beq .L117 609:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 1261 .loc 1 609 67 discriminator 1 view .LVU379 1262 0014 15F0040F tst r5, #4 1263 0018 32D0 beq .L117 612:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 1264 .loc 1 612 5 is_stmt 1 view .LVU380 612:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 1265 .loc 1 612 23 is_stmt 0 view .LVU381 1266 001a 2368 ldr r3, [r4] 612:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 1267 .loc 1 612 7 view .LVU382 1268 001c 13F0200F tst r3, #32 1269 0020 03D1 bne .L118 615:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 1270 .loc 1 615 7 is_stmt 1 view .LVU383 1271 0022 2368 ldr r3, [r4] 1272 0024 23F00403 bic r3, r3, #4 1273 0028 2360 str r3, [r4] 1274 .L118: 618:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 1275 .loc 1 618 5 view .LVU384 1276 002a 0368 ldr r3, [r0] ARM GAS /tmp/cclaiPAO.s page 45 1277 002c 434A ldr r2, .L139 1278 .LVL64: 618:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 1279 .loc 1 618 5 is_stmt 0 view .LVU385 1280 002e 9342 cmp r3, r2 1281 0030 14D0 beq .L124 618:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 1282 .loc 1 618 5 discriminator 1 view .LVU386 1283 0032 1432 adds r2, r2, #20 1284 0034 9342 cmp r3, r2 1285 0036 18D0 beq .L125 618:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 1286 .loc 1 618 5 discriminator 3 view .LVU387 1287 0038 1432 adds r2, r2, #20 1288 003a 9342 cmp r3, r2 1289 003c 17D0 beq .L126 618:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 1290 .loc 1 618 5 discriminator 5 view .LVU388 1291 003e 1432 adds r2, r2, #20 1292 0040 9342 cmp r3, r2 1293 0042 17D0 beq .L127 618:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 1294 .loc 1 618 5 discriminator 7 view .LVU389 1295 0044 1432 adds r2, r2, #20 1296 0046 9342 cmp r3, r2 1297 0048 17D0 beq .L128 618:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 1298 .loc 1 618 5 discriminator 9 view .LVU390 1299 004a 1432 adds r2, r2, #20 1300 004c 9342 cmp r3, r2 1301 004e 02D0 beq .L137 618:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 1302 .loc 1 618 5 view .LVU391 1303 0050 4FF08062 mov r2, #67108864 1304 0054 03E0 b .L119 1305 .L137: 1306 0056 4FF48002 mov r2, #4194304 1307 005a 00E0 b .L119 1308 .L124: 1309 005c 0422 movs r2, #4 1310 .L119: 618:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 1311 .loc 1 618 5 discriminator 24 view .LVU392 1312 005e 384B ldr r3, .L139+4 1313 0060 5A60 str r2, [r3, #4] 623:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 1314 .loc 1 623 5 is_stmt 1 discriminator 24 view .LVU393 623:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 1315 .loc 1 623 12 is_stmt 0 discriminator 24 view .LVU394 1316 0062 C36A ldr r3, [r0, #44] 623:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 1317 .loc 1 623 7 discriminator 24 view .LVU395 1318 0064 03B1 cbz r3, .L116 626:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 1319 .loc 1 626 7 is_stmt 1 view .LVU396 1320 0066 9847 blx r3 1321 .LVL65: ARM GAS /tmp/cclaiPAO.s page 46 1322 .L116: 681:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 1323 .loc 1 681 1 is_stmt 0 view .LVU397 1324 0068 38BD pop {r3, r4, r5, pc} 1325 .LVL66: 1326 .L125: 618:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 1327 .loc 1 618 5 view .LVU398 1328 006a 4022 movs r2, #64 1329 006c F7E7 b .L119 1330 .L126: 1331 006e 4FF48062 mov r2, #1024 1332 0072 F4E7 b .L119 1333 .L127: 1334 0074 4FF48042 mov r2, #16384 1335 0078 F1E7 b .L119 1336 .L128: 1337 007a 4FF48022 mov r2, #262144 1338 007e EEE7 b .L119 1339 .LVL67: 1340 .L117: 631:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 1341 .loc 1 631 8 is_stmt 1 view .LVU399 631:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 1342 .loc 1 631 38 is_stmt 0 view .LVU400 1343 0080 0223 movs r3, #2 1344 0082 8B40 lsls r3, r3, r1 631:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 1345 .loc 1 631 11 view .LVU401 1346 0084 1342 tst r3, r2 1347 0086 3CD0 beq .L121 631:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 1348 .loc 1 631 72 discriminator 1 view .LVU402 1349 0088 15F0020F tst r5, #2 1350 008c 39D0 beq .L121 633:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 1351 .loc 1 633 5 is_stmt 1 view .LVU403 633:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 1352 .loc 1 633 23 is_stmt 0 view .LVU404 1353 008e 2368 ldr r3, [r4] 633:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 1354 .loc 1 633 7 view .LVU405 1355 0090 13F0200F tst r3, #32 1356 0094 06D1 bne .L122 636:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 1357 .loc 1 636 7 is_stmt 1 view .LVU406 1358 0096 2368 ldr r3, [r4] 1359 0098 23F00A03 bic r3, r3, #10 1360 009c 2360 str r3, [r4] 639:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 1361 .loc 1 639 7 view .LVU407 639:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 1362 .loc 1 639 19 is_stmt 0 view .LVU408 1363 009e 0123 movs r3, #1 1364 00a0 80F82130 strb r3, [r0, #33] 1365 .L122: 642:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** ARM GAS /tmp/cclaiPAO.s page 47 1366 .loc 1 642 7 is_stmt 1 view .LVU409 1367 00a4 0368 ldr r3, [r0] 1368 00a6 254A ldr r2, .L139 1369 .LVL68: 642:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 1370 .loc 1 642 7 is_stmt 0 view .LVU410 1371 00a8 9342 cmp r3, r2 1372 00aa 14D0 beq .L130 642:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 1373 .loc 1 642 7 discriminator 1 view .LVU411 1374 00ac 1432 adds r2, r2, #20 1375 00ae 9342 cmp r3, r2 1376 00b0 1CD0 beq .L131 642:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 1377 .loc 1 642 7 discriminator 3 view .LVU412 1378 00b2 1432 adds r2, r2, #20 1379 00b4 9342 cmp r3, r2 1380 00b6 1BD0 beq .L132 642:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 1381 .loc 1 642 7 discriminator 5 view .LVU413 1382 00b8 1432 adds r2, r2, #20 1383 00ba 9342 cmp r3, r2 1384 00bc 1BD0 beq .L133 642:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 1385 .loc 1 642 7 discriminator 7 view .LVU414 1386 00be 1432 adds r2, r2, #20 1387 00c0 9342 cmp r3, r2 1388 00c2 1BD0 beq .L134 642:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 1389 .loc 1 642 7 discriminator 9 view .LVU415 1390 00c4 1432 adds r2, r2, #20 1391 00c6 9342 cmp r3, r2 1392 00c8 02D0 beq .L138 642:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 1393 .loc 1 642 7 view .LVU416 1394 00ca 4FF00072 mov r2, #33554432 1395 00ce 03E0 b .L123 1396 .L138: 1397 00d0 4FF40012 mov r2, #2097152 1398 00d4 00E0 b .L123 1399 .L130: 1400 00d6 0222 movs r2, #2 1401 .L123: 642:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 1402 .loc 1 642 7 discriminator 24 view .LVU417 1403 00d8 194B ldr r3, .L139+4 1404 00da 5A60 str r2, [r3, #4] 645:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 1405 .loc 1 645 5 is_stmt 1 discriminator 24 view .LVU418 645:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 1406 .loc 1 645 5 discriminator 24 view .LVU419 1407 00dc 0023 movs r3, #0 1408 00de 80F82030 strb r3, [r0, #32] 647:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 1409 .loc 1 647 5 discriminator 24 view .LVU420 647:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 1410 .loc 1 647 12 is_stmt 0 discriminator 24 view .LVU421 ARM GAS /tmp/cclaiPAO.s page 48 1411 00e2 836A ldr r3, [r0, #40] 647:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 1412 .loc 1 647 7 discriminator 24 view .LVU422 1413 00e4 002B cmp r3, #0 1414 00e6 BFD0 beq .L116 650:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 1415 .loc 1 650 7 is_stmt 1 view .LVU423 1416 00e8 9847 blx r3 1417 .LVL69: 650:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 1418 .loc 1 650 7 is_stmt 0 view .LVU424 1419 00ea BDE7 b .L116 1420 .LVL70: 1421 .L131: 642:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 1422 .loc 1 642 7 view .LVU425 1423 00ec 2022 movs r2, #32 1424 00ee F3E7 b .L123 1425 .L132: 1426 00f0 4FF40072 mov r2, #512 1427 00f4 F0E7 b .L123 1428 .L133: 1429 00f6 4FF40052 mov r2, #8192 1430 00fa EDE7 b .L123 1431 .L134: 1432 00fc 4FF40032 mov r2, #131072 1433 0100 EAE7 b .L123 1434 .LVL71: 1435 .L121: 655:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 1436 .loc 1 655 8 is_stmt 1 view .LVU426 655:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 1437 .loc 1 655 48 is_stmt 0 view .LVU427 1438 0102 0823 movs r3, #8 1439 0104 03FA01F1 lsl r1, r3, r1 655:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 1440 .loc 1 655 11 view .LVU428 1441 0108 1142 tst r1, r2 1442 010a ADD0 beq .L116 655:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 1443 .loc 1 655 73 discriminator 1 view .LVU429 1444 010c 15F0080F tst r5, #8 1445 0110 AAD0 beq .L116 660:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 1446 .loc 1 660 5 is_stmt 1 view .LVU430 1447 0112 2368 ldr r3, [r4] 1448 0114 23F00E03 bic r3, r3, #14 1449 0118 2360 str r3, [r4] 663:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 1450 .loc 1 663 5 view .LVU431 663:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 1451 .loc 1 663 55 is_stmt 0 view .LVU432 1452 011a 026C ldr r2, [r0, #64] 1453 .LVL72: 663:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 1454 .loc 1 663 9 view .LVU433 1455 011c C16B ldr r1, [r0, #60] ARM GAS /tmp/cclaiPAO.s page 49 663:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 1456 .loc 1 663 48 view .LVU434 1457 011e 0123 movs r3, #1 1458 0120 03FA02F2 lsl r2, r3, r2 663:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 1459 .loc 1 663 32 view .LVU435 1460 0124 4A60 str r2, [r1, #4] 666:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 1461 .loc 1 666 5 is_stmt 1 view .LVU436 666:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 1462 .loc 1 666 21 is_stmt 0 view .LVU437 1463 0126 8363 str r3, [r0, #56] 669:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 1464 .loc 1 669 5 is_stmt 1 view .LVU438 669:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 1465 .loc 1 669 17 is_stmt 0 view .LVU439 1466 0128 80F82130 strb r3, [r0, #33] 672:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 1467 .loc 1 672 5 is_stmt 1 view .LVU440 672:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 1468 .loc 1 672 5 view .LVU441 1469 012c 0023 movs r3, #0 1470 012e 80F82030 strb r3, [r0, #32] 674:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 1471 .loc 1 674 5 view .LVU442 674:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 1472 .loc 1 674 13 is_stmt 0 view .LVU443 1473 0132 036B ldr r3, [r0, #48] 674:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 1474 .loc 1 674 8 view .LVU444 1475 0134 002B cmp r3, #0 1476 0136 97D0 beq .L116 677:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 1477 .loc 1 677 7 is_stmt 1 view .LVU445 1478 0138 9847 blx r3 1479 .LVL73: 680:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 1480 .loc 1 680 3 view .LVU446 1481 013a 95E7 b .L116 1482 .L140: 1483 .align 2 1484 .L139: 1485 013c 08000240 .word 1073872904 1486 0140 00000240 .word 1073872896 1487 .cfi_endproc 1488 .LFE72: 1490 .section .text.HAL_DMA_RegisterCallback,"ax",%progbits 1491 .align 1 1492 .global HAL_DMA_RegisterCallback 1493 .syntax unified 1494 .thumb 1495 .thumb_func 1496 .fpu softvfp 1498 HAL_DMA_RegisterCallback: 1499 .LVL74: 1500 .LFB73: 694:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** HAL_StatusTypeDef status = HAL_OK; ARM GAS /tmp/cclaiPAO.s page 50 1501 .loc 1 694 1 view -0 1502 .cfi_startproc 1503 @ args = 0, pretend = 0, frame = 0 1504 @ frame_needed = 0, uses_anonymous_args = 0 1505 @ link register save eliminated. 694:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** HAL_StatusTypeDef status = HAL_OK; 1506 .loc 1 694 1 is_stmt 0 view .LVU448 1507 0000 0346 mov r3, r0 695:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 1508 .loc 1 695 3 is_stmt 1 view .LVU449 1509 .LVL75: 698:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 1510 .loc 1 698 3 view .LVU450 698:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 1511 .loc 1 698 3 view .LVU451 1512 0002 90F82000 ldrb r0, [r0, #32] @ zero_extendqisi2 1513 .LVL76: 698:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 1514 .loc 1 698 3 is_stmt 0 view .LVU452 1515 0006 0128 cmp r0, #1 1516 0008 1FD0 beq .L149 698:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 1517 .loc 1 698 3 is_stmt 1 discriminator 2 view .LVU453 1518 000a 0120 movs r0, #1 1519 000c 83F82000 strb r0, [r3, #32] 700:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 1520 .loc 1 700 3 discriminator 2 view .LVU454 700:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 1521 .loc 1 700 33 is_stmt 0 discriminator 2 view .LVU455 1522 0010 93F82100 ldrb r0, [r3, #33] @ zero_extendqisi2 700:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 1523 .loc 1 700 5 discriminator 2 view .LVU456 1524 0014 0128 cmp r0, #1 1525 0016 04D0 beq .L152 727:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 1526 .loc 1 727 12 view .LVU457 1527 0018 0120 movs r0, #1 1528 .L143: 1529 .LVL77: 731:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 1530 .loc 1 731 3 is_stmt 1 view .LVU458 731:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 1531 .loc 1 731 3 view .LVU459 1532 001a 0022 movs r2, #0 1533 .LVL78: 731:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 1534 .loc 1 731 3 is_stmt 0 view .LVU460 1535 001c 83F82020 strb r2, [r3, #32] 733:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 1536 .loc 1 733 3 is_stmt 1 view .LVU461 733:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 1537 .loc 1 733 10 is_stmt 0 view .LVU462 1538 0020 7047 bx lr 1539 .LVL79: 1540 .L152: 702:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 1541 .loc 1 702 5 is_stmt 1 view .LVU463 ARM GAS /tmp/cclaiPAO.s page 51 1542 0022 0329 cmp r1, #3 1543 0024 0FD8 bhi .L151 1544 0026 DFE801F0 tbb [pc, r1] 1545 .L145: 1546 002a 02 .byte (.L148-.L145)/2 1547 002b 05 .byte (.L147-.L145)/2 1548 002c 08 .byte (.L146-.L145)/2 1549 002d 0B .byte (.L144-.L145)/2 1550 .p2align 1 1551 .L148: 705:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** break; 1552 .loc 1 705 7 view .LVU464 705:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** break; 1553 .loc 1 705 30 is_stmt 0 view .LVU465 1554 002e 9A62 str r2, [r3, #40] 706:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 1555 .loc 1 706 7 is_stmt 1 view .LVU466 695:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 1556 .loc 1 695 21 is_stmt 0 view .LVU467 1557 0030 0020 movs r0, #0 706:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 1558 .loc 1 706 7 view .LVU468 1559 0032 F2E7 b .L143 1560 .L147: 709:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** break; 1561 .loc 1 709 7 is_stmt 1 view .LVU469 709:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** break; 1562 .loc 1 709 34 is_stmt 0 view .LVU470 1563 0034 DA62 str r2, [r3, #44] 710:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 1564 .loc 1 710 7 is_stmt 1 view .LVU471 695:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 1565 .loc 1 695 21 is_stmt 0 view .LVU472 1566 0036 0020 movs r0, #0 710:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 1567 .loc 1 710 7 view .LVU473 1568 0038 EFE7 b .L143 1569 .L146: 713:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** break; 1570 .loc 1 713 7 is_stmt 1 view .LVU474 713:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** break; 1571 .loc 1 713 31 is_stmt 0 view .LVU475 1572 003a 1A63 str r2, [r3, #48] 714:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 1573 .loc 1 714 7 is_stmt 1 view .LVU476 695:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 1574 .loc 1 695 21 is_stmt 0 view .LVU477 1575 003c 0020 movs r0, #0 714:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 1576 .loc 1 714 7 view .LVU478 1577 003e ECE7 b .L143 1578 .L144: 717:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** break; 1579 .loc 1 717 7 is_stmt 1 view .LVU479 717:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** break; 1580 .loc 1 717 31 is_stmt 0 view .LVU480 1581 0040 5A63 str r2, [r3, #52] ARM GAS /tmp/cclaiPAO.s page 52 718:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 1582 .loc 1 718 7 is_stmt 1 view .LVU481 695:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 1583 .loc 1 695 21 is_stmt 0 view .LVU482 1584 0042 0020 movs r0, #0 718:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 1585 .loc 1 718 7 view .LVU483 1586 0044 E9E7 b .L143 1587 .L151: 721:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** break; 1588 .loc 1 721 14 view .LVU484 1589 0046 0120 movs r0, #1 1590 0048 E7E7 b .L143 1591 .L149: 698:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 1592 .loc 1 698 3 view .LVU485 1593 004a 0220 movs r0, #2 734:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 1594 .loc 1 734 1 view .LVU486 1595 004c 7047 bx lr 1596 .cfi_endproc 1597 .LFE73: 1599 .section .text.HAL_DMA_UnRegisterCallback,"ax",%progbits 1600 .align 1 1601 .global HAL_DMA_UnRegisterCallback 1602 .syntax unified 1603 .thumb 1604 .thumb_func 1605 .fpu softvfp 1607 HAL_DMA_UnRegisterCallback: 1608 .LVL80: 1609 .LFB74: 745:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** HAL_StatusTypeDef status = HAL_OK; 1610 .loc 1 745 1 is_stmt 1 view -0 1611 .cfi_startproc 1612 @ args = 0, pretend = 0, frame = 0 1613 @ frame_needed = 0, uses_anonymous_args = 0 1614 @ link register save eliminated. 745:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** HAL_StatusTypeDef status = HAL_OK; 1615 .loc 1 745 1 is_stmt 0 view .LVU488 1616 0000 0346 mov r3, r0 746:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 1617 .loc 1 746 3 is_stmt 1 view .LVU489 1618 .LVL81: 749:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 1619 .loc 1 749 3 view .LVU490 749:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 1620 .loc 1 749 3 view .LVU491 1621 0002 90F82020 ldrb r2, [r0, #32] @ zero_extendqisi2 1622 0006 012A cmp r2, #1 1623 0008 26D0 beq .L162 749:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 1624 .loc 1 749 3 discriminator 2 view .LVU492 1625 000a 0122 movs r2, #1 1626 000c 80F82020 strb r2, [r0, #32] 751:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 1627 .loc 1 751 3 discriminator 2 view .LVU493 ARM GAS /tmp/cclaiPAO.s page 53 751:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 1628 .loc 1 751 33 is_stmt 0 discriminator 2 view .LVU494 1629 0010 90F82120 ldrb r2, [r0, #33] @ zero_extendqisi2 751:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 1630 .loc 1 751 5 discriminator 2 view .LVU495 1631 0014 012A cmp r2, #1 1632 0016 04D0 beq .L165 785:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 1633 .loc 1 785 12 view .LVU496 1634 0018 0120 movs r0, #1 1635 .LVL82: 1636 .L155: 789:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 1637 .loc 1 789 3 is_stmt 1 view .LVU497 789:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 1638 .loc 1 789 3 view .LVU498 1639 001a 0022 movs r2, #0 1640 001c 83F82020 strb r2, [r3, #32] 791:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 1641 .loc 1 791 3 view .LVU499 791:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 1642 .loc 1 791 10 is_stmt 0 view .LVU500 1643 0020 7047 bx lr 1644 .LVL83: 1645 .L165: 753:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** { 1646 .loc 1 753 5 is_stmt 1 view .LVU501 1647 0022 0429 cmp r1, #4 1648 0024 16D8 bhi .L164 1649 0026 DFE801F0 tbb [pc, r1] 1650 .L157: 1651 002a 03 .byte (.L161-.L157)/2 1652 002b 06 .byte (.L160-.L157)/2 1653 002c 09 .byte (.L159-.L157)/2 1654 002d 0C .byte (.L158-.L157)/2 1655 002e 0F .byte (.L156-.L157)/2 1656 002f 00 .p2align 1 1657 .L161: 756:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** break; 1658 .loc 1 756 7 view .LVU502 756:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** break; 1659 .loc 1 756 30 is_stmt 0 view .LVU503 1660 0030 0020 movs r0, #0 1661 .LVL84: 756:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** break; 1662 .loc 1 756 30 view .LVU504 1663 0032 9862 str r0, [r3, #40] 757:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 1664 .loc 1 757 7 is_stmt 1 view .LVU505 1665 0034 F1E7 b .L155 1666 .LVL85: 1667 .L160: 760:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** break; 1668 .loc 1 760 7 view .LVU506 760:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** break; 1669 .loc 1 760 34 is_stmt 0 view .LVU507 1670 0036 0020 movs r0, #0 ARM GAS /tmp/cclaiPAO.s page 54 1671 .LVL86: 760:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** break; 1672 .loc 1 760 34 view .LVU508 1673 0038 D862 str r0, [r3, #44] 761:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 1674 .loc 1 761 7 is_stmt 1 view .LVU509 1675 003a EEE7 b .L155 1676 .LVL87: 1677 .L159: 764:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** break; 1678 .loc 1 764 7 view .LVU510 764:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** break; 1679 .loc 1 764 31 is_stmt 0 view .LVU511 1680 003c 0020 movs r0, #0 1681 .LVL88: 764:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** break; 1682 .loc 1 764 31 view .LVU512 1683 003e 1863 str r0, [r3, #48] 765:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 1684 .loc 1 765 7 is_stmt 1 view .LVU513 1685 0040 EBE7 b .L155 1686 .LVL89: 1687 .L158: 768:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** break; 1688 .loc 1 768 7 view .LVU514 768:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** break; 1689 .loc 1 768 31 is_stmt 0 view .LVU515 1690 0042 0020 movs r0, #0 1691 .LVL90: 768:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** break; 1692 .loc 1 768 31 view .LVU516 1693 0044 5863 str r0, [r3, #52] 769:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 1694 .loc 1 769 7 is_stmt 1 view .LVU517 1695 0046 E8E7 b .L155 1696 .LVL91: 1697 .L156: 772:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->XferHalfCpltCallback = NULL; 1698 .loc 1 772 7 view .LVU518 772:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->XferHalfCpltCallback = NULL; 1699 .loc 1 772 30 is_stmt 0 view .LVU519 1700 0048 0020 movs r0, #0 1701 .LVL92: 772:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->XferHalfCpltCallback = NULL; 1702 .loc 1 772 30 view .LVU520 1703 004a 9862 str r0, [r3, #40] 773:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->XferErrorCallback = NULL; 1704 .loc 1 773 7 is_stmt 1 view .LVU521 773:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->XferErrorCallback = NULL; 1705 .loc 1 773 34 is_stmt 0 view .LVU522 1706 004c D862 str r0, [r3, #44] 774:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->XferAbortCallback = NULL; 1707 .loc 1 774 7 is_stmt 1 view .LVU523 774:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** hdma->XferAbortCallback = NULL; 1708 .loc 1 774 31 is_stmt 0 view .LVU524 1709 004e 1863 str r0, [r3, #48] 775:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** break; ARM GAS /tmp/cclaiPAO.s page 55 1710 .loc 1 775 7 is_stmt 1 view .LVU525 775:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** break; 1711 .loc 1 775 31 is_stmt 0 view .LVU526 1712 0050 5863 str r0, [r3, #52] 776:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 1713 .loc 1 776 7 is_stmt 1 view .LVU527 1714 0052 E2E7 b .L155 1715 .LVL93: 1716 .L164: 779:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** break; 1717 .loc 1 779 14 is_stmt 0 view .LVU528 1718 0054 0120 movs r0, #1 1719 .LVL94: 779:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** break; 1720 .loc 1 779 14 view .LVU529 1721 0056 E0E7 b .L155 1722 .LVL95: 1723 .L162: 749:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 1724 .loc 1 749 3 view .LVU530 1725 0058 0220 movs r0, #2 1726 .LVL96: 792:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 1727 .loc 1 792 1 view .LVU531 1728 005a 7047 bx lr 1729 .cfi_endproc 1730 .LFE74: 1732 .section .text.HAL_DMA_GetState,"ax",%progbits 1733 .align 1 1734 .global HAL_DMA_GetState 1735 .syntax unified 1736 .thumb 1737 .thumb_func 1738 .fpu softvfp 1740 HAL_DMA_GetState: 1741 .LVL97: 1742 .LFB75: 821:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** /* Return DMA handle state */ 1743 .loc 1 821 1 is_stmt 1 view -0 1744 .cfi_startproc 1745 @ args = 0, pretend = 0, frame = 0 1746 @ frame_needed = 0, uses_anonymous_args = 0 1747 @ link register save eliminated. 823:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 1748 .loc 1 823 3 view .LVU533 824:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 1749 .loc 1 824 1 is_stmt 0 view .LVU534 1750 0000 90F82100 ldrb r0, [r0, #33] @ zero_extendqisi2 1751 .LVL98: 824:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 1752 .loc 1 824 1 view .LVU535 1753 0004 7047 bx lr 1754 .cfi_endproc 1755 .LFE75: 1757 .section .text.HAL_DMA_GetError,"ax",%progbits 1758 .align 1 1759 .global HAL_DMA_GetError ARM GAS /tmp/cclaiPAO.s page 56 1760 .syntax unified 1761 .thumb 1762 .thumb_func 1763 .fpu softvfp 1765 HAL_DMA_GetError: 1766 .LVL99: 1767 .LFB76: 833:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** return hdma->ErrorCode; 1768 .loc 1 833 1 is_stmt 1 view -0 1769 .cfi_startproc 1770 @ args = 0, pretend = 0, frame = 0 1771 @ frame_needed = 0, uses_anonymous_args = 0 1772 @ link register save eliminated. 834:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 1773 .loc 1 834 3 view .LVU537 834:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** } 1774 .loc 1 834 14 is_stmt 0 view .LVU538 1775 0000 806B ldr r0, [r0, #56] 1776 .LVL100: 835:Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c **** 1777 .loc 1 835 1 view .LVU539 1778 0002 7047 bx lr 1779 .cfi_endproc 1780 .LFE76: 1782 .text 1783 .Letext0: 1784 .file 2 "/usr/arm-none-eabi/include/machine/_default_types.h" 1785 .file 3 "/usr/arm-none-eabi/include/sys/_stdint.h" 1786 .file 4 "Drivers/CMSIS/Include/core_cm3.h" 1787 .file 5 "Drivers/CMSIS/Device/ST/STM32F1xx/Include/system_stm32f1xx.h" 1788 .file 6 "Drivers/CMSIS/Device/ST/STM32F1xx/Include/stm32f103xb.h" 1789 .file 7 "Drivers/CMSIS/Device/ST/STM32F1xx/Include/stm32f1xx.h" 1790 .file 8 "Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_def.h" 1791 .file 9 "Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_dma.h" 1792 .file 10 "Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal.h" ARM GAS /tmp/cclaiPAO.s page 57 DEFINED SYMBOLS *ABS*:0000000000000000 stm32f1xx_hal_dma.c /tmp/cclaiPAO.s:16 .text.DMA_SetConfig:0000000000000000 $t /tmp/cclaiPAO.s:23 .text.DMA_SetConfig:0000000000000000 DMA_SetConfig /tmp/cclaiPAO.s:102 .text.HAL_DMA_Init:0000000000000000 $t /tmp/cclaiPAO.s:109 .text.HAL_DMA_Init:0000000000000000 HAL_DMA_Init /tmp/cclaiPAO.s:233 .text.HAL_DMA_Init:0000000000000060 $d /tmp/cclaiPAO.s:240 .text.HAL_DMA_DeInit:0000000000000000 $t /tmp/cclaiPAO.s:247 .text.HAL_DMA_DeInit:0000000000000000 HAL_DMA_DeInit /tmp/cclaiPAO.s:356 .text.HAL_DMA_DeInit:000000000000005c $d /tmp/cclaiPAO.s:363 .text.HAL_DMA_Start:0000000000000000 $t /tmp/cclaiPAO.s:370 .text.HAL_DMA_Start:0000000000000000 HAL_DMA_Start /tmp/cclaiPAO.s:458 .text.HAL_DMA_Start_IT:0000000000000000 $t /tmp/cclaiPAO.s:465 .text.HAL_DMA_Start_IT:0000000000000000 HAL_DMA_Start_IT /tmp/cclaiPAO.s:576 .text.HAL_DMA_Abort:0000000000000000 $t /tmp/cclaiPAO.s:583 .text.HAL_DMA_Abort:0000000000000000 HAL_DMA_Abort /tmp/cclaiPAO.s:651 .text.HAL_DMA_Abort_IT:0000000000000000 $t /tmp/cclaiPAO.s:658 .text.HAL_DMA_Abort_IT:0000000000000000 HAL_DMA_Abort_IT /tmp/cclaiPAO.s:783 .text.HAL_DMA_Abort_IT:0000000000000090 $d /tmp/cclaiPAO.s:789 .text.HAL_DMA_PollForTransfer:0000000000000000 $t /tmp/cclaiPAO.s:796 .text.HAL_DMA_PollForTransfer:0000000000000000 HAL_DMA_PollForTransfer /tmp/cclaiPAO.s:1212 .text.HAL_DMA_PollForTransfer:0000000000000224 $d /tmp/cclaiPAO.s:1218 .text.HAL_DMA_IRQHandler:0000000000000000 $t /tmp/cclaiPAO.s:1225 .text.HAL_DMA_IRQHandler:0000000000000000 HAL_DMA_IRQHandler /tmp/cclaiPAO.s:1485 .text.HAL_DMA_IRQHandler:000000000000013c $d /tmp/cclaiPAO.s:1491 .text.HAL_DMA_RegisterCallback:0000000000000000 $t /tmp/cclaiPAO.s:1498 .text.HAL_DMA_RegisterCallback:0000000000000000 HAL_DMA_RegisterCallback /tmp/cclaiPAO.s:1546 .text.HAL_DMA_RegisterCallback:000000000000002a $d /tmp/cclaiPAO.s:1550 .text.HAL_DMA_RegisterCallback:000000000000002e $t /tmp/cclaiPAO.s:1600 .text.HAL_DMA_UnRegisterCallback:0000000000000000 $t /tmp/cclaiPAO.s:1607 .text.HAL_DMA_UnRegisterCallback:0000000000000000 HAL_DMA_UnRegisterCallback /tmp/cclaiPAO.s:1651 .text.HAL_DMA_UnRegisterCallback:000000000000002a $d /tmp/cclaiPAO.s:1733 .text.HAL_DMA_GetState:0000000000000000 $t /tmp/cclaiPAO.s:1740 .text.HAL_DMA_GetState:0000000000000000 HAL_DMA_GetState /tmp/cclaiPAO.s:1758 .text.HAL_DMA_GetError:0000000000000000 $t /tmp/cclaiPAO.s:1765 .text.HAL_DMA_GetError:0000000000000000 HAL_DMA_GetError /tmp/cclaiPAO.s:1656 .text.HAL_DMA_UnRegisterCallback:000000000000002f $d /tmp/cclaiPAO.s:1656 .text.HAL_DMA_UnRegisterCallback:0000000000000030 $t UNDEFINED SYMBOLS HAL_GetTick