mv-bms/Software/build/stm32f3xx_hal_dma.lst

2798 lines
148 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/ccDI3rYs.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, 6
13 .eabi_attribute 34, 1
14 .eabi_attribute 18, 4
15 .file "stm32f3xx_hal_dma.c"
16 .text
17 .Ltext0:
18 .cfi_sections .debug_frame
19 .file 1 "Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c"
20 .section .text.HAL_DMA_Init,"ax",%progbits
21 .align 1
22 .global HAL_DMA_Init
23 .syntax unified
24 .thumb
25 .thumb_func
27 HAL_DMA_Init:
28 .LFB130:
1:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /**
2:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** ******************************************************************************
3:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * @file stm32f3xx_hal_dma.c
4:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * @author MCD Application Team
5:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * @brief DMA HAL module driver.
6:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** *
7:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * This file provides firmware functions to manage the following
8:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * functionalities of the Direct Memory Access (DMA) peripheral:
9:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * + Initialization and de-initialization functions
10:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * + IO operation functions
11:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * + Peripheral State and errors functions
12:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** @verbatim
13:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** ==============================================================================
14:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** ##### How to use this driver #####
15:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** ==============================================================================
16:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** [..]
17:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** (#) Enable and configure the peripheral to be connected to the DMA Channel
18:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** (except for internal SRAM / FLASH memories: no initialization is
19:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** necessary). Please refer to Reference manual for connection between peripherals
20:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** and DMA requests .
21:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
22:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** (#) For a given Channel, program the required configuration through the following parameters:
23:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** Transfer Direction, Source and Destination data formats,
24:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** Circular or Normal mode, Channel Priority level, Source and Destination Increment mode,
25:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** using HAL_DMA_Init() function.
26:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
27:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** (#) Use HAL_DMA_GetState() function to return the DMA state and HAL_DMA_GetError() in case of er
28:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** detection.
29:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
30:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** (#) Use HAL_DMA_Abort() function to abort the current transfer
ARM GAS /tmp/ccDI3rYs.s page 2
31:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
32:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** -@- In Memory-to-Memory transfer mode, Circular mode is not allowed.
33:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** *** Polling mode IO operation ***
34:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** =================================
35:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** [..]
36:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** (+) Use HAL_DMA_Start() to start DMA transfer after the configuration of Source
37:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** address and destination address and the Length of data to be transferred
38:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** (+) Use HAL_DMA_PollForTransfer() to poll for the end of current transfer, in this
39:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** case a fixed Timeout can be configured by User depending from his application.
40:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
41:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** *** Interrupt mode IO operation ***
42:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** ===================================
43:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** [..]
44:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** (+) Configure the DMA interrupt priority using HAL_NVIC_SetPriority()
45:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** (+) Enable the DMA IRQ handler using HAL_NVIC_EnableIRQ()
46:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** (+) Use HAL_DMA_Start_IT() to start DMA transfer after the configuration of
47:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** Source address and destination address and the Length of data to be transferred.
48:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** In this case the DMA interrupt is configured
49:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** (+) Use HAL_DMA_Channel_IRQHandler() called under DMA_IRQHandler() Interrupt subroutine
50:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** (+) At the end of data transfer HAL_DMA_IRQHandler() function is executed and user can
51:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** add his own function by customization of function pointer XferCpltCallback and
52:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** XferErrorCallback (i.e a member of DMA handle structure).
53:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
54:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** *** DMA HAL driver macros list ***
55:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** =============================================
56:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** [..]
57:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** Below the list of most used macros in DMA HAL driver.
58:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
59:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** [..]
60:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** (@) You can refer to the DMA HAL driver header file for more useful macros
61:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
62:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** @endverbatim
63:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** ******************************************************************************
64:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * @attention
65:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** *
66:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * Copyright (c) 2016 STMicroelectronics.
67:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * All rights reserved.
68:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** *
69:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * This software is licensed under terms that can be found in the LICENSE file in
70:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * the root directory of this software component.
71:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * If no LICENSE file comes with this software, it is provided AS-IS.
72:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** *
73:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** ******************************************************************************
74:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** */
75:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
76:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Includes ------------------------------------------------------------------*/
77:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** #include "stm32f3xx_hal.h"
78:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
79:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /** @addtogroup STM32F3xx_HAL_Driver
80:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * @{
81:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** */
82:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
83:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /** @defgroup DMA DMA
84:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * @brief DMA HAL module driver
85:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * @{
86:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** */
87:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
ARM GAS /tmp/ccDI3rYs.s page 3
88:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** #ifdef HAL_DMA_MODULE_ENABLED
89:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
90:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Private typedef -----------------------------------------------------------*/
91:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Private define ------------------------------------------------------------*/
92:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Private macro -------------------------------------------------------------*/
93:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Private variables ---------------------------------------------------------*/
94:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Private function prototypes -----------------------------------------------*/
95:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /** @defgroup DMA_Private_Functions DMA Private Functions
96:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * @{
97:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** */
98:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** static void DMA_SetConfig(DMA_HandleTypeDef *hdma, uint32_t SrcAddress, uint32_t DstAddress, uint32
99:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** static void DMA_CalcBaseAndBitshift(DMA_HandleTypeDef *hdma);
100:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /**
101:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * @}
102:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** */
103:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
104:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Exported functions ---------------------------------------------------------*/
105:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
106:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /** @defgroup DMA_Exported_Functions DMA Exported Functions
107:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * @{
108:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** */
109:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
110:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /** @defgroup DMA_Exported_Functions_Group1 Initialization and de-initialization functions
111:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * @brief Initialization and de-initialization functions
112:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** *
113:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** @verbatim
114:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** ===============================================================================
115:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** ##### Initialization and de-initialization functions #####
116:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** ===============================================================================
117:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** [..]
118:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** This section provides functions allowing to initialize the DMA Channel source
119:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** and destination addresses, incrementation and data sizes, transfer direction,
120:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** circular/normal mode selection, memory-to-memory mode selection and Channel priority value.
121:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** [..]
122:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** The HAL_DMA_Init() function follows the DMA configuration procedures as described in
123:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** reference manual.
124:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
125:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** @endverbatim
126:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * @{
127:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** */
128:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
129:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /**
130:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * @brief Initialize the DMA according to the specified
131:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * parameters in the DMA_InitTypeDef and initialize the associated handle.
132:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * @param hdma Pointer to a DMA_HandleTypeDef structure that contains
133:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * the configuration information for the specified DMA Channel.
134:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * @retval HAL status
135:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** */
136:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** HAL_StatusTypeDef HAL_DMA_Init(DMA_HandleTypeDef *hdma)
137:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** {
29 .loc 1 137 1
30 .cfi_startproc
31 @ args = 0, pretend = 0, frame = 16
32 @ frame_needed = 1, uses_anonymous_args = 0
33 0000 80B5 push {r7, lr}
34 .cfi_def_cfa_offset 8
35 .cfi_offset 7, -8
ARM GAS /tmp/ccDI3rYs.s page 4
36 .cfi_offset 14, -4
37 0002 84B0 sub sp, sp, #16
38 .cfi_def_cfa_offset 24
39 0004 00AF add r7, sp, #0
40 .cfi_def_cfa_register 7
41 0006 7860 str r0, [r7, #4]
138:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** uint32_t tmp = 0U;
42 .loc 1 138 12
43 0008 0023 movs r3, #0
44 000a FB60 str r3, [r7, #12]
139:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
140:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Check the DMA handle allocation */
141:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** if(NULL == hdma)
45 .loc 1 141 5
46 000c 7B68 ldr r3, [r7, #4]
47 000e 002B cmp r3, #0
48 0010 01D1 bne .L2
142:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** {
143:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** return HAL_ERROR;
49 .loc 1 143 12
50 0012 0123 movs r3, #1
51 0014 37E0 b .L3
52 .L2:
144:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** }
145:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
146:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Check the parameters */
147:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** assert_param(IS_DMA_ALL_INSTANCE(hdma->Instance));
148:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** assert_param(IS_DMA_DIRECTION(hdma->Init.Direction));
149:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** assert_param(IS_DMA_PERIPHERAL_INC_STATE(hdma->Init.PeriphInc));
150:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** assert_param(IS_DMA_MEMORY_INC_STATE(hdma->Init.MemInc));
151:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** assert_param(IS_DMA_PERIPHERAL_DATA_SIZE(hdma->Init.PeriphDataAlignment));
152:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** assert_param(IS_DMA_MEMORY_DATA_SIZE(hdma->Init.MemDataAlignment));
153:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** assert_param(IS_DMA_MODE(hdma->Init.Mode));
154:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** assert_param(IS_DMA_PRIORITY(hdma->Init.Priority));
155:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
156:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Change DMA peripheral state */
157:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** hdma->State = HAL_DMA_STATE_BUSY;
53 .loc 1 157 15
54 0016 7B68 ldr r3, [r7, #4]
55 0018 0222 movs r2, #2
56 001a 83F82120 strb r2, [r3, #33]
158:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
159:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Get the CR register value */
160:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** tmp = hdma->Instance->CCR;
57 .loc 1 160 13
58 001e 7B68 ldr r3, [r7, #4]
59 0020 1B68 ldr r3, [r3]
60 .loc 1 160 7
61 0022 1B68 ldr r3, [r3]
62 0024 FB60 str r3, [r7, #12]
161:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
162:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Clear PL, MSIZE, PSIZE, MINC, PINC, CIRC, DIR bits */
163:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** tmp &= ((uint32_t)~(DMA_CCR_PL | DMA_CCR_MSIZE | DMA_CCR_PSIZE | \
63 .loc 1 163 7
64 0026 FB68 ldr r3, [r7, #12]
65 0028 23F47F53 bic r3, r3, #16320
66 002c 23F03003 bic r3, r3, #48
ARM GAS /tmp/ccDI3rYs.s page 5
67 0030 FB60 str r3, [r7, #12]
164:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** DMA_CCR_MINC | DMA_CCR_PINC | DMA_CCR_CIRC | \
165:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** DMA_CCR_DIR));
166:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
167:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Prepare the DMA Channel configuration */
168:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** tmp |= hdma->Init.Direction |
68 .loc 1 168 21
69 0032 7B68 ldr r3, [r7, #4]
70 0034 5A68 ldr r2, [r3, #4]
169:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** hdma->Init.PeriphInc | hdma->Init.MemInc |
71 .loc 1 169 21
72 0036 7B68 ldr r3, [r7, #4]
73 0038 9B68 ldr r3, [r3, #8]
168:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** hdma->Init.PeriphInc | hdma->Init.MemInc |
74 .loc 1 168 39
75 003a 1A43 orrs r2, r2, r3
76 .loc 1 169 54
77 003c 7B68 ldr r3, [r7, #4]
78 003e DB68 ldr r3, [r3, #12]
79 .loc 1 169 42
80 0040 1A43 orrs r2, r2, r3
170:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** hdma->Init.PeriphDataAlignment | hdma->Init.MemDataAlignment |
81 .loc 1 170 21
82 0042 7B68 ldr r3, [r7, #4]
83 0044 1B69 ldr r3, [r3, #16]
169:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** hdma->Init.PeriphInc | hdma->Init.MemInc |
84 .loc 1 169 72
85 0046 1A43 orrs r2, r2, r3
86 .loc 1 170 54
87 0048 7B68 ldr r3, [r7, #4]
88 004a 5B69 ldr r3, [r3, #20]
89 .loc 1 170 42
90 004c 1A43 orrs r2, r2, r3
171:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** hdma->Init.Mode | hdma->Init.Priority;
91 .loc 1 171 21
92 004e 7B68 ldr r3, [r7, #4]
93 0050 9B69 ldr r3, [r3, #24]
170:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** hdma->Init.PeriphDataAlignment | hdma->Init.MemDataAlignment |
94 .loc 1 170 72
95 0052 1A43 orrs r2, r2, r3
96 .loc 1 171 54
97 0054 7B68 ldr r3, [r7, #4]
98 0056 DB69 ldr r3, [r3, #28]
99 .loc 1 171 42
100 0058 1343 orrs r3, r3, r2
168:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** hdma->Init.PeriphInc | hdma->Init.MemInc |
101 .loc 1 168 7
102 005a FA68 ldr r2, [r7, #12]
103 005c 1343 orrs r3, r3, r2
104 005e FB60 str r3, [r7, #12]
172:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
173:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Write to DMA Channel CR register */
174:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** hdma->Instance->CCR = tmp;
105 .loc 1 174 7
106 0060 7B68 ldr r3, [r7, #4]
107 0062 1B68 ldr r3, [r3]
108 .loc 1 174 23
ARM GAS /tmp/ccDI3rYs.s page 6
109 0064 FA68 ldr r2, [r7, #12]
110 0066 1A60 str r2, [r3]
175:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
176:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Initialize DmaBaseAddress and ChannelIndex parameters used
177:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** by HAL_DMA_IRQHandler() and HAL_DMA_PollForTransfer() */
178:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** DMA_CalcBaseAndBitshift(hdma);
111 .loc 1 178 3
112 0068 7868 ldr r0, [r7, #4]
113 006a FFF7FEFF bl DMA_CalcBaseAndBitshift
179:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
180:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Initialise the error code */
181:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** hdma->ErrorCode = HAL_DMA_ERROR_NONE;
114 .loc 1 181 19
115 006e 7B68 ldr r3, [r7, #4]
116 0070 0022 movs r2, #0
117 0072 9A63 str r2, [r3, #56]
182:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
183:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Initialize the DMA state*/
184:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** hdma->State = HAL_DMA_STATE_READY;
118 .loc 1 184 15
119 0074 7B68 ldr r3, [r7, #4]
120 0076 0122 movs r2, #1
121 0078 83F82120 strb r2, [r3, #33]
185:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
186:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Allocate lock resource and initialize it */
187:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** hdma->Lock = HAL_UNLOCKED;
122 .loc 1 187 14
123 007c 7B68 ldr r3, [r7, #4]
124 007e 0022 movs r2, #0
125 0080 83F82020 strb r2, [r3, #32]
188:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
189:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** return HAL_OK;
126 .loc 1 189 10
127 0084 0023 movs r3, #0
128 .L3:
190:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** }
129 .loc 1 190 1
130 0086 1846 mov r0, r3
131 0088 1037 adds r7, r7, #16
132 .cfi_def_cfa_offset 8
133 008a BD46 mov sp, r7
134 .cfi_def_cfa_register 13
135 @ sp needed
136 008c 80BD pop {r7, pc}
137 .cfi_endproc
138 .LFE130:
140 .section .text.HAL_DMA_DeInit,"ax",%progbits
141 .align 1
142 .global HAL_DMA_DeInit
143 .syntax unified
144 .thumb
145 .thumb_func
147 HAL_DMA_DeInit:
148 .LFB131:
191:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
192:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /**
193:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * @brief DeInitialize the DMA peripheral
ARM GAS /tmp/ccDI3rYs.s page 7
194:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * @param hdma pointer to a DMA_HandleTypeDef structure that contains
195:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * the configuration information for the specified DMA Channel.
196:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * @retval HAL status
197:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** */
198:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** HAL_StatusTypeDef HAL_DMA_DeInit(DMA_HandleTypeDef *hdma)
199:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** {
149 .loc 1 199 1
150 .cfi_startproc
151 @ args = 0, pretend = 0, frame = 8
152 @ frame_needed = 1, uses_anonymous_args = 0
153 0000 80B5 push {r7, lr}
154 .cfi_def_cfa_offset 8
155 .cfi_offset 7, -8
156 .cfi_offset 14, -4
157 0002 82B0 sub sp, sp, #8
158 .cfi_def_cfa_offset 16
159 0004 00AF add r7, sp, #0
160 .cfi_def_cfa_register 7
161 0006 7860 str r0, [r7, #4]
200:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Check the DMA handle allocation */
201:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** if(NULL == hdma)
162 .loc 1 201 5
163 0008 7B68 ldr r3, [r7, #4]
164 000a 002B cmp r3, #0
165 000c 01D1 bne .L5
202:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** {
203:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** return HAL_ERROR;
166 .loc 1 203 12
167 000e 0123 movs r3, #1
168 0010 3AE0 b .L6
169 .L5:
204:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** }
205:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
206:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Check the parameters */
207:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** assert_param(IS_DMA_ALL_INSTANCE(hdma->Instance));
208:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
209:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Disable the selected DMA Channelx */
210:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** hdma->Instance->CCR &= ~DMA_CCR_EN;
170 .loc 1 210 7
171 0012 7B68 ldr r3, [r7, #4]
172 0014 1B68 ldr r3, [r3]
173 .loc 1 210 17
174 0016 1A68 ldr r2, [r3]
175 .loc 1 210 7
176 0018 7B68 ldr r3, [r7, #4]
177 001a 1B68 ldr r3, [r3]
178 .loc 1 210 23
179 001c 22F00102 bic r2, r2, #1
180 0020 1A60 str r2, [r3]
211:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
212:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Reset DMA Channel control register */
213:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** hdma->Instance->CCR = 0U;
181 .loc 1 213 7
182 0022 7B68 ldr r3, [r7, #4]
183 0024 1B68 ldr r3, [r3]
184 .loc 1 213 24
185 0026 0022 movs r2, #0
ARM GAS /tmp/ccDI3rYs.s page 8
186 0028 1A60 str r2, [r3]
214:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
215:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Reset DMA Channel Number of Data to Transfer register */
216:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** hdma->Instance->CNDTR = 0U;
187 .loc 1 216 7
188 002a 7B68 ldr r3, [r7, #4]
189 002c 1B68 ldr r3, [r3]
190 .loc 1 216 25
191 002e 0022 movs r2, #0
192 0030 5A60 str r2, [r3, #4]
217:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
218:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Reset DMA Channel peripheral address register */
219:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** hdma->Instance->CPAR = 0U;
193 .loc 1 219 7
194 0032 7B68 ldr r3, [r7, #4]
195 0034 1B68 ldr r3, [r3]
196 .loc 1 219 25
197 0036 0022 movs r2, #0
198 0038 9A60 str r2, [r3, #8]
220:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
221:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Reset DMA Channel memory address register */
222:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** hdma->Instance->CMAR = 0U;
199 .loc 1 222 7
200 003a 7B68 ldr r3, [r7, #4]
201 003c 1B68 ldr r3, [r3]
202 .loc 1 222 24
203 003e 0022 movs r2, #0
204 0040 DA60 str r2, [r3, #12]
223:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
224:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Get DMA Base Address */
225:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** DMA_CalcBaseAndBitshift(hdma);
205 .loc 1 225 3
206 0042 7868 ldr r0, [r7, #4]
207 0044 FFF7FEFF bl DMA_CalcBaseAndBitshift
226:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
227:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Clear all flags */
228:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** hdma->DmaBaseAddress->IFCR = DMA_FLAG_GL1 << hdma->ChannelIndex;
208 .loc 1 228 52
209 0048 7B68 ldr r3, [r7, #4]
210 004a 1A6C ldr r2, [r3, #64]
211 .loc 1 228 7
212 004c 7B68 ldr r3, [r7, #4]
213 004e DB6B ldr r3, [r3, #60]
214 .loc 1 228 45
215 0050 0121 movs r1, #1
216 0052 01FA02F2 lsl r2, r1, r2
217 .loc 1 228 30
218 0056 5A60 str r2, [r3, #4]
229:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
230:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Clean callbacks */
231:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** hdma->XferCpltCallback = NULL;
219 .loc 1 231 26
220 0058 7B68 ldr r3, [r7, #4]
221 005a 0022 movs r2, #0
222 005c 9A62 str r2, [r3, #40]
232:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** hdma->XferHalfCpltCallback = NULL;
223 .loc 1 232 30
ARM GAS /tmp/ccDI3rYs.s page 9
224 005e 7B68 ldr r3, [r7, #4]
225 0060 0022 movs r2, #0
226 0062 DA62 str r2, [r3, #44]
233:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** hdma->XferErrorCallback = NULL;
227 .loc 1 233 27
228 0064 7B68 ldr r3, [r7, #4]
229 0066 0022 movs r2, #0
230 0068 1A63 str r2, [r3, #48]
234:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** hdma->XferAbortCallback = NULL;
231 .loc 1 234 27
232 006a 7B68 ldr r3, [r7, #4]
233 006c 0022 movs r2, #0
234 006e 5A63 str r2, [r3, #52]
235:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
236:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Reset the error code */
237:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** hdma->ErrorCode = HAL_DMA_ERROR_NONE;
235 .loc 1 237 19
236 0070 7B68 ldr r3, [r7, #4]
237 0072 0022 movs r2, #0
238 0074 9A63 str r2, [r3, #56]
238:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
239:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Reset the DMA state */
240:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** hdma->State = HAL_DMA_STATE_RESET;
239 .loc 1 240 15
240 0076 7B68 ldr r3, [r7, #4]
241 0078 0022 movs r2, #0
242 007a 83F82120 strb r2, [r3, #33]
241:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
242:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Release Lock */
243:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** __HAL_UNLOCK(hdma);
243 .loc 1 243 3
244 007e 7B68 ldr r3, [r7, #4]
245 0080 0022 movs r2, #0
246 0082 83F82020 strb r2, [r3, #32]
244:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
245:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** return HAL_OK;
247 .loc 1 245 10
248 0086 0023 movs r3, #0
249 .L6:
246:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** }
250 .loc 1 246 1
251 0088 1846 mov r0, r3
252 008a 0837 adds r7, r7, #8
253 .cfi_def_cfa_offset 8
254 008c BD46 mov sp, r7
255 .cfi_def_cfa_register 13
256 @ sp needed
257 008e 80BD pop {r7, pc}
258 .cfi_endproc
259 .LFE131:
261 .section .text.HAL_DMA_Start,"ax",%progbits
262 .align 1
263 .global HAL_DMA_Start
264 .syntax unified
265 .thumb
266 .thumb_func
268 HAL_DMA_Start:
ARM GAS /tmp/ccDI3rYs.s page 10
269 .LFB132:
247:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
248:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /**
249:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * @}
250:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** */
251:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
252:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /** @defgroup DMA_Exported_Functions_Group2 Input and Output operation functions
253:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * @brief I/O operation functions
254:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** *
255:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** @verbatim
256:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** ===============================================================================
257:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** ##### IO operation functions #####
258:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** ===============================================================================
259:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** [..] This section provides functions allowing to:
260:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** (+) Configure the source, destination address and data length and Start DMA transfer
261:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** (+) Configure the source, destination address and data length and
262:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** Start DMA transfer with interrupt
263:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** (+) Abort DMA transfer
264:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** (+) Poll for transfer complete
265:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** (+) Handle DMA interrupt request
266:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
267:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** @endverbatim
268:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * @{
269:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** */
270:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
271:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /**
272:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * @brief Start the DMA Transfer.
273:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * @param hdma : pointer to a DMA_HandleTypeDef structure that contains
274:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * the configuration information for the specified DMA Channel.
275:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * @param SrcAddress The source memory Buffer address
276:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * @param DstAddress The destination memory Buffer address
277:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * @param DataLength The length of data to be transferred from source to destination
278:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * @retval HAL status
279:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** */
280:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** HAL_StatusTypeDef HAL_DMA_Start(DMA_HandleTypeDef *hdma, uint32_t SrcAddress, uint32_t DstAddress,
281:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** {
270 .loc 1 281 1
271 .cfi_startproc
272 @ args = 0, pretend = 0, frame = 24
273 @ frame_needed = 1, uses_anonymous_args = 0
274 0000 80B5 push {r7, lr}
275 .cfi_def_cfa_offset 8
276 .cfi_offset 7, -8
277 .cfi_offset 14, -4
278 0002 86B0 sub sp, sp, #24
279 .cfi_def_cfa_offset 32
280 0004 00AF add r7, sp, #0
281 .cfi_def_cfa_register 7
282 0006 F860 str r0, [r7, #12]
283 0008 B960 str r1, [r7, #8]
284 000a 7A60 str r2, [r7, #4]
285 000c 3B60 str r3, [r7]
282:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** HAL_StatusTypeDef status = HAL_OK;
286 .loc 1 282 20
287 000e 0023 movs r3, #0
288 0010 FB75 strb r3, [r7, #23]
283:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
ARM GAS /tmp/ccDI3rYs.s page 11
284:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Check the parameters */
285:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** assert_param(IS_DMA_BUFFER_SIZE(DataLength));
286:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
287:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Process locked */
288:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** __HAL_LOCK(hdma);
289 .loc 1 288 3
290 0012 FB68 ldr r3, [r7, #12]
291 0014 93F82030 ldrb r3, [r3, #32] @ zero_extendqisi2
292 0018 012B cmp r3, #1
293 001a 01D1 bne .L8
294 .loc 1 288 3 is_stmt 0 discriminator 1
295 001c 0223 movs r3, #2
296 .loc 1 288 3
297 001e 2DE0 b .L9
298 .L8:
299 .loc 1 288 3 discriminator 2
300 0020 FB68 ldr r3, [r7, #12]
301 0022 0122 movs r2, #1
302 0024 83F82020 strb r2, [r3, #32]
289:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
290:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** if(HAL_DMA_STATE_READY == hdma->State)
303 .loc 1 290 33 is_stmt 1
304 0028 FB68 ldr r3, [r7, #12]
305 002a 93F82130 ldrb r3, [r3, #33] @ zero_extendqisi2
306 .loc 1 290 5
307 002e 012B cmp r3, #1
308 0030 1DD1 bne .L10
291:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** {
292:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Change DMA peripheral state */
293:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** hdma->State = HAL_DMA_STATE_BUSY;
309 .loc 1 293 16
310 0032 FB68 ldr r3, [r7, #12]
311 0034 0222 movs r2, #2
312 0036 83F82120 strb r2, [r3, #33]
294:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
295:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** hdma->ErrorCode = HAL_DMA_ERROR_NONE;
313 .loc 1 295 20
314 003a FB68 ldr r3, [r7, #12]
315 003c 0022 movs r2, #0
316 003e 9A63 str r2, [r3, #56]
296:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
297:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Disable the peripheral */
298:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** hdma->Instance->CCR &= ~DMA_CCR_EN;
317 .loc 1 298 8
318 0040 FB68 ldr r3, [r7, #12]
319 0042 1B68 ldr r3, [r3]
320 .loc 1 298 18
321 0044 1A68 ldr r2, [r3]
322 .loc 1 298 8
323 0046 FB68 ldr r3, [r7, #12]
324 0048 1B68 ldr r3, [r3]
325 .loc 1 298 24
326 004a 22F00102 bic r2, r2, #1
327 004e 1A60 str r2, [r3]
299:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
300:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Configure the source, destination address and the data length */
301:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** DMA_SetConfig(hdma, SrcAddress, DstAddress, DataLength);
ARM GAS /tmp/ccDI3rYs.s page 12
328 .loc 1 301 4
329 0050 3B68 ldr r3, [r7]
330 0052 7A68 ldr r2, [r7, #4]
331 0054 B968 ldr r1, [r7, #8]
332 0056 F868 ldr r0, [r7, #12]
333 0058 FFF7FEFF bl DMA_SetConfig
302:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
303:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Enable the Peripheral */
304:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** hdma->Instance->CCR |= DMA_CCR_EN;
334 .loc 1 304 8
335 005c FB68 ldr r3, [r7, #12]
336 005e 1B68 ldr r3, [r3]
337 .loc 1 304 18
338 0060 1A68 ldr r2, [r3]
339 .loc 1 304 8
340 0062 FB68 ldr r3, [r7, #12]
341 0064 1B68 ldr r3, [r3]
342 .loc 1 304 24
343 0066 42F00102 orr r2, r2, #1
344 006a 1A60 str r2, [r3]
345 006c 05E0 b .L11
346 .L10:
305:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** }
306:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** else
307:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** {
308:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Process Unlocked */
309:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** __HAL_UNLOCK(hdma);
347 .loc 1 309 4
348 006e FB68 ldr r3, [r7, #12]
349 0070 0022 movs r2, #0
350 0072 83F82020 strb r2, [r3, #32]
310:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
311:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Remain BUSY */
312:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** status = HAL_BUSY;
351 .loc 1 312 11
352 0076 0223 movs r3, #2
353 0078 FB75 strb r3, [r7, #23]
354 .L11:
313:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** }
314:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
315:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** return status;
355 .loc 1 315 10
356 007a FB7D ldrb r3, [r7, #23] @ zero_extendqisi2
357 .L9:
316:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** }
358 .loc 1 316 1
359 007c 1846 mov r0, r3
360 007e 1837 adds r7, r7, #24
361 .cfi_def_cfa_offset 8
362 0080 BD46 mov sp, r7
363 .cfi_def_cfa_register 13
364 @ sp needed
365 0082 80BD pop {r7, pc}
366 .cfi_endproc
367 .LFE132:
369 .section .text.HAL_DMA_Start_IT,"ax",%progbits
370 .align 1
ARM GAS /tmp/ccDI3rYs.s page 13
371 .global HAL_DMA_Start_IT
372 .syntax unified
373 .thumb
374 .thumb_func
376 HAL_DMA_Start_IT:
377 .LFB133:
317:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
318:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /**
319:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * @brief Start the DMA Transfer with interrupt enabled.
320:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * @param hdma pointer to a DMA_HandleTypeDef structure that contains
321:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * the configuration information for the specified DMA Channel.
322:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * @param SrcAddress The source memory Buffer address
323:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * @param DstAddress The destination memory Buffer address
324:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * @param DataLength The length of data to be transferred from source to destination
325:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * @retval HAL status
326:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** */
327:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** HAL_StatusTypeDef HAL_DMA_Start_IT(DMA_HandleTypeDef *hdma, uint32_t SrcAddress, uint32_t DstAddres
328:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** {
378 .loc 1 328 1
379 .cfi_startproc
380 @ args = 0, pretend = 0, frame = 24
381 @ frame_needed = 1, uses_anonymous_args = 0
382 0000 80B5 push {r7, lr}
383 .cfi_def_cfa_offset 8
384 .cfi_offset 7, -8
385 .cfi_offset 14, -4
386 0002 86B0 sub sp, sp, #24
387 .cfi_def_cfa_offset 32
388 0004 00AF add r7, sp, #0
389 .cfi_def_cfa_register 7
390 0006 F860 str r0, [r7, #12]
391 0008 B960 str r1, [r7, #8]
392 000a 7A60 str r2, [r7, #4]
393 000c 3B60 str r3, [r7]
329:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** HAL_StatusTypeDef status = HAL_OK;
394 .loc 1 329 20
395 000e 0023 movs r3, #0
396 0010 FB75 strb r3, [r7, #23]
330:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
331:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Check the parameters */
332:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** assert_param(IS_DMA_BUFFER_SIZE(DataLength));
333:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
334:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Process locked */
335:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** __HAL_LOCK(hdma);
397 .loc 1 335 3
398 0012 FB68 ldr r3, [r7, #12]
399 0014 93F82030 ldrb r3, [r3, #32] @ zero_extendqisi2
400 0018 012B cmp r3, #1
401 001a 01D1 bne .L13
402 .loc 1 335 3 is_stmt 0 discriminator 1
403 001c 0223 movs r3, #2
404 .loc 1 335 3
405 001e 4AE0 b .L14
406 .L13:
407 .loc 1 335 3 discriminator 2
408 0020 FB68 ldr r3, [r7, #12]
409 0022 0122 movs r2, #1
ARM GAS /tmp/ccDI3rYs.s page 14
410 0024 83F82020 strb r2, [r3, #32]
336:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
337:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** if(HAL_DMA_STATE_READY == hdma->State)
411 .loc 1 337 33 is_stmt 1
412 0028 FB68 ldr r3, [r7, #12]
413 002a 93F82130 ldrb r3, [r3, #33] @ zero_extendqisi2
414 .loc 1 337 5
415 002e 012B cmp r3, #1
416 0030 3AD1 bne .L15
338:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** {
339:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Change DMA peripheral state */
340:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** hdma->State = HAL_DMA_STATE_BUSY;
417 .loc 1 340 16
418 0032 FB68 ldr r3, [r7, #12]
419 0034 0222 movs r2, #2
420 0036 83F82120 strb r2, [r3, #33]
341:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
342:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** hdma->ErrorCode = HAL_DMA_ERROR_NONE;
421 .loc 1 342 20
422 003a FB68 ldr r3, [r7, #12]
423 003c 0022 movs r2, #0
424 003e 9A63 str r2, [r3, #56]
343:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
344:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Disable the peripheral */
345:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** hdma->Instance->CCR &= ~DMA_CCR_EN;
425 .loc 1 345 8
426 0040 FB68 ldr r3, [r7, #12]
427 0042 1B68 ldr r3, [r3]
428 .loc 1 345 18
429 0044 1A68 ldr r2, [r3]
430 .loc 1 345 8
431 0046 FB68 ldr r3, [r7, #12]
432 0048 1B68 ldr r3, [r3]
433 .loc 1 345 24
434 004a 22F00102 bic r2, r2, #1
435 004e 1A60 str r2, [r3]
346:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
347:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Configure the source, destination address and the data length */
348:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** DMA_SetConfig(hdma, SrcAddress, DstAddress, DataLength);
436 .loc 1 348 4
437 0050 3B68 ldr r3, [r7]
438 0052 7A68 ldr r2, [r7, #4]
439 0054 B968 ldr r1, [r7, #8]
440 0056 F868 ldr r0, [r7, #12]
441 0058 FFF7FEFF bl DMA_SetConfig
349:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
350:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Enable the transfer complete, & transfer error interrupts */
351:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Half transfer interrupt is optional: enable it only if associated callback is available */
352:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** if(NULL != hdma->XferHalfCpltCallback )
442 .loc 1 352 20
443 005c FB68 ldr r3, [r7, #12]
444 005e DB6A ldr r3, [r3, #44]
445 .loc 1 352 7
446 0060 002B cmp r3, #0
447 0062 08D0 beq .L16
353:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** {
354:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** hdma->Instance->CCR |= (DMA_IT_TC | DMA_IT_HT | DMA_IT_TE);
ARM GAS /tmp/ccDI3rYs.s page 15
448 .loc 1 354 11
449 0064 FB68 ldr r3, [r7, #12]
450 0066 1B68 ldr r3, [r3]
451 .loc 1 354 21
452 0068 1A68 ldr r2, [r3]
453 .loc 1 354 11
454 006a FB68 ldr r3, [r7, #12]
455 006c 1B68 ldr r3, [r3]
456 .loc 1 354 27
457 006e 42F00E02 orr r2, r2, #14
458 0072 1A60 str r2, [r3]
459 0074 0FE0 b .L17
460 .L16:
355:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** }
356:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** else
357:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** {
358:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** hdma->Instance->CCR |= (DMA_IT_TC | DMA_IT_TE);
461 .loc 1 358 9
462 0076 FB68 ldr r3, [r7, #12]
463 0078 1B68 ldr r3, [r3]
464 .loc 1 358 19
465 007a 1A68 ldr r2, [r3]
466 .loc 1 358 9
467 007c FB68 ldr r3, [r7, #12]
468 007e 1B68 ldr r3, [r3]
469 .loc 1 358 25
470 0080 42F00A02 orr r2, r2, #10
471 0084 1A60 str r2, [r3]
359:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** hdma->Instance->CCR &= ~DMA_IT_HT;
472 .loc 1 359 9
473 0086 FB68 ldr r3, [r7, #12]
474 0088 1B68 ldr r3, [r3]
475 .loc 1 359 19
476 008a 1A68 ldr r2, [r3]
477 .loc 1 359 9
478 008c FB68 ldr r3, [r7, #12]
479 008e 1B68 ldr r3, [r3]
480 .loc 1 359 25
481 0090 22F00402 bic r2, r2, #4
482 0094 1A60 str r2, [r3]
483 .L17:
360:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** }
361:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
362:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Enable the Peripheral */
363:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** hdma->Instance->CCR |= DMA_CCR_EN;
484 .loc 1 363 8
485 0096 FB68 ldr r3, [r7, #12]
486 0098 1B68 ldr r3, [r3]
487 .loc 1 363 18
488 009a 1A68 ldr r2, [r3]
489 .loc 1 363 8
490 009c FB68 ldr r3, [r7, #12]
491 009e 1B68 ldr r3, [r3]
492 .loc 1 363 24
493 00a0 42F00102 orr r2, r2, #1
494 00a4 1A60 str r2, [r3]
495 00a6 05E0 b .L18
ARM GAS /tmp/ccDI3rYs.s page 16
496 .L15:
364:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** }
365:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** else
366:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** {
367:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Process Unlocked */
368:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** __HAL_UNLOCK(hdma);
497 .loc 1 368 5
498 00a8 FB68 ldr r3, [r7, #12]
499 00aa 0022 movs r2, #0
500 00ac 83F82020 strb r2, [r3, #32]
369:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
370:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Remain BUSY */
371:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** status = HAL_BUSY;
501 .loc 1 371 12
502 00b0 0223 movs r3, #2
503 00b2 FB75 strb r3, [r7, #23]
504 .L18:
372:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** }
373:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
374:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** return status;
505 .loc 1 374 10
506 00b4 FB7D ldrb r3, [r7, #23] @ zero_extendqisi2
507 .L14:
375:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** }
508 .loc 1 375 1
509 00b6 1846 mov r0, r3
510 00b8 1837 adds r7, r7, #24
511 .cfi_def_cfa_offset 8
512 00ba BD46 mov sp, r7
513 .cfi_def_cfa_register 13
514 @ sp needed
515 00bc 80BD pop {r7, pc}
516 .cfi_endproc
517 .LFE133:
519 .section .text.HAL_DMA_Abort,"ax",%progbits
520 .align 1
521 .global HAL_DMA_Abort
522 .syntax unified
523 .thumb
524 .thumb_func
526 HAL_DMA_Abort:
527 .LFB134:
376:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
377:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /**
378:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * @brief Abort the DMA Transfer.
379:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * @param hdma : pointer to a DMA_HandleTypeDef structure that contains
380:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * the configuration information for the specified DMA Channel.
381:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * @retval HAL status
382:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** */
383:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** HAL_StatusTypeDef HAL_DMA_Abort(DMA_HandleTypeDef *hdma)
384:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** {
528 .loc 1 384 1
529 .cfi_startproc
530 @ args = 0, pretend = 0, frame = 8
531 @ frame_needed = 1, uses_anonymous_args = 0
532 @ link register save eliminated.
533 0000 80B4 push {r7}
ARM GAS /tmp/ccDI3rYs.s page 17
534 .cfi_def_cfa_offset 4
535 .cfi_offset 7, -4
536 0002 83B0 sub sp, sp, #12
537 .cfi_def_cfa_offset 16
538 0004 00AF add r7, sp, #0
539 .cfi_def_cfa_register 7
540 0006 7860 str r0, [r7, #4]
385:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** if(hdma->State != HAL_DMA_STATE_BUSY)
541 .loc 1 385 10
542 0008 7B68 ldr r3, [r7, #4]
543 000a 93F82130 ldrb r3, [r3, #33] @ zero_extendqisi2
544 .loc 1 385 5
545 000e 022B cmp r3, #2
546 0010 08D0 beq .L20
386:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** {
387:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* no transfer ongoing */
388:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** hdma->ErrorCode = HAL_DMA_ERROR_NO_XFER;
547 .loc 1 388 21
548 0012 7B68 ldr r3, [r7, #4]
549 0014 0422 movs r2, #4
550 0016 9A63 str r2, [r3, #56]
389:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
390:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Process Unlocked */
391:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** __HAL_UNLOCK(hdma);
551 .loc 1 391 5
552 0018 7B68 ldr r3, [r7, #4]
553 001a 0022 movs r2, #0
554 001c 83F82020 strb r2, [r3, #32]
392:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
393:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** return HAL_ERROR;
555 .loc 1 393 12
556 0020 0123 movs r3, #1
557 0022 20E0 b .L21
558 .L20:
394:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** }
395:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** else
396:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** {
397:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Disable DMA IT */
398:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** hdma->Instance->CCR &= ~(DMA_IT_TC | DMA_IT_HT | DMA_IT_TE);
559 .loc 1 398 10
560 0024 7B68 ldr r3, [r7, #4]
561 0026 1B68 ldr r3, [r3]
562 .loc 1 398 20
563 0028 1A68 ldr r2, [r3]
564 .loc 1 398 10
565 002a 7B68 ldr r3, [r7, #4]
566 002c 1B68 ldr r3, [r3]
567 .loc 1 398 26
568 002e 22F00E02 bic r2, r2, #14
569 0032 1A60 str r2, [r3]
399:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
400:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Disable the channel */
401:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** hdma->Instance->CCR &= ~DMA_CCR_EN;
570 .loc 1 401 9
571 0034 7B68 ldr r3, [r7, #4]
572 0036 1B68 ldr r3, [r3]
573 .loc 1 401 19
ARM GAS /tmp/ccDI3rYs.s page 18
574 0038 1A68 ldr r2, [r3]
575 .loc 1 401 9
576 003a 7B68 ldr r3, [r7, #4]
577 003c 1B68 ldr r3, [r3]
578 .loc 1 401 25
579 003e 22F00102 bic r2, r2, #1
580 0042 1A60 str r2, [r3]
402:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
403:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Clear all flags */
404:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** hdma->DmaBaseAddress->IFCR = (DMA_FLAG_GL1 << hdma->ChannelIndex);
581 .loc 1 404 55
582 0044 7B68 ldr r3, [r7, #4]
583 0046 1A6C ldr r2, [r3, #64]
584 .loc 1 404 9
585 0048 7B68 ldr r3, [r7, #4]
586 004a DB6B ldr r3, [r3, #60]
587 .loc 1 404 48
588 004c 0121 movs r1, #1
589 004e 01FA02F2 lsl r2, r1, r2
590 .loc 1 404 32
591 0052 5A60 str r2, [r3, #4]
405:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** }
406:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Change the DMA state*/
407:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** hdma->State = HAL_DMA_STATE_READY;
592 .loc 1 407 15
593 0054 7B68 ldr r3, [r7, #4]
594 0056 0122 movs r2, #1
595 0058 83F82120 strb r2, [r3, #33]
408:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
409:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Process Unlocked */
410:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** __HAL_UNLOCK(hdma);
596 .loc 1 410 3
597 005c 7B68 ldr r3, [r7, #4]
598 005e 0022 movs r2, #0
599 0060 83F82020 strb r2, [r3, #32]
411:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
412:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** return HAL_OK;
600 .loc 1 412 10
601 0064 0023 movs r3, #0
602 .L21:
413:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** }
603 .loc 1 413 1
604 0066 1846 mov r0, r3
605 0068 0C37 adds r7, r7, #12
606 .cfi_def_cfa_offset 4
607 006a BD46 mov sp, r7
608 .cfi_def_cfa_register 13
609 @ sp needed
610 006c 5DF8047B ldr r7, [sp], #4
611 .cfi_restore 7
612 .cfi_def_cfa_offset 0
613 0070 7047 bx lr
614 .cfi_endproc
615 .LFE134:
617 .section .text.HAL_DMA_Abort_IT,"ax",%progbits
618 .align 1
619 .global HAL_DMA_Abort_IT
ARM GAS /tmp/ccDI3rYs.s page 19
620 .syntax unified
621 .thumb
622 .thumb_func
624 HAL_DMA_Abort_IT:
625 .LFB135:
414:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
415:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /**
416:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * @brief Abort the DMA Transfer in Interrupt mode.
417:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * @param hdma : pointer to a DMA_HandleTypeDef structure that contains
418:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * the configuration information for the specified DMA Stream.
419:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * @retval HAL status
420:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** */
421:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** HAL_StatusTypeDef HAL_DMA_Abort_IT(DMA_HandleTypeDef *hdma)
422:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** {
626 .loc 1 422 1
627 .cfi_startproc
628 @ args = 0, pretend = 0, frame = 16
629 @ frame_needed = 1, uses_anonymous_args = 0
630 0000 80B5 push {r7, lr}
631 .cfi_def_cfa_offset 8
632 .cfi_offset 7, -8
633 .cfi_offset 14, -4
634 0002 84B0 sub sp, sp, #16
635 .cfi_def_cfa_offset 24
636 0004 00AF add r7, sp, #0
637 .cfi_def_cfa_register 7
638 0006 7860 str r0, [r7, #4]
423:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** HAL_StatusTypeDef status = HAL_OK;
639 .loc 1 423 21
640 0008 0023 movs r3, #0
641 000a FB73 strb r3, [r7, #15]
424:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
425:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** if(HAL_DMA_STATE_BUSY != hdma->State)
642 .loc 1 425 32
643 000c 7B68 ldr r3, [r7, #4]
644 000e 93F82130 ldrb r3, [r3, #33] @ zero_extendqisi2
645 .loc 1 425 5
646 0012 022B cmp r3, #2
647 0014 05D0 beq .L23
426:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** {
427:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* no transfer ongoing */
428:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** hdma->ErrorCode = HAL_DMA_ERROR_NO_XFER;
648 .loc 1 428 21
649 0016 7B68 ldr r3, [r7, #4]
650 0018 0422 movs r2, #4
651 001a 9A63 str r2, [r3, #56]
429:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
430:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** status = HAL_ERROR;
652 .loc 1 430 12
653 001c 0123 movs r3, #1
654 001e FB73 strb r3, [r7, #15]
655 0020 27E0 b .L24
656 .L23:
431:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** }
432:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** else
433:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** {
434:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
ARM GAS /tmp/ccDI3rYs.s page 20
435:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Disable DMA IT */
436:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** hdma->Instance->CCR &= ~(DMA_IT_TC | DMA_IT_HT | DMA_IT_TE);
657 .loc 1 436 9
658 0022 7B68 ldr r3, [r7, #4]
659 0024 1B68 ldr r3, [r3]
660 .loc 1 436 19
661 0026 1A68 ldr r2, [r3]
662 .loc 1 436 9
663 0028 7B68 ldr r3, [r7, #4]
664 002a 1B68 ldr r3, [r3]
665 .loc 1 436 25
666 002c 22F00E02 bic r2, r2, #14
667 0030 1A60 str r2, [r3]
437:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
438:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Disable the channel */
439:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** hdma->Instance->CCR &= ~DMA_CCR_EN;
668 .loc 1 439 9
669 0032 7B68 ldr r3, [r7, #4]
670 0034 1B68 ldr r3, [r3]
671 .loc 1 439 19
672 0036 1A68 ldr r2, [r3]
673 .loc 1 439 9
674 0038 7B68 ldr r3, [r7, #4]
675 003a 1B68 ldr r3, [r3]
676 .loc 1 439 25
677 003c 22F00102 bic r2, r2, #1
678 0040 1A60 str r2, [r3]
440:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
441:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Clear all flags */
442:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** hdma->DmaBaseAddress->IFCR = DMA_FLAG_GL1 << hdma->ChannelIndex;
679 .loc 1 442 54
680 0042 7B68 ldr r3, [r7, #4]
681 0044 1A6C ldr r2, [r3, #64]
682 .loc 1 442 9
683 0046 7B68 ldr r3, [r7, #4]
684 0048 DB6B ldr r3, [r3, #60]
685 .loc 1 442 47
686 004a 0121 movs r1, #1
687 004c 01FA02F2 lsl r2, r1, r2
688 .loc 1 442 32
689 0050 5A60 str r2, [r3, #4]
443:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
444:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Change the DMA state */
445:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** hdma->State = HAL_DMA_STATE_READY;
690 .loc 1 445 17
691 0052 7B68 ldr r3, [r7, #4]
692 0054 0122 movs r2, #1
693 0056 83F82120 strb r2, [r3, #33]
446:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
447:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Process Unlocked */
448:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** __HAL_UNLOCK(hdma);
694 .loc 1 448 5
695 005a 7B68 ldr r3, [r7, #4]
696 005c 0022 movs r2, #0
697 005e 83F82020 strb r2, [r3, #32]
449:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
450:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Call User Abort callback */
ARM GAS /tmp/ccDI3rYs.s page 21
451:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** if(hdma->XferAbortCallback != NULL)
698 .loc 1 451 12
699 0062 7B68 ldr r3, [r7, #4]
700 0064 5B6B ldr r3, [r3, #52]
701 .loc 1 451 7
702 0066 002B cmp r3, #0
703 0068 03D0 beq .L24
452:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** {
453:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** hdma->XferAbortCallback(hdma);
704 .loc 1 453 11
705 006a 7B68 ldr r3, [r7, #4]
706 006c 5B6B ldr r3, [r3, #52]
707 .loc 1 453 7
708 006e 7868 ldr r0, [r7, #4]
709 0070 9847 blx r3
710 .LVL0:
711 .L24:
454:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** }
455:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** }
456:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** return status;
712 .loc 1 456 10
713 0072 FB7B ldrb r3, [r7, #15] @ zero_extendqisi2
457:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** }
714 .loc 1 457 1
715 0074 1846 mov r0, r3
716 0076 1037 adds r7, r7, #16
717 .cfi_def_cfa_offset 8
718 0078 BD46 mov sp, r7
719 .cfi_def_cfa_register 13
720 @ sp needed
721 007a 80BD pop {r7, pc}
722 .cfi_endproc
723 .LFE135:
725 .section .text.HAL_DMA_PollForTransfer,"ax",%progbits
726 .align 1
727 .global HAL_DMA_PollForTransfer
728 .syntax unified
729 .thumb
730 .thumb_func
732 HAL_DMA_PollForTransfer:
733 .LFB136:
458:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
459:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /**
460:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * @brief Polling for transfer complete.
461:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * @param hdma pointer to a DMA_HandleTypeDef structure that contains
462:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * the configuration information for the specified DMA Channel.
463:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * @param CompleteLevel Specifies the DMA level complete.
464:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * @param Timeout Timeout duration.
465:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * @retval HAL status
466:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** */
467:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** HAL_StatusTypeDef HAL_DMA_PollForTransfer(DMA_HandleTypeDef *hdma, uint32_t CompleteLevel, uint32_t
468:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** {
734 .loc 1 468 1
735 .cfi_startproc
736 @ args = 0, pretend = 0, frame = 24
737 @ frame_needed = 1, uses_anonymous_args = 0
738 0000 80B5 push {r7, lr}
ARM GAS /tmp/ccDI3rYs.s page 22
739 .cfi_def_cfa_offset 8
740 .cfi_offset 7, -8
741 .cfi_offset 14, -4
742 0002 86B0 sub sp, sp, #24
743 .cfi_def_cfa_offset 32
744 0004 00AF add r7, sp, #0
745 .cfi_def_cfa_register 7
746 0006 F860 str r0, [r7, #12]
747 0008 B960 str r1, [r7, #8]
748 000a 7A60 str r2, [r7, #4]
469:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** uint32_t temp;
470:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** uint32_t tickstart = 0U;
749 .loc 1 470 12
750 000c 0023 movs r3, #0
751 000e 3B61 str r3, [r7, #16]
471:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
472:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** if(HAL_DMA_STATE_BUSY != hdma->State)
752 .loc 1 472 32
753 0010 FB68 ldr r3, [r7, #12]
754 0012 93F82130 ldrb r3, [r3, #33] @ zero_extendqisi2
755 .loc 1 472 5
756 0016 022B cmp r3, #2
757 0018 08D0 beq .L27
473:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** {
474:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* no transfer ongoing */
475:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** hdma->ErrorCode = HAL_DMA_ERROR_NO_XFER;
758 .loc 1 475 21
759 001a FB68 ldr r3, [r7, #12]
760 001c 0422 movs r2, #4
761 001e 9A63 str r2, [r3, #56]
476:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** __HAL_UNLOCK(hdma);
762 .loc 1 476 5
763 0020 FB68 ldr r3, [r7, #12]
764 0022 0022 movs r2, #0
765 0024 83F82020 strb r2, [r3, #32]
477:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** return HAL_ERROR;
766 .loc 1 477 12
767 0028 0123 movs r3, #1
768 002a 80E0 b .L28
769 .L27:
478:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** }
479:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
480:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Polling mode not supported in circular mode */
481:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** if (RESET != (hdma->Instance->CCR & DMA_CCR_CIRC))
770 .loc 1 481 21
771 002c FB68 ldr r3, [r7, #12]
772 002e 1B68 ldr r3, [r3]
773 .loc 1 481 31
774 0030 1B68 ldr r3, [r3]
775 .loc 1 481 37
776 0032 03F02003 and r3, r3, #32
777 .loc 1 481 6
778 0036 002B cmp r3, #0
779 0038 05D0 beq .L29
482:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** {
483:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** hdma->ErrorCode = HAL_DMA_ERROR_NOT_SUPPORTED;
780 .loc 1 483 21
ARM GAS /tmp/ccDI3rYs.s page 23
781 003a FB68 ldr r3, [r7, #12]
782 003c 4FF48072 mov r2, #256
783 0040 9A63 str r2, [r3, #56]
484:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** return HAL_ERROR;
784 .loc 1 484 12
785 0042 0123 movs r3, #1
786 0044 73E0 b .L28
787 .L29:
485:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** }
486:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
487:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Get the level transfer complete flag */
488:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** if(HAL_DMA_FULL_TRANSFER == CompleteLevel)
788 .loc 1 488 5
789 0046 BB68 ldr r3, [r7, #8]
790 0048 002B cmp r3, #0
791 004a 06D1 bne .L30
489:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** {
490:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Transfer Complete flag */
491:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** temp = DMA_FLAG_TC1 << hdma->ChannelIndex;
792 .loc 1 491 32
793 004c FB68 ldr r3, [r7, #12]
794 004e 1B6C ldr r3, [r3, #64]
795 .loc 1 491 10
796 0050 0222 movs r2, #2
797 0052 02FA03F3 lsl r3, r2, r3
798 0056 7B61 str r3, [r7, #20]
799 0058 05E0 b .L31
800 .L30:
492:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** }
493:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** else
494:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** {
495:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Half Transfer Complete flag */
496:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** temp = DMA_FLAG_HT1 << hdma->ChannelIndex;
801 .loc 1 496 32
802 005a FB68 ldr r3, [r7, #12]
803 005c 1B6C ldr r3, [r3, #64]
804 .loc 1 496 10
805 005e 0422 movs r2, #4
806 0060 02FA03F3 lsl r3, r2, r3
807 0064 7B61 str r3, [r7, #20]
808 .L31:
497:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** }
498:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
499:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Get tick */
500:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** tickstart = HAL_GetTick();
809 .loc 1 500 15
810 0066 FFF7FEFF bl HAL_GetTick
811 006a 3861 str r0, [r7, #16]
501:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
502:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** while(RESET == (hdma->DmaBaseAddress->ISR & temp))
812 .loc 1 502 8
813 006c 3BE0 b .L34
814 .L36:
503:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** {
504:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** if(RESET != (hdma->DmaBaseAddress->ISR & (DMA_FLAG_TE1 << hdma->ChannelIndex)))
815 .loc 1 504 22
816 006e FB68 ldr r3, [r7, #12]
ARM GAS /tmp/ccDI3rYs.s page 24
817 0070 DB6B ldr r3, [r3, #60]
818 .loc 1 504 38
819 0072 1A68 ldr r2, [r3]
820 .loc 1 504 67
821 0074 FB68 ldr r3, [r7, #12]
822 0076 1B6C ldr r3, [r3, #64]
823 .loc 1 504 60
824 0078 0821 movs r1, #8
825 007a 01FA03F3 lsl r3, r1, r3
826 .loc 1 504 44
827 007e 1340 ands r3, r3, r2
828 .loc 1 504 7
829 0080 002B cmp r3, #0
830 0082 14D0 beq .L33
505:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** {
506:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* When a DMA transfer error occurs */
507:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* A hardware clear of its EN bits is performed */
508:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Clear all flags */
509:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** hdma->DmaBaseAddress->IFCR = DMA_FLAG_GL1 << hdma->ChannelIndex;
831 .loc 1 509 56
832 0084 FB68 ldr r3, [r7, #12]
833 0086 1A6C ldr r2, [r3, #64]
834 .loc 1 509 11
835 0088 FB68 ldr r3, [r7, #12]
836 008a DB6B ldr r3, [r3, #60]
837 .loc 1 509 49
838 008c 0121 movs r1, #1
839 008e 01FA02F2 lsl r2, r1, r2
840 .loc 1 509 34
841 0092 5A60 str r2, [r3, #4]
510:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
511:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Update error code */
512:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** hdma->ErrorCode = HAL_DMA_ERROR_TE;
842 .loc 1 512 23
843 0094 FB68 ldr r3, [r7, #12]
844 0096 0122 movs r2, #1
845 0098 9A63 str r2, [r3, #56]
513:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
514:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Change the DMA state */
515:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** hdma->State= HAL_DMA_STATE_READY;
846 .loc 1 515 18
847 009a FB68 ldr r3, [r7, #12]
848 009c 0122 movs r2, #1
849 009e 83F82120 strb r2, [r3, #33]
516:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
517:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Process Unlocked */
518:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** __HAL_UNLOCK(hdma);
850 .loc 1 518 7
851 00a2 FB68 ldr r3, [r7, #12]
852 00a4 0022 movs r2, #0
853 00a6 83F82020 strb r2, [r3, #32]
519:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
520:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** return HAL_ERROR;
854 .loc 1 520 14
855 00aa 0123 movs r3, #1
856 00ac 3FE0 b .L28
857 .L33:
ARM GAS /tmp/ccDI3rYs.s page 25
521:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** }
522:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Check for the Timeout */
523:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** if(Timeout != HAL_MAX_DELAY)
858 .loc 1 523 7
859 00ae 7B68 ldr r3, [r7, #4]
860 00b0 B3F1FF3F cmp r3, #-1
861 00b4 17D0 beq .L34
524:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** {
525:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** if((Timeout == 0U) || ((HAL_GetTick() - tickstart) > Timeout))
862 .loc 1 525 9
863 00b6 7B68 ldr r3, [r7, #4]
864 00b8 002B cmp r3, #0
865 00ba 07D0 beq .L35
866 .loc 1 525 31 discriminator 1
867 00bc FFF7FEFF bl HAL_GetTick
868 00c0 0246 mov r2, r0
869 .loc 1 525 45 discriminator 1
870 00c2 3B69 ldr r3, [r7, #16]
871 00c4 D31A subs r3, r2, r3
872 .loc 1 525 26 discriminator 1
873 00c6 7A68 ldr r2, [r7, #4]
874 00c8 9A42 cmp r2, r3
875 00ca 0CD2 bcs .L34
876 .L35:
526:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** {
527:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Update error code */
528:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** hdma->ErrorCode = HAL_DMA_ERROR_TIMEOUT;
877 .loc 1 528 25
878 00cc FB68 ldr r3, [r7, #12]
879 00ce 2022 movs r2, #32
880 00d0 9A63 str r2, [r3, #56]
529:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
530:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Change the DMA state */
531:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** hdma->State = HAL_DMA_STATE_READY;
881 .loc 1 531 21
882 00d2 FB68 ldr r3, [r7, #12]
883 00d4 0122 movs r2, #1
884 00d6 83F82120 strb r2, [r3, #33]
532:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
533:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Process Unlocked */
534:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** __HAL_UNLOCK(hdma);
885 .loc 1 534 9
886 00da FB68 ldr r3, [r7, #12]
887 00dc 0022 movs r2, #0
888 00de 83F82020 strb r2, [r3, #32]
535:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
536:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** return HAL_ERROR;
889 .loc 1 536 16
890 00e2 0123 movs r3, #1
891 00e4 23E0 b .L28
892 .L34:
502:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** {
893 .loc 1 502 23
894 00e6 FB68 ldr r3, [r7, #12]
895 00e8 DB6B ldr r3, [r3, #60]
502:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** {
896 .loc 1 502 39
ARM GAS /tmp/ccDI3rYs.s page 26
897 00ea 1A68 ldr r2, [r3]
502:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** {
898 .loc 1 502 45
899 00ec 7B69 ldr r3, [r7, #20]
900 00ee 1340 ands r3, r3, r2
502:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** {
901 .loc 1 502 15
902 00f0 002B cmp r3, #0
903 00f2 BCD0 beq .L36
537:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** }
538:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** }
539:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** }
540:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
541:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** if(HAL_DMA_FULL_TRANSFER == CompleteLevel)
904 .loc 1 541 5
905 00f4 BB68 ldr r3, [r7, #8]
906 00f6 002B cmp r3, #0
907 00f8 0CD1 bne .L37
542:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** {
543:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Clear the transfer complete flag */
544:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** hdma->DmaBaseAddress->IFCR = DMA_FLAG_TC1 << hdma->ChannelIndex;
908 .loc 1 544 54
909 00fa FB68 ldr r3, [r7, #12]
910 00fc 1A6C ldr r2, [r3, #64]
911 .loc 1 544 9
912 00fe FB68 ldr r3, [r7, #12]
913 0100 DB6B ldr r3, [r3, #60]
914 .loc 1 544 47
915 0102 0221 movs r1, #2
916 0104 01FA02F2 lsl r2, r1, r2
917 .loc 1 544 32
918 0108 5A60 str r2, [r3, #4]
545:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
546:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* The selected Channelx EN bit is cleared (DMA is disabled and
547:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** all transfers are complete) */
548:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** hdma->State = HAL_DMA_STATE_READY;
919 .loc 1 548 17
920 010a FB68 ldr r3, [r7, #12]
921 010c 0122 movs r2, #1
922 010e 83F82120 strb r2, [r3, #33]
923 0112 07E0 b .L38
924 .L37:
549:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** }
550:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** else
551:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** {
552:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Clear the half transfer complete flag */
553:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** hdma->DmaBaseAddress->IFCR = DMA_FLAG_HT1 << hdma->ChannelIndex;
925 .loc 1 553 54
926 0114 FB68 ldr r3, [r7, #12]
927 0116 1A6C ldr r2, [r3, #64]
928 .loc 1 553 9
929 0118 FB68 ldr r3, [r7, #12]
930 011a DB6B ldr r3, [r3, #60]
931 .loc 1 553 47
932 011c 0421 movs r1, #4
933 011e 01FA02F2 lsl r2, r1, r2
934 .loc 1 553 32
ARM GAS /tmp/ccDI3rYs.s page 27
935 0122 5A60 str r2, [r3, #4]
936 .L38:
554:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** }
555:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
556:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Process unlocked */
557:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** __HAL_UNLOCK(hdma);
937 .loc 1 557 3
938 0124 FB68 ldr r3, [r7, #12]
939 0126 0022 movs r2, #0
940 0128 83F82020 strb r2, [r3, #32]
558:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
559:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** return HAL_OK;
941 .loc 1 559 10
942 012c 0023 movs r3, #0
943 .L28:
560:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** }
944 .loc 1 560 1
945 012e 1846 mov r0, r3
946 0130 1837 adds r7, r7, #24
947 .cfi_def_cfa_offset 8
948 0132 BD46 mov sp, r7
949 .cfi_def_cfa_register 13
950 @ sp needed
951 0134 80BD pop {r7, pc}
952 .cfi_endproc
953 .LFE136:
955 .section .text.HAL_DMA_IRQHandler,"ax",%progbits
956 .align 1
957 .global HAL_DMA_IRQHandler
958 .syntax unified
959 .thumb
960 .thumb_func
962 HAL_DMA_IRQHandler:
963 .LFB137:
561:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
562:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /**
563:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * @brief Handle DMA interrupt request.
564:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * @param hdma pointer to a DMA_HandleTypeDef structure that contains
565:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * the configuration information for the specified DMA Channel.
566:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * @retval None
567:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** */
568:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** void HAL_DMA_IRQHandler(DMA_HandleTypeDef *hdma)
569:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** {
964 .loc 1 569 1
965 .cfi_startproc
966 @ args = 0, pretend = 0, frame = 16
967 @ frame_needed = 1, uses_anonymous_args = 0
968 0000 80B5 push {r7, lr}
969 .cfi_def_cfa_offset 8
970 .cfi_offset 7, -8
971 .cfi_offset 14, -4
972 0002 84B0 sub sp, sp, #16
973 .cfi_def_cfa_offset 24
974 0004 00AF add r7, sp, #0
975 .cfi_def_cfa_register 7
976 0006 7860 str r0, [r7, #4]
570:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** uint32_t flag_it = hdma->DmaBaseAddress->ISR;
ARM GAS /tmp/ccDI3rYs.s page 28
977 .loc 1 570 25
978 0008 7B68 ldr r3, [r7, #4]
979 000a DB6B ldr r3, [r3, #60]
980 .loc 1 570 11
981 000c 1B68 ldr r3, [r3]
982 000e FB60 str r3, [r7, #12]
571:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** uint32_t source_it = hdma->Instance->CCR;
983 .loc 1 571 28
984 0010 7B68 ldr r3, [r7, #4]
985 0012 1B68 ldr r3, [r3]
986 .loc 1 571 12
987 0014 1B68 ldr r3, [r3]
988 0016 BB60 str r3, [r7, #8]
572:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
573:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Half Transfer Complete Interrupt management ******************************/
574:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** if ((RESET != (flag_it & (DMA_FLAG_HT1 << hdma->ChannelIndex))) && (RESET != (source_it & DMA_IT_
989 .loc 1 574 49
990 0018 7B68 ldr r3, [r7, #4]
991 001a 1B6C ldr r3, [r3, #64]
992 .loc 1 574 42
993 001c 0422 movs r2, #4
994 001e 9A40 lsls r2, r2, r3
995 .loc 1 574 26
996 0020 FB68 ldr r3, [r7, #12]
997 0022 1340 ands r3, r3, r2
998 .loc 1 574 6
999 0024 002B cmp r3, #0
1000 0026 24D0 beq .L40
1001 .loc 1 574 91 discriminator 1
1002 0028 BB68 ldr r3, [r7, #8]
1003 002a 03F00403 and r3, r3, #4
1004 .loc 1 574 67 discriminator 1
1005 002e 002B cmp r3, #0
1006 0030 1FD0 beq .L40
575:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** {
576:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Disable the half transfer interrupt if the DMA mode is not CIRCULAR */
577:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** if((hdma->Instance->CCR & DMA_CCR_CIRC) == 0U)
1007 .loc 1 577 12
1008 0032 7B68 ldr r3, [r7, #4]
1009 0034 1B68 ldr r3, [r3]
1010 .loc 1 577 22
1011 0036 1B68 ldr r3, [r3]
1012 .loc 1 577 28
1013 0038 03F02003 and r3, r3, #32
1014 .loc 1 577 6
1015 003c 002B cmp r3, #0
1016 003e 07D1 bne .L41
578:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** {
579:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Disable the half transfer interrupt */
580:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** hdma->Instance->CCR &= ~DMA_IT_HT;
1017 .loc 1 580 9
1018 0040 7B68 ldr r3, [r7, #4]
1019 0042 1B68 ldr r3, [r3]
1020 .loc 1 580 19
1021 0044 1A68 ldr r2, [r3]
1022 .loc 1 580 9
1023 0046 7B68 ldr r3, [r7, #4]
ARM GAS /tmp/ccDI3rYs.s page 29
1024 0048 1B68 ldr r3, [r3]
1025 .loc 1 580 25
1026 004a 22F00402 bic r2, r2, #4
1027 004e 1A60 str r2, [r3]
1028 .L41:
581:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** }
582:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
583:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Clear the half transfer complete flag */
584:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** hdma->DmaBaseAddress->IFCR = DMA_FLAG_HT1 << hdma->ChannelIndex;
1029 .loc 1 584 53
1030 0050 7B68 ldr r3, [r7, #4]
1031 0052 1A6C ldr r2, [r3, #64]
1032 .loc 1 584 8
1033 0054 7B68 ldr r3, [r7, #4]
1034 0056 DB6B ldr r3, [r3, #60]
1035 .loc 1 584 46
1036 0058 0421 movs r1, #4
1037 005a 01FA02F2 lsl r2, r1, r2
1038 .loc 1 584 31
1039 005e 5A60 str r2, [r3, #4]
585:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
586:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* DMA peripheral state is not updated in Half Transfer */
587:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* State is updated only in Transfer Complete case */
588:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
589:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** if(hdma->XferHalfCpltCallback != NULL)
1040 .loc 1 589 11
1041 0060 7B68 ldr r3, [r7, #4]
1042 0062 DB6A ldr r3, [r3, #44]
1043 .loc 1 589 6
1044 0064 002B cmp r3, #0
1045 0066 6AD0 beq .L43
590:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** {
591:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Half transfer callback */
592:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** hdma->XferHalfCpltCallback(hdma);
1046 .loc 1 592 9
1047 0068 7B68 ldr r3, [r7, #4]
1048 006a DB6A ldr r3, [r3, #44]
1049 .loc 1 592 5
1050 006c 7868 ldr r0, [r7, #4]
1051 006e 9847 blx r3
1052 .LVL1:
589:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** {
1053 .loc 1 589 6
1054 0070 65E0 b .L43
1055 .L40:
593:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** }
594:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** }
595:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
596:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Transfer Complete Interrupt management ***********************************/
597:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** else if ((RESET != (flag_it & (DMA_FLAG_TC1 << hdma->ChannelIndex))) && (RESET != (source_it & DM
1056 .loc 1 597 54
1057 0072 7B68 ldr r3, [r7, #4]
1058 0074 1B6C ldr r3, [r3, #64]
1059 .loc 1 597 47
1060 0076 0222 movs r2, #2
1061 0078 9A40 lsls r2, r2, r3
1062 .loc 1 597 31
ARM GAS /tmp/ccDI3rYs.s page 30
1063 007a FB68 ldr r3, [r7, #12]
1064 007c 1340 ands r3, r3, r2
1065 .loc 1 597 11
1066 007e 002B cmp r3, #0
1067 0080 2CD0 beq .L44
1068 .loc 1 597 96 discriminator 1
1069 0082 BB68 ldr r3, [r7, #8]
1070 0084 03F00203 and r3, r3, #2
1071 .loc 1 597 72 discriminator 1
1072 0088 002B cmp r3, #0
1073 008a 27D0 beq .L44
598:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** {
599:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** if((hdma->Instance->CCR & DMA_CCR_CIRC) == 0U)
1074 .loc 1 599 12
1075 008c 7B68 ldr r3, [r7, #4]
1076 008e 1B68 ldr r3, [r3]
1077 .loc 1 599 22
1078 0090 1B68 ldr r3, [r3]
1079 .loc 1 599 28
1080 0092 03F02003 and r3, r3, #32
1081 .loc 1 599 6
1082 0096 002B cmp r3, #0
1083 0098 0BD1 bne .L45
600:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** {
601:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Disable the transfer complete & transfer error interrupts */
602:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* if the DMA mode is not CIRCULAR */
603:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** hdma->Instance->CCR &= ~(DMA_IT_TC | DMA_IT_TE);
1084 .loc 1 603 9
1085 009a 7B68 ldr r3, [r7, #4]
1086 009c 1B68 ldr r3, [r3]
1087 .loc 1 603 19
1088 009e 1A68 ldr r2, [r3]
1089 .loc 1 603 9
1090 00a0 7B68 ldr r3, [r7, #4]
1091 00a2 1B68 ldr r3, [r3]
1092 .loc 1 603 25
1093 00a4 22F00A02 bic r2, r2, #10
1094 00a8 1A60 str r2, [r3]
604:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
605:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Change the DMA state */
606:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** hdma->State = HAL_DMA_STATE_READY;
1095 .loc 1 606 17
1096 00aa 7B68 ldr r3, [r7, #4]
1097 00ac 0122 movs r2, #1
1098 00ae 83F82120 strb r2, [r3, #33]
1099 .L45:
607:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** }
608:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
609:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Clear the transfer complete flag */
610:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** hdma->DmaBaseAddress->IFCR = DMA_FLAG_TC1 << hdma->ChannelIndex;
1100 .loc 1 610 53
1101 00b2 7B68 ldr r3, [r7, #4]
1102 00b4 1A6C ldr r2, [r3, #64]
1103 .loc 1 610 8
1104 00b6 7B68 ldr r3, [r7, #4]
1105 00b8 DB6B ldr r3, [r3, #60]
1106 .loc 1 610 46
ARM GAS /tmp/ccDI3rYs.s page 31
1107 00ba 0221 movs r1, #2
1108 00bc 01FA02F2 lsl r2, r1, r2
1109 .loc 1 610 31
1110 00c0 5A60 str r2, [r3, #4]
611:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
612:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Process Unlocked */
613:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** __HAL_UNLOCK(hdma);
1111 .loc 1 613 4
1112 00c2 7B68 ldr r3, [r7, #4]
1113 00c4 0022 movs r2, #0
1114 00c6 83F82020 strb r2, [r3, #32]
614:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
615:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** if(hdma->XferCpltCallback != NULL)
1115 .loc 1 615 11
1116 00ca 7B68 ldr r3, [r7, #4]
1117 00cc 9B6A ldr r3, [r3, #40]
1118 .loc 1 615 6
1119 00ce 002B cmp r3, #0
1120 00d0 35D0 beq .L43
616:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** {
617:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Transfer complete callback */
618:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** hdma->XferCpltCallback(hdma);
1121 .loc 1 618 9
1122 00d2 7B68 ldr r3, [r7, #4]
1123 00d4 9B6A ldr r3, [r3, #40]
1124 .loc 1 618 5
1125 00d6 7868 ldr r0, [r7, #4]
1126 00d8 9847 blx r3
1127 .LVL2:
615:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** {
1128 .loc 1 615 6
1129 00da 30E0 b .L43
1130 .L44:
619:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** }
620:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** }
621:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
622:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Transfer Error Interrupt management ***************************************/
623:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** else if (( RESET != (flag_it & (DMA_FLAG_TE1 << hdma->ChannelIndex))) && (RESET != (source_it & D
1131 .loc 1 623 55
1132 00dc 7B68 ldr r3, [r7, #4]
1133 00de 1B6C ldr r3, [r3, #64]
1134 .loc 1 623 48
1135 00e0 0822 movs r2, #8
1136 00e2 9A40 lsls r2, r2, r3
1137 .loc 1 623 32
1138 00e4 FB68 ldr r3, [r7, #12]
1139 00e6 1340 ands r3, r3, r2
1140 .loc 1 623 11
1141 00e8 002B cmp r3, #0
1142 00ea 28D0 beq .L47
1143 .loc 1 623 97 discriminator 1
1144 00ec BB68 ldr r3, [r7, #8]
1145 00ee 03F00803 and r3, r3, #8
1146 .loc 1 623 73 discriminator 1
1147 00f2 002B cmp r3, #0
1148 00f4 23D0 beq .L47
624:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** {
ARM GAS /tmp/ccDI3rYs.s page 32
625:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* When a DMA transfer error occurs */
626:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* A hardware clear of its EN bits is performed */
627:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Then, disable all DMA interrupts */
628:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** hdma->Instance->CCR &= ~(DMA_IT_TC | DMA_IT_HT | DMA_IT_TE);
1149 .loc 1 628 9
1150 00f6 7B68 ldr r3, [r7, #4]
1151 00f8 1B68 ldr r3, [r3]
1152 .loc 1 628 19
1153 00fa 1A68 ldr r2, [r3]
1154 .loc 1 628 9
1155 00fc 7B68 ldr r3, [r7, #4]
1156 00fe 1B68 ldr r3, [r3]
1157 .loc 1 628 25
1158 0100 22F00E02 bic r2, r2, #14
1159 0104 1A60 str r2, [r3]
629:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
630:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Clear all flags */
631:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** hdma->DmaBaseAddress->IFCR = DMA_FLAG_GL1 << hdma->ChannelIndex;
1160 .loc 1 631 54
1161 0106 7B68 ldr r3, [r7, #4]
1162 0108 1A6C ldr r2, [r3, #64]
1163 .loc 1 631 9
1164 010a 7B68 ldr r3, [r7, #4]
1165 010c DB6B ldr r3, [r3, #60]
1166 .loc 1 631 47
1167 010e 0121 movs r1, #1
1168 0110 01FA02F2 lsl r2, r1, r2
1169 .loc 1 631 32
1170 0114 5A60 str r2, [r3, #4]
632:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
633:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Update error code */
634:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** hdma->ErrorCode = HAL_DMA_ERROR_TE;
1171 .loc 1 634 21
1172 0116 7B68 ldr r3, [r7, #4]
1173 0118 0122 movs r2, #1
1174 011a 9A63 str r2, [r3, #56]
635:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
636:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Change the DMA state */
637:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** hdma->State = HAL_DMA_STATE_READY;
1175 .loc 1 637 17
1176 011c 7B68 ldr r3, [r7, #4]
1177 011e 0122 movs r2, #1
1178 0120 83F82120 strb r2, [r3, #33]
638:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
639:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Process Unlocked */
640:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** __HAL_UNLOCK(hdma);
1179 .loc 1 640 5
1180 0124 7B68 ldr r3, [r7, #4]
1181 0126 0022 movs r2, #0
1182 0128 83F82020 strb r2, [r3, #32]
641:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
642:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** if(hdma->XferErrorCallback != NULL)
1183 .loc 1 642 12
1184 012c 7B68 ldr r3, [r7, #4]
1185 012e 1B6B ldr r3, [r3, #48]
1186 .loc 1 642 7
1187 0130 002B cmp r3, #0
ARM GAS /tmp/ccDI3rYs.s page 33
1188 0132 04D0 beq .L47
643:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** {
644:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Transfer error callback */
645:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** hdma->XferErrorCallback(hdma);
1189 .loc 1 645 10
1190 0134 7B68 ldr r3, [r7, #4]
1191 0136 1B6B ldr r3, [r3, #48]
1192 .loc 1 645 6
1193 0138 7868 ldr r0, [r7, #4]
1194 013a 9847 blx r3
1195 .LVL3:
646:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** }
647:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** }
648:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** }
1196 .loc 1 648 1
1197 013c FFE7 b .L47
1198 .L43:
1199 .L47:
1200 013e 00BF nop
1201 0140 1037 adds r7, r7, #16
1202 .cfi_def_cfa_offset 8
1203 0142 BD46 mov sp, r7
1204 .cfi_def_cfa_register 13
1205 @ sp needed
1206 0144 80BD pop {r7, pc}
1207 .cfi_endproc
1208 .LFE137:
1210 .section .text.HAL_DMA_RegisterCallback,"ax",%progbits
1211 .align 1
1212 .global HAL_DMA_RegisterCallback
1213 .syntax unified
1214 .thumb
1215 .thumb_func
1217 HAL_DMA_RegisterCallback:
1218 .LFB138:
649:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
650:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /**
651:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * @brief Register callbacks
652:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * @param hdma pointer to a DMA_HandleTypeDef structure that contains
653:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * the configuration information for the specified DMA Stream.
654:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * @param CallbackID User Callback identifier
655:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * a HAL_DMA_CallbackIDTypeDef ENUM as parameter.
656:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * @param pCallback pointer to private callback function which has pointer to
657:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * a DMA_HandleTypeDef structure as parameter.
658:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * @retval HAL status
659:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** */
660:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** HAL_StatusTypeDef HAL_DMA_RegisterCallback(DMA_HandleTypeDef *hdma, HAL_DMA_CallbackIDTypeDef Callb
661:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** {
1219 .loc 1 661 1
1220 .cfi_startproc
1221 @ args = 0, pretend = 0, frame = 24
1222 @ frame_needed = 1, uses_anonymous_args = 0
1223 @ link register save eliminated.
1224 0000 80B4 push {r7}
1225 .cfi_def_cfa_offset 4
1226 .cfi_offset 7, -4
1227 0002 87B0 sub sp, sp, #28
ARM GAS /tmp/ccDI3rYs.s page 34
1228 .cfi_def_cfa_offset 32
1229 0004 00AF add r7, sp, #0
1230 .cfi_def_cfa_register 7
1231 0006 F860 str r0, [r7, #12]
1232 0008 0B46 mov r3, r1
1233 000a 7A60 str r2, [r7, #4]
1234 000c FB72 strb r3, [r7, #11]
662:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** HAL_StatusTypeDef status = HAL_OK;
1235 .loc 1 662 21
1236 000e 0023 movs r3, #0
1237 0010 FB75 strb r3, [r7, #23]
663:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
664:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Process locked */
665:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** __HAL_LOCK(hdma);
1238 .loc 1 665 3
1239 0012 FB68 ldr r3, [r7, #12]
1240 0014 93F82030 ldrb r3, [r3, #32] @ zero_extendqisi2
1241 0018 012B cmp r3, #1
1242 001a 01D1 bne .L49
1243 .loc 1 665 3 is_stmt 0 discriminator 1
1244 001c 0223 movs r3, #2
1245 .loc 1 665 3
1246 001e 31E0 b .L50
1247 .L49:
1248 .loc 1 665 3 discriminator 2
1249 0020 FB68 ldr r3, [r7, #12]
1250 0022 0122 movs r2, #1
1251 0024 83F82020 strb r2, [r3, #32]
666:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
667:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** if(HAL_DMA_STATE_READY == hdma->State)
1252 .loc 1 667 33 is_stmt 1
1253 0028 FB68 ldr r3, [r7, #12]
1254 002a 93F82130 ldrb r3, [r3, #33] @ zero_extendqisi2
1255 .loc 1 667 5
1256 002e 012B cmp r3, #1
1257 0030 21D1 bne .L51
668:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** {
669:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** switch (CallbackID)
1258 .loc 1 669 5
1259 0032 FB7A ldrb r3, [r7, #11] @ zero_extendqisi2
1260 0034 032B cmp r3, #3
1261 0036 1BD8 bhi .L52
1262 0038 01A2 adr r2, .L54
1263 003a 52F823F0 ldr pc, [r2, r3, lsl #2]
1264 003e 00BF .p2align 2
1265 .L54:
1266 0040 51000000 .word .L57+1
1267 0044 59000000 .word .L56+1
1268 0048 61000000 .word .L55+1
1269 004c 69000000 .word .L53+1
1270 .p2align 1
1271 .L57:
670:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** {
671:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** case HAL_DMA_XFER_CPLT_CB_ID:
672:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** hdma->XferCpltCallback = pCallback;
1272 .loc 1 672 35
1273 0050 FB68 ldr r3, [r7, #12]
ARM GAS /tmp/ccDI3rYs.s page 35
1274 0052 7A68 ldr r2, [r7, #4]
1275 0054 9A62 str r2, [r3, #40]
673:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** break;
1276 .loc 1 673 12
1277 0056 10E0 b .L59
1278 .L56:
674:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
675:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** case HAL_DMA_XFER_HALFCPLT_CB_ID:
676:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** hdma->XferHalfCpltCallback = pCallback;
1279 .loc 1 676 39
1280 0058 FB68 ldr r3, [r7, #12]
1281 005a 7A68 ldr r2, [r7, #4]
1282 005c DA62 str r2, [r3, #44]
677:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** break;
1283 .loc 1 677 12
1284 005e 0CE0 b .L59
1285 .L55:
678:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
679:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** case HAL_DMA_XFER_ERROR_CB_ID:
680:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** hdma->XferErrorCallback = pCallback;
1286 .loc 1 680 36
1287 0060 FB68 ldr r3, [r7, #12]
1288 0062 7A68 ldr r2, [r7, #4]
1289 0064 1A63 str r2, [r3, #48]
681:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** break;
1290 .loc 1 681 12
1291 0066 08E0 b .L59
1292 .L53:
682:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
683:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** case HAL_DMA_XFER_ABORT_CB_ID:
684:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** hdma->XferAbortCallback = pCallback;
1293 .loc 1 684 36
1294 0068 FB68 ldr r3, [r7, #12]
1295 006a 7A68 ldr r2, [r7, #4]
1296 006c 5A63 str r2, [r3, #52]
685:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** break;
1297 .loc 1 685 12
1298 006e 04E0 b .L59
1299 .L52:
686:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
687:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** default:
688:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** status = HAL_ERROR;
1300 .loc 1 688 19
1301 0070 0123 movs r3, #1
1302 0072 FB75 strb r3, [r7, #23]
689:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** break;
1303 .loc 1 689 12
1304 0074 01E0 b .L59
1305 .L51:
690:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** }
691:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** }
692:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** else
693:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** {
694:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** status = HAL_ERROR;
1306 .loc 1 694 12
1307 0076 0123 movs r3, #1
1308 0078 FB75 strb r3, [r7, #23]
ARM GAS /tmp/ccDI3rYs.s page 36
1309 .L59:
695:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** }
696:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
697:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Release Lock */
698:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** __HAL_UNLOCK(hdma);
1310 .loc 1 698 3
1311 007a FB68 ldr r3, [r7, #12]
1312 007c 0022 movs r2, #0
1313 007e 83F82020 strb r2, [r3, #32]
699:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
700:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** return status;
1314 .loc 1 700 10
1315 0082 FB7D ldrb r3, [r7, #23] @ zero_extendqisi2
1316 .L50:
701:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** }
1317 .loc 1 701 1
1318 0084 1846 mov r0, r3
1319 0086 1C37 adds r7, r7, #28
1320 .cfi_def_cfa_offset 4
1321 0088 BD46 mov sp, r7
1322 .cfi_def_cfa_register 13
1323 @ sp needed
1324 008a 5DF8047B ldr r7, [sp], #4
1325 .cfi_restore 7
1326 .cfi_def_cfa_offset 0
1327 008e 7047 bx lr
1328 .cfi_endproc
1329 .LFE138:
1331 .section .text.HAL_DMA_UnRegisterCallback,"ax",%progbits
1332 .align 1
1333 .global HAL_DMA_UnRegisterCallback
1334 .syntax unified
1335 .thumb
1336 .thumb_func
1338 HAL_DMA_UnRegisterCallback:
1339 .LFB139:
702:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
703:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /**
704:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * @brief UnRegister callbacks
705:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * @param hdma pointer to a DMA_HandleTypeDef structure that contains
706:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * the configuration information for the specified DMA Stream.
707:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * @param CallbackID User Callback identifier
708:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * a HAL_DMA_CallbackIDTypeDef ENUM as parameter.
709:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * @retval HAL status
710:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** */
711:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** HAL_StatusTypeDef HAL_DMA_UnRegisterCallback(DMA_HandleTypeDef *hdma, HAL_DMA_CallbackIDTypeDef Cal
712:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** {
1340 .loc 1 712 1
1341 .cfi_startproc
1342 @ args = 0, pretend = 0, frame = 16
1343 @ frame_needed = 1, uses_anonymous_args = 0
1344 @ link register save eliminated.
1345 0000 80B4 push {r7}
1346 .cfi_def_cfa_offset 4
1347 .cfi_offset 7, -4
1348 0002 85B0 sub sp, sp, #20
1349 .cfi_def_cfa_offset 24
ARM GAS /tmp/ccDI3rYs.s page 37
1350 0004 00AF add r7, sp, #0
1351 .cfi_def_cfa_register 7
1352 0006 7860 str r0, [r7, #4]
1353 0008 0B46 mov r3, r1
1354 000a FB70 strb r3, [r7, #3]
713:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** HAL_StatusTypeDef status = HAL_OK;
1355 .loc 1 713 21
1356 000c 0023 movs r3, #0
1357 000e FB73 strb r3, [r7, #15]
714:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
715:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Process locked */
716:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** __HAL_LOCK(hdma);
1358 .loc 1 716 3
1359 0010 7B68 ldr r3, [r7, #4]
1360 0012 93F82030 ldrb r3, [r3, #32] @ zero_extendqisi2
1361 0016 012B cmp r3, #1
1362 0018 01D1 bne .L61
1363 .loc 1 716 3 is_stmt 0 discriminator 1
1364 001a 0223 movs r3, #2
1365 .loc 1 716 3
1366 001c 3FE0 b .L62
1367 .L61:
1368 .loc 1 716 3 discriminator 2
1369 001e 7B68 ldr r3, [r7, #4]
1370 0020 0122 movs r2, #1
1371 0022 83F82020 strb r2, [r3, #32]
717:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
718:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** if(HAL_DMA_STATE_READY == hdma->State)
1372 .loc 1 718 33 is_stmt 1
1373 0026 7B68 ldr r3, [r7, #4]
1374 0028 93F82130 ldrb r3, [r3, #33] @ zero_extendqisi2
1375 .loc 1 718 5
1376 002c 012B cmp r3, #1
1377 002e 2FD1 bne .L63
719:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** {
720:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** switch (CallbackID)
1378 .loc 1 720 5
1379 0030 FB78 ldrb r3, [r7, #3] @ zero_extendqisi2
1380 0032 042B cmp r3, #4
1381 0034 29D8 bhi .L64
1382 0036 01A2 adr r2, .L66
1383 0038 52F823F0 ldr pc, [r2, r3, lsl #2]
1384 .p2align 2
1385 .L66:
1386 003c 51000000 .word .L70+1
1387 0040 59000000 .word .L69+1
1388 0044 61000000 .word .L68+1
1389 0048 69000000 .word .L67+1
1390 004c 71000000 .word .L65+1
1391 .p2align 1
1392 .L70:
721:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** {
722:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** case HAL_DMA_XFER_CPLT_CB_ID:
723:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** hdma->XferCpltCallback = NULL;
1393 .loc 1 723 35
1394 0050 7B68 ldr r3, [r7, #4]
1395 0052 0022 movs r2, #0
ARM GAS /tmp/ccDI3rYs.s page 38
1396 0054 9A62 str r2, [r3, #40]
724:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** break;
1397 .loc 1 724 12
1398 0056 1DE0 b .L72
1399 .L69:
725:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
726:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** case HAL_DMA_XFER_HALFCPLT_CB_ID:
727:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** hdma->XferHalfCpltCallback = NULL;
1400 .loc 1 727 39
1401 0058 7B68 ldr r3, [r7, #4]
1402 005a 0022 movs r2, #0
1403 005c DA62 str r2, [r3, #44]
728:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** break;
1404 .loc 1 728 12
1405 005e 19E0 b .L72
1406 .L68:
729:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
730:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** case HAL_DMA_XFER_ERROR_CB_ID:
731:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** hdma->XferErrorCallback = NULL;
1407 .loc 1 731 36
1408 0060 7B68 ldr r3, [r7, #4]
1409 0062 0022 movs r2, #0
1410 0064 1A63 str r2, [r3, #48]
732:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** break;
1411 .loc 1 732 12
1412 0066 15E0 b .L72
1413 .L67:
733:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
734:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** case HAL_DMA_XFER_ABORT_CB_ID:
735:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** hdma->XferAbortCallback = NULL;
1414 .loc 1 735 36
1415 0068 7B68 ldr r3, [r7, #4]
1416 006a 0022 movs r2, #0
1417 006c 5A63 str r2, [r3, #52]
736:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** break;
1418 .loc 1 736 12
1419 006e 11E0 b .L72
1420 .L65:
737:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
738:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** case HAL_DMA_XFER_ALL_CB_ID:
739:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** hdma->XferCpltCallback = NULL;
1421 .loc 1 739 35
1422 0070 7B68 ldr r3, [r7, #4]
1423 0072 0022 movs r2, #0
1424 0074 9A62 str r2, [r3, #40]
740:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** hdma->XferHalfCpltCallback = NULL;
1425 .loc 1 740 39
1426 0076 7B68 ldr r3, [r7, #4]
1427 0078 0022 movs r2, #0
1428 007a DA62 str r2, [r3, #44]
741:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** hdma->XferErrorCallback = NULL;
1429 .loc 1 741 36
1430 007c 7B68 ldr r3, [r7, #4]
1431 007e 0022 movs r2, #0
1432 0080 1A63 str r2, [r3, #48]
742:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** hdma->XferAbortCallback = NULL;
1433 .loc 1 742 36
ARM GAS /tmp/ccDI3rYs.s page 39
1434 0082 7B68 ldr r3, [r7, #4]
1435 0084 0022 movs r2, #0
1436 0086 5A63 str r2, [r3, #52]
743:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** break;
1437 .loc 1 743 12
1438 0088 04E0 b .L72
1439 .L64:
744:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
745:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** default:
746:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** status = HAL_ERROR;
1440 .loc 1 746 19
1441 008a 0123 movs r3, #1
1442 008c FB73 strb r3, [r7, #15]
747:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** break;
1443 .loc 1 747 12
1444 008e 01E0 b .L72
1445 .L63:
748:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** }
749:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** }
750:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** else
751:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** {
752:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** status = HAL_ERROR;
1446 .loc 1 752 12
1447 0090 0123 movs r3, #1
1448 0092 FB73 strb r3, [r7, #15]
1449 .L72:
753:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** }
754:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
755:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Release Lock */
756:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** __HAL_UNLOCK(hdma);
1450 .loc 1 756 3
1451 0094 7B68 ldr r3, [r7, #4]
1452 0096 0022 movs r2, #0
1453 0098 83F82020 strb r2, [r3, #32]
757:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
758:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** return status;
1454 .loc 1 758 10
1455 009c FB7B ldrb r3, [r7, #15] @ zero_extendqisi2
1456 .L62:
759:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** }
1457 .loc 1 759 1
1458 009e 1846 mov r0, r3
1459 00a0 1437 adds r7, r7, #20
1460 .cfi_def_cfa_offset 4
1461 00a2 BD46 mov sp, r7
1462 .cfi_def_cfa_register 13
1463 @ sp needed
1464 00a4 5DF8047B ldr r7, [sp], #4
1465 .cfi_restore 7
1466 .cfi_def_cfa_offset 0
1467 00a8 7047 bx lr
1468 .cfi_endproc
1469 .LFE139:
1471 00aa 00BF .section .text.HAL_DMA_GetState,"ax",%progbits
1472 .align 1
1473 .global HAL_DMA_GetState
1474 .syntax unified
ARM GAS /tmp/ccDI3rYs.s page 40
1475 .thumb
1476 .thumb_func
1478 HAL_DMA_GetState:
1479 .LFB140:
760:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
761:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /**
762:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * @}
763:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** */
764:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
765:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /** @defgroup DMA_Exported_Functions_Group3 Peripheral State functions
766:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * @brief Peripheral State functions
767:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** *
768:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** @verbatim
769:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** ===============================================================================
770:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** ##### State and Errors functions #####
771:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** ===============================================================================
772:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** [..]
773:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** This subsection provides functions allowing to
774:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** (+) Check the DMA state
775:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** (+) Get error code
776:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
777:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** @endverbatim
778:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * @{
779:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** */
780:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
781:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /**
782:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * @brief Returns the DMA state.
783:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * @param hdma pointer to a DMA_HandleTypeDef structure that contains
784:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * the configuration information for the specified DMA Channel.
785:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * @retval HAL state
786:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** */
787:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** HAL_DMA_StateTypeDef HAL_DMA_GetState(DMA_HandleTypeDef *hdma)
788:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** {
1480 .loc 1 788 1
1481 .cfi_startproc
1482 @ args = 0, pretend = 0, frame = 8
1483 @ frame_needed = 1, uses_anonymous_args = 0
1484 @ link register save eliminated.
1485 0000 80B4 push {r7}
1486 .cfi_def_cfa_offset 4
1487 .cfi_offset 7, -4
1488 0002 83B0 sub sp, sp, #12
1489 .cfi_def_cfa_offset 16
1490 0004 00AF add r7, sp, #0
1491 .cfi_def_cfa_register 7
1492 0006 7860 str r0, [r7, #4]
789:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** return hdma->State;
1493 .loc 1 789 14
1494 0008 7B68 ldr r3, [r7, #4]
1495 000a 93F82130 ldrb r3, [r3, #33] @ zero_extendqisi2
790:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** }
1496 .loc 1 790 1
1497 000e 1846 mov r0, r3
1498 0010 0C37 adds r7, r7, #12
1499 .cfi_def_cfa_offset 4
1500 0012 BD46 mov sp, r7
1501 .cfi_def_cfa_register 13
ARM GAS /tmp/ccDI3rYs.s page 41
1502 @ sp needed
1503 0014 5DF8047B ldr r7, [sp], #4
1504 .cfi_restore 7
1505 .cfi_def_cfa_offset 0
1506 0018 7047 bx lr
1507 .cfi_endproc
1508 .LFE140:
1510 .section .text.HAL_DMA_GetError,"ax",%progbits
1511 .align 1
1512 .global HAL_DMA_GetError
1513 .syntax unified
1514 .thumb
1515 .thumb_func
1517 HAL_DMA_GetError:
1518 .LFB141:
791:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
792:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /**
793:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * @brief Return the DMA error code
794:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * @param hdma pointer to a DMA_HandleTypeDef structure that contains
795:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * the configuration information for the specified DMA Channel.
796:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * @retval DMA Error Code
797:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** */
798:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** uint32_t HAL_DMA_GetError(DMA_HandleTypeDef *hdma)
799:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** {
1519 .loc 1 799 1
1520 .cfi_startproc
1521 @ args = 0, pretend = 0, frame = 8
1522 @ frame_needed = 1, uses_anonymous_args = 0
1523 @ link register save eliminated.
1524 0000 80B4 push {r7}
1525 .cfi_def_cfa_offset 4
1526 .cfi_offset 7, -4
1527 0002 83B0 sub sp, sp, #12
1528 .cfi_def_cfa_offset 16
1529 0004 00AF add r7, sp, #0
1530 .cfi_def_cfa_register 7
1531 0006 7860 str r0, [r7, #4]
800:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** return hdma->ErrorCode;
1532 .loc 1 800 14
1533 0008 7B68 ldr r3, [r7, #4]
1534 000a 9B6B ldr r3, [r3, #56]
801:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** }
1535 .loc 1 801 1
1536 000c 1846 mov r0, r3
1537 000e 0C37 adds r7, r7, #12
1538 .cfi_def_cfa_offset 4
1539 0010 BD46 mov sp, r7
1540 .cfi_def_cfa_register 13
1541 @ sp needed
1542 0012 5DF8047B ldr r7, [sp], #4
1543 .cfi_restore 7
1544 .cfi_def_cfa_offset 0
1545 0016 7047 bx lr
1546 .cfi_endproc
1547 .LFE141:
1549 .section .text.DMA_SetConfig,"ax",%progbits
1550 .align 1
ARM GAS /tmp/ccDI3rYs.s page 42
1551 .syntax unified
1552 .thumb
1553 .thumb_func
1555 DMA_SetConfig:
1556 .LFB142:
802:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
803:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /**
804:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * @}
805:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** */
806:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
807:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /**
808:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * @}
809:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** */
810:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
811:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /** @addtogroup DMA_Private_Functions
812:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * @{
813:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** */
814:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
815:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /**
816:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * @brief Set the DMA Transfer parameters.
817:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * @param hdma pointer to a DMA_HandleTypeDef structure that contains
818:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * the configuration information for the specified DMA Channel.
819:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * @param SrcAddress The source memory Buffer address
820:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * @param DstAddress The destination memory Buffer address
821:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * @param DataLength The length of data to be transferred from source to destination
822:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * @retval HAL status
823:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** */
824:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** static void DMA_SetConfig(DMA_HandleTypeDef *hdma, uint32_t SrcAddress, uint32_t DstAddress, uint32
825:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** {
1557 .loc 1 825 1
1558 .cfi_startproc
1559 @ args = 0, pretend = 0, frame = 16
1560 @ frame_needed = 1, uses_anonymous_args = 0
1561 @ link register save eliminated.
1562 0000 80B4 push {r7}
1563 .cfi_def_cfa_offset 4
1564 .cfi_offset 7, -4
1565 0002 85B0 sub sp, sp, #20
1566 .cfi_def_cfa_offset 24
1567 0004 00AF add r7, sp, #0
1568 .cfi_def_cfa_register 7
1569 0006 F860 str r0, [r7, #12]
1570 0008 B960 str r1, [r7, #8]
1571 000a 7A60 str r2, [r7, #4]
1572 000c 3B60 str r3, [r7]
826:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Clear all flags */
827:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** hdma->DmaBaseAddress->IFCR = (DMA_FLAG_GL1 << hdma->ChannelIndex);
1573 .loc 1 827 54
1574 000e FB68 ldr r3, [r7, #12]
1575 0010 1A6C ldr r2, [r3, #64]
1576 .loc 1 827 7
1577 0012 FB68 ldr r3, [r7, #12]
1578 0014 DB6B ldr r3, [r3, #60]
1579 .loc 1 827 47
1580 0016 0121 movs r1, #1
1581 0018 01FA02F2 lsl r2, r1, r2
1582 .loc 1 827 31
ARM GAS /tmp/ccDI3rYs.s page 43
1583 001c 5A60 str r2, [r3, #4]
828:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
829:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Configure DMA Channel data length */
830:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** hdma->Instance->CNDTR = DataLength;
1584 .loc 1 830 7
1585 001e FB68 ldr r3, [r7, #12]
1586 0020 1B68 ldr r3, [r3]
1587 .loc 1 830 25
1588 0022 3A68 ldr r2, [r7]
1589 0024 5A60 str r2, [r3, #4]
831:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
832:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Peripheral to Memory */
833:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** if((hdma->Init.Direction) == DMA_MEMORY_TO_PERIPH)
1590 .loc 1 833 17
1591 0026 FB68 ldr r3, [r7, #12]
1592 0028 5B68 ldr r3, [r3, #4]
1593 .loc 1 833 5
1594 002a 102B cmp r3, #16
1595 002c 08D1 bne .L78
834:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** {
835:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Configure DMA Channel destination address */
836:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** hdma->Instance->CPAR = DstAddress;
1596 .loc 1 836 9
1597 002e FB68 ldr r3, [r7, #12]
1598 0030 1B68 ldr r3, [r3]
1599 .loc 1 836 26
1600 0032 7A68 ldr r2, [r7, #4]
1601 0034 9A60 str r2, [r3, #8]
837:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
838:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Configure DMA Channel source address */
839:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** hdma->Instance->CMAR = SrcAddress;
1602 .loc 1 839 9
1603 0036 FB68 ldr r3, [r7, #12]
1604 0038 1B68 ldr r3, [r3]
1605 .loc 1 839 26
1606 003a BA68 ldr r2, [r7, #8]
1607 003c DA60 str r2, [r3, #12]
840:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** }
841:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Memory to Peripheral */
842:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** else
843:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** {
844:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Configure DMA Channel source address */
845:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** hdma->Instance->CPAR = SrcAddress;
846:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
847:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* Configure DMA Channel destination address */
848:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** hdma->Instance->CMAR = DstAddress;
849:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** }
850:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** }
1608 .loc 1 850 1
1609 003e 07E0 b .L80
1610 .L78:
845:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
1611 .loc 1 845 9
1612 0040 FB68 ldr r3, [r7, #12]
1613 0042 1B68 ldr r3, [r3]
845:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
1614 .loc 1 845 26
ARM GAS /tmp/ccDI3rYs.s page 44
1615 0044 BA68 ldr r2, [r7, #8]
1616 0046 9A60 str r2, [r3, #8]
848:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** }
1617 .loc 1 848 9
1618 0048 FB68 ldr r3, [r7, #12]
1619 004a 1B68 ldr r3, [r3]
848:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** }
1620 .loc 1 848 26
1621 004c 7A68 ldr r2, [r7, #4]
1622 004e DA60 str r2, [r3, #12]
1623 .L80:
1624 .loc 1 850 1
1625 0050 00BF nop
1626 0052 1437 adds r7, r7, #20
1627 .cfi_def_cfa_offset 4
1628 0054 BD46 mov sp, r7
1629 .cfi_def_cfa_register 13
1630 @ sp needed
1631 0056 5DF8047B ldr r7, [sp], #4
1632 .cfi_restore 7
1633 .cfi_def_cfa_offset 0
1634 005a 7047 bx lr
1635 .cfi_endproc
1636 .LFE142:
1638 .section .text.DMA_CalcBaseAndBitshift,"ax",%progbits
1639 .align 1
1640 .syntax unified
1641 .thumb
1642 .thumb_func
1644 DMA_CalcBaseAndBitshift:
1645 .LFB143:
851:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c ****
852:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /**
853:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * @brief Set the DMA base address and channel index depending on DMA instance
854:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * @param hdma pointer to a DMA_HandleTypeDef structure that contains
855:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * the configuration information for the specified DMA Stream.
856:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** * @retval None
857:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** */
858:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** static void DMA_CalcBaseAndBitshift(DMA_HandleTypeDef *hdma)
859:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** {
1646 .loc 1 859 1
1647 .cfi_startproc
1648 @ args = 0, pretend = 0, frame = 8
1649 @ frame_needed = 1, uses_anonymous_args = 0
1650 @ link register save eliminated.
1651 0000 80B4 push {r7}
1652 .cfi_def_cfa_offset 4
1653 .cfi_offset 7, -4
1654 0002 83B0 sub sp, sp, #12
1655 .cfi_def_cfa_offset 16
1656 0004 00AF add r7, sp, #0
1657 .cfi_def_cfa_register 7
1658 0006 7860 str r0, [r7, #4]
860:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** #if defined (DMA2)
861:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* calculation of the channel index */
862:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** if ((uint32_t)(hdma->Instance) < (uint32_t)(DMA2_Channel1))
1659 .loc 1 862 22
ARM GAS /tmp/ccDI3rYs.s page 45
1660 0008 7B68 ldr r3, [r7, #4]
1661 000a 1B68 ldr r3, [r3]
1662 .loc 1 862 7
1663 000c 1A46 mov r2, r3
1664 .loc 1 862 6
1665 000e 144B ldr r3, .L85
1666 0010 9A42 cmp r2, r3
1667 0012 0FD8 bhi .L82
863:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** {
864:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* DMA1 */
865:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** hdma->ChannelIndex = (((uint32_t)hdma->Instance - (uint32_t)DMA1_Channel1) / ((uint32_t)DMA1_Ch
1668 .loc 1 865 42
1669 0014 7B68 ldr r3, [r7, #4]
1670 0016 1B68 ldr r3, [r3]
1671 .loc 1 865 28
1672 0018 1A46 mov r2, r3
1673 .loc 1 865 53
1674 001a 124B ldr r3, .L85+4
1675 001c 1344 add r3, r3, r2
1676 .loc 1 865 80
1677 001e 124A ldr r2, .L85+8
1678 0020 A2FB0323 umull r2, r3, r2, r3
1679 0024 1B09 lsrs r3, r3, #4
1680 .loc 1 865 135
1681 0026 9A00 lsls r2, r3, #2
1682 .loc 1 865 24
1683 0028 7B68 ldr r3, [r7, #4]
1684 002a 1A64 str r2, [r3, #64]
866:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** hdma->DmaBaseAddress = DMA1;
1685 .loc 1 866 26
1686 002c 7B68 ldr r3, [r7, #4]
1687 002e 0F4A ldr r2, .L85+12
1688 0030 DA63 str r2, [r3, #60]
867:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** }
868:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** else
869:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** {
870:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* DMA2 */
871:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** hdma->ChannelIndex = (((uint32_t)hdma->Instance - (uint32_t)DMA2_Channel1) / ((uint32_t)DMA2_Ch
872:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** hdma->DmaBaseAddress = DMA2;
873:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** }
874:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** #else
875:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* calculation of the channel index */
876:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** /* DMA1 */
877:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** hdma->ChannelIndex = (((uint32_t)hdma->Instance - (uint32_t)DMA1_Channel1) / ((uint32_t)DMA1_Chan
878:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** hdma->DmaBaseAddress = DMA1;
879:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** #endif
880:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** }
1689 .loc 1 880 1
1690 0032 0EE0 b .L84
1691 .L82:
871:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** hdma->DmaBaseAddress = DMA2;
1692 .loc 1 871 42
1693 0034 7B68 ldr r3, [r7, #4]
1694 0036 1B68 ldr r3, [r3]
871:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** hdma->DmaBaseAddress = DMA2;
1695 .loc 1 871 28
1696 0038 1A46 mov r2, r3
ARM GAS /tmp/ccDI3rYs.s page 46
871:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** hdma->DmaBaseAddress = DMA2;
1697 .loc 1 871 53
1698 003a 0D4B ldr r3, .L85+16
1699 003c 1344 add r3, r3, r2
871:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** hdma->DmaBaseAddress = DMA2;
1700 .loc 1 871 80
1701 003e 0A4A ldr r2, .L85+8
1702 0040 A2FB0323 umull r2, r3, r2, r3
1703 0044 1B09 lsrs r3, r3, #4
871:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** hdma->DmaBaseAddress = DMA2;
1704 .loc 1 871 135
1705 0046 9A00 lsls r2, r3, #2
871:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** hdma->DmaBaseAddress = DMA2;
1706 .loc 1 871 24
1707 0048 7B68 ldr r3, [r7, #4]
1708 004a 1A64 str r2, [r3, #64]
872:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_dma.c **** }
1709 .loc 1 872 26
1710 004c 7B68 ldr r3, [r7, #4]
1711 004e 094A ldr r2, .L85+20
1712 0050 DA63 str r2, [r3, #60]
1713 .L84:
1714 .loc 1 880 1
1715 0052 00BF nop
1716 0054 0C37 adds r7, r7, #12
1717 .cfi_def_cfa_offset 4
1718 0056 BD46 mov sp, r7
1719 .cfi_def_cfa_register 13
1720 @ sp needed
1721 0058 5DF8047B ldr r7, [sp], #4
1722 .cfi_restore 7
1723 .cfi_def_cfa_offset 0
1724 005c 7047 bx lr
1725 .L86:
1726 005e 00BF .align 2
1727 .L85:
1728 0060 07040240 .word 1073873927
1729 0064 F8FFFDBF .word -1073872904
1730 0068 CDCCCCCC .word -858993459
1731 006c 00000240 .word 1073872896
1732 0070 F8FBFDBF .word -1073873928
1733 0074 00040240 .word 1073873920
1734 .cfi_endproc
1735 .LFE143:
1737 .text
1738 .Letext0:
1739 .file 2 "/nix/store/p8vkamc9b2vlibs9aw76vnasdbifhcbm-gcc-arm-embedded-13.2.rel1/arm-none-eabi/incl
1740 .file 3 "/nix/store/p8vkamc9b2vlibs9aw76vnasdbifhcbm-gcc-arm-embedded-13.2.rel1/arm-none-eabi/incl
1741 .file 4 "Drivers/CMSIS/Device/ST/STM32F3xx/Include/stm32f302xc.h"
1742 .file 5 "Drivers/CMSIS/Device/ST/STM32F3xx/Include/stm32f3xx.h"
1743 .file 6 "Drivers/STM32F3xx_HAL_Driver/Inc/stm32f3xx_hal_def.h"
1744 .file 7 "Drivers/STM32F3xx_HAL_Driver/Inc/stm32f3xx_hal_dma.h"
1745 .file 8 "Drivers/STM32F3xx_HAL_Driver/Inc/stm32f3xx_hal.h"
ARM GAS /tmp/ccDI3rYs.s page 47
DEFINED SYMBOLS
*ABS*:00000000 stm32f3xx_hal_dma.c
/tmp/ccDI3rYs.s:21 .text.HAL_DMA_Init:00000000 $t
/tmp/ccDI3rYs.s:27 .text.HAL_DMA_Init:00000000 HAL_DMA_Init
/tmp/ccDI3rYs.s:1644 .text.DMA_CalcBaseAndBitshift:00000000 DMA_CalcBaseAndBitshift
/tmp/ccDI3rYs.s:141 .text.HAL_DMA_DeInit:00000000 $t
/tmp/ccDI3rYs.s:147 .text.HAL_DMA_DeInit:00000000 HAL_DMA_DeInit
/tmp/ccDI3rYs.s:262 .text.HAL_DMA_Start:00000000 $t
/tmp/ccDI3rYs.s:268 .text.HAL_DMA_Start:00000000 HAL_DMA_Start
/tmp/ccDI3rYs.s:1555 .text.DMA_SetConfig:00000000 DMA_SetConfig
/tmp/ccDI3rYs.s:370 .text.HAL_DMA_Start_IT:00000000 $t
/tmp/ccDI3rYs.s:376 .text.HAL_DMA_Start_IT:00000000 HAL_DMA_Start_IT
/tmp/ccDI3rYs.s:520 .text.HAL_DMA_Abort:00000000 $t
/tmp/ccDI3rYs.s:526 .text.HAL_DMA_Abort:00000000 HAL_DMA_Abort
/tmp/ccDI3rYs.s:618 .text.HAL_DMA_Abort_IT:00000000 $t
/tmp/ccDI3rYs.s:624 .text.HAL_DMA_Abort_IT:00000000 HAL_DMA_Abort_IT
/tmp/ccDI3rYs.s:726 .text.HAL_DMA_PollForTransfer:00000000 $t
/tmp/ccDI3rYs.s:732 .text.HAL_DMA_PollForTransfer:00000000 HAL_DMA_PollForTransfer
/tmp/ccDI3rYs.s:956 .text.HAL_DMA_IRQHandler:00000000 $t
/tmp/ccDI3rYs.s:962 .text.HAL_DMA_IRQHandler:00000000 HAL_DMA_IRQHandler
/tmp/ccDI3rYs.s:1211 .text.HAL_DMA_RegisterCallback:00000000 $t
/tmp/ccDI3rYs.s:1217 .text.HAL_DMA_RegisterCallback:00000000 HAL_DMA_RegisterCallback
/tmp/ccDI3rYs.s:1266 .text.HAL_DMA_RegisterCallback:00000040 $d
/tmp/ccDI3rYs.s:1270 .text.HAL_DMA_RegisterCallback:00000050 $t
/tmp/ccDI3rYs.s:1332 .text.HAL_DMA_UnRegisterCallback:00000000 $t
/tmp/ccDI3rYs.s:1338 .text.HAL_DMA_UnRegisterCallback:00000000 HAL_DMA_UnRegisterCallback
/tmp/ccDI3rYs.s:1386 .text.HAL_DMA_UnRegisterCallback:0000003c $d
/tmp/ccDI3rYs.s:1391 .text.HAL_DMA_UnRegisterCallback:00000050 $t
/tmp/ccDI3rYs.s:1472 .text.HAL_DMA_GetState:00000000 $t
/tmp/ccDI3rYs.s:1478 .text.HAL_DMA_GetState:00000000 HAL_DMA_GetState
/tmp/ccDI3rYs.s:1511 .text.HAL_DMA_GetError:00000000 $t
/tmp/ccDI3rYs.s:1517 .text.HAL_DMA_GetError:00000000 HAL_DMA_GetError
/tmp/ccDI3rYs.s:1550 .text.DMA_SetConfig:00000000 $t
/tmp/ccDI3rYs.s:1639 .text.DMA_CalcBaseAndBitshift:00000000 $t
/tmp/ccDI3rYs.s:1728 .text.DMA_CalcBaseAndBitshift:00000060 $d
UNDEFINED SYMBOLS
HAL_GetTick