Files
stm32f4_makefile/build/stm32f4xx_hal_dma.lst
2025-06-25 11:12:35 +08:00

4594 lines
273 KiB
Plaintext
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

ARM GAS /tmp/ccNyAQJd.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 .LFB146:
28 .file 1 "Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c"
1:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /**
2:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** ******************************************************************************
3:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @file stm32f4xx_hal_dma.c
4:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @author MCD Application Team
5:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @brief DMA HAL module driver.
6:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** *
7:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * This file provides firmware functions to manage the following
8:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * functionalities of the Direct Memory Access (DMA) peripheral:
9:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * + Initialization and de-initialization functions
10:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * + IO operation functions
11:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * + Peripheral State and errors functions
12:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** @verbatim
13:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** ==============================================================================
14:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** ##### How to use this driver #####
15:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** ==============================================================================
16:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** [..]
17:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** (#) Enable and configure the peripheral to be connected to the DMA Stream
18:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** (except for internal SRAM/FLASH memories: no initialization is
19:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** necessary) please refer to Reference manual for connection between peripherals
20:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** and DMA requests.
21:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
22:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** (#) For a given Stream, program the required configuration through the following parameters:
23:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** Transfer Direction, Source and Destination data formats,
24:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** Circular, Normal or peripheral flow control mode, Stream Priority level,
25:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** Source and Destination Increment mode, FIFO mode and its Threshold (if needed),
26:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** Burst mode for Source and/or Destination (if needed) using HAL_DMA_Init() function.
27:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
28:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** -@- Prior to HAL_DMA_Init() the clock must be enabled for DMA through the following macros:
29:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** __HAL_RCC_DMA1_CLK_ENABLE() or __HAL_RCC_DMA2_CLK_ENABLE().
30:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
ARM GAS /tmp/ccNyAQJd.s page 2
31:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** *** Polling mode IO operation ***
32:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** =================================
33:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** [..]
34:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** (+) Use HAL_DMA_Start() to start DMA transfer after the configuration of Source
35:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** address and destination address and the Length of data to be transferred.
36:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** (+) Use HAL_DMA_PollForTransfer() to poll for the end of current transfer, in this
37:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** case a fixed Timeout can be configured by User depending from his application.
38:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** (+) Use HAL_DMA_Abort() function to abort the current transfer.
39:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
40:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** *** Interrupt mode IO operation ***
41:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** ===================================
42:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** [..]
43:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** (+) Configure the DMA interrupt priority using HAL_NVIC_SetPriority()
44:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** (+) Enable the DMA IRQ handler using HAL_NVIC_EnableIRQ()
45:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** (+) Use HAL_DMA_Start_IT() to start DMA transfer after the configuration of
46:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** Source address and destination address and the Length of data to be transferred. In t
47:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** case the DMA interrupt is configured
48:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** (+) Use HAL_DMA_IRQHandler() called under DMA_IRQHandler() Interrupt subroutine
49:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** (+) At the end of data transfer HAL_DMA_IRQHandler() function is executed and user can
50:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** add his own function by customization of function pointer XferCpltCallback and
51:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** XferErrorCallback (i.e a member of DMA handle structure).
52:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** [..]
53:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** (#) Use HAL_DMA_GetState() function to return the DMA state and HAL_DMA_GetError() in case of
54:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** detection.
55:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
56:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** (#) Use HAL_DMA_Abort_IT() function to abort the current transfer
57:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
58:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** -@- In Memory-to-Memory transfer mode, Circular mode is not allowed.
59:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
60:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** -@- The FIFO is used mainly to reduce bus usage and to allow data packing/unpacking: it is
61:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** possible to set different Data Sizes for the Peripheral and the Memory (ie. you can set
62:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** Half-Word data size for the peripheral to access its data register and set Word data siz
63:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** for the Memory to gain in access time. Each two half words will be packed and written in
64:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** a single access to a Word in the Memory).
65:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
66:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** -@- When FIFO is disabled, it is not allowed to configure different Data Sizes for Source
67:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** and Destination. In this case the Peripheral Data Size will be applied to both Source
68:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** and Destination.
69:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
70:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** *** DMA HAL driver macros list ***
71:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** =============================================
72:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** [..]
73:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** Below the list of most used macros in DMA HAL driver.
74:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
75:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** (+) __HAL_DMA_ENABLE: Enable the specified DMA Stream.
76:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** (+) __HAL_DMA_DISABLE: Disable the specified DMA Stream.
77:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** (+) __HAL_DMA_GET_IT_SOURCE: Check whether the specified DMA Stream interrupt has occurred or
78:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
79:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** [..]
80:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** (@) You can refer to the DMA HAL driver header file for more useful macros
81:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
82:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** @endverbatim
83:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** ******************************************************************************
84:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @attention
85:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** *
86:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * Copyright (c) 2017 STMicroelectronics.
87:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * All rights reserved.
ARM GAS /tmp/ccNyAQJd.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 /tmp/ccNyAQJd.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 /tmp/ccNyAQJd.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 /tmp/ccNyAQJd.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 /tmp/ccNyAQJd.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 /tmp/ccNyAQJd.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 /tmp/ccNyAQJd.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 /tmp/ccNyAQJd.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 /tmp/ccNyAQJd.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 /tmp/ccNyAQJd.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 /tmp/ccNyAQJd.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 /tmp/ccNyAQJd.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 /tmp/ccNyAQJd.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 /tmp/ccNyAQJd.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 /tmp/ccNyAQJd.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 /tmp/ccNyAQJd.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 /tmp/ccNyAQJd.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 /tmp/ccNyAQJd.s page 20
1057:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->XferErrorCallback = NULL;
1058:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break;
1059:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
1060:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** case HAL_DMA_XFER_ABORT_CB_ID:
1061:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->XferAbortCallback = NULL;
1062:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break;
1063:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
1064:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** case HAL_DMA_XFER_ALL_CB_ID:
1065:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->XferCpltCallback = NULL;
1066:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->XferHalfCpltCallback = NULL;
1067:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->XferM1CpltCallback = NULL;
1068:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->XferM1HalfCpltCallback = NULL;
1069:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->XferErrorCallback = NULL;
1070:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->XferAbortCallback = NULL;
1071:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break;
1072:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
1073:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** default:
1074:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** status = HAL_ERROR;
1075:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break;
1076:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
1077:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
1078:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** else
1079:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
1080:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** status = HAL_ERROR;
1081:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
1082:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
1083:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Release Lock */
1084:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** __HAL_UNLOCK(hdma);
1085:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
1086:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** return status;
1087:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
1088:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
1089:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /**
1090:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @}
1091:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** */
1092:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
1093:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /** @addtogroup DMA_Exported_Functions_Group3
1094:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** *
1095:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** @verbatim
1096:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** ===============================================================================
1097:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** ##### State and Errors functions #####
1098:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** ===============================================================================
1099:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** [..]
1100:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** This subsection provides functions allowing to
1101:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** (+) Check the DMA state
1102:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** (+) Get error code
1103:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
1104:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** @endverbatim
1105:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @{
1106:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** */
1107:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
1108:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /**
1109:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @brief Returns the DMA state.
1110:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @param hdma pointer to a DMA_HandleTypeDef structure that contains
1111:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * the configuration information for the specified DMA Stream.
1112:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @retval HAL state
1113:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** */
ARM GAS /tmp/ccNyAQJd.s page 21
1114:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** HAL_DMA_StateTypeDef HAL_DMA_GetState(DMA_HandleTypeDef *hdma)
1115:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
1116:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** return hdma->State;
1117:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
1118:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
1119:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /**
1120:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @brief Return the DMA error code
1121:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @param hdma pointer to a DMA_HandleTypeDef structure that contains
1122:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * the configuration information for the specified DMA Stream.
1123:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @retval DMA Error Code
1124:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** */
1125:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** uint32_t HAL_DMA_GetError(DMA_HandleTypeDef *hdma)
1126:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
1127:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** return hdma->ErrorCode;
1128:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
1129:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
1130:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /**
1131:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @}
1132:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** */
1133:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
1134:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /**
1135:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @}
1136:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** */
1137:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
1138:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /** @addtogroup DMA_Private_Functions
1139:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @{
1140:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** */
1141:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
1142:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /**
1143:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @brief Sets the DMA Transfer parameter.
1144:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @param hdma pointer to a DMA_HandleTypeDef structure that contains
1145:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * the configuration information for the specified DMA Stream.
1146:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @param SrcAddress The source memory Buffer address
1147:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @param DstAddress The destination memory Buffer address
1148:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @param DataLength The length of data to be transferred from source to destination
1149:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @retval HAL status
1150:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** */
1151:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** static void DMA_SetConfig(DMA_HandleTypeDef *hdma, uint32_t SrcAddress, uint32_t DstAddress, uint32
1152:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
29 .loc 1 1152 1 view -0
30 .cfi_startproc
31 @ args = 0, pretend = 0, frame = 0
32 @ frame_needed = 0, uses_anonymous_args = 0
33 @ link register save eliminated.
34 .loc 1 1152 1 is_stmt 0 view .LVU1
35 0000 30B4 push {r4, r5}
36 .LCFI0:
37 .cfi_def_cfa_offset 8
38 .cfi_offset 4, -8
39 .cfi_offset 5, -4
1153:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Clear DBM bit */
1154:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->Instance->CR &= (uint32_t)(~DMA_SxCR_DBM);
40 .loc 1 1154 3 is_stmt 1 view .LVU2
41 .loc 1 1154 7 is_stmt 0 view .LVU3
42 0002 0568 ldr r5, [r0]
43 .loc 1 1154 22 view .LVU4
44 0004 2C68 ldr r4, [r5]
ARM GAS /tmp/ccNyAQJd.s page 22
45 0006 24F48024 bic r4, r4, #262144
46 000a 2C60 str r4, [r5]
1155:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
1156:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Configure DMA Stream data length */
1157:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->Instance->NDTR = DataLength;
47 .loc 1 1157 3 is_stmt 1 view .LVU5
48 .loc 1 1157 7 is_stmt 0 view .LVU6
49 000c 0468 ldr r4, [r0]
50 .loc 1 1157 24 view .LVU7
51 000e 6360 str r3, [r4, #4]
1158:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
1159:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Memory to Peripheral */
1160:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if((hdma->Init.Direction) == DMA_MEMORY_TO_PERIPH)
52 .loc 1 1160 3 is_stmt 1 view .LVU8
53 .loc 1 1160 17 is_stmt 0 view .LVU9
54 0010 8368 ldr r3, [r0, #8]
55 .LVL1:
56 .loc 1 1160 5 view .LVU10
57 0012 402B cmp r3, #64
58 0014 05D0 beq .L5
1161:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
1162:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Configure DMA Stream destination address */
1163:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->Instance->PAR = DstAddress;
1164:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
1165:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Configure DMA Stream source address */
1166:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->Instance->M0AR = SrcAddress;
1167:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
1168:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Peripheral to Memory */
1169:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** else
1170:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
1171:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Configure DMA Stream source address */
1172:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->Instance->PAR = SrcAddress;
59 .loc 1 1172 5 is_stmt 1 view .LVU11
60 .loc 1 1172 9 is_stmt 0 view .LVU12
61 0016 0368 ldr r3, [r0]
62 .loc 1 1172 25 view .LVU13
63 0018 9960 str r1, [r3, #8]
64 .LVL2:
1173:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
1174:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Configure DMA Stream destination address */
1175:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->Instance->M0AR = DstAddress;
65 .loc 1 1175 5 is_stmt 1 view .LVU14
66 .loc 1 1175 9 is_stmt 0 view .LVU15
67 001a 0368 ldr r3, [r0]
68 .loc 1 1175 26 view .LVU16
69 001c DA60 str r2, [r3, #12]
70 .L1:
1176:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
1177:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
71 .loc 1 1177 1 view .LVU17
72 001e 30BC pop {r4, r5}
73 .LCFI1:
74 .cfi_remember_state
75 .cfi_restore 5
76 .cfi_restore 4
77 .cfi_def_cfa_offset 0
78 0020 7047 bx lr
ARM GAS /tmp/ccNyAQJd.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 .LFE146:
98 .section .text.DMA_CalcBaseAndBitshift,"ax",%progbits
99 .align 1
100 .syntax unified
101 .thumb
102 .thumb_func
104 DMA_CalcBaseAndBitshift:
105 .LVL5:
106 .LFB147:
1178:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
1179:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /**
1180:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @brief Returns the DMA Stream base address depending on stream number
1181:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @param hdma pointer to a DMA_HandleTypeDef structure that contains
1182:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * the configuration information for the specified DMA Stream.
1183:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @retval Stream base address
1184:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** */
1185:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** static uint32_t DMA_CalcBaseAndBitshift(DMA_HandleTypeDef *hdma)
1186:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
107 .loc 1 1186 1 is_stmt 1 view -0
108 .cfi_startproc
109 @ args = 0, pretend = 0, frame = 0
110 @ frame_needed = 0, uses_anonymous_args = 0
111 @ link register save eliminated.
112 .loc 1 1186 1 is_stmt 0 view .LVU25
113 0000 10B4 push {r4}
114 .LCFI3:
115 .cfi_def_cfa_offset 4
116 .cfi_offset 4, -4
1187:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** uint32_t stream_number = (((uint32_t)hdma->Instance & 0xFFU) - 16U) / 24U;
117 .loc 1 1187 3 is_stmt 1 view .LVU26
118 .loc 1 1187 44 is_stmt 0 view .LVU27
119 0002 0368 ldr r3, [r0]
120 .loc 1 1187 55 view .LVU28
121 0004 D9B2 uxtb r1, r3
ARM GAS /tmp/ccNyAQJd.s page 24
122 .loc 1 1187 64 view .LVU29
123 0006 1039 subs r1, r1, #16
124 .loc 1 1187 12 view .LVU30
125 0008 0C4A ldr r2, .L10
126 000a A2FB0142 umull r4, r2, r2, r1
127 000e 1209 lsrs r2, r2, #4
128 .LVL6:
1188:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
1189:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* lookup table for necessary bitshift of flags within status registers */
1190:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** static const uint8_t flagBitshiftOffset[8U] = {0U, 6U, 16U, 22U, 0U, 6U, 16U, 22U};
129 .loc 1 1190 3 is_stmt 1 view .LVU31
1191:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->StreamIndex = flagBitshiftOffset[stream_number];
130 .loc 1 1191 3 view .LVU32
131 .loc 1 1191 41 is_stmt 0 view .LVU33
132 0010 0B4C ldr r4, .L10+4
133 0012 A25C ldrb r2, [r4, r2] @ zero_extendqisi2
134 .LVL7:
135 .loc 1 1191 21 view .LVU34
136 0014 C265 str r2, [r0, #92]
1192:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
1193:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if (stream_number > 3U)
137 .loc 1 1193 3 is_stmt 1 view .LVU35
138 .loc 1 1193 6 is_stmt 0 view .LVU36
139 0016 5F29 cmp r1, #95
140 0018 09D9 bls .L7
1194:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
1195:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* return pointer to HISR and HIFCR */
1196:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->StreamBaseAddress = (((uint32_t)hdma->Instance & (uint32_t)(~0x3FFU)) + 4U);
141 .loc 1 1196 5 is_stmt 1 view .LVU37
142 .loc 1 1196 58 is_stmt 0 view .LVU38
143 001a 23F47F73 bic r3, r3, #1020
144 001e 23F00303 bic r3, r3, #3
145 .loc 1 1196 81 view .LVU39
146 0022 0433 adds r3, r3, #4
147 .loc 1 1196 29 view .LVU40
148 0024 8365 str r3, [r0, #88]
149 .L8:
1197:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
1198:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** else
1199:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
1200:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* return pointer to LISR and LIFCR */
1201:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** hdma->StreamBaseAddress = ((uint32_t)hdma->Instance & (uint32_t)(~0x3FFU));
1202:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
1203:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
1204:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** return hdma->StreamBaseAddress;
150 .loc 1 1204 3 is_stmt 1 view .LVU41
1205:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
151 .loc 1 1205 1 is_stmt 0 view .LVU42
152 0026 806D ldr r0, [r0, #88]
153 .LVL8:
154 .loc 1 1205 1 view .LVU43
155 0028 5DF8044B ldr r4, [sp], #4
156 .LCFI4:
157 .cfi_remember_state
158 .cfi_restore 4
159 .cfi_def_cfa_offset 0
160 002c 7047 bx lr
ARM GAS /tmp/ccNyAQJd.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 .LFE147:
180 .section .text.DMA_CheckFifoParam,"ax",%progbits
181 .align 1
182 .syntax unified
183 .thumb
184 .thumb_func
186 DMA_CheckFifoParam:
187 .LVL10:
188 .LFB148:
1206:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
1207:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /**
1208:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @brief Check compatibility between FIFO threshold level and size of the memory burst
1209:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @param hdma pointer to a DMA_HandleTypeDef structure that contains
1210:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * the configuration information for the specified DMA Stream.
1211:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** * @retval HAL status
1212:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** */
1213:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** static HAL_StatusTypeDef DMA_CheckFifoParam(DMA_HandleTypeDef *hdma)
1214:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
189 .loc 1 1214 1 is_stmt 1 view -0
190 .cfi_startproc
191 @ args = 0, pretend = 0, frame = 0
192 @ frame_needed = 0, uses_anonymous_args = 0
193 @ link register save eliminated.
1215:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** HAL_StatusTypeDef status = HAL_OK;
194 .loc 1 1215 3 view .LVU48
1216:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** uint32_t tmp = hdma->Init.FIFOThreshold;
195 .loc 1 1216 3 view .LVU49
196 .loc 1 1216 12 is_stmt 0 view .LVU50
197 0000 836A ldr r3, [r0, #40]
198 .LVL11:
1217:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
1218:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Memory Data size equal to Byte */
1219:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if(hdma->Init.MemDataAlignment == DMA_MDATAALIGN_BYTE)
199 .loc 1 1219 3 is_stmt 1 view .LVU51
200 .loc 1 1219 16 is_stmt 0 view .LVU52
201 0002 8269 ldr r2, [r0, #24]
202 .loc 1 1219 5 view .LVU53
ARM GAS /tmp/ccNyAQJd.s page 26
203 0004 92B9 cbnz r2, .L13
1220:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
1221:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** switch (tmp)
204 .loc 1 1221 5 is_stmt 1 view .LVU54
205 0006 012B cmp r3, #1
206 0008 0AD0 beq .L14
207 000a 022B cmp r3, #2
208 000c 02D0 beq .L15
209 000e 0BB1 cbz r3, .L15
210 0010 0020 movs r0, #0
211 .LVL12:
212 .loc 1 1221 5 is_stmt 0 view .LVU55
213 0012 7047 bx lr
214 .LVL13:
215 .L15:
1222:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
1223:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** case DMA_FIFO_THRESHOLD_1QUARTERFULL:
1224:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** case DMA_FIFO_THRESHOLD_3QUARTERSFULL:
1225:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if ((hdma->Init.MemBurst & DMA_SxCR_MBURST_1) == DMA_SxCR_MBURST_1)
216 .loc 1 1225 7 is_stmt 1 view .LVU56
217 .loc 1 1225 22 is_stmt 0 view .LVU57
218 0014 C36A ldr r3, [r0, #44]
219 .LVL14:
220 .loc 1 1225 10 view .LVU58
221 0016 13F0807F tst r3, #16777216
222 001a 28D1 bne .L23
1215:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** uint32_t tmp = hdma->Init.FIFOThreshold;
223 .loc 1 1215 21 view .LVU59
224 001c 0020 movs r0, #0
225 .LVL15:
1215:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** uint32_t tmp = hdma->Init.FIFOThreshold;
226 .loc 1 1215 21 view .LVU60
227 001e 7047 bx lr
228 .LVL16:
229 .L14:
1226:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
1227:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** status = HAL_ERROR;
1228:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
1229:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break;
1230:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** case DMA_FIFO_THRESHOLD_HALFFULL:
1231:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if (hdma->Init.MemBurst == DMA_MBURST_INC16)
230 .loc 1 1231 7 is_stmt 1 view .LVU61
231 .loc 1 1231 21 is_stmt 0 view .LVU62
232 0020 C36A ldr r3, [r0, #44]
233 .LVL17:
234 .loc 1 1231 10 view .LVU63
235 0022 B3F1C07F cmp r3, #25165824
236 0026 24D0 beq .L24
1215:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** uint32_t tmp = hdma->Init.FIFOThreshold;
237 .loc 1 1215 21 view .LVU64
238 0028 0020 movs r0, #0
239 .LVL18:
1215:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** uint32_t tmp = hdma->Init.FIFOThreshold;
240 .loc 1 1215 21 view .LVU65
241 002a 7047 bx lr
242 .LVL19:
243 .L13:
ARM GAS /tmp/ccNyAQJd.s page 27
1232:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
1233:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** status = HAL_ERROR;
1234:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
1235:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break;
1236:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** case DMA_FIFO_THRESHOLD_FULL:
1237:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break;
1238:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** default:
1239:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break;
1240:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
1241:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
1242:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
1243:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Memory Data size equal to Half-Word */
1244:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** else if (hdma->Init.MemDataAlignment == DMA_MDATAALIGN_HALFWORD)
244 .loc 1 1244 8 is_stmt 1 view .LVU66
245 .loc 1 1244 11 is_stmt 0 view .LVU67
246 002c B2F5005F cmp r2, #8192
247 0030 09D0 beq .L31
1245:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
1246:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** switch (tmp)
1247:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
1248:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** case DMA_FIFO_THRESHOLD_1QUARTERFULL:
1249:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** case DMA_FIFO_THRESHOLD_3QUARTERSFULL:
1250:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** status = HAL_ERROR;
1251:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break;
1252:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** case DMA_FIFO_THRESHOLD_HALFFULL:
1253:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if ((hdma->Init.MemBurst & DMA_SxCR_MBURST_1) == DMA_SxCR_MBURST_1)
1254:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
1255:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** status = HAL_ERROR;
1256:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
1257:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break;
1258:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** case DMA_FIFO_THRESHOLD_FULL:
1259:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if (hdma->Init.MemBurst == DMA_MBURST_INC16)
1260:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
1261:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** status = HAL_ERROR;
1262:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
1263:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break;
1264:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** default:
1265:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break;
1266:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
1267:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
1268:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c ****
1269:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** /* Memory Data size equal to Word */
1270:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** else
1271:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
1272:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** switch (tmp)
248 .loc 1 1272 5 is_stmt 1 view .LVU68
249 0032 022B cmp r3, #2
250 0034 25D9 bls .L28
251 0036 032B cmp r3, #3
252 0038 25D1 bne .L29
1273:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
1274:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** case DMA_FIFO_THRESHOLD_1QUARTERFULL:
1275:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** case DMA_FIFO_THRESHOLD_HALFFULL:
1276:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** case DMA_FIFO_THRESHOLD_3QUARTERSFULL:
1277:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** status = HAL_ERROR;
1278:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break;
1279:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** case DMA_FIFO_THRESHOLD_FULL:
ARM GAS /tmp/ccNyAQJd.s page 28
1280:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** if ((hdma->Init.MemBurst & DMA_SxCR_MBURST_1) == DMA_SxCR_MBURST_1)
253 .loc 1 1280 7 view .LVU69
254 .loc 1 1280 22 is_stmt 0 view .LVU70
255 003a C36A ldr r3, [r0, #44]
256 .LVL20:
257 .loc 1 1280 10 view .LVU71
258 003c 13F0807F tst r3, #16777216
259 0040 23D1 bne .L30
1215:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** uint32_t tmp = hdma->Init.FIFOThreshold;
260 .loc 1 1215 21 view .LVU72
261 0042 0020 movs r0, #0
262 .LVL21:
1215:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** uint32_t tmp = hdma->Init.FIFOThreshold;
263 .loc 1 1215 21 view .LVU73
264 0044 7047 bx lr
265 .LVL22:
266 .L31:
1246:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
267 .loc 1 1246 5 is_stmt 1 view .LVU74
268 0046 032B cmp r3, #3
269 0048 03D8 bhi .L18
270 004a DFE803F0 tbb [pc, r3]
271 .L20:
272 004e 14 .byte (.L25-.L20)/2
273 004f 04 .byte (.L21-.L20)/2
274 0050 14 .byte (.L25-.L20)/2
275 0051 0A .byte (.L19-.L20)/2
276 .p2align 1
277 .L18:
278 0052 0020 movs r0, #0
279 .LVL23:
1246:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
280 .loc 1 1246 5 is_stmt 0 view .LVU75
281 0054 7047 bx lr
282 .LVL24:
283 .L21:
1253:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
284 .loc 1 1253 7 is_stmt 1 view .LVU76
1253:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
285 .loc 1 1253 22 is_stmt 0 view .LVU77
286 0056 C36A ldr r3, [r0, #44]
287 .LVL25:
1253:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
288 .loc 1 1253 10 view .LVU78
289 0058 13F0807F tst r3, #16777216
290 005c 0DD1 bne .L26
1215:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** uint32_t tmp = hdma->Init.FIFOThreshold;
291 .loc 1 1215 21 view .LVU79
292 005e 0020 movs r0, #0
293 .LVL26:
1215:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** uint32_t tmp = hdma->Init.FIFOThreshold;
294 .loc 1 1215 21 view .LVU80
295 0060 7047 bx lr
296 .LVL27:
297 .L19:
1259:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
298 .loc 1 1259 7 is_stmt 1 view .LVU81
ARM GAS /tmp/ccNyAQJd.s page 29
1259:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
299 .loc 1 1259 21 is_stmt 0 view .LVU82
300 0062 C36A ldr r3, [r0, #44]
301 .LVL28:
1259:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** {
302 .loc 1 1259 10 view .LVU83
303 0064 B3F1C07F cmp r3, #25165824
304 0068 09D0 beq .L27
1215:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** uint32_t tmp = hdma->Init.FIFOThreshold;
305 .loc 1 1215 21 view .LVU84
306 006a 0020 movs r0, #0
307 .LVL29:
1215:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** uint32_t tmp = hdma->Init.FIFOThreshold;
308 .loc 1 1215 21 view .LVU85
309 006c 7047 bx lr
310 .LVL30:
311 .L23:
1227:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
312 .loc 1 1227 16 view .LVU86
313 006e 0120 movs r0, #1
314 .LVL31:
1227:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
315 .loc 1 1227 16 view .LVU87
316 0070 7047 bx lr
317 .LVL32:
318 .L24:
1233:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
319 .loc 1 1233 16 view .LVU88
320 0072 0120 movs r0, #1
321 .LVL33:
1233:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
322 .loc 1 1233 16 view .LVU89
323 0074 7047 bx lr
324 .LVL34:
325 .L25:
1250:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break;
326 .loc 1 1250 14 view .LVU90
327 0076 0120 movs r0, #1
328 .LVL35:
1250:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** break;
329 .loc 1 1250 14 view .LVU91
330 0078 7047 bx lr
331 .LVL36:
332 .L26:
1255:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
333 .loc 1 1255 16 view .LVU92
334 007a 0120 movs r0, #1
335 .LVL37:
1255:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
336 .loc 1 1255 16 view .LVU93
337 007c 7047 bx lr
338 .LVL38:
339 .L27:
1261:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c **** }
340 .loc 1 1261 16 view .LVU94
341 007e 0120 movs r0, #1
342 .LVL39:
ARM GAS /tmp/ccNyAQJd.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 .LFE148:
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 .LFB134:
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 /tmp/ccNyAQJd.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 /tmp/ccNyAQJd.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 /tmp/ccNyAQJd.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 /tmp/ccNyAQJd.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 /tmp/ccNyAQJd.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 /tmp/ccNyAQJd.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 /tmp/ccNyAQJd.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 .LFE134:
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 .LFB135:
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 /tmp/ccNyAQJd.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 /tmp/ccNyAQJd.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 /tmp/ccNyAQJd.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 .LFE135:
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 .LFB136:
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 /tmp/ccNyAQJd.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 /tmp/ccNyAQJd.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 .LFE136:
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 .LFB137:
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 /tmp/ccNyAQJd.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 /tmp/ccNyAQJd.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 /tmp/ccNyAQJd.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 .LFE137:
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 .LFB138:
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 /tmp/ccNyAQJd.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 /tmp/ccNyAQJd.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 /tmp/ccNyAQJd.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 /tmp/ccNyAQJd.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 .LFE138:
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 .LFB139:
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 /tmp/ccNyAQJd.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 .LFE139:
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 .LFB140:
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 /tmp/ccNyAQJd.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 /tmp/ccNyAQJd.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 /tmp/ccNyAQJd.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 /tmp/ccNyAQJd.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 /tmp/ccNyAQJd.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 /tmp/ccNyAQJd.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 /tmp/ccNyAQJd.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 .LFE140:
1489 .section .text.HAL_DMA_IRQHandler,"ax",%progbits
1490 .align 1
1491 .global HAL_DMA_IRQHandler
1492 .syntax unified
ARM GAS /tmp/ccNyAQJd.s page 58
1493 .thumb
1494 .thumb_func
1496 HAL_DMA_IRQHandler:
1497 .LVL123:
1498 .LFB141:
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 /tmp/ccNyAQJd.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 /tmp/ccNyAQJd.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 /tmp/ccNyAQJd.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 /tmp/ccNyAQJd.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 /tmp/ccNyAQJd.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 /tmp/ccNyAQJd.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 /tmp/ccNyAQJd.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 /tmp/ccNyAQJd.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 /tmp/ccNyAQJd.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 /tmp/ccNyAQJd.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 /tmp/ccNyAQJd.s page 69
1939 .cfi_endproc
1940 .LFE141:
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 .LFB142:
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 /tmp/ccNyAQJd.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 /tmp/ccNyAQJd.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 /tmp/ccNyAQJd.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 .LFE142:
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 .LFB143:
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 /tmp/ccNyAQJd.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 /tmp/ccNyAQJd.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 /tmp/ccNyAQJd.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 .LFE143:
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 .LFB144:
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 .LFE144:
2234 .section .text.HAL_DMA_GetError,"ax",%progbits
2235 .align 1
2236 .global HAL_DMA_GetError
ARM GAS /tmp/ccNyAQJd.s page 76
2237 .syntax unified
2238 .thumb
2239 .thumb_func
2241 HAL_DMA_GetError:
2242 .LVL156:
2243 .LFB145:
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 .LFE145:
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 "/home/jfen/toolchain/gcc-arm-none-eabi-10.3-2021.10/arm-none-eabi/include/machine/_defaul
2268 .file 3 "/home/jfen/toolchain/gcc-arm-none-eabi-10.3-2021.10/arm-none-eabi/include/sys/_stdint.h"
2269 .file 4 "Drivers/CMSIS/Device/ST/STM32F4xx/Include/stm32f407xx.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 /tmp/ccNyAQJd.s page 77
DEFINED SYMBOLS
*ABS*:0000000000000000 stm32f4xx_hal_dma.c
/tmp/ccNyAQJd.s:20 .text.DMA_SetConfig:0000000000000000 $t
/tmp/ccNyAQJd.s:25 .text.DMA_SetConfig:0000000000000000 DMA_SetConfig
/tmp/ccNyAQJd.s:99 .text.DMA_CalcBaseAndBitshift:0000000000000000 $t
/tmp/ccNyAQJd.s:104 .text.DMA_CalcBaseAndBitshift:0000000000000000 DMA_CalcBaseAndBitshift
/tmp/ccNyAQJd.s:175 .text.DMA_CalcBaseAndBitshift:000000000000003c $d
/tmp/ccNyAQJd.s:181 .text.DMA_CheckFifoParam:0000000000000000 $t
/tmp/ccNyAQJd.s:186 .text.DMA_CheckFifoParam:0000000000000000 DMA_CheckFifoParam
/tmp/ccNyAQJd.s:272 .text.DMA_CheckFifoParam:000000000000004e $d
/tmp/ccNyAQJd.s:276 .text.DMA_CheckFifoParam:0000000000000052 $t
/tmp/ccNyAQJd.s:371 .text.HAL_DMA_Init:0000000000000000 $t
/tmp/ccNyAQJd.s:377 .text.HAL_DMA_Init:0000000000000000 HAL_DMA_Init
/tmp/ccNyAQJd.s:626 .text.HAL_DMA_Init:00000000000000c8 $d
/tmp/ccNyAQJd.s:631 .text.HAL_DMA_DeInit:0000000000000000 $t
/tmp/ccNyAQJd.s:637 .text.HAL_DMA_DeInit:0000000000000000 HAL_DMA_DeInit
/tmp/ccNyAQJd.s:770 .text.HAL_DMA_Start:0000000000000000 $t
/tmp/ccNyAQJd.s:776 .text.HAL_DMA_Start:0000000000000000 HAL_DMA_Start
/tmp/ccNyAQJd.s:859 .text.HAL_DMA_Start_IT:0000000000000000 $t
/tmp/ccNyAQJd.s:865 .text.HAL_DMA_Start_IT:0000000000000000 HAL_DMA_Start_IT
/tmp/ccNyAQJd.s:980 .text.HAL_DMA_Abort:0000000000000000 $t
/tmp/ccNyAQJd.s:986 .text.HAL_DMA_Abort:0000000000000000 HAL_DMA_Abort
/tmp/ccNyAQJd.s:1140 .text.HAL_DMA_Abort_IT:0000000000000000 $t
/tmp/ccNyAQJd.s:1146 .text.HAL_DMA_Abort_IT:0000000000000000 HAL_DMA_Abort_IT
/tmp/ccNyAQJd.s:1192 .text.HAL_DMA_PollForTransfer:0000000000000000 $t
/tmp/ccNyAQJd.s:1198 .text.HAL_DMA_PollForTransfer:0000000000000000 HAL_DMA_PollForTransfer
/tmp/ccNyAQJd.s:1490 .text.HAL_DMA_IRQHandler:0000000000000000 $t
/tmp/ccNyAQJd.s:1496 .text.HAL_DMA_IRQHandler:0000000000000000 HAL_DMA_IRQHandler
/tmp/ccNyAQJd.s:1937 .text.HAL_DMA_IRQHandler:00000000000001d4 $d
/tmp/ccNyAQJd.s:1943 .text.HAL_DMA_RegisterCallback:0000000000000000 $t
/tmp/ccNyAQJd.s:1949 .text.HAL_DMA_RegisterCallback:0000000000000000 HAL_DMA_RegisterCallback
/tmp/ccNyAQJd.s:2000 .text.HAL_DMA_RegisterCallback:000000000000002c $d
/tmp/ccNyAQJd.s:2006 .text.HAL_DMA_RegisterCallback:0000000000000032 $t
/tmp/ccNyAQJd.s:2070 .text.HAL_DMA_UnRegisterCallback:0000000000000000 $t
/tmp/ccNyAQJd.s:2076 .text.HAL_DMA_UnRegisterCallback:0000000000000000 HAL_DMA_UnRegisterCallback
/tmp/ccNyAQJd.s:2125 .text.HAL_DMA_UnRegisterCallback:000000000000002c $d
/tmp/ccNyAQJd.s:2211 .text.HAL_DMA_GetState:0000000000000000 $t
/tmp/ccNyAQJd.s:2217 .text.HAL_DMA_GetState:0000000000000000 HAL_DMA_GetState
/tmp/ccNyAQJd.s:2235 .text.HAL_DMA_GetError:0000000000000000 $t
/tmp/ccNyAQJd.s:2241 .text.HAL_DMA_GetError:0000000000000000 HAL_DMA_GetError
/tmp/ccNyAQJd.s:2259 .rodata.flagBitshiftOffset.0:0000000000000000 $d
/tmp/ccNyAQJd.s:2263 .rodata.flagBitshiftOffset.0:0000000000000000 flagBitshiftOffset.0
/tmp/ccNyAQJd.s:2132 .text.HAL_DMA_UnRegisterCallback:0000000000000033 $d
/tmp/ccNyAQJd.s:2132 .text.HAL_DMA_UnRegisterCallback:0000000000000034 $t
UNDEFINED SYMBOLS
HAL_GetTick
SystemCoreClock