Files

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