STM32H750VB_Bootloader/build/stm32h7xx_hal_mdma.lst

6855 lines
417 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/ccBjdYa2.s page 1
1 .cpu cortex-m7
2 .eabi_attribute 28, 1
3 .eabi_attribute 20, 1
4 .eabi_attribute 21, 1
5 .eabi_attribute 23, 3
6 .eabi_attribute 24, 1
7 .eabi_attribute 25, 1
8 .eabi_attribute 26, 1
9 .eabi_attribute 30, 1
10 .eabi_attribute 34, 1
11 .eabi_attribute 18, 4
12 .file "stm32h7xx_hal_mdma.c"
13 .text
14 .Ltext0:
15 .cfi_sections .debug_frame
16 .section .text.MDMA_SetConfig,"ax",%progbits
17 .align 1
18 .arch armv7e-m
19 .syntax unified
20 .thumb
21 .thumb_func
22 .fpu fpv5-d16
24 MDMA_SetConfig:
25 .LVL0:
26 .LFB160:
27 .file 1 "Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c"
1:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /**
2:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** ******************************************************************************
3:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @file stm32h7xx_hal_mdma.c
4:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @author MCD Application Team
5:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @brief This file provides firmware functions to manage the following
6:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * functionalities of the Master Direct Memory Access (MDMA) peripheral:
7:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * + Initialization/de-initialization functions
8:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * + I/O operation functions
9:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * + Peripheral State and errors functions
10:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** @verbatim
11:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** ==============================================================================
12:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** ##### How to use this driver #####
13:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** ==============================================================================
14:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** [..]
15:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** (#) Enable and configure the peripheral to be connected to the MDMA Channel
16:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** (except for internal SRAM/FLASH memories: no initialization is
17:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** necessary) please refer to Reference manual for connection between peripherals
18:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** and MDMA requests.
19:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
20:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** (#)
21:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** For a given Channel use HAL_MDMA_Init function to program the required configuration through
22:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** transfer request , channel priority, data endianness, Source increment, destination incremen
23:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** source data size, destination data size, data alignment, source Burst, destination Burst ,
24:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** buffer Transfer Length, Transfer Trigger Mode (buffer transfer, block transfer, repeated blo
25:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** or full transfer) source and destination block address offset, mask address and data.
26:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
27:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** If using the MDMA in linked list mode then use function HAL_MDMA_LinkedList_CreateNode to fi
28:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** Note that parameters given to the function HAL_MDMA_Init corresponds always to the node zero
29:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** Use function HAL_MDMA_LinkedList_AddNode to connect the created node to the linked list at a
30:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** User can make a linked list circular using function HAL_MDMA_LinkedList_EnableCircularMode ,
31:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** last node of the list to the first one in order to make the list circular.
ARM GAS /tmp/ccBjdYa2.s page 2
32:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** In this case the linked list will loop on node 1 : first node connected after the initial tr
33:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
34:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** -@- The initial transfer itself (node 0 corresponding to the Init).
35:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** User can disable the circular mode using function HAL_MDMA_LinkedList_DisableCircularMo
36:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** the connection between last node and first one.
37:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
38:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** Function HAL_MDMA_LinkedList_RemoveNode can be used to remove (disconnect) a node from the t
39:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** When a linked list is circular (last node connected to first one), if removing node1 (node
40:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** the linked list remains circular and node 2 becomes the first one.
41:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** Note that if the linked list is made circular the transfer will loop infinitely (or until ab
42:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
43:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** [..]
44:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** (+) User can select the transfer trigger mode (parameter TransferTriggerMode) to define the
45:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** transfer upon a request :
46:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** (++) MDMA_BUFFER_TRANSFER : each request triggers a transfer of BufferTransferLength d
47:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** with BufferTransferLength defined within the HAL_MDMA_Init.
48:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** (++) MDMA_BLOCK_TRANSFER : each request triggers a transfer of a block
49:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** with block size defined within the function HAL_MDMA_Start/HAL_MDMA_Start_IT
50:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** or within the current linked list node parameters.
51:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** (++) MDMA_REPEAT_BLOCK_TRANSFER : each request triggers a transfer of a number of bloc
52:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** with block size and number of blocks defined within the function HAL_MDMA_Start/HAL_
53:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** or within the current linked list node parameters.
54:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** (++) MDMA_FULL_TRANSFER : each request triggers a full transfer
55:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** all blocks and all nodes(if a linked list has been created using HAL_MDMA_LinkedList_
56:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
57:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** *** Polling mode IO operation ***
58:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** =================================
59:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** [..]
60:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** (+) Use HAL_MDMA_Start() to start MDMA transfer after the configuration of Source
61:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** address and destination address and the Length of data to be transferred.
62:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** (+) Use HAL_MDMA_PollForTransfer() to poll for the end of current transfer or a transfer
63:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** In this case a fixed Timeout can be configured by User depending from his application.
64:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** (+) Use HAL_MDMA_Abort() function to abort the current transfer : blocking method this AP
65:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** when the abort ends or timeout (should not be called from an interrupt service routin
66:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
67:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** *** Interrupt mode IO operation ***
68:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** ===================================
69:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** [..]
70:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** (+) Configure the MDMA interrupt priority using HAL_NVIC_SetPriority()
71:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** (+) Enable the MDMA IRQ handler using HAL_NVIC_EnableIRQ()
72:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** (+) Use HAL_MDMA_Start_IT() to start MDMA transfer after the configuration of
73:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** Source address and destination address and the Length of data to be transferred. In t
74:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** case the MDMA interrupt is configured.
75:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** (+) Use HAL_MDMA_IRQHandler() called under MDMA_IRQHandler() Interrupt subroutine
76:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** (+) At the end of data transfer HAL_MDMA_IRQHandler() function is executed and user can
77:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** add his own function by customization of function pointer XferCpltCallback and
78:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** XferErrorCallback (i.e a member of MDMA handle structure).
79:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
80:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** (+) Use HAL_MDMA_Abort_IT() function to abort the current transfer : non-blocking method.
81:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** then the callback XferAbortCallback (if specified by the user) is asserted once the
82:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** (could be called from an interrupt service routine).
83:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
84:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** (+) Use functions HAL_MDMA_RegisterCallback and HAL_MDMA_UnRegisterCallback respectevely
85:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** from the following list :
86:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** (++) XferCpltCallback : transfer complete callback.
87:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** (++) XferBufferCpltCallback : buffer transfer complete callback.
88:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** (++) XferBlockCpltCallback : block transfer complete callback.
ARM GAS /tmp/ccBjdYa2.s page 3
89:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** (++) XferRepeatBlockCpltCallback : repeated block transfer complete callback.
90:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** (++) XferErrorCallback : transfer error callback.
91:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** (++) XferAbortCallback : transfer abort complete callback.
92:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
93:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** [..]
94:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** (+) If the transfer Request corresponds to SW request (MDMA_REQUEST_SW) User can use func
95:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** trigger requests manually. Function HAL_MDMA_GenerateSWRequest must be used with the
96:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** (++) This function returns an error if used while the Transfer has ended or not start
97:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** (++) If used while the current request has not been served yet (current request trans
98:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** this function returns an error and the new request is ignored.
99:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
100:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** Generally this function should be used in conjunctions with the MDMA callbacks:
101:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** (++) example 1:
102:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** (+++) Configure a transfer with request set to MDMA_REQUEST_SW and trigger mode se
103:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** (+++) Register a callback for buffer transfer complete (using callback ID set to H
104:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** (+++) After calling HAL_MDMA_Start_IT the MDMA will issue the transfer of a first
105:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** (+++) When the buffer transfer complete callback is asserted first buffer has been
106:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** request using HAL_MDMA_GenerateSWRequest.
107:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
108:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** (++) example 2:
109:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** (+++) Configure a transfer with request set to MDMA_REQUEST_SW and trigger mode se
110:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** (+++) Register a callback for block transfer complete (using callback ID HAL_MDMA_
111:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** (+++) After calling HAL_MDMA_Start_IT the MDMA will issue the transfer of a first
112:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** (+++) When the block transfer complete callback is asserted the first block has be
113:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** for a new block transfer request using HAL_MDMA_GenerateSWRequest.
114:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
115:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** [..] Use HAL_MDMA_GetState() function to return the MDMA state and HAL_MDMA_GetError() in case
116:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
117:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** *** MDMA HAL driver macros list ***
118:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** =============================================
119:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** [..]
120:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** Below the list of most used macros in MDMA HAL driver.
121:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
122:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** (+) __HAL_MDMA_ENABLE: Enable the specified MDMA Channel.
123:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** (+) __HAL_MDMA_DISABLE: Disable the specified MDMA Channel.
124:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** (+) __HAL_MDMA_GET_FLAG: Get the MDMA Channel pending flags.
125:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** (+) __HAL_MDMA_CLEAR_FLAG: Clear the MDMA Channel pending flags.
126:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** (+) __HAL_MDMA_ENABLE_IT: Enable the specified MDMA Channel interrupts.
127:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** (+) __HAL_MDMA_DISABLE_IT: Disable the specified MDMA Channel interrupts.
128:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** (+) __HAL_MDMA_GET_IT_SOURCE: Check whether the specified MDMA Channel interrupt has occurred
129:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
130:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** [..]
131:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** (@) You can refer to the header file of the MDMA HAL driver for more useful macros.
132:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
133:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** [..]
134:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
135:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** @endverbatim
136:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** ******************************************************************************
137:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @attention
138:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** *
139:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * <h2><center>&copy; COPYRIGHT(c) 2017 STMicroelectronics.
140:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * All rights reserved.</center></h2>
141:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** *
142:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * This software component is licensed by ST under BSD 3-Clause license,
143:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * the "License"; You may not use this file except in compliance with the
144:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * License. You may obtain a copy of the License at:
145:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * opensource.org/licenses/BSD-3-Clause
ARM GAS /tmp/ccBjdYa2.s page 4
146:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** *
147:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** ******************************************************************************
148:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** */
149:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
150:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Includes ------------------------------------------------------------------*/
151:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** #include "stm32h7xx_hal.h"
152:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
153:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /** @addtogroup STM32H7xx_HAL_Driver
154:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @{
155:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** */
156:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
157:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /** @defgroup MDMA MDMA
158:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @brief MDMA HAL module driver
159:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @{
160:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** */
161:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
162:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** #ifdef HAL_MDMA_MODULE_ENABLED
163:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
164:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Private typedef -----------------------------------------------------------*/
165:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Private constants ---------------------------------------------------------*/
166:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /** @addtogroup MDMA_Private_Constants
167:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @{
168:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** */
169:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** #define HAL_TIMEOUT_MDMA_ABORT 5U /* 5 ms */
170:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** #define HAL_MDMA_CHANNEL_SIZE 0x40U /* an MDMA instance channel size is 64 byte */
171:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /**
172:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @}
173:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** */
174:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Private macro -------------------------------------------------------------*/
175:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Private variables ---------------------------------------------------------*/
176:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Private function prototypes -----------------------------------------------*/
177:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /** @addtogroup MDMA_Private_Functions_Prototypes
178:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @{
179:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** */
180:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** static void MDMA_SetConfig(MDMA_HandleTypeDef *hmdma, uint32_t SrcAddress, uint32_t DstAddress, uin
181:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** static void MDMA_Init(MDMA_HandleTypeDef *hmdma);
182:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
183:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /**
184:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @}
185:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** */
186:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
187:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /** @addtogroup MDMA_Exported_Functions MDMA Exported Functions
188:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @{
189:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** */
190:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
191:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /** @addtogroup MDMA_Exported_Functions_Group1
192:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** *
193:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** @verbatim
194:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** ===============================================================================
195:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** ##### Initialization and de-initialization functions #####
196:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** ===============================================================================
197:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** [..]
198:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** This section provides functions allowing to :
199:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** Initialize and de-initialize the MDMA channel.
200:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** Register and Unregister MDMA callbacks
201:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** [..]
202:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** The HAL_MDMA_Init() function follows the MDMA channel configuration procedures as described in
ARM GAS /tmp/ccBjdYa2.s page 5
203:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** reference manual.
204:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** The HAL_MDMA_DeInit function allows to deinitialize the MDMA channel.
205:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** HAL_MDMA_RegisterCallback and HAL_MDMA_UnRegisterCallback functions allows
206:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** respectevely to register/unregister an MDMA callback function.
207:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
208:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** @endverbatim
209:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @{
210:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** */
211:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
212:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /**
213:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @brief Initializes the MDMA according to the specified
214:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * parameters in the MDMA_InitTypeDef and create the associated handle.
215:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @param hmdma: Pointer to a MDMA_HandleTypeDef structure that contains
216:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * the configuration information for the specified MDMA Channel.
217:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @retval HAL status
218:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** */
219:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** HAL_StatusTypeDef HAL_MDMA_Init(MDMA_HandleTypeDef *hmdma)
220:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
221:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** uint32_t tickstart = HAL_GetTick();
222:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
223:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Check the MDMA peripheral handle */
224:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if(hmdma == NULL)
225:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
226:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** return HAL_ERROR;
227:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
228:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
229:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Check the parameters */
230:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** assert_param(IS_MDMA_STREAM_ALL_INSTANCE(hmdma->Instance));
231:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** assert_param(IS_MDMA_PRIORITY(hmdma->Init.Priority));
232:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** assert_param(IS_MDMA_ENDIANNESS_MODE(hmdma->Init.Endianness));
233:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** assert_param(IS_MDMA_REQUEST(hmdma->Init.Request));
234:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** assert_param(IS_MDMA_SOURCE_INC(hmdma->Init.SourceInc));
235:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** assert_param(IS_MDMA_DESTINATION_INC(hmdma->Init.DestinationInc));
236:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** assert_param(IS_MDMA_SOURCE_DATASIZE(hmdma->Init.SourceDataSize));
237:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** assert_param(IS_MDMA_DESTINATION_DATASIZE(hmdma->Init.DestDataSize));
238:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** assert_param(IS_MDMA_DATA_ALIGNMENT(hmdma->Init.DataAlignment));
239:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** assert_param(IS_MDMA_SOURCE_BURST(hmdma->Init.SourceBurst));
240:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** assert_param(IS_MDMA_DESTINATION_BURST(hmdma->Init.DestBurst));
241:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** assert_param(IS_MDMA_BUFFER_TRANSFER_LENGTH(hmdma->Init.BufferTransferLength));
242:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** assert_param(IS_MDMA_TRANSFER_TRIGGER_MODE(hmdma->Init.TransferTriggerMode));
243:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** assert_param(IS_MDMA_BLOCK_ADDR_OFFSET(hmdma->Init.SourceBlockAddressOffset));
244:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** assert_param(IS_MDMA_BLOCK_ADDR_OFFSET(hmdma->Init.DestBlockAddressOffset));
245:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
246:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
247:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Allocate lock resource */
248:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** __HAL_UNLOCK(hmdma);
249:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
250:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Change MDMA peripheral state */
251:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->State = HAL_MDMA_STATE_BUSY;
252:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
253:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Disable the MDMA channel */
254:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** __HAL_MDMA_DISABLE(hmdma);
255:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
256:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Check if the MDMA channel is effectively disabled */
257:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** while((hmdma->Instance->CCR & MDMA_CCR_EN) != 0U)
258:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
259:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Check for the Timeout */
ARM GAS /tmp/ccBjdYa2.s page 6
260:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if((HAL_GetTick() - tickstart ) > HAL_TIMEOUT_MDMA_ABORT)
261:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
262:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Update error code */
263:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->ErrorCode = HAL_MDMA_ERROR_TIMEOUT;
264:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
265:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Change the MDMA state */
266:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->State = HAL_MDMA_STATE_ERROR;
267:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
268:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** return HAL_ERROR;
269:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
270:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
271:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
272:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Initialize the MDMA channel registers */
273:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** MDMA_Init(hmdma);
274:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
275:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Reset the MDMA first/last linkedlist node addresses and node counter */
276:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->FirstLinkedListNodeAddress = 0;
277:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->LastLinkedListNodeAddress = 0;
278:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->LinkedListNodeCounter = 0;
279:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
280:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Initialize the error code */
281:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->ErrorCode = HAL_MDMA_ERROR_NONE;
282:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
283:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Initialize the MDMA state */
284:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->State = HAL_MDMA_STATE_READY;
285:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
286:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** return HAL_OK;
287:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
288:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
289:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /**
290:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @brief DeInitializes the MDMA peripheral
291:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @param hmdma: pointer to a MDMA_HandleTypeDef structure that contains
292:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * the configuration information for the specified MDMA Channel.
293:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @retval HAL status
294:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** */
295:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** HAL_StatusTypeDef HAL_MDMA_DeInit(MDMA_HandleTypeDef *hmdma)
296:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
297:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
298:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Check the MDMA peripheral handle */
299:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if(hmdma == NULL)
300:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
301:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** return HAL_ERROR;
302:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
303:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
304:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Disable the selected MDMA Channelx */
305:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** __HAL_MDMA_DISABLE(hmdma);
306:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
307:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Reset MDMA Channel control register */
308:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->Instance->CCR = 0;
309:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->Instance->CTCR = 0;
310:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->Instance->CBNDTR = 0;
311:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->Instance->CSAR = 0;
312:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->Instance->CDAR = 0;
313:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->Instance->CBRUR = 0;
314:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->Instance->CLAR = 0;
315:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->Instance->CTBR = 0;
316:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->Instance->CMAR = 0;
ARM GAS /tmp/ccBjdYa2.s page 7
317:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->Instance->CMDR = 0;
318:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
319:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Clear all flags */
320:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** __HAL_MDMA_CLEAR_FLAG(hmdma,(MDMA_FLAG_TE | MDMA_FLAG_CTC | MDMA_FLAG_BRT | MDMA_FLAG_BT | MDMA_F
321:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
322:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Reset the MDMA first/last linkedlist node addresses and node counter */
323:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->FirstLinkedListNodeAddress = 0;
324:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->LastLinkedListNodeAddress = 0;
325:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->LinkedListNodeCounter = 0;
326:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
327:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Initialize the error code */
328:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->ErrorCode = HAL_MDMA_ERROR_NONE;
329:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
330:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Initialize the MDMA state */
331:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->State = HAL_MDMA_STATE_RESET;
332:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
333:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Release Lock */
334:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** __HAL_UNLOCK(hmdma);
335:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
336:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** return HAL_OK;
337:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
338:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
339:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /**
340:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @brief Config the Post request Mask address and Mask data
341:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @param hmdma : pointer to a MDMA_HandleTypeDef structure that contains
342:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * the configuration information for the specified MDMA Channel.
343:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @param MaskAddress: specifies the address to be updated (written) with MaskData after a reques
344:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @param MaskData: specifies the value to be written to MaskAddress after a request is served
345:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * MaskAddress and MaskData could be used to automatically clear a peripheral
346:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @retval HAL status
347:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** */
348:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** HAL_StatusTypeDef HAL_MDMA_ConfigPostRequestMask(MDMA_HandleTypeDef *hmdma, uint32_t MaskAddress, u
349:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
350:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** HAL_StatusTypeDef status = HAL_OK;
351:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
352:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Check the MDMA peripheral handle */
353:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if(hmdma == NULL)
354:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
355:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** return HAL_ERROR;
356:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
357:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
358:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Process locked */
359:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** __HAL_LOCK(hmdma);
360:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
361:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if(HAL_MDMA_STATE_READY == hmdma->State)
362:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
363:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* if HW request set Post Request MaskAddress and MaskData, */
364:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if((hmdma->Instance->CTCR & MDMA_CTCR_SWRM) == 0U)
365:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
366:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Set the HW request clear Mask and Data */
367:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->Instance->CMAR = MaskAddress;
368:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->Instance->CMDR = MaskData;
369:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
370:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /*
371:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** -If the request is done by SW : BWM could be set to 1 or 0.
372:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** -If the request is done by a peripheral :
373:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** If mask address not set (0) => BWM must be set to 0
ARM GAS /tmp/ccBjdYa2.s page 8
374:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** If mask address set (different than 0) => BWM could be set to 1 or 0
375:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** */
376:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if(MaskAddress == 0U)
377:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
378:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->Instance->CTCR &= ~MDMA_CTCR_BWM;
379:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
380:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** else
381:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
382:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->Instance->CTCR |= MDMA_CTCR_BWM;
383:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
384:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
385:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** else
386:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
387:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Return error status */
388:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** status = HAL_ERROR;
389:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
390:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
391:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** else
392:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
393:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Return error status */
394:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** status = HAL_ERROR;
395:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
396:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Release Lock */
397:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** __HAL_UNLOCK(hmdma);
398:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
399:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** return status;
400:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
401:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
402:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /**
403:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @brief Register callbacks
404:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @param hmdma: pointer to a MDMA_HandleTypeDef structure that contains
405:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * the configuration information for the specified MDMA Channel.
406:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @param CallbackID: User Callback identifier
407:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @param pCallback: pointer to callbacsk function.
408:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @retval HAL status
409:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** */
410:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** HAL_StatusTypeDef HAL_MDMA_RegisterCallback(MDMA_HandleTypeDef *hmdma, HAL_MDMA_CallbackIDTypeDef C
411:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
412:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** HAL_StatusTypeDef status = HAL_OK;
413:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
414:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Check the MDMA peripheral handle */
415:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if(hmdma == NULL)
416:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
417:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** return HAL_ERROR;
418:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
419:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
420:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Process locked */
421:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** __HAL_LOCK(hmdma);
422:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
423:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if(HAL_MDMA_STATE_READY == hmdma->State)
424:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
425:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** switch (CallbackID)
426:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
427:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** case HAL_MDMA_XFER_CPLT_CB_ID:
428:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->XferCpltCallback = pCallback;
429:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** break;
430:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
ARM GAS /tmp/ccBjdYa2.s page 9
431:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** case HAL_MDMA_XFER_BUFFERCPLT_CB_ID:
432:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->XferBufferCpltCallback = pCallback;
433:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** break;
434:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
435:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** case HAL_MDMA_XFER_BLOCKCPLT_CB_ID:
436:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->XferBlockCpltCallback = pCallback;
437:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** break;
438:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
439:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** case HAL_MDMA_XFER_REPBLOCKCPLT_CB_ID:
440:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->XferRepeatBlockCpltCallback = pCallback;
441:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** break;
442:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
443:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** case HAL_MDMA_XFER_ERROR_CB_ID:
444:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->XferErrorCallback = pCallback;
445:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** break;
446:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
447:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** case HAL_MDMA_XFER_ABORT_CB_ID:
448:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->XferAbortCallback = pCallback;
449:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** break;
450:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
451:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** default:
452:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** break;
453:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
454:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
455:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** else
456:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
457:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Return error status */
458:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** status = HAL_ERROR;
459:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
460:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
461:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Release Lock */
462:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** __HAL_UNLOCK(hmdma);
463:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
464:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** return status;
465:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
466:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
467:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /**
468:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @brief UnRegister callbacks
469:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @param hmdma: pointer to a MDMA_HandleTypeDef structure that contains
470:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * the configuration information for the specified MDMA Channel.
471:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @param CallbackID: User Callback identifier
472:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * a HAL_MDMA_CallbackIDTypeDef ENUM as parameter.
473:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @retval HAL status
474:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** */
475:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** HAL_StatusTypeDef HAL_MDMA_UnRegisterCallback(MDMA_HandleTypeDef *hmdma, HAL_MDMA_CallbackIDTypeDef
476:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
477:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** HAL_StatusTypeDef status = HAL_OK;
478:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
479:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Check the MDMA peripheral handle */
480:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if(hmdma == NULL)
481:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
482:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** return HAL_ERROR;
483:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
484:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
485:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Process locked */
486:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** __HAL_LOCK(hmdma);
487:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
ARM GAS /tmp/ccBjdYa2.s page 10
488:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if(HAL_MDMA_STATE_READY == hmdma->State)
489:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
490:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** switch (CallbackID)
491:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
492:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** case HAL_MDMA_XFER_CPLT_CB_ID:
493:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->XferCpltCallback = NULL;
494:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** break;
495:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
496:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** case HAL_MDMA_XFER_BUFFERCPLT_CB_ID:
497:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->XferBufferCpltCallback = NULL;
498:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** break;
499:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
500:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** case HAL_MDMA_XFER_BLOCKCPLT_CB_ID:
501:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->XferBlockCpltCallback = NULL;
502:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** break;
503:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
504:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** case HAL_MDMA_XFER_REPBLOCKCPLT_CB_ID:
505:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->XferRepeatBlockCpltCallback = NULL;
506:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** break;
507:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
508:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** case HAL_MDMA_XFER_ERROR_CB_ID:
509:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->XferErrorCallback = NULL;
510:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** break;
511:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
512:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** case HAL_MDMA_XFER_ABORT_CB_ID:
513:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->XferAbortCallback = NULL;
514:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** break;
515:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
516:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** case HAL_MDMA_XFER_ALL_CB_ID:
517:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->XferCpltCallback = NULL;
518:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->XferBufferCpltCallback = NULL;
519:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->XferBlockCpltCallback = NULL;
520:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->XferRepeatBlockCpltCallback = NULL;
521:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->XferErrorCallback = NULL;
522:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->XferAbortCallback = NULL;
523:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** break;
524:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
525:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** default:
526:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** status = HAL_ERROR;
527:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** break;
528:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
529:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
530:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** else
531:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
532:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** status = HAL_ERROR;
533:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
534:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
535:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Release Lock */
536:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** __HAL_UNLOCK(hmdma);
537:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
538:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** return status;
539:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
540:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
541:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /**
542:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @}
543:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** */
544:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
ARM GAS /tmp/ccBjdYa2.s page 11
545:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /** @addtogroup MDMA_Exported_Functions_Group2
546:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** *
547:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** @verbatim
548:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** ===============================================================================
549:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** ##### Linked list operation functions #####
550:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** ===============================================================================
551:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** [..] This section provides functions allowing to:
552:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** (+) Create a linked list node
553:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** (+) Add a node to the MDMA linked list
554:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** (+) Remove a node from the MDMA linked list
555:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** (+) Enable/Disable linked list circular mode
556:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** @endverbatim
557:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @{
558:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** */
559:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
560:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /**
561:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @brief Initializes an MDMA Link Node according to the specified
562:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * parameters in the pMDMA_LinkedListNodeConfig .
563:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @param pNode: Pointer to a MDMA_LinkNodeTypeDef structure that contains Linked list node
564:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * registers configurations.
565:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @param pNodeConfig: Pointer to a MDMA_LinkNodeConfTypeDef structure that contains
566:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * the configuration information for the specified MDMA Linked List Node.
567:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @retval HAL status
568:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** */
569:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** HAL_StatusTypeDef HAL_MDMA_LinkedList_CreateNode(MDMA_LinkNodeTypeDef *pNode, MDMA_LinkNodeConfType
570:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
571:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** uint32_t addressMask;
572:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** uint32_t blockoffset;
573:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
574:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Check the MDMA peripheral state */
575:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if((pNode == NULL) || (pNodeConfig == NULL))
576:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
577:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** return HAL_ERROR;
578:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
579:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
580:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Check the parameters */
581:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** assert_param(IS_MDMA_PRIORITY(pNodeConfig->Init.Priority));
582:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** assert_param(IS_MDMA_ENDIANNESS_MODE(pNodeConfig->Init.Endianness));
583:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** assert_param(IS_MDMA_REQUEST(pNodeConfig->Init.Request));
584:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** assert_param(IS_MDMA_SOURCE_INC(pNodeConfig->Init.SourceInc));
585:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** assert_param(IS_MDMA_DESTINATION_INC(pNodeConfig->Init.DestinationInc));
586:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** assert_param(IS_MDMA_SOURCE_DATASIZE(pNodeConfig->Init.SourceDataSize));
587:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** assert_param(IS_MDMA_DESTINATION_DATASIZE(pNodeConfig->Init.DestDataSize));
588:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** assert_param(IS_MDMA_DATA_ALIGNMENT(pNodeConfig->Init.DataAlignment));
589:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** assert_param(IS_MDMA_SOURCE_BURST(pNodeConfig->Init.SourceBurst));
590:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** assert_param(IS_MDMA_DESTINATION_BURST(pNodeConfig->Init.DestBurst));
591:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** assert_param(IS_MDMA_BUFFER_TRANSFER_LENGTH(pNodeConfig->Init.BufferTransferLength));
592:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** assert_param(IS_MDMA_TRANSFER_TRIGGER_MODE(pNodeConfig->Init.TransferTriggerMode));
593:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** assert_param(IS_MDMA_BLOCK_ADDR_OFFSET(pNodeConfig->Init.SourceBlockAddressOffset));
594:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** assert_param(IS_MDMA_BLOCK_ADDR_OFFSET(pNodeConfig->Init.DestBlockAddressOffset));
595:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
596:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** assert_param(IS_MDMA_TRANSFER_LENGTH(pNodeConfig->BlockDataLength));
597:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** assert_param(IS_MDMA_BLOCK_COUNT(pNodeConfig->BlockCount));
598:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
599:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
600:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Configure next Link node Address Register to zero */
601:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** pNode->CLAR = 0;
ARM GAS /tmp/ccBjdYa2.s page 12
602:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
603:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Configure the Link Node registers*/
604:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** pNode->CTBR = 0;
605:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** pNode->CMAR = 0;
606:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** pNode->CMDR = 0;
607:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** pNode->Reserved = 0;
608:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
609:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Write new CTCR Register value */
610:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** pNode->CTCR = pNodeConfig->Init.SourceInc | pNodeConfig->Init.DestinationInc | \
611:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** pNodeConfig->Init.SourceDataSize | pNodeConfig->Init.DestDataSize | \
612:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** pNodeConfig->Init.DataAlignment| pNodeConfig->Init.SourceBurst | \
613:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** pNodeConfig->Init.DestBurst | \
614:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** ((pNodeConfig->Init.BufferTransferLength - 1U) << MDMA_CTCR_TLEN_Pos) | \
615:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** pNodeConfig->Init.TransferTriggerMode;
616:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
617:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* If SW request set the CTCR register to SW Request Mode*/
618:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if(pNodeConfig->Init.Request == MDMA_REQUEST_SW)
619:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
620:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** pNode->CTCR |= MDMA_CTCR_SWRM;
621:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
622:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
623:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /*
624:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** -If the request is done by SW : BWM could be set to 1 or 0.
625:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** -If the request is done by a peripheral :
626:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** If mask address not set (0) => BWM must be set to 0
627:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** If mask address set (different than 0) => BWM could be set to 1 or 0
628:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** */
629:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if((pNodeConfig->Init.Request == MDMA_REQUEST_SW) || (pNodeConfig->PostRequestMaskAddress != 0U))
630:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
631:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** pNode->CTCR |= MDMA_CTCR_BWM;
632:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
633:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
634:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Set the new CBNDTR Register value */
635:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** pNode->CBNDTR = ((pNodeConfig->BlockCount - 1U) << MDMA_CBNDTR_BRC_Pos) & MDMA_CBNDTR_BRC;
636:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
637:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* if block source address offset is negative set the Block Repeat Source address Update Mode to
638:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if(pNodeConfig->Init.SourceBlockAddressOffset < 0)
639:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
640:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** pNode->CBNDTR |= MDMA_CBNDTR_BRSUM;
641:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /*write new CBRUR Register value : source repeat block offset */
642:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** blockoffset = (uint32_t)(- pNodeConfig->Init.SourceBlockAddressOffset);
643:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** pNode->CBRUR = blockoffset & 0x0000FFFFU;
644:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
645:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** else
646:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
647:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /*write new CBRUR Register value : source repeat block offset */
648:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** pNode->CBRUR = (((uint32_t) pNodeConfig->Init.SourceBlockAddressOffset) & 0x0000FFFFU);
649:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
650:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
651:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* if block destination address offset is negative set the Block Repeat destination address Updat
652:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if(pNodeConfig->Init.DestBlockAddressOffset < 0)
653:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
654:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** pNode->CBNDTR |= MDMA_CBNDTR_BRDUM;
655:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /*write new CBRUR Register value : destination repeat block offset */
656:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** blockoffset = (uint32_t)(- pNodeConfig->Init.DestBlockAddressOffset);
657:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** pNode->CBRUR |= ((blockoffset & 0x0000FFFFU) << MDMA_CBRUR_DUV_Pos);
658:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
ARM GAS /tmp/ccBjdYa2.s page 13
659:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** else
660:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
661:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /*write new CBRUR Register value : destination repeat block offset */
662:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** pNode->CBRUR |= ((((uint32_t)pNodeConfig->Init.DestBlockAddressOffset) & 0x0000FFFFU) << MDMA_C
663:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
664:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
665:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Configure MDMA Link Node data length */
666:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** pNode->CBNDTR |= pNodeConfig->BlockDataLength;
667:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
668:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Configure MDMA Link Node destination address */
669:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** pNode->CDAR = pNodeConfig->DstAddress;
670:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
671:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Configure MDMA Link Node Source address */
672:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** pNode->CSAR = pNodeConfig->SrcAddress;
673:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
674:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* if HW request set the HW request and the requet CleraMask and ClearData MaskData, */
675:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if(pNodeConfig->Init.Request != MDMA_REQUEST_SW)
676:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
677:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Set the HW request in CTBR register */
678:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** pNode->CTBR = pNodeConfig->Init.Request & MDMA_CTBR_TSEL;
679:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Set the HW request clear Mask and Data */
680:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** pNode->CMAR = pNodeConfig->PostRequestMaskAddress;
681:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** pNode->CMDR = pNodeConfig->PostRequestMaskData;
682:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
683:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
684:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** addressMask = pNodeConfig->SrcAddress & 0xFF000000U;
685:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if((addressMask == 0x20000000U) || (addressMask == 0x00000000U))
686:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
687:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /*The AHBSbus is used as source (read operation) on channel x */
688:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** pNode->CTBR |= MDMA_CTBR_SBUS;
689:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
690:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
691:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** addressMask = pNodeConfig->DstAddress & 0xFF000000U;
692:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if((addressMask == 0x20000000U) || (addressMask == 0x00000000U))
693:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
694:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /*The AHB bus is used as destination (write operation) on channel x */
695:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** pNode->CTBR |= MDMA_CTBR_DBUS;
696:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
697:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
698:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** return HAL_OK;
699:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
700:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
701:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /**
702:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @brief Connect a node to the linked list.
703:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @param hmdma : Pointer to a MDMA_HandleTypeDef structure that contains
704:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * the configuration information for the specified MDMA Channel.
705:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @param pNewNode : Pointer to a MDMA_LinkNodeTypeDef structure that contains Linked list node
706:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * to be add to the list.
707:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @param pPrevNode : Pointer to the new node position in the linked list or zero to insert the ne
708:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * at the end of the list
709:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** *
710:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @retval HAL status
711:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** */
712:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** HAL_StatusTypeDef HAL_MDMA_LinkedList_AddNode(MDMA_HandleTypeDef *hmdma, MDMA_LinkNodeTypeDef *pNew
713:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
714:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** MDMA_LinkNodeTypeDef *pNode;
715:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** uint32_t counter = 0, nodeInserted = 0;
ARM GAS /tmp/ccBjdYa2.s page 14
716:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** HAL_StatusTypeDef hal_status = HAL_OK;
717:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
718:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Check the MDMA peripheral handle */
719:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if((hmdma == NULL) || (pNewNode == NULL))
720:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
721:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** return HAL_ERROR;
722:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
723:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
724:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Process locked */
725:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** __HAL_LOCK(hmdma);
726:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
727:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if(HAL_MDMA_STATE_READY == hmdma->State)
728:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
729:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Change MDMA peripheral state */
730:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->State = HAL_MDMA_STATE_BUSY;
731:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
732:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Check if this is the first node (after the Inititlization node) */
733:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if((uint32_t)hmdma->FirstLinkedListNodeAddress == 0U)
734:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
735:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if(pPrevNode == NULL)
736:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
737:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* if this is the first node after the initialization
738:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** connect this node to the node 0 by updating
739:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** the MDMA channel CLAR register to this node address */
740:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->Instance->CLAR = (uint32_t)pNewNode;
741:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Set the MDMA handle First linked List node*/
742:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->FirstLinkedListNodeAddress = pNewNode;
743:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
744:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /*reset New node link */
745:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** pNewNode->CLAR = 0;
746:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
747:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Update the Handle last node address */
748:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->LastLinkedListNodeAddress = pNewNode;
749:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
750:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->LinkedListNodeCounter = 1;
751:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
752:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** else
753:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
754:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hal_status = HAL_ERROR;
755:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
756:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
757:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** else if(hmdma->FirstLinkedListNodeAddress != pNewNode)
758:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
759:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Check if the node to insert already exists*/
760:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** pNode = hmdma->FirstLinkedListNodeAddress;
761:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** while((counter < hmdma->LinkedListNodeCounter) && (hal_status == HAL_OK))
762:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
763:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if(pNode->CLAR == (uint32_t)pNewNode)
764:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
765:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hal_status = HAL_ERROR; /* error this node already exist in the linked list and it is not
766:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
767:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** pNode = (MDMA_LinkNodeTypeDef *)pNode->CLAR;
768:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** counter++;
769:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
770:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
771:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if(hal_status == HAL_OK)
772:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
ARM GAS /tmp/ccBjdYa2.s page 15
773:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Check if the previous node is the last one in the current list or zero */
774:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if((pPrevNode == hmdma->LastLinkedListNodeAddress) || (pPrevNode == NULL))
775:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
776:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* insert the new node at the end of the list */
777:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** pNewNode->CLAR = hmdma->LastLinkedListNodeAddress->CLAR;
778:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->LastLinkedListNodeAddress->CLAR = (uint32_t)pNewNode;
779:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Update the Handle last node address */
780:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->LastLinkedListNodeAddress = pNewNode;
781:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Increment the linked list node counter */
782:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->LinkedListNodeCounter++;
783:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
784:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** else
785:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
786:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /*insert the new node after the pPreviousNode node */
787:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** pNode = hmdma->FirstLinkedListNodeAddress;
788:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** counter = 0;
789:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** while((counter < hmdma->LinkedListNodeCounter) && (nodeInserted == 0U))
790:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
791:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** counter++;
792:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if(pNode == pPrevNode)
793:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
794:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /*Insert the new node after the previous one */
795:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** pNewNode->CLAR = pNode->CLAR;
796:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** pNode->CLAR = (uint32_t)pNewNode;
797:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Increment the linked list node counter */
798:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->LinkedListNodeCounter++;
799:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** nodeInserted = 1;
800:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
801:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** else
802:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
803:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** pNode = (MDMA_LinkNodeTypeDef *)pNode->CLAR;
804:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
805:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
806:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
807:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if(nodeInserted == 0U)
808:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
809:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hal_status = HAL_ERROR;
810:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
811:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
812:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
813:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
814:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** else
815:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
816:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hal_status = HAL_ERROR;
817:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
818:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
819:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Process unlocked */
820:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** __HAL_UNLOCK(hmdma);
821:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
822:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->State = HAL_MDMA_STATE_READY;
823:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
824:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** return hal_status;
825:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
826:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** else
827:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
828:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Process unlocked */
829:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** __HAL_UNLOCK(hmdma);
ARM GAS /tmp/ccBjdYa2.s page 16
830:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
831:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Return error status */
832:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** return HAL_BUSY;
833:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
834:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
835:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
836:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /**
837:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @brief Disconnect/Remove a node from the transfer linked list.
838:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @param hmdma : Pointer to a MDMA_HandleTypeDef structure that contains
839:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * the configuration information for the specified MDMA Channel.
840:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @param pNode : Pointer to a MDMA_LinkNodeTypeDef structure that contains Linked list node
841:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * to be removed from the list.
842:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** *
843:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @retval HAL status
844:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** */
845:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** HAL_StatusTypeDef HAL_MDMA_LinkedList_RemoveNode(MDMA_HandleTypeDef *hmdma, MDMA_LinkNodeTypeDef *p
846:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
847:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** MDMA_LinkNodeTypeDef *ptmpNode;
848:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** uint32_t counter = 0, nodeDeleted = 0;
849:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** HAL_StatusTypeDef hal_status = HAL_OK;
850:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
851:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Check the MDMA peripheral handle */
852:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if((hmdma == NULL) || (pNode == NULL))
853:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
854:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** return HAL_ERROR;
855:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
856:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
857:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Process locked */
858:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** __HAL_LOCK(hmdma);
859:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
860:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if(HAL_MDMA_STATE_READY == hmdma->State)
861:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
862:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Change MDMA peripheral state */
863:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->State = HAL_MDMA_STATE_BUSY;
864:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
865:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* If first and last node are null (no nodes in the list) : return error*/
866:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if(((uint32_t)hmdma->FirstLinkedListNodeAddress == 0U) || ((uint32_t)hmdma->LastLinkedListNodeA
867:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
868:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hal_status = HAL_ERROR;
869:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
870:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** else if(hmdma->FirstLinkedListNodeAddress == pNode) /* Deleting first node */
871:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
872:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Delete 1st node */
873:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if(hmdma->LastLinkedListNodeAddress == pNode)
874:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
875:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /*if the last node is at the same time the first one (1 single node after the init node 0)
876:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** then update the last node too */
877:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
878:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->FirstLinkedListNodeAddress = 0;
879:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->LastLinkedListNodeAddress = 0;
880:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->LinkedListNodeCounter = 0;
881:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
882:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->Instance->CLAR = 0;
883:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
884:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** else
885:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
886:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if((uint32_t)hmdma->FirstLinkedListNodeAddress == hmdma->LastLinkedListNodeAddress->CLAR)
ARM GAS /tmp/ccBjdYa2.s page 17
887:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
888:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* if last node is looping to first (circular list) one update the last node connection *
889:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->LastLinkedListNodeAddress->CLAR = pNode->CLAR;
890:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
891:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
892:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* if deleting the first node after the initialization
893:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** connect the next node to the node 0 by updating
894:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** the MDMA channel CLAR register to this node address */
895:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->Instance->CLAR = pNode->CLAR;
896:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->FirstLinkedListNodeAddress = (MDMA_LinkNodeTypeDef *)hmdma->Instance->CLAR;
897:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Update the Handle node counter */
898:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->LinkedListNodeCounter--;
899:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
900:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
901:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** else /* Deleting any other node */
902:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
903:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /*Deleted node is not the first one : find it */
904:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** ptmpNode = hmdma->FirstLinkedListNodeAddress;
905:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** while((counter < hmdma->LinkedListNodeCounter) && (nodeDeleted == 0U))
906:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
907:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** counter++;
908:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if(ptmpNode->CLAR == ((uint32_t)pNode))
909:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
910:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* if deleting the last node */
911:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if(pNode == hmdma->LastLinkedListNodeAddress)
912:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
913:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /*Update the linked list last node address in the handle*/
914:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->LastLinkedListNodeAddress = ptmpNode;
915:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
916:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* update the next node link after deleting pMDMA_LinkedListNode */
917:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** ptmpNode->CLAR = pNode->CLAR;
918:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** nodeDeleted = 1;
919:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Update the Handle node counter */
920:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->LinkedListNodeCounter--;
921:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
922:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** else
923:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
924:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** ptmpNode = (MDMA_LinkNodeTypeDef *)ptmpNode->CLAR;
925:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
926:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
927:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
928:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if(nodeDeleted == 0U)
929:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
930:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* last node reashed without finding the node to delete : return error */
931:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hal_status = HAL_ERROR;
932:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
933:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
934:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
935:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Process unlocked */
936:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** __HAL_UNLOCK(hmdma);
937:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
938:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->State = HAL_MDMA_STATE_READY;
939:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
940:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** return hal_status;
941:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
942:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** else
943:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
ARM GAS /tmp/ccBjdYa2.s page 18
944:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Process unlocked */
945:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** __HAL_UNLOCK(hmdma);
946:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
947:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Return error status */
948:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** return HAL_BUSY;
949:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
950:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
951:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
952:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /**
953:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @brief Make the linked list circular by connecting the last node to the first.
954:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @param hmdma : Pointer to a MDMA_HandleTypeDef structure that contains
955:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * the configuration information for the specified MDMA Channel.
956:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @retval HAL status
957:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** */
958:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** HAL_StatusTypeDef HAL_MDMA_LinkedList_EnableCircularMode(MDMA_HandleTypeDef *hmdma)
959:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
960:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** HAL_StatusTypeDef hal_status = HAL_OK;
961:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
962:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Check the MDMA peripheral handle */
963:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if(hmdma == NULL)
964:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
965:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** return HAL_ERROR;
966:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
967:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
968:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Process locked */
969:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** __HAL_LOCK(hmdma);
970:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
971:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if(HAL_MDMA_STATE_READY == hmdma->State)
972:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
973:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Change MDMA peripheral state */
974:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->State = HAL_MDMA_STATE_BUSY;
975:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
976:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* If first and last node are null (no nodes in the list) : return error*/
977:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if(((uint32_t)hmdma->FirstLinkedListNodeAddress == 0U) || ((uint32_t)hmdma->LastLinkedListNodeA
978:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
979:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hal_status = HAL_ERROR;
980:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
981:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** else
982:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
983:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* to enable circular mode Last Node should be connected to first node */
984:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->LastLinkedListNodeAddress->CLAR = (uint32_t)hmdma->FirstLinkedListNodeAddress;
985:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
986:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
987:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
988:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Process unlocked */
989:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** __HAL_UNLOCK(hmdma);
990:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
991:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->State = HAL_MDMA_STATE_READY;
992:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
993:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** return hal_status;
994:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
995:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
996:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /**
997:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @brief Disable the linked list circular mode by setting the last node connection to null
998:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @param hmdma : Pointer to a MDMA_HandleTypeDef structure that contains
999:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * the configuration information for the specified MDMA Channel.
1000:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @retval HAL status
ARM GAS /tmp/ccBjdYa2.s page 19
1001:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** */
1002:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** HAL_StatusTypeDef HAL_MDMA_LinkedList_DisableCircularMode(MDMA_HandleTypeDef *hmdma)
1003:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1004:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** HAL_StatusTypeDef hal_status = HAL_OK;
1005:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1006:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Check the MDMA peripheral handle */
1007:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if(hmdma == NULL)
1008:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1009:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** return HAL_ERROR;
1010:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1011:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1012:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Process locked */
1013:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** __HAL_LOCK(hmdma);
1014:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1015:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if(HAL_MDMA_STATE_READY == hmdma->State)
1016:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1017:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Change MDMA peripheral state */
1018:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->State = HAL_MDMA_STATE_BUSY;
1019:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1020:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* If first and last node are null (no nodes in the list) : return error*/
1021:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if(((uint32_t)hmdma->FirstLinkedListNodeAddress == 0U) || ((uint32_t)hmdma->LastLinkedListNodeA
1022:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1023:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hal_status = HAL_ERROR;
1024:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1025:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** else
1026:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1027:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* to disable circular mode Last Node should be connected to NULL */
1028:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->LastLinkedListNodeAddress->CLAR = 0;
1029:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1030:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1031:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1032:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Process unlocked */
1033:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** __HAL_UNLOCK(hmdma);
1034:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1035:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->State = HAL_MDMA_STATE_READY;
1036:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1037:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** return hal_status;
1038:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1039:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1040:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /**
1041:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @}
1042:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** */
1043:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1044:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /** @addtogroup MDMA_Exported_Functions_Group3
1045:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** *
1046:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** @verbatim
1047:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** ===============================================================================
1048:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** ##### IO operation functions #####
1049:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** ===============================================================================
1050:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** [..] This section provides functions allowing to:
1051:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** (+) Configure the source, destination address and data length and Start MDMA transfer
1052:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** (+) Configure the source, destination address and data length and
1053:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** Start MDMA transfer with interrupt
1054:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** (+) Abort MDMA transfer
1055:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** (+) Poll for transfer complete
1056:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** (+) Generate a SW request (when Request is set to MDMA_REQUEST_SW)
1057:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** (+) Handle MDMA interrupt request
ARM GAS /tmp/ccBjdYa2.s page 20
1058:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1059:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** @endverbatim
1060:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @{
1061:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** */
1062:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1063:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /**
1064:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @brief Starts the MDMA Transfer.
1065:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @param hmdma : pointer to a MDMA_HandleTypeDef structure that contains
1066:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * the configuration information for the specified MDMA Channel.
1067:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @param SrcAddress : The source memory Buffer address
1068:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @param DstAddress : The destination memory Buffer address
1069:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @param BlockDataLength : The length of a block transfer in bytes
1070:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @param BlockCount : The number of a blocks to be transfer
1071:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @retval HAL status
1072:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** */
1073:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** HAL_StatusTypeDef HAL_MDMA_Start(MDMA_HandleTypeDef *hmdma, uint32_t SrcAddress, uint32_t DstAddres
1074:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1075:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Check the parameters */
1076:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** assert_param(IS_MDMA_TRANSFER_LENGTH(BlockDataLength));
1077:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** assert_param(IS_MDMA_BLOCK_COUNT(BlockCount));
1078:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1079:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Check the MDMA peripheral handle */
1080:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if(hmdma == NULL)
1081:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1082:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** return HAL_ERROR;
1083:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1084:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1085:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Process locked */
1086:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** __HAL_LOCK(hmdma);
1087:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1088:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if(HAL_MDMA_STATE_READY == hmdma->State)
1089:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1090:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Change MDMA peripheral state */
1091:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->State = HAL_MDMA_STATE_BUSY;
1092:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1093:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Initialize the error code */
1094:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->ErrorCode = HAL_MDMA_ERROR_NONE;
1095:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1096:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Disable the peripheral */
1097:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** __HAL_MDMA_DISABLE(hmdma);
1098:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1099:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Configure the source, destination address and the data length */
1100:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** MDMA_SetConfig(hmdma, SrcAddress, DstAddress, BlockDataLength, BlockCount);
1101:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1102:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Enable the Peripheral */
1103:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** __HAL_MDMA_ENABLE(hmdma);
1104:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1105:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if(hmdma->Init.Request == MDMA_REQUEST_SW)
1106:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1107:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* activate If SW request mode*/
1108:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->Instance->CCR |= MDMA_CCR_SWRQ;
1109:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1110:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1111:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** else
1112:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1113:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Process unlocked */
1114:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** __HAL_UNLOCK(hmdma);
ARM GAS /tmp/ccBjdYa2.s page 21
1115:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1116:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Return error status */
1117:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** return HAL_BUSY;
1118:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1119:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1120:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** return HAL_OK;
1121:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1122:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1123:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /**
1124:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @brief Starts the MDMA Transfer with interrupts enabled.
1125:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @param hmdma : pointer to a MDMA_HandleTypeDef structure that contains
1126:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * the configuration information for the specified MDMA Channel.
1127:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @param SrcAddress : The source memory Buffer address
1128:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @param DstAddress : The destination memory Buffer address
1129:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @param BlockDataLength : The length of a block transfer in bytes
1130:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @param BlockCount : The number of a blocks to be transfer
1131:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @retval HAL status
1132:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** */
1133:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** HAL_StatusTypeDef HAL_MDMA_Start_IT(MDMA_HandleTypeDef *hmdma, uint32_t SrcAddress, uint32_t DstAdd
1134:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1135:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Check the parameters */
1136:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** assert_param(IS_MDMA_TRANSFER_LENGTH(BlockDataLength));
1137:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** assert_param(IS_MDMA_BLOCK_COUNT(BlockCount));
1138:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1139:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Check the MDMA peripheral handle */
1140:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if(hmdma == NULL)
1141:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1142:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** return HAL_ERROR;
1143:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1144:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1145:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Process locked */
1146:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** __HAL_LOCK(hmdma);
1147:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1148:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if(HAL_MDMA_STATE_READY == hmdma->State)
1149:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1150:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Change MDMA peripheral state */
1151:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->State = HAL_MDMA_STATE_BUSY;
1152:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1153:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Initialize the error code */
1154:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->ErrorCode = HAL_MDMA_ERROR_NONE;
1155:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1156:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Disable the peripheral */
1157:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** __HAL_MDMA_DISABLE(hmdma);
1158:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1159:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Configure the source, destination address and the data length */
1160:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** MDMA_SetConfig(hmdma, SrcAddress, DstAddress, BlockDataLength, BlockCount);
1161:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1162:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Enable Common interrupts i.e Transfer Error IT and Channel Transfer Complete IT*/
1163:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** __HAL_MDMA_ENABLE_IT(hmdma, (MDMA_IT_TE | MDMA_IT_CTC));
1164:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1165:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if(hmdma->XferBlockCpltCallback != NULL)
1166:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1167:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* if Block transfer complete Callback is set enable the corresponding IT*/
1168:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** __HAL_MDMA_ENABLE_IT(hmdma, MDMA_IT_BT);
1169:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1170:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1171:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if(hmdma->XferRepeatBlockCpltCallback != NULL)
ARM GAS /tmp/ccBjdYa2.s page 22
1172:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1173:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* if Repeated Block transfer complete Callback is set enable the corresponding IT*/
1174:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** __HAL_MDMA_ENABLE_IT(hmdma, MDMA_IT_BRT);
1175:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1176:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1177:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if(hmdma->XferBufferCpltCallback != NULL)
1178:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1179:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* if buffer transfer complete Callback is set enable the corresponding IT*/
1180:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** __HAL_MDMA_ENABLE_IT(hmdma, MDMA_IT_BFTC);
1181:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1182:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1183:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Enable the Peripheral */
1184:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** __HAL_MDMA_ENABLE(hmdma);
1185:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1186:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if(hmdma->Init.Request == MDMA_REQUEST_SW)
1187:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1188:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* activate If SW request mode*/
1189:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->Instance->CCR |= MDMA_CCR_SWRQ;
1190:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1191:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1192:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** else
1193:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1194:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Process unlocked */
1195:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** __HAL_UNLOCK(hmdma);
1196:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1197:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Return error status */
1198:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** return HAL_BUSY;
1199:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1200:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1201:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** return HAL_OK;
1202:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1203:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1204:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /**
1205:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @brief Aborts the MDMA Transfer.
1206:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @param hmdma : pointer to a MDMA_HandleTypeDef structure that contains
1207:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * the configuration information for the specified MDMA Channel.
1208:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** *
1209:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @note After disabling a MDMA Channel, a check for wait until the MDMA Channel is
1210:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * effectively disabled is added. If a Channel is disabled
1211:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * while a data transfer is ongoing, the current data will be transferred
1212:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * and the Channel will be effectively disabled only after the transfer of
1213:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * this single data is finished.
1214:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @retval HAL status
1215:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** */
1216:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** HAL_StatusTypeDef HAL_MDMA_Abort(MDMA_HandleTypeDef *hmdma)
1217:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1218:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** uint32_t tickstart = HAL_GetTick();
1219:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1220:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Check the MDMA peripheral handle */
1221:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if(hmdma == NULL)
1222:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1223:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** return HAL_ERROR;
1224:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1225:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1226:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if(HAL_MDMA_STATE_BUSY != hmdma->State)
1227:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1228:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->ErrorCode = HAL_MDMA_ERROR_NO_XFER;
ARM GAS /tmp/ccBjdYa2.s page 23
1229:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1230:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Process Unlocked */
1231:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** __HAL_UNLOCK(hmdma);
1232:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1233:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** return HAL_ERROR;
1234:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1235:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** else
1236:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1237:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Disable all the transfer interrupts */
1238:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** __HAL_MDMA_DISABLE_IT(hmdma, (MDMA_IT_TE | MDMA_IT_CTC | MDMA_IT_BT | MDMA_IT_BRT | MDMA_IT_BFT
1239:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1240:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Disable the channel */
1241:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** __HAL_MDMA_DISABLE(hmdma);
1242:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1243:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Check if the MDMA Channel is effectively disabled */
1244:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** while((hmdma->Instance->CCR & MDMA_CCR_EN) != 0U)
1245:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1246:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Check for the Timeout */
1247:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if( (HAL_GetTick() - tickstart ) > HAL_TIMEOUT_MDMA_ABORT)
1248:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1249:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Update error code */
1250:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->ErrorCode |= HAL_MDMA_ERROR_TIMEOUT;
1251:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1252:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Process Unlocked */
1253:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** __HAL_UNLOCK(hmdma);
1254:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1255:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Change the MDMA state */
1256:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->State = HAL_MDMA_STATE_ERROR;
1257:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1258:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** return HAL_ERROR;
1259:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1260:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1261:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1262:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Clear all interrupt flags */
1263:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** __HAL_MDMA_CLEAR_FLAG(hmdma, (MDMA_FLAG_TE | MDMA_FLAG_CTC | MDMA_FLAG_BT | MDMA_FLAG_BRT | MDM
1264:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1265:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Process Unlocked */
1266:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** __HAL_UNLOCK(hmdma);
1267:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1268:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Change the MDMA state*/
1269:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->State = HAL_MDMA_STATE_READY;
1270:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1271:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1272:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** return HAL_OK;
1273:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1274:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1275:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /**
1276:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @brief Aborts the MDMA Transfer in Interrupt mode.
1277:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @param hmdma : pointer to a MDMA_HandleTypeDef structure that contains
1278:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * the configuration information for the specified MDMA Channel.
1279:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @retval HAL status
1280:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** */
1281:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** HAL_StatusTypeDef HAL_MDMA_Abort_IT(MDMA_HandleTypeDef *hmdma)
1282:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1283:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Check the MDMA peripheral handle */
1284:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if(hmdma == NULL)
1285:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
ARM GAS /tmp/ccBjdYa2.s page 24
1286:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** return HAL_ERROR;
1287:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1288:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1289:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if(HAL_MDMA_STATE_BUSY != hmdma->State)
1290:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1291:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* No transfer ongoing */
1292:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->ErrorCode = HAL_MDMA_ERROR_NO_XFER;
1293:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1294:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** return HAL_ERROR;
1295:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1296:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** else
1297:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1298:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Set Abort State */
1299:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->State = HAL_MDMA_STATE_ABORT;
1300:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1301:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Disable the stream */
1302:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** __HAL_MDMA_DISABLE(hmdma);
1303:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1304:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1305:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** return HAL_OK;
1306:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1307:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1308:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /**
1309:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @brief Polling for transfer complete.
1310:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @param hmdma: pointer to a MDMA_HandleTypeDef structure that contains
1311:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * the configuration information for the specified MDMA Channel.
1312:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @param CompleteLevel: Specifies the MDMA level complete.
1313:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @param Timeout: Timeout duration.
1314:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @retval HAL status
1315:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** */
1316:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** HAL_StatusTypeDef HAL_MDMA_PollForTransfer(MDMA_HandleTypeDef *hmdma, HAL_MDMA_LevelCompleteTypeDef
1317:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1318:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** uint32_t levelFlag, errorFlag;
1319:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** uint32_t tickstart;
1320:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1321:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Check the parameters */
1322:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** assert_param(IS_MDMA_LEVEL_COMPLETE(CompleteLevel));
1323:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1324:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Check the MDMA peripheral handle */
1325:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if(hmdma == NULL)
1326:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1327:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** return HAL_ERROR;
1328:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1329:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1330:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if(HAL_MDMA_STATE_BUSY != hmdma->State)
1331:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1332:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* No transfer ongoing */
1333:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->ErrorCode = HAL_MDMA_ERROR_NO_XFER;
1334:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1335:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** return HAL_ERROR;
1336:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1337:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1338:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Get the level transfer complete flag */
1339:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** levelFlag = ((CompleteLevel == HAL_MDMA_FULL_TRANSFER) ? MDMA_FLAG_CTC : \
1340:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** (CompleteLevel == HAL_MDMA_BUFFER_TRANSFER)? MDMA_FLAG_BFTC : \
1341:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** (CompleteLevel == HAL_MDMA_BLOCK_TRANSFER) ? MDMA_FLAG_BT : \
1342:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** MDMA_FLAG_BRT);
ARM GAS /tmp/ccBjdYa2.s page 25
1343:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1344:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1345:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Get timeout */
1346:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** tickstart = HAL_GetTick();
1347:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1348:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** while(__HAL_MDMA_GET_FLAG(hmdma, levelFlag) == 0U)
1349:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1350:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if((__HAL_MDMA_GET_FLAG(hmdma, MDMA_FLAG_TE) != 0U))
1351:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1352:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Get the transfer error source flag */
1353:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** errorFlag = hmdma->Instance->CESR;
1354:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1355:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if((errorFlag & MDMA_CESR_TED) == 0U)
1356:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1357:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Update error code : Read Transfer error */
1358:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->ErrorCode |= HAL_MDMA_ERROR_READ_XFER;
1359:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1360:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** else
1361:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1362:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Update error code : Write Transfer error */
1363:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->ErrorCode |= HAL_MDMA_ERROR_WRITE_XFER;
1364:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1365:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1366:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if((errorFlag & MDMA_CESR_TEMD) != 0U)
1367:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1368:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Update error code : Error Mask Data */
1369:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->ErrorCode |= HAL_MDMA_ERROR_MASK_DATA;
1370:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1371:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1372:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if((errorFlag & MDMA_CESR_TELD) != 0U)
1373:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1374:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Update error code : Error Linked list */
1375:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->ErrorCode |= HAL_MDMA_ERROR_LINKED_LIST;
1376:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1377:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1378:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if((errorFlag & MDMA_CESR_ASE) != 0U)
1379:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1380:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Update error code : Address/Size alignment error */
1381:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->ErrorCode |= HAL_MDMA_ERROR_ALIGNMENT;
1382:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1383:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1384:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if((errorFlag & MDMA_CESR_BSE) != 0U)
1385:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1386:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Update error code : Block Size error */
1387:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->ErrorCode |= HAL_MDMA_ERROR_BLOCK_SIZE;
1388:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1389:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1390:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** (void) HAL_MDMA_Abort(hmdma); /* if error then abort the current transfer */
1391:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1392:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /*
1393:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** Note that the Abort function will
1394:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** - Clear all transfer flags
1395:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** - Unlock
1396:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** - Set the State
1397:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** */
1398:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1399:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** return HAL_ERROR;
ARM GAS /tmp/ccBjdYa2.s page 26
1400:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1401:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1402:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1403:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Check for the Timeout */
1404:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if(Timeout != HAL_MAX_DELAY)
1405:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1406:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if(((HAL_GetTick() - tickstart ) > Timeout) || (Timeout == 0U))
1407:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1408:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Update error code */
1409:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->ErrorCode |= HAL_MDMA_ERROR_TIMEOUT;
1410:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1411:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** (void) HAL_MDMA_Abort(hmdma); /* if timeout then abort the current transfer */
1412:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1413:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /*
1414:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** Note that the Abort function will
1415:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** - Clear all transfer flags
1416:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** - Unlock
1417:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** - Set the State
1418:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** */
1419:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1420:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** return HAL_ERROR;
1421:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1422:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1423:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1424:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1425:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Clear the transfer level flag */
1426:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if(CompleteLevel == HAL_MDMA_BUFFER_TRANSFER)
1427:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1428:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** __HAL_MDMA_CLEAR_FLAG(hmdma, MDMA_FLAG_BFTC);
1429:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1430:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1431:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** else if(CompleteLevel == HAL_MDMA_BLOCK_TRANSFER)
1432:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1433:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** __HAL_MDMA_CLEAR_FLAG(hmdma, (MDMA_FLAG_BFTC | MDMA_FLAG_BT));
1434:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1435:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1436:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** else if(CompleteLevel == HAL_MDMA_REPEAT_BLOCK_TRANSFER)
1437:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1438:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** __HAL_MDMA_CLEAR_FLAG(hmdma, (MDMA_FLAG_BFTC | MDMA_FLAG_BT | MDMA_FLAG_BRT));
1439:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1440:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** else if(CompleteLevel == HAL_MDMA_FULL_TRANSFER)
1441:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1442:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** __HAL_MDMA_CLEAR_FLAG(hmdma, (MDMA_FLAG_BRT | MDMA_FLAG_BT | MDMA_FLAG_BFTC | MDMA_FLAG_CTC));
1443:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1444:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Process unlocked */
1445:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** __HAL_UNLOCK(hmdma);
1446:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1447:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->State = HAL_MDMA_STATE_READY;
1448:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1449:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** else
1450:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1451:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** return HAL_ERROR;
1452:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1453:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1454:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** return HAL_OK;
1455:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1456:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
ARM GAS /tmp/ccBjdYa2.s page 27
1457:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /**
1458:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @brief Generate an MDMA SW request trigger to activate the request on the given Channel.
1459:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @param hmdma: pointer to a MDMA_HandleTypeDef structure that contains
1460:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * the configuration information for the specified MDMA Stream.
1461:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @retval HAL status
1462:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** */
1463:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** HAL_StatusTypeDef HAL_MDMA_GenerateSWRequest(MDMA_HandleTypeDef *hmdma)
1464:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1465:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** uint32_t request_mode;
1466:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1467:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Check the MDMA peripheral handle */
1468:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if(hmdma == NULL)
1469:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1470:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** return HAL_ERROR;
1471:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1472:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1473:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Get the softawre request mode */
1474:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** request_mode = hmdma->Instance->CTCR & MDMA_CTCR_SWRM;
1475:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1476:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if((hmdma->Instance->CCR & MDMA_CCR_EN) == 0U)
1477:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1478:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* if no Transfer on going (MDMA enable bit not set) retrun error */
1479:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->ErrorCode = HAL_MDMA_ERROR_NO_XFER;
1480:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1481:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** return HAL_ERROR;
1482:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1483:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** else if(((hmdma->Instance->CISR & MDMA_CISR_CRQA) != 0U) || (request_mode == 0U))
1484:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1485:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* if an MDMA ongoing request has not yet end or if request mode is not SW request retrun error
1486:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->ErrorCode = HAL_MDMA_ERROR_BUSY;
1487:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1488:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** return HAL_ERROR;
1489:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1490:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** else
1491:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1492:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Set the SW request bit to activate the request on the Channel */
1493:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->Instance->CCR |= MDMA_CCR_SWRQ;
1494:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1495:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** return HAL_OK;
1496:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1497:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1498:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1499:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /**
1500:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @brief Handles MDMA interrupt request.
1501:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @param hmdma: pointer to a MDMA_HandleTypeDef structure that contains
1502:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * the configuration information for the specified MDMA Channel.
1503:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @retval None
1504:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** */
1505:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** void HAL_MDMA_IRQHandler(MDMA_HandleTypeDef *hmdma)
1506:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1507:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** __IO uint32_t count = 0;
1508:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** uint32_t timeout = SystemCoreClock / 9600U;
1509:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1510:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** uint32_t generalIntFlag, errorFlag;
1511:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1512:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* General Interrupt Flag management ****************************************/
1513:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** generalIntFlag = 1UL << ((((uint32_t)hmdma->Instance - (uint32_t)(MDMA_Channel0))/HAL_MDMA_CHANN
ARM GAS /tmp/ccBjdYa2.s page 28
1514:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if((MDMA->GISR0 & generalIntFlag) == 0U)
1515:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1516:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** return; /* the General interrupt flag for the current channel is down , nothing to do */
1517:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1518:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1519:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Transfer Error Interrupt management ***************************************/
1520:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if((__HAL_MDMA_GET_FLAG(hmdma, MDMA_FLAG_TE) != 0U))
1521:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1522:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if(__HAL_MDMA_GET_IT_SOURCE(hmdma, MDMA_IT_TE) != 0U)
1523:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1524:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Disable the transfer error interrupt */
1525:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** __HAL_MDMA_DISABLE_IT(hmdma, MDMA_IT_TE);
1526:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1527:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Get the transfer error source flag */
1528:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** errorFlag = hmdma->Instance->CESR;
1529:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1530:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if((errorFlag & MDMA_CESR_TED) == 0U)
1531:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1532:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Update error code : Read Transfer error */
1533:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->ErrorCode |= HAL_MDMA_ERROR_READ_XFER;
1534:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1535:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** else
1536:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1537:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Update error code : Write Transfer error */
1538:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->ErrorCode |= HAL_MDMA_ERROR_WRITE_XFER;
1539:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1540:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1541:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if((errorFlag & MDMA_CESR_TEMD) != 0U)
1542:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1543:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Update error code : Error Mask Data */
1544:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->ErrorCode |= HAL_MDMA_ERROR_MASK_DATA;
1545:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1546:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1547:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if((errorFlag & MDMA_CESR_TELD) != 0U)
1548:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1549:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Update error code : Error Linked list */
1550:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->ErrorCode |= HAL_MDMA_ERROR_LINKED_LIST;
1551:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1552:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1553:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if((errorFlag & MDMA_CESR_ASE) != 0U)
1554:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1555:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Update error code : Address/Size alignment error */
1556:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->ErrorCode |= HAL_MDMA_ERROR_ALIGNMENT;
1557:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1558:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1559:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if((errorFlag & MDMA_CESR_BSE) != 0U)
1560:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1561:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Update error code : Block Size error error */
1562:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->ErrorCode |= HAL_MDMA_ERROR_BLOCK_SIZE;
1563:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1564:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1565:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Clear the transfer error flags */
1566:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** __HAL_MDMA_CLEAR_FLAG(hmdma, MDMA_FLAG_TE);
1567:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1568:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1569:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1570:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Buffer Transfer Complete Interrupt management ******************************/
ARM GAS /tmp/ccBjdYa2.s page 29
1571:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if((__HAL_MDMA_GET_FLAG(hmdma, MDMA_FLAG_BFTC) != 0U))
1572:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1573:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if(__HAL_MDMA_GET_IT_SOURCE(hmdma, MDMA_IT_BFTC) != 0U)
1574:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1575:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Clear the buffer transfer complete flag */
1576:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** __HAL_MDMA_CLEAR_FLAG(hmdma, MDMA_FLAG_BFTC);
1577:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1578:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if(hmdma->XferBufferCpltCallback != NULL)
1579:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1580:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Buffer transfer callback */
1581:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->XferBufferCpltCallback(hmdma);
1582:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1583:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1584:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1585:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1586:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Block Transfer Complete Interrupt management ******************************/
1587:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if((__HAL_MDMA_GET_FLAG(hmdma, MDMA_FLAG_BT) != 0U))
1588:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1589:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if(__HAL_MDMA_GET_IT_SOURCE(hmdma, MDMA_IT_BT) != 0U)
1590:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1591:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Clear the block transfer complete flag */
1592:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** __HAL_MDMA_CLEAR_FLAG(hmdma, MDMA_FLAG_BT);
1593:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1594:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if(hmdma->XferBlockCpltCallback != NULL)
1595:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1596:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Block transfer callback */
1597:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->XferBlockCpltCallback(hmdma);
1598:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1599:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1600:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1601:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1602:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Repeated Block Transfer Complete Interrupt management ******************************/
1603:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if((__HAL_MDMA_GET_FLAG(hmdma, MDMA_FLAG_BRT) != 0U))
1604:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1605:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if(__HAL_MDMA_GET_IT_SOURCE(hmdma, MDMA_IT_BRT) != 0U)
1606:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1607:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Clear the repeat block transfer complete flag */
1608:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** __HAL_MDMA_CLEAR_FLAG(hmdma, MDMA_FLAG_BRT);
1609:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1610:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if(hmdma->XferRepeatBlockCpltCallback != NULL)
1611:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1612:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Repeated Block transfer callback */
1613:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->XferRepeatBlockCpltCallback(hmdma);
1614:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1615:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1616:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1617:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1618:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Channel Transfer Complete Interrupt management ***********************************/
1619:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if((__HAL_MDMA_GET_FLAG(hmdma, MDMA_FLAG_CTC) != 0U))
1620:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1621:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if(__HAL_MDMA_GET_IT_SOURCE(hmdma, MDMA_IT_CTC) != 0U)
1622:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1623:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Disable all the transfer interrupts */
1624:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** __HAL_MDMA_DISABLE_IT(hmdma, (MDMA_IT_TE | MDMA_IT_CTC | MDMA_IT_BT | MDMA_IT_BRT | MDMA_IT_B
1625:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1626:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if(HAL_MDMA_STATE_ABORT == hmdma->State)
1627:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
ARM GAS /tmp/ccBjdYa2.s page 30
1628:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Process Unlocked */
1629:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** __HAL_UNLOCK(hmdma);
1630:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1631:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Change the DMA state */
1632:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->State = HAL_MDMA_STATE_READY;
1633:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1634:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if(hmdma->XferAbortCallback != NULL)
1635:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1636:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->XferAbortCallback(hmdma);
1637:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1638:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** return;
1639:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1640:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1641:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Clear the Channel Transfer Complete flag */
1642:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** __HAL_MDMA_CLEAR_FLAG(hmdma, MDMA_FLAG_CTC);
1643:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1644:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Process Unlocked */
1645:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** __HAL_UNLOCK(hmdma);
1646:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1647:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Change MDMA peripheral state */
1648:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->State = HAL_MDMA_STATE_READY;
1649:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1650:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if(hmdma->XferCpltCallback != NULL)
1651:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1652:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Channel Transfer Complete callback */
1653:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->XferCpltCallback(hmdma);
1654:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1655:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1656:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1657:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1658:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* manage error case */
1659:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if(hmdma->ErrorCode != HAL_MDMA_ERROR_NONE)
1660:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1661:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->State = HAL_MDMA_STATE_ABORT;
1662:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1663:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Disable the channel */
1664:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** __HAL_MDMA_DISABLE(hmdma);
1665:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1666:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** do
1667:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1668:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if (++count > timeout)
1669:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1670:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** break;
1671:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1672:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1673:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** while((hmdma->Instance->CCR & MDMA_CCR_EN) != 0U);
1674:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1675:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Process Unlocked */
1676:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** __HAL_UNLOCK(hmdma);
1677:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1678:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if((hmdma->Instance->CCR & MDMA_CCR_EN) != 0U)
1679:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1680:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Change the MDMA state to error if MDMA disable fails */
1681:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->State = HAL_MDMA_STATE_ERROR;
1682:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1683:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** else
1684:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
ARM GAS /tmp/ccBjdYa2.s page 31
1685:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Change the MDMA state to Ready if MDMA disable success */
1686:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->State = HAL_MDMA_STATE_READY;
1687:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1688:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1689:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1690:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if (hmdma->XferErrorCallback != NULL)
1691:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1692:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Transfer error callback */
1693:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->XferErrorCallback(hmdma);
1694:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1695:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1696:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1697:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1698:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /**
1699:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @}
1700:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** */
1701:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1702:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /** @addtogroup MDMA_Exported_Functions_Group4
1703:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** *
1704:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** @verbatim
1705:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** ===============================================================================
1706:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** ##### State and Errors functions #####
1707:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** ===============================================================================
1708:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** [..]
1709:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** This subsection provides functions allowing to
1710:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** (+) Check the MDMA state
1711:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** (+) Get error code
1712:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1713:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** @endverbatim
1714:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @{
1715:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** */
1716:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1717:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /**
1718:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @brief Returns the MDMA state.
1719:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @param hmdma: pointer to a MDMA_HandleTypeDef structure that contains
1720:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * the configuration information for the specified MDMA Channel.
1721:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @retval HAL state
1722:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** */
1723:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** HAL_MDMA_StateTypeDef HAL_MDMA_GetState(MDMA_HandleTypeDef *hmdma)
1724:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1725:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** return hmdma->State;
1726:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1727:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1728:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /**
1729:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @brief Return the MDMA error code
1730:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @param hmdma : pointer to a MDMA_HandleTypeDef structure that contains
1731:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * the configuration information for the specified MDMA Channel.
1732:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @retval MDMA Error Code
1733:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** */
1734:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** uint32_t HAL_MDMA_GetError(MDMA_HandleTypeDef *hmdma)
1735:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1736:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** return hmdma->ErrorCode;
1737:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1738:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1739:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /**
1740:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @}
1741:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** */
ARM GAS /tmp/ccBjdYa2.s page 32
1742:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1743:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /**
1744:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @}
1745:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** */
1746:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1747:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /** @addtogroup MDMA_Private_Functions
1748:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @{
1749:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** */
1750:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1751:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /**
1752:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @brief Sets the MDMA Transfer parameter.
1753:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @param hmdma: pointer to a MDMA_HandleTypeDef structure that contains
1754:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * the configuration information for the specified MDMA Channel.
1755:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @param SrcAddress: The source memory Buffer address
1756:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @param DstAddress: The destination memory Buffer address
1757:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @param BlockDataLength : The length of a block transfer in bytes
1758:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @param BlockCount: The number of blocks to be transfered
1759:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @retval HAL status
1760:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** */
1761:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** static void MDMA_SetConfig(MDMA_HandleTypeDef *hmdma, uint32_t SrcAddress, uint32_t DstAddress, uin
1762:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
28 .loc 1 1762 1 view -0
29 .cfi_startproc
30 @ args = 4, pretend = 0, frame = 0
31 @ frame_needed = 0, uses_anonymous_args = 0
32 @ link register save eliminated.
33 .loc 1 1762 1 is_stmt 0 view .LVU1
34 0000 70B4 push {r4, r5, r6}
35 .LCFI0:
36 .cfi_def_cfa_offset 12
37 .cfi_offset 4, -12
38 .cfi_offset 5, -8
39 .cfi_offset 6, -4
1763:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** uint32_t addressMask;
40 .loc 1 1763 3 is_stmt 1 view .LVU2
1764:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1765:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Configure the MDMA Channel data length */
1766:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** MODIFY_REG(hmdma->Instance->CBNDTR ,MDMA_CBNDTR_BNDT, (BlockDataLength & MDMA_CBNDTR_BNDT));
41 .loc 1 1766 3 view .LVU3
42 0002 0568 ldr r5, [r0]
43 0004 6E69 ldr r6, [r5, #20]
44 0006 1F4C ldr r4, .L7
45 0008 3440 ands r4, r4, r6
46 000a C3F31003 ubfx r3, r3, #0, #17
47 .LVL1:
48 .loc 1 1766 3 is_stmt 0 view .LVU4
49 000e 1C43 orrs r4, r4, r3
50 0010 6C61 str r4, [r5, #20]
1767:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1768:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Configure the MDMA block repeat count */
1769:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** MODIFY_REG(hmdma->Instance->CBNDTR , MDMA_CBNDTR_BRC , ((BlockCount - 1U) << MDMA_CBNDTR_BRC_Pos)
51 .loc 1 1769 3 is_stmt 1 view .LVU5
52 0012 0568 ldr r5, [r0]
53 0014 6B69 ldr r3, [r5, #20]
54 0016 C3F31303 ubfx r3, r3, #0, #20
55 001a 039C ldr r4, [sp, #12]
56 001c 013C subs r4, r4, #1
ARM GAS /tmp/ccBjdYa2.s page 33
57 001e 43EA0453 orr r3, r3, r4, lsl #20
58 0022 6B61 str r3, [r5, #20]
1770:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1771:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Clear all interrupt flags */
1772:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** __HAL_MDMA_CLEAR_FLAG(hmdma, MDMA_FLAG_TE | MDMA_FLAG_CTC | MDMA_CISR_BRTIF | MDMA_CISR_BTIF | MD
59 .loc 1 1772 3 view .LVU6
60 0024 0368 ldr r3, [r0]
61 0026 1F24 movs r4, #31
62 0028 5C60 str r4, [r3, #4]
1773:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1774:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Configure MDMA Channel destination address */
1775:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->Instance->CDAR = DstAddress;
63 .loc 1 1775 3 view .LVU7
64 .loc 1 1775 8 is_stmt 0 view .LVU8
65 002a 0368 ldr r3, [r0]
66 .loc 1 1775 25 view .LVU9
67 002c DA61 str r2, [r3, #28]
1776:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1777:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Configure MDMA Channel Source address */
1778:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->Instance->CSAR = SrcAddress;
68 .loc 1 1778 3 is_stmt 1 view .LVU10
69 .loc 1 1778 8 is_stmt 0 view .LVU11
70 002e 0368 ldr r3, [r0]
71 .loc 1 1778 25 view .LVU12
72 0030 9961 str r1, [r3, #24]
1779:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1780:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** addressMask = SrcAddress & 0xFF000000U;
73 .loc 1 1780 3 is_stmt 1 view .LVU13
74 .loc 1 1780 15 is_stmt 0 view .LVU14
75 0032 01F07F41 and r1, r1, #-16777216
76 .LVL2:
1781:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if((addressMask == 0x20000000U) || (addressMask == 0x00000000U))
77 .loc 1 1781 3 is_stmt 1 view .LVU15
78 .loc 1 1781 5 is_stmt 0 view .LVU16
79 0036 0029 cmp r1, #0
80 0038 18BF it ne
81 003a B1F1005F cmpne r1, #536870912
82 003e 15D1 bne .L2
1782:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1783:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /*The AHBSbus is used as source (read operation) on channel x */
1784:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->Instance->CTBR |= MDMA_CTBR_SBUS;
83 .loc 1 1784 5 is_stmt 1 view .LVU17
84 .loc 1 1784 10 is_stmt 0 view .LVU18
85 0040 0168 ldr r1, [r0]
86 .LVL3:
87 .loc 1 1784 27 view .LVU19
88 0042 8B6A ldr r3, [r1, #40]
89 .LVL4:
90 .loc 1 1784 27 view .LVU20
91 0044 43F48033 orr r3, r3, #65536
92 0048 8B62 str r3, [r1, #40]
93 .L3:
1785:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1786:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** else
1787:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1788:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /*The AXI bus is used as source (read operation) on channel x */
1789:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->Instance->CTBR &= (~MDMA_CTBR_SBUS);
ARM GAS /tmp/ccBjdYa2.s page 34
1790:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1791:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1792:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** addressMask = DstAddress & 0xFF000000U;
94 .loc 1 1792 3 is_stmt 1 view .LVU21
95 .loc 1 1792 15 is_stmt 0 view .LVU22
96 004a 02F07F42 and r2, r2, #-16777216
97 .LVL5:
1793:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if((addressMask == 0x20000000U) || (addressMask == 0x00000000U))
98 .loc 1 1793 3 is_stmt 1 view .LVU23
99 .loc 1 1793 5 is_stmt 0 view .LVU24
100 004e 002A cmp r2, #0
101 0050 18BF it ne
102 0052 B2F1005F cmpne r2, #536870912
103 0056 0FD1 bne .L4
1794:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1795:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /*The AHB bus is used as destination (write operation) on channel x */
1796:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->Instance->CTBR |= MDMA_CTBR_DBUS;
104 .loc 1 1796 5 is_stmt 1 view .LVU25
105 .loc 1 1796 10 is_stmt 0 view .LVU26
106 0058 0268 ldr r2, [r0]
107 .LVL6:
108 .loc 1 1796 27 view .LVU27
109 005a 936A ldr r3, [r2, #40]
110 005c 43F40033 orr r3, r3, #131072
111 0060 9362 str r3, [r2, #40]
112 .L5:
1797:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1798:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** else
1799:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1800:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /*The AXI bus is used as destination (write operation) on channel x */
1801:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->Instance->CTBR &= (~MDMA_CTBR_DBUS);
1802:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1803:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1804:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Set the linked list register to the first node of the list */
1805:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->Instance->CLAR = (uint32_t)hmdma->FirstLinkedListNodeAddress;
113 .loc 1 1805 3 is_stmt 1 view .LVU28
114 .loc 1 1805 42 is_stmt 0 view .LVU29
115 0062 C26D ldr r2, [r0, #92]
116 .loc 1 1805 8 view .LVU30
117 0064 0368 ldr r3, [r0]
118 .loc 1 1805 25 view .LVU31
119 0066 5A62 str r2, [r3, #36]
1806:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
120 .loc 1 1806 1 view .LVU32
121 0068 70BC pop {r4, r5, r6}
122 .LCFI1:
123 .cfi_remember_state
124 .cfi_restore 6
125 .cfi_restore 5
126 .cfi_restore 4
127 .cfi_def_cfa_offset 0
128 .LVL7:
129 .loc 1 1806 1 view .LVU33
130 006a 7047 bx lr
131 .LVL8:
132 .L2:
133 .LCFI2:
ARM GAS /tmp/ccBjdYa2.s page 35
134 .cfi_restore_state
1789:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
135 .loc 1 1789 5 is_stmt 1 view .LVU34
1789:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
136 .loc 1 1789 10 is_stmt 0 view .LVU35
137 006c 0168 ldr r1, [r0]
138 .LVL9:
1789:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
139 .loc 1 1789 27 view .LVU36
140 006e 8B6A ldr r3, [r1, #40]
141 .LVL10:
1789:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
142 .loc 1 1789 27 view .LVU37
143 0070 23F48033 bic r3, r3, #65536
144 0074 8B62 str r3, [r1, #40]
1789:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
145 .loc 1 1789 27 view .LVU38
146 0076 E8E7 b .L3
147 .LVL11:
148 .L4:
1801:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
149 .loc 1 1801 5 is_stmt 1 view .LVU39
1801:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
150 .loc 1 1801 10 is_stmt 0 view .LVU40
151 0078 0268 ldr r2, [r0]
152 .LVL12:
1801:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
153 .loc 1 1801 27 view .LVU41
154 007a 936A ldr r3, [r2, #40]
155 007c 23F40033 bic r3, r3, #131072
156 0080 9362 str r3, [r2, #40]
157 0082 EEE7 b .L5
158 .L8:
159 .align 2
160 .L7:
161 0084 0000FEFF .word -131072
162 .cfi_endproc
163 .LFE160:
165 .section .text.MDMA_Init,"ax",%progbits
166 .align 1
167 .syntax unified
168 .thumb
169 .thumb_func
170 .fpu fpv5-d16
172 MDMA_Init:
173 .LVL13:
174 .LFB161:
1807:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1808:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /**
1809:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @brief Initializes the MDMA handle according to the specified
1810:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * parameters in the MDMA_InitTypeDef
1811:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @param hmdma: pointer to a MDMA_HandleTypeDef structure that contains
1812:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * the configuration information for the specified MDMA Channel.
1813:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** * @retval None
1814:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** */
1815:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** static void MDMA_Init(MDMA_HandleTypeDef *hmdma)
1816:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
ARM GAS /tmp/ccBjdYa2.s page 36
175 .loc 1 1816 1 is_stmt 1 view -0
176 .cfi_startproc
177 @ args = 0, pretend = 0, frame = 0
178 @ frame_needed = 0, uses_anonymous_args = 0
179 @ link register save eliminated.
1817:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** uint32_t blockoffset;
180 .loc 1 1817 3 view .LVU43
1818:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1819:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Prepare the MDMA Channel configuration */
1820:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->Instance->CCR = hmdma->Init.Priority | hmdma->Init.Endianness;
181 .loc 1 1820 3 view .LVU44
182 .loc 1 1820 37 is_stmt 0 view .LVU45
183 0000 C368 ldr r3, [r0, #12]
184 .loc 1 1820 61 view .LVU46
185 0002 0169 ldr r1, [r0, #16]
186 .loc 1 1820 8 view .LVU47
187 0004 0268 ldr r2, [r0]
188 .loc 1 1820 48 view .LVU48
189 0006 0B43 orrs r3, r3, r1
190 .loc 1 1820 24 view .LVU49
191 0008 D360 str r3, [r2, #12]
1821:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1822:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Write new CTCR Register value */
1823:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->Instance->CTCR = hmdma->Init.SourceInc | hmdma->Init.DestinationInc | \
192 .loc 1 1823 3 is_stmt 1 view .LVU50
193 .loc 1 1823 39 is_stmt 0 view .LVU51
194 000a 4369 ldr r3, [r0, #20]
195 .loc 1 1823 68 view .LVU52
196 000c 8269 ldr r2, [r0, #24]
197 .loc 1 1823 55 view .LVU53
198 000e 1343 orrs r3, r3, r2
1824:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->Init.SourceDataSize | hmdma->Init.DestDataSize | \
199 .loc 1 1824 39 view .LVU54
200 0010 C269 ldr r2, [r0, #28]
1823:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->Init.SourceDataSize | hmdma->Init.DestDataSize | \
201 .loc 1 1823 84 view .LVU55
202 0012 1343 orrs r3, r3, r2
203 .loc 1 1824 68 view .LVU56
204 0014 026A ldr r2, [r0, #32]
205 .loc 1 1824 55 view .LVU57
206 0016 1343 orrs r3, r3, r2
1825:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->Init.DataAlignment | hmdma->Init.SourceBurst | \
207 .loc 1 1825 39 view .LVU58
208 0018 426A ldr r2, [r0, #36]
1824:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->Init.SourceDataSize | hmdma->Init.DestDataSize | \
209 .loc 1 1824 84 view .LVU59
210 001a 1343 orrs r3, r3, r2
211 .loc 1 1825 68 view .LVU60
212 001c C26A ldr r2, [r0, #44]
213 .loc 1 1825 55 view .LVU61
214 001e 1343 orrs r3, r3, r2
1826:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->Init.DestBurst | \
215 .loc 1 1826 39 view .LVU62
216 0020 026B ldr r2, [r0, #48]
1825:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->Init.DataAlignment | hmdma->Init.SourceBurst | \
217 .loc 1 1825 84 view .LVU63
218 0022 1343 orrs r3, r3, r2
ARM GAS /tmp/ccBjdYa2.s page 37
1827:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** ((hmdma->Init.BufferTransferLength - 1U) << MDMA_CTCR_TLEN_Pos) | \
219 .loc 1 1827 41 view .LVU64
220 0024 826A ldr r2, [r0, #40]
221 .loc 1 1827 63 view .LVU65
222 0026 013A subs r2, r2, #1
1826:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->Init.DestBurst | \
223 .loc 1 1826 84 view .LVU66
224 0028 43EA8243 orr r3, r3, r2, lsl #18
1828:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->Init.TransferTriggerMode;
225 .loc 1 1828 39 view .LVU67
226 002c 8168 ldr r1, [r0, #8]
1823:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->Init.SourceDataSize | hmdma->Init.DestDataSize | \
227 .loc 1 1823 8 view .LVU68
228 002e 0268 ldr r2, [r0]
1827:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** ((hmdma->Init.BufferTransferLength - 1U) << MDMA_CTCR_TLEN_Pos) | \
229 .loc 1 1827 92 view .LVU69
230 0030 0B43 orrs r3, r3, r1
1823:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->Init.SourceDataSize | hmdma->Init.DestDataSize | \
231 .loc 1 1823 25 view .LVU70
232 0032 1361 str r3, [r2, #16]
1829:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1830:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* If SW request set the CTCR register to SW Request Mode */
1831:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if(hmdma->Init.Request == MDMA_REQUEST_SW)
233 .loc 1 1831 3 is_stmt 1 view .LVU71
234 .loc 1 1831 17 is_stmt 0 view .LVU72
235 0034 4368 ldr r3, [r0, #4]
236 .loc 1 1831 5 view .LVU73
237 0036 B3F1804F cmp r3, #1073741824
238 003a 1BD0 beq .L17
239 .L10:
1832:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1833:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /*
1834:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** -If the request is done by SW : BWM could be set to 1 or 0.
1835:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** -If the request is done by a peripheral :
1836:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** If mask address not set (0) => BWM must be set to 0
1837:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** If mask address set (different than 0) => BWM could be set to 1 or 0
1838:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** */
1839:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->Instance->CTCR |= (MDMA_CTCR_SWRM | MDMA_CTCR_BWM);
1840:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1841:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1842:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Reset CBNDTR Register */
1843:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->Instance->CBNDTR = 0;
240 .loc 1 1843 3 is_stmt 1 view .LVU74
241 .loc 1 1843 8 is_stmt 0 view .LVU75
242 003c 0368 ldr r3, [r0]
243 .loc 1 1843 27 view .LVU76
244 003e 0022 movs r2, #0
245 0040 5A61 str r2, [r3, #20]
1844:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1845:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* if block source address offset is negative set the Block Repeat Source address Update Mode to
1846:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if(hmdma->Init.SourceBlockAddressOffset < 0)
246 .loc 1 1846 3 is_stmt 1 view .LVU77
247 .loc 1 1846 17 is_stmt 0 view .LVU78
248 0042 436B ldr r3, [r0, #52]
249 .loc 1 1846 5 view .LVU79
250 0044 9342 cmp r3, r2
251 0046 1BDB blt .L18
ARM GAS /tmp/ccBjdYa2.s page 38
1847:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1848:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->Instance->CBNDTR |= MDMA_CBNDTR_BRSUM;
1849:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Write new CBRUR Register value : source repeat block offset */
1850:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** blockoffset = (uint32_t)(- hmdma->Init.SourceBlockAddressOffset);
1851:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->Instance->CBRUR = (blockoffset & 0x0000FFFFU);
1852:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1853:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** else
1854:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1855:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Write new CBRUR Register value : source repeat block offset */
1856:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->Instance->CBRUR = (((uint32_t)hmdma->Init.SourceBlockAddressOffset) & 0x0000FFFFU);
252 .loc 1 1856 5 is_stmt 1 view .LVU80
253 .loc 1 1856 10 is_stmt 0 view .LVU81
254 0048 0268 ldr r2, [r0]
255 .loc 1 1856 80 view .LVU82
256 004a 9BB2 uxth r3, r3
257 .loc 1 1856 28 view .LVU83
258 004c 1362 str r3, [r2, #32]
259 .L12:
1857:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1858:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1859:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* If block destination address offset is negative set the Block Repeat destination address Updat
1860:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if(hmdma->Init.DestBlockAddressOffset < 0)
260 .loc 1 1860 3 is_stmt 1 view .LVU84
261 .loc 1 1860 17 is_stmt 0 view .LVU85
262 004e 836B ldr r3, [r0, #56]
263 .loc 1 1860 5 view .LVU86
264 0050 002B cmp r3, #0
265 0052 20DB blt .L19
1861:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1862:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->Instance->CBNDTR |= MDMA_CBNDTR_BRDUM;
1863:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Write new CBRUR Register value : destination repeat block offset */
1864:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** blockoffset = (uint32_t)(- hmdma->Init.DestBlockAddressOffset);
1865:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->Instance->CBRUR |= ((blockoffset & 0x0000FFFFU) << MDMA_CBRUR_DUV_Pos);
1866:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1867:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** else
1868:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1869:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /*write new CBRUR Register value : destination repeat block offset */
1870:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->Instance->CBRUR |= ((((uint32_t)hmdma->Init.DestBlockAddressOffset) & 0x0000FFFFU) << MD
266 .loc 1 1870 5 is_stmt 1 view .LVU87
267 .loc 1 1870 10 is_stmt 0 view .LVU88
268 0054 0168 ldr r1, [r0]
269 .loc 1 1870 28 view .LVU89
270 0056 0A6A ldr r2, [r1, #32]
271 0058 42EA0343 orr r3, r2, r3, lsl #16
272 005c 0B62 str r3, [r1, #32]
273 .L14:
1871:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1872:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1873:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* if HW request set the HW request and the requet CleraMask and ClearData MaskData, */
1874:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if(hmdma->Init.Request != MDMA_REQUEST_SW)
274 .loc 1 1874 3 is_stmt 1 view .LVU90
275 .loc 1 1874 17 is_stmt 0 view .LVU91
276 005e 4368 ldr r3, [r0, #4]
277 .loc 1 1874 5 view .LVU92
278 0060 B3F1804F cmp r3, #1073741824
279 0064 24D0 beq .L15
1875:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
ARM GAS /tmp/ccBjdYa2.s page 39
1876:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Set the HW request in CTRB register */
1877:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->Instance->CTBR = hmdma->Init.Request & MDMA_CTBR_TSEL;
280 .loc 1 1877 5 is_stmt 1 view .LVU93
281 .loc 1 1877 10 is_stmt 0 view .LVU94
282 0066 0268 ldr r2, [r0]
283 .loc 1 1877 49 view .LVU95
284 0068 DBB2 uxtb r3, r3
285 .loc 1 1877 27 view .LVU96
286 006a 9362 str r3, [r2, #40]
287 .L16:
1878:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1879:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** else /* SW request : reset the CTBR register */
1880:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1881:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->Instance->CTBR = 0;
1882:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1883:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1884:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Write Link Address Register */
1885:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->Instance->CLAR = 0;
288 .loc 1 1885 3 is_stmt 1 view .LVU97
289 .loc 1 1885 8 is_stmt 0 view .LVU98
290 006c 0368 ldr r3, [r0]
291 .loc 1 1885 25 view .LVU99
292 006e 0022 movs r2, #0
293 0070 5A62 str r2, [r3, #36]
1886:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
294 .loc 1 1886 1 view .LVU100
295 0072 7047 bx lr
296 .L17:
1839:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
297 .loc 1 1839 5 is_stmt 1 view .LVU101
1839:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
298 .loc 1 1839 10 is_stmt 0 view .LVU102
299 0074 0268 ldr r2, [r0]
1839:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
300 .loc 1 1839 27 view .LVU103
301 0076 1369 ldr r3, [r2, #16]
302 0078 43F04043 orr r3, r3, #-1073741824
303 007c 1361 str r3, [r2, #16]
304 007e DDE7 b .L10
305 .L18:
1848:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Write new CBRUR Register value : source repeat block offset */
306 .loc 1 1848 5 is_stmt 1 view .LVU104
1848:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Write new CBRUR Register value : source repeat block offset */
307 .loc 1 1848 10 is_stmt 0 view .LVU105
308 0080 0268 ldr r2, [r0]
1848:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Write new CBRUR Register value : source repeat block offset */
309 .loc 1 1848 29 view .LVU106
310 0082 5369 ldr r3, [r2, #20]
311 0084 43F48023 orr r3, r3, #262144
312 0088 5361 str r3, [r2, #20]
1850:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->Instance->CBRUR = (blockoffset & 0x0000FFFFU);
313 .loc 1 1850 5 is_stmt 1 view .LVU107
1850:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->Instance->CBRUR = (blockoffset & 0x0000FFFFU);
314 .loc 1 1850 43 is_stmt 0 view .LVU108
315 008a 436B ldr r3, [r0, #52]
1850:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->Instance->CBRUR = (blockoffset & 0x0000FFFFU);
316 .loc 1 1850 30 view .LVU109
ARM GAS /tmp/ccBjdYa2.s page 40
317 008c 5B42 rsbs r3, r3, #0
318 .LVL14:
1851:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
319 .loc 1 1851 5 is_stmt 1 view .LVU110
1851:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
320 .loc 1 1851 10 is_stmt 0 view .LVU111
321 008e 0268 ldr r2, [r0]
1851:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
322 .loc 1 1851 43 view .LVU112
323 0090 9BB2 uxth r3, r3
324 .LVL15:
1851:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
325 .loc 1 1851 28 view .LVU113
326 0092 1362 str r3, [r2, #32]
327 .LVL16:
1851:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
328 .loc 1 1851 28 view .LVU114
329 0094 DBE7 b .L12
330 .L19:
1862:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Write new CBRUR Register value : destination repeat block offset */
331 .loc 1 1862 5 is_stmt 1 view .LVU115
1862:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Write new CBRUR Register value : destination repeat block offset */
332 .loc 1 1862 10 is_stmt 0 view .LVU116
333 0096 0268 ldr r2, [r0]
1862:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Write new CBRUR Register value : destination repeat block offset */
334 .loc 1 1862 29 view .LVU117
335 0098 5369 ldr r3, [r2, #20]
336 009a 43F40023 orr r3, r3, #524288
337 009e 5361 str r3, [r2, #20]
1864:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->Instance->CBRUR |= ((blockoffset & 0x0000FFFFU) << MDMA_CBRUR_DUV_Pos);
338 .loc 1 1864 5 is_stmt 1 view .LVU118
1864:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->Instance->CBRUR |= ((blockoffset & 0x0000FFFFU) << MDMA_CBRUR_DUV_Pos);
339 .loc 1 1864 43 is_stmt 0 view .LVU119
340 00a0 836B ldr r3, [r0, #56]
1864:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->Instance->CBRUR |= ((blockoffset & 0x0000FFFFU) << MDMA_CBRUR_DUV_Pos);
341 .loc 1 1864 30 view .LVU120
342 00a2 5A42 rsbs r2, r3, #0
343 .LVL17:
1865:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
344 .loc 1 1865 5 is_stmt 1 view .LVU121
1865:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
345 .loc 1 1865 10 is_stmt 0 view .LVU122
346 00a4 0168 ldr r1, [r0]
1865:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
347 .loc 1 1865 28 view .LVU123
348 00a6 0B6A ldr r3, [r1, #32]
349 00a8 43EA0243 orr r3, r3, r2, lsl #16
350 00ac 0B62 str r3, [r1, #32]
351 00ae D6E7 b .L14
352 .LVL18:
353 .L15:
1881:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
354 .loc 1 1881 5 is_stmt 1 view .LVU124
1881:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
355 .loc 1 1881 10 is_stmt 0 view .LVU125
356 00b0 0368 ldr r3, [r0]
1881:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
ARM GAS /tmp/ccBjdYa2.s page 41
357 .loc 1 1881 27 view .LVU126
358 00b2 0022 movs r2, #0
359 00b4 9A62 str r2, [r3, #40]
360 00b6 D9E7 b .L16
361 .cfi_endproc
362 .LFE161:
364 .section .text.HAL_MDMA_Init,"ax",%progbits
365 .align 1
366 .global HAL_MDMA_Init
367 .syntax unified
368 .thumb
369 .thumb_func
370 .fpu fpv5-d16
372 HAL_MDMA_Init:
373 .LVL19:
374 .LFB141:
220:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** uint32_t tickstart = HAL_GetTick();
375 .loc 1 220 1 is_stmt 1 view -0
376 .cfi_startproc
377 @ args = 0, pretend = 0, frame = 0
378 @ frame_needed = 0, uses_anonymous_args = 0
220:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** uint32_t tickstart = HAL_GetTick();
379 .loc 1 220 1 is_stmt 0 view .LVU128
380 0000 38B5 push {r3, r4, r5, lr}
381 .LCFI3:
382 .cfi_def_cfa_offset 16
383 .cfi_offset 3, -16
384 .cfi_offset 4, -12
385 .cfi_offset 5, -8
386 .cfi_offset 14, -4
387 0002 0446 mov r4, r0
221:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
388 .loc 1 221 3 is_stmt 1 view .LVU129
221:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
389 .loc 1 221 24 is_stmt 0 view .LVU130
390 0004 FFF7FEFF bl HAL_GetTick
391 .LVL20:
224:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
392 .loc 1 224 3 is_stmt 1 view .LVU131
224:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
393 .loc 1 224 5 is_stmt 0 view .LVU132
394 0008 44B3 cbz r4, .L24
395 000a 0546 mov r5, r0
230:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** assert_param(IS_MDMA_PRIORITY(hmdma->Init.Priority));
396 .loc 1 230 3 is_stmt 1 view .LVU133
231:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** assert_param(IS_MDMA_ENDIANNESS_MODE(hmdma->Init.Endianness));
397 .loc 1 231 3 view .LVU134
232:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** assert_param(IS_MDMA_REQUEST(hmdma->Init.Request));
398 .loc 1 232 3 view .LVU135
233:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** assert_param(IS_MDMA_SOURCE_INC(hmdma->Init.SourceInc));
399 .loc 1 233 3 view .LVU136
234:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** assert_param(IS_MDMA_DESTINATION_INC(hmdma->Init.DestinationInc));
400 .loc 1 234 3 view .LVU137
235:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** assert_param(IS_MDMA_SOURCE_DATASIZE(hmdma->Init.SourceDataSize));
401 .loc 1 235 3 view .LVU138
236:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** assert_param(IS_MDMA_DESTINATION_DATASIZE(hmdma->Init.DestDataSize));
402 .loc 1 236 3 view .LVU139
ARM GAS /tmp/ccBjdYa2.s page 42
237:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** assert_param(IS_MDMA_DATA_ALIGNMENT(hmdma->Init.DataAlignment));
403 .loc 1 237 3 view .LVU140
238:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** assert_param(IS_MDMA_SOURCE_BURST(hmdma->Init.SourceBurst));
404 .loc 1 238 3 view .LVU141
239:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** assert_param(IS_MDMA_DESTINATION_BURST(hmdma->Init.DestBurst));
405 .loc 1 239 3 view .LVU142
240:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** assert_param(IS_MDMA_BUFFER_TRANSFER_LENGTH(hmdma->Init.BufferTransferLength));
406 .loc 1 240 3 view .LVU143
241:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** assert_param(IS_MDMA_TRANSFER_TRIGGER_MODE(hmdma->Init.TransferTriggerMode));
407 .loc 1 241 3 view .LVU144
242:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** assert_param(IS_MDMA_BLOCK_ADDR_OFFSET(hmdma->Init.SourceBlockAddressOffset));
408 .loc 1 242 3 view .LVU145
243:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** assert_param(IS_MDMA_BLOCK_ADDR_OFFSET(hmdma->Init.DestBlockAddressOffset));
409 .loc 1 243 3 view .LVU146
244:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
410 .loc 1 244 3 view .LVU147
248:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
411 .loc 1 248 3 view .LVU148
248:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
412 .loc 1 248 3 view .LVU149
413 000c 0023 movs r3, #0
414 000e 84F83C30 strb r3, [r4, #60]
248:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
415 .loc 1 248 3 view .LVU150
251:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
416 .loc 1 251 3 view .LVU151
251:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
417 .loc 1 251 16 is_stmt 0 view .LVU152
418 0012 0223 movs r3, #2
419 0014 84F83D30 strb r3, [r4, #61]
254:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
420 .loc 1 254 3 is_stmt 1 view .LVU153
421 0018 2268 ldr r2, [r4]
422 001a D368 ldr r3, [r2, #12]
423 001c 23F00103 bic r3, r3, #1
424 0020 D360 str r3, [r2, #12]
257:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
425 .loc 1 257 3 view .LVU154
426 .LVL21:
427 .L22:
257:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
428 .loc 1 257 8 view .LVU155
257:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
429 .loc 1 257 15 is_stmt 0 view .LVU156
430 0022 2368 ldr r3, [r4]
257:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
431 .loc 1 257 25 view .LVU157
432 0024 DB68 ldr r3, [r3, #12]
257:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
433 .loc 1 257 8 view .LVU158
434 0026 13F0010F tst r3, #1
435 002a 0BD0 beq .L26
260:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
436 .loc 1 260 5 is_stmt 1 view .LVU159
260:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
437 .loc 1 260 9 is_stmt 0 view .LVU160
438 002c FFF7FEFF bl HAL_GetTick
ARM GAS /tmp/ccBjdYa2.s page 43
439 .LVL22:
260:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
440 .loc 1 260 23 view .LVU161
441 0030 431B subs r3, r0, r5
260:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
442 .loc 1 260 7 view .LVU162
443 0032 052B cmp r3, #5
444 0034 F5D9 bls .L22
263:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
445 .loc 1 263 7 is_stmt 1 view .LVU163
263:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
446 .loc 1 263 24 is_stmt 0 view .LVU164
447 0036 4023 movs r3, #64
448 0038 A366 str r3, [r4, #104]
266:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
449 .loc 1 266 7 is_stmt 1 view .LVU165
266:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
450 .loc 1 266 20 is_stmt 0 view .LVU166
451 003a 0323 movs r3, #3
452 003c 84F83D30 strb r3, [r4, #61]
268:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
453 .loc 1 268 7 is_stmt 1 view .LVU167
268:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
454 .loc 1 268 14 is_stmt 0 view .LVU168
455 0040 0120 movs r0, #1
456 0042 0AE0 b .L21
457 .L26:
273:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
458 .loc 1 273 3 is_stmt 1 view .LVU169
459 0044 2046 mov r0, r4
460 0046 FFF7FEFF bl MDMA_Init
461 .LVL23:
276:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->LastLinkedListNodeAddress = 0;
462 .loc 1 276 3 view .LVU170
276:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->LastLinkedListNodeAddress = 0;
463 .loc 1 276 38 is_stmt 0 view .LVU171
464 004a 0020 movs r0, #0
465 004c E065 str r0, [r4, #92]
277:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->LinkedListNodeCounter = 0;
466 .loc 1 277 3 is_stmt 1 view .LVU172
277:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->LinkedListNodeCounter = 0;
467 .loc 1 277 38 is_stmt 0 view .LVU173
468 004e 2066 str r0, [r4, #96]
278:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
469 .loc 1 278 3 is_stmt 1 view .LVU174
278:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
470 .loc 1 278 33 is_stmt 0 view .LVU175
471 0050 6066 str r0, [r4, #100]
281:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
472 .loc 1 281 3 is_stmt 1 view .LVU176
281:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
473 .loc 1 281 20 is_stmt 0 view .LVU177
474 0052 A066 str r0, [r4, #104]
284:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
475 .loc 1 284 3 is_stmt 1 view .LVU178
284:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
476 .loc 1 284 16 is_stmt 0 view .LVU179
ARM GAS /tmp/ccBjdYa2.s page 44
477 0054 0123 movs r3, #1
478 0056 84F83D30 strb r3, [r4, #61]
286:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
479 .loc 1 286 3 is_stmt 1 view .LVU180
480 .LVL24:
481 .L21:
287:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
482 .loc 1 287 1 is_stmt 0 view .LVU181
483 005a 38BD pop {r3, r4, r5, pc}
484 .LVL25:
485 .L24:
226:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
486 .loc 1 226 12 view .LVU182
487 005c 0120 movs r0, #1
488 .LVL26:
226:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
489 .loc 1 226 12 view .LVU183
490 005e FCE7 b .L21
491 .cfi_endproc
492 .LFE141:
494 .section .text.HAL_MDMA_DeInit,"ax",%progbits
495 .align 1
496 .global HAL_MDMA_DeInit
497 .syntax unified
498 .thumb
499 .thumb_func
500 .fpu fpv5-d16
502 HAL_MDMA_DeInit:
503 .LVL27:
504 .LFB142:
296:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
505 .loc 1 296 1 is_stmt 1 view -0
506 .cfi_startproc
507 @ args = 0, pretend = 0, frame = 0
508 @ frame_needed = 0, uses_anonymous_args = 0
509 @ link register save eliminated.
299:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
510 .loc 1 299 3 view .LVU185
299:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
511 .loc 1 299 5 is_stmt 0 view .LVU186
512 0000 0346 mov r3, r0
513 0002 0028 cmp r0, #0
514 0004 25D0 beq .L29
305:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
515 .loc 1 305 3 is_stmt 1 view .LVU187
516 0006 0168 ldr r1, [r0]
517 0008 CA68 ldr r2, [r1, #12]
518 000a 22F00102 bic r2, r2, #1
519 000e CA60 str r2, [r1, #12]
308:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->Instance->CTCR = 0;
520 .loc 1 308 3 view .LVU188
308:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->Instance->CTCR = 0;
521 .loc 1 308 8 is_stmt 0 view .LVU189
522 0010 0268 ldr r2, [r0]
308:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->Instance->CTCR = 0;
523 .loc 1 308 25 view .LVU190
524 0012 0020 movs r0, #0
ARM GAS /tmp/ccBjdYa2.s page 45
525 .LVL28:
308:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->Instance->CTCR = 0;
526 .loc 1 308 25 view .LVU191
527 0014 D060 str r0, [r2, #12]
309:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->Instance->CBNDTR = 0;
528 .loc 1 309 3 is_stmt 1 view .LVU192
309:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->Instance->CBNDTR = 0;
529 .loc 1 309 8 is_stmt 0 view .LVU193
530 0016 1A68 ldr r2, [r3]
309:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->Instance->CBNDTR = 0;
531 .loc 1 309 25 view .LVU194
532 0018 1061 str r0, [r2, #16]
310:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->Instance->CSAR = 0;
533 .loc 1 310 3 is_stmt 1 view .LVU195
310:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->Instance->CSAR = 0;
534 .loc 1 310 8 is_stmt 0 view .LVU196
535 001a 1A68 ldr r2, [r3]
310:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->Instance->CSAR = 0;
536 .loc 1 310 27 view .LVU197
537 001c 5061 str r0, [r2, #20]
311:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->Instance->CDAR = 0;
538 .loc 1 311 3 is_stmt 1 view .LVU198
311:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->Instance->CDAR = 0;
539 .loc 1 311 8 is_stmt 0 view .LVU199
540 001e 1A68 ldr r2, [r3]
311:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->Instance->CDAR = 0;
541 .loc 1 311 25 view .LVU200
542 0020 9061 str r0, [r2, #24]
312:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->Instance->CBRUR = 0;
543 .loc 1 312 3 is_stmt 1 view .LVU201
312:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->Instance->CBRUR = 0;
544 .loc 1 312 8 is_stmt 0 view .LVU202
545 0022 1A68 ldr r2, [r3]
312:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->Instance->CBRUR = 0;
546 .loc 1 312 25 view .LVU203
547 0024 D061 str r0, [r2, #28]
313:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->Instance->CLAR = 0;
548 .loc 1 313 3 is_stmt 1 view .LVU204
313:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->Instance->CLAR = 0;
549 .loc 1 313 8 is_stmt 0 view .LVU205
550 0026 1A68 ldr r2, [r3]
313:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->Instance->CLAR = 0;
551 .loc 1 313 26 view .LVU206
552 0028 1062 str r0, [r2, #32]
314:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->Instance->CTBR = 0;
553 .loc 1 314 3 is_stmt 1 view .LVU207
314:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->Instance->CTBR = 0;
554 .loc 1 314 8 is_stmt 0 view .LVU208
555 002a 1A68 ldr r2, [r3]
314:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->Instance->CTBR = 0;
556 .loc 1 314 25 view .LVU209
557 002c 5062 str r0, [r2, #36]
315:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->Instance->CMAR = 0;
558 .loc 1 315 3 is_stmt 1 view .LVU210
315:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->Instance->CMAR = 0;
559 .loc 1 315 8 is_stmt 0 view .LVU211
560 002e 1A68 ldr r2, [r3]
ARM GAS /tmp/ccBjdYa2.s page 46
315:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->Instance->CMAR = 0;
561 .loc 1 315 25 view .LVU212
562 0030 9062 str r0, [r2, #40]
316:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->Instance->CMDR = 0;
563 .loc 1 316 3 is_stmt 1 view .LVU213
316:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->Instance->CMDR = 0;
564 .loc 1 316 8 is_stmt 0 view .LVU214
565 0032 1A68 ldr r2, [r3]
316:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->Instance->CMDR = 0;
566 .loc 1 316 25 view .LVU215
567 0034 1063 str r0, [r2, #48]
317:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
568 .loc 1 317 3 is_stmt 1 view .LVU216
317:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
569 .loc 1 317 8 is_stmt 0 view .LVU217
570 0036 1A68 ldr r2, [r3]
317:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
571 .loc 1 317 25 view .LVU218
572 0038 5063 str r0, [r2, #52]
320:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
573 .loc 1 320 3 is_stmt 1 view .LVU219
574 003a 1A68 ldr r2, [r3]
575 003c 1F21 movs r1, #31
576 003e 5160 str r1, [r2, #4]
323:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->LastLinkedListNodeAddress = 0;
577 .loc 1 323 3 view .LVU220
323:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->LastLinkedListNodeAddress = 0;
578 .loc 1 323 38 is_stmt 0 view .LVU221
579 0040 D865 str r0, [r3, #92]
324:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->LinkedListNodeCounter = 0;
580 .loc 1 324 3 is_stmt 1 view .LVU222
324:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->LinkedListNodeCounter = 0;
581 .loc 1 324 38 is_stmt 0 view .LVU223
582 0042 1866 str r0, [r3, #96]
325:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
583 .loc 1 325 3 is_stmt 1 view .LVU224
325:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
584 .loc 1 325 33 is_stmt 0 view .LVU225
585 0044 5866 str r0, [r3, #100]
328:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
586 .loc 1 328 3 is_stmt 1 view .LVU226
328:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
587 .loc 1 328 20 is_stmt 0 view .LVU227
588 0046 9866 str r0, [r3, #104]
331:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
589 .loc 1 331 3 is_stmt 1 view .LVU228
331:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
590 .loc 1 331 16 is_stmt 0 view .LVU229
591 0048 83F83D00 strb r0, [r3, #61]
334:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
592 .loc 1 334 3 is_stmt 1 view .LVU230
334:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
593 .loc 1 334 3 view .LVU231
594 004c 83F83C00 strb r0, [r3, #60]
334:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
595 .loc 1 334 3 view .LVU232
336:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
ARM GAS /tmp/ccBjdYa2.s page 47
596 .loc 1 336 3 view .LVU233
336:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
597 .loc 1 336 10 is_stmt 0 view .LVU234
598 0050 7047 bx lr
599 .LVL29:
600 .L29:
301:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
601 .loc 1 301 12 view .LVU235
602 0052 0120 movs r0, #1
603 .LVL30:
337:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
604 .loc 1 337 1 view .LVU236
605 0054 7047 bx lr
606 .cfi_endproc
607 .LFE142:
609 .section .text.HAL_MDMA_ConfigPostRequestMask,"ax",%progbits
610 .align 1
611 .global HAL_MDMA_ConfigPostRequestMask
612 .syntax unified
613 .thumb
614 .thumb_func
615 .fpu fpv5-d16
617 HAL_MDMA_ConfigPostRequestMask:
618 .LVL31:
619 .LFB143:
349:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** HAL_StatusTypeDef status = HAL_OK;
620 .loc 1 349 1 is_stmt 1 view -0
621 .cfi_startproc
622 @ args = 0, pretend = 0, frame = 0
623 @ frame_needed = 0, uses_anonymous_args = 0
624 @ link register save eliminated.
350:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
625 .loc 1 350 3 view .LVU238
353:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
626 .loc 1 353 3 view .LVU239
353:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
627 .loc 1 353 5 is_stmt 0 view .LVU240
628 0000 68B3 cbz r0, .L34
629 0002 0346 mov r3, r0
359:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
630 .loc 1 359 3 is_stmt 1 view .LVU241
359:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
631 .loc 1 359 3 view .LVU242
632 0004 90F83C00 ldrb r0, [r0, #60] @ zero_extendqisi2
633 .LVL32:
359:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
634 .loc 1 359 3 is_stmt 0 view .LVU243
635 0008 0128 cmp r0, #1
636 000a 2AD0 beq .L35
359:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
637 .loc 1 359 3 is_stmt 1 discriminator 2 view .LVU244
638 000c 0120 movs r0, #1
639 000e 83F83C00 strb r0, [r3, #60]
359:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
640 .loc 1 359 3 discriminator 2 view .LVU245
361:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
641 .loc 1 361 3 discriminator 2 view .LVU246
ARM GAS /tmp/ccBjdYa2.s page 48
361:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
642 .loc 1 361 35 is_stmt 0 discriminator 2 view .LVU247
643 0012 93F83D00 ldrb r0, [r3, #61] @ zero_extendqisi2
644 0016 C0B2 uxtb r0, r0
361:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
645 .loc 1 361 5 discriminator 2 view .LVU248
646 0018 0128 cmp r0, #1
647 001a 04D0 beq .L42
394:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
648 .loc 1 394 12 view .LVU249
649 001c 0120 movs r0, #1
650 .LVL33:
397:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
651 .loc 1 397 3 is_stmt 1 view .LVU250
397:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
652 .loc 1 397 3 view .LVU251
653 001e 0022 movs r2, #0
654 .LVL34:
397:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
655 .loc 1 397 3 is_stmt 0 view .LVU252
656 0020 83F83C20 strb r2, [r3, #60]
397:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
657 .loc 1 397 3 is_stmt 1 view .LVU253
399:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
658 .loc 1 399 3 view .LVU254
400:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
659 .loc 1 400 1 is_stmt 0 view .LVU255
660 0024 7047 bx lr
661 .LVL35:
662 .L42:
349:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** HAL_StatusTypeDef status = HAL_OK;
663 .loc 1 349 1 view .LVU256
664 0026 30B4 push {r4, r5}
665 .LCFI4:
666 .cfi_def_cfa_offset 8
667 .cfi_offset 4, -8
668 .cfi_offset 5, -4
364:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
669 .loc 1 364 5 is_stmt 1 view .LVU257
364:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
670 .loc 1 364 14 is_stmt 0 view .LVU258
671 0028 1C68 ldr r4, [r3]
364:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
672 .loc 1 364 24 view .LVU259
673 002a 2569 ldr r5, [r4, #16]
364:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
674 .loc 1 364 7 view .LVU260
675 002c 15F0804F tst r5, #1073741824
676 0030 09D1 bne .L32
367:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->Instance->CMDR = MaskData;
677 .loc 1 367 7 is_stmt 1 view .LVU261
367:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->Instance->CMDR = MaskData;
678 .loc 1 367 29 is_stmt 0 view .LVU262
679 0032 2163 str r1, [r4, #48]
368:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
680 .loc 1 368 7 is_stmt 1 view .LVU263
368:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
ARM GAS /tmp/ccBjdYa2.s page 49
681 .loc 1 368 12 is_stmt 0 view .LVU264
682 0034 1868 ldr r0, [r3]
368:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
683 .loc 1 368 29 view .LVU265
684 0036 4263 str r2, [r0, #52]
376:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
685 .loc 1 376 7 is_stmt 1 view .LVU266
376:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
686 .loc 1 376 9 is_stmt 0 view .LVU267
687 0038 51B9 cbnz r1, .L33
378:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
688 .loc 1 378 9 is_stmt 1 view .LVU268
378:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
689 .loc 1 378 14 is_stmt 0 view .LVU269
690 003a 1968 ldr r1, [r3]
691 .LVL36:
378:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
692 .loc 1 378 31 view .LVU270
693 003c 0A69 ldr r2, [r1, #16]
694 .LVL37:
378:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
695 .loc 1 378 31 view .LVU271
696 003e 22F00042 bic r2, r2, #-2147483648
697 0042 0A61 str r2, [r1, #16]
698 .LVL38:
350:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
699 .loc 1 350 22 view .LVU272
700 0044 0020 movs r0, #0
701 .L32:
702 .LVL39:
397:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
703 .loc 1 397 3 is_stmt 1 view .LVU273
397:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
704 .loc 1 397 3 view .LVU274
705 0046 0022 movs r2, #0
706 0048 83F83C20 strb r2, [r3, #60]
397:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
707 .loc 1 397 3 view .LVU275
399:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
708 .loc 1 399 3 view .LVU276
400:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
709 .loc 1 400 1 is_stmt 0 view .LVU277
710 004c 30BC pop {r4, r5}
711 .LCFI5:
712 .cfi_remember_state
713 .cfi_restore 5
714 .cfi_restore 4
715 .cfi_def_cfa_offset 0
716 004e 7047 bx lr
717 .LVL40:
718 .L33:
719 .LCFI6:
720 .cfi_restore_state
382:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
721 .loc 1 382 9 is_stmt 1 view .LVU278
382:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
722 .loc 1 382 14 is_stmt 0 view .LVU279
ARM GAS /tmp/ccBjdYa2.s page 50
723 0050 1968 ldr r1, [r3]
724 .LVL41:
382:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
725 .loc 1 382 31 view .LVU280
726 0052 0A69 ldr r2, [r1, #16]
727 .LVL42:
382:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
728 .loc 1 382 31 view .LVU281
729 0054 42F00042 orr r2, r2, #-2147483648
730 0058 0A61 str r2, [r1, #16]
731 .LVL43:
350:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
732 .loc 1 350 22 view .LVU282
733 005a 0020 movs r0, #0
734 005c F3E7 b .L32
735 .LVL44:
736 .L34:
737 .LCFI7:
738 .cfi_def_cfa_offset 0
739 .cfi_restore 4
740 .cfi_restore 5
355:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
741 .loc 1 355 12 view .LVU283
742 005e 0120 movs r0, #1
743 .LVL45:
355:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
744 .loc 1 355 12 view .LVU284
745 0060 7047 bx lr
746 .LVL46:
747 .L35:
359:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
748 .loc 1 359 3 view .LVU285
749 0062 0220 movs r0, #2
750 0064 7047 bx lr
751 .cfi_endproc
752 .LFE143:
754 .section .text.HAL_MDMA_RegisterCallback,"ax",%progbits
755 .align 1
756 .global HAL_MDMA_RegisterCallback
757 .syntax unified
758 .thumb
759 .thumb_func
760 .fpu fpv5-d16
762 HAL_MDMA_RegisterCallback:
763 .LVL47:
764 .LFB144:
411:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** HAL_StatusTypeDef status = HAL_OK;
765 .loc 1 411 1 is_stmt 1 view -0
766 .cfi_startproc
767 @ args = 0, pretend = 0, frame = 0
768 @ frame_needed = 0, uses_anonymous_args = 0
769 @ link register save eliminated.
412:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
770 .loc 1 412 3 view .LVU287
415:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
771 .loc 1 415 3 view .LVU288
415:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
ARM GAS /tmp/ccBjdYa2.s page 51
772 .loc 1 415 5 is_stmt 0 view .LVU289
773 0000 0346 mov r3, r0
774 0002 58B3 cbz r0, .L53
421:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
775 .loc 1 421 3 is_stmt 1 view .LVU290
421:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
776 .loc 1 421 3 view .LVU291
777 0004 90F83C00 ldrb r0, [r0, #60] @ zero_extendqisi2
778 .LVL48:
421:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
779 .loc 1 421 3 is_stmt 0 view .LVU292
780 0008 0128 cmp r0, #1
781 000a 29D0 beq .L54
421:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
782 .loc 1 421 3 is_stmt 1 discriminator 2 view .LVU293
783 000c 0120 movs r0, #1
784 000e 83F83C00 strb r0, [r3, #60]
421:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
785 .loc 1 421 3 discriminator 2 view .LVU294
423:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
786 .loc 1 423 3 discriminator 2 view .LVU295
423:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
787 .loc 1 423 35 is_stmt 0 discriminator 2 view .LVU296
788 0012 93F83D00 ldrb r0, [r3, #61] @ zero_extendqisi2
789 0016 C0B2 uxtb r0, r0
423:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
790 .loc 1 423 5 discriminator 2 view .LVU297
791 0018 0128 cmp r0, #1
792 001a 04D0 beq .L57
458:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
793 .loc 1 458 12 view .LVU298
794 001c 0120 movs r0, #1
795 .L45:
796 .LVL49:
462:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
797 .loc 1 462 3 is_stmt 1 view .LVU299
462:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
798 .loc 1 462 3 view .LVU300
799 001e 0022 movs r2, #0
800 .LVL50:
462:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
801 .loc 1 462 3 is_stmt 0 view .LVU301
802 0020 83F83C20 strb r2, [r3, #60]
462:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
803 .loc 1 462 3 is_stmt 1 view .LVU302
464:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
804 .loc 1 464 3 view .LVU303
464:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
805 .loc 1 464 10 is_stmt 0 view .LVU304
806 0024 7047 bx lr
807 .LVL51:
808 .L57:
425:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
809 .loc 1 425 5 is_stmt 1 view .LVU305
810 0026 0529 cmp r1, #5
811 0028 16D8 bhi .L56
812 002a DFE801F0 tbb [pc, r1]
ARM GAS /tmp/ccBjdYa2.s page 52
813 .L47:
814 002e 03 .byte (.L52-.L47)/2
815 002f 06 .byte (.L51-.L47)/2
816 0030 09 .byte (.L50-.L47)/2
817 0031 0C .byte (.L49-.L47)/2
818 0032 0F .byte (.L48-.L47)/2
819 0033 12 .byte (.L46-.L47)/2
820 .p2align 1
821 .L52:
428:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** break;
822 .loc 1 428 7 view .LVU306
428:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** break;
823 .loc 1 428 31 is_stmt 0 view .LVU307
824 0034 5A64 str r2, [r3, #68]
429:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
825 .loc 1 429 7 is_stmt 1 view .LVU308
412:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
826 .loc 1 412 21 is_stmt 0 view .LVU309
827 0036 0846 mov r0, r1
429:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
828 .loc 1 429 7 view .LVU310
829 0038 F1E7 b .L45
830 .L51:
432:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** break;
831 .loc 1 432 7 is_stmt 1 view .LVU311
432:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** break;
832 .loc 1 432 37 is_stmt 0 view .LVU312
833 003a 9A64 str r2, [r3, #72]
433:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
834 .loc 1 433 7 is_stmt 1 view .LVU313
412:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
835 .loc 1 412 21 is_stmt 0 view .LVU314
836 003c 0020 movs r0, #0
433:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
837 .loc 1 433 7 view .LVU315
838 003e EEE7 b .L45
839 .L50:
436:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** break;
840 .loc 1 436 7 is_stmt 1 view .LVU316
436:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** break;
841 .loc 1 436 36 is_stmt 0 view .LVU317
842 0040 DA64 str r2, [r3, #76]
437:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
843 .loc 1 437 7 is_stmt 1 view .LVU318
412:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
844 .loc 1 412 21 is_stmt 0 view .LVU319
845 0042 0020 movs r0, #0
437:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
846 .loc 1 437 7 view .LVU320
847 0044 EBE7 b .L45
848 .L49:
440:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** break;
849 .loc 1 440 7 is_stmt 1 view .LVU321
440:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** break;
850 .loc 1 440 42 is_stmt 0 view .LVU322
851 0046 1A65 str r2, [r3, #80]
441:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
ARM GAS /tmp/ccBjdYa2.s page 53
852 .loc 1 441 7 is_stmt 1 view .LVU323
412:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
853 .loc 1 412 21 is_stmt 0 view .LVU324
854 0048 0020 movs r0, #0
441:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
855 .loc 1 441 7 view .LVU325
856 004a E8E7 b .L45
857 .L48:
444:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** break;
858 .loc 1 444 7 is_stmt 1 view .LVU326
444:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** break;
859 .loc 1 444 32 is_stmt 0 view .LVU327
860 004c 5A65 str r2, [r3, #84]
445:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
861 .loc 1 445 7 is_stmt 1 view .LVU328
412:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
862 .loc 1 412 21 is_stmt 0 view .LVU329
863 004e 0020 movs r0, #0
445:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
864 .loc 1 445 7 view .LVU330
865 0050 E5E7 b .L45
866 .L46:
448:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** break;
867 .loc 1 448 7 is_stmt 1 view .LVU331
448:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** break;
868 .loc 1 448 32 is_stmt 0 view .LVU332
869 0052 9A65 str r2, [r3, #88]
449:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
870 .loc 1 449 7 is_stmt 1 view .LVU333
412:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
871 .loc 1 412 21 is_stmt 0 view .LVU334
872 0054 0020 movs r0, #0
449:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
873 .loc 1 449 7 view .LVU335
874 0056 E2E7 b .L45
875 .L56:
423:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
876 .loc 1 423 5 view .LVU336
877 0058 0020 movs r0, #0
878 005a E0E7 b .L45
879 .LVL52:
880 .L53:
417:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
881 .loc 1 417 12 view .LVU337
882 005c 0120 movs r0, #1
883 .LVL53:
417:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
884 .loc 1 417 12 view .LVU338
885 005e 7047 bx lr
886 .L54:
421:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
887 .loc 1 421 3 view .LVU339
888 0060 0220 movs r0, #2
465:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
889 .loc 1 465 1 view .LVU340
890 0062 7047 bx lr
891 .cfi_endproc
ARM GAS /tmp/ccBjdYa2.s page 54
892 .LFE144:
894 .section .text.HAL_MDMA_UnRegisterCallback,"ax",%progbits
895 .align 1
896 .global HAL_MDMA_UnRegisterCallback
897 .syntax unified
898 .thumb
899 .thumb_func
900 .fpu fpv5-d16
902 HAL_MDMA_UnRegisterCallback:
903 .LVL54:
904 .LFB145:
476:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** HAL_StatusTypeDef status = HAL_OK;
905 .loc 1 476 1 is_stmt 1 view -0
906 .cfi_startproc
907 @ args = 0, pretend = 0, frame = 0
908 @ frame_needed = 0, uses_anonymous_args = 0
909 @ link register save eliminated.
477:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
910 .loc 1 477 3 view .LVU342
480:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
911 .loc 1 480 3 view .LVU343
480:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
912 .loc 1 480 5 is_stmt 0 view .LVU344
913 0000 0346 mov r3, r0
914 0002 0028 cmp r0, #0
915 0004 33D0 beq .L69
486:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
916 .loc 1 486 3 is_stmt 1 view .LVU345
486:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
917 .loc 1 486 3 view .LVU346
918 0006 90F83C20 ldrb r2, [r0, #60] @ zero_extendqisi2
919 000a 012A cmp r2, #1
920 000c 31D0 beq .L70
486:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
921 .loc 1 486 3 discriminator 2 view .LVU347
922 000e 0122 movs r2, #1
923 0010 80F83C20 strb r2, [r0, #60]
486:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
924 .loc 1 486 3 discriminator 2 view .LVU348
488:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
925 .loc 1 488 3 discriminator 2 view .LVU349
488:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
926 .loc 1 488 35 is_stmt 0 discriminator 2 view .LVU350
927 0014 90F83D00 ldrb r0, [r0, #61] @ zero_extendqisi2
928 .LVL55:
488:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
929 .loc 1 488 35 discriminator 2 view .LVU351
930 0018 C0B2 uxtb r0, r0
488:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
931 .loc 1 488 5 discriminator 2 view .LVU352
932 001a 9042 cmp r0, r2
933 001c 04D0 beq .L72
532:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
934 .loc 1 532 12 view .LVU353
935 001e 0120 movs r0, #1
936 .L60:
937 .LVL56:
ARM GAS /tmp/ccBjdYa2.s page 55
536:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
938 .loc 1 536 3 is_stmt 1 view .LVU354
536:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
939 .loc 1 536 3 view .LVU355
940 0020 0022 movs r2, #0
941 0022 83F83C20 strb r2, [r3, #60]
536:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
942 .loc 1 536 3 view .LVU356
538:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
943 .loc 1 538 3 view .LVU357
538:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
944 .loc 1 538 10 is_stmt 0 view .LVU358
945 0026 7047 bx lr
946 .LVL57:
947 .L72:
490:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
948 .loc 1 490 5 is_stmt 1 view .LVU359
949 0028 0629 cmp r1, #6
950 002a F9D8 bhi .L60
951 002c DFE801F0 tbb [pc, r1]
952 .L62:
953 0030 04 .byte (.L68-.L62)/2
954 0031 08 .byte (.L67-.L62)/2
955 0032 0B .byte (.L66-.L62)/2
956 0033 0E .byte (.L65-.L62)/2
957 0034 11 .byte (.L64-.L62)/2
958 0035 14 .byte (.L63-.L62)/2
959 0036 17 .byte (.L61-.L62)/2
960 0037 00 .p2align 1
961 .L68:
493:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** break;
962 .loc 1 493 7 view .LVU360
493:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** break;
963 .loc 1 493 31 is_stmt 0 view .LVU361
964 0038 0022 movs r2, #0
965 003a 5A64 str r2, [r3, #68]
494:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
966 .loc 1 494 7 is_stmt 1 view .LVU362
477:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
967 .loc 1 477 21 is_stmt 0 view .LVU363
968 003c 0846 mov r0, r1
494:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
969 .loc 1 494 7 view .LVU364
970 003e EFE7 b .L60
971 .L67:
497:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** break;
972 .loc 1 497 7 is_stmt 1 view .LVU365
497:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** break;
973 .loc 1 497 37 is_stmt 0 view .LVU366
974 0040 0020 movs r0, #0
975 0042 9864 str r0, [r3, #72]
498:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
976 .loc 1 498 7 is_stmt 1 view .LVU367
977 0044 ECE7 b .L60
978 .L66:
501:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** break;
979 .loc 1 501 7 view .LVU368
ARM GAS /tmp/ccBjdYa2.s page 56
501:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** break;
980 .loc 1 501 36 is_stmt 0 view .LVU369
981 0046 0020 movs r0, #0
982 0048 D864 str r0, [r3, #76]
502:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
983 .loc 1 502 7 is_stmt 1 view .LVU370
984 004a E9E7 b .L60
985 .L65:
505:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** break;
986 .loc 1 505 7 view .LVU371
505:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** break;
987 .loc 1 505 42 is_stmt 0 view .LVU372
988 004c 0020 movs r0, #0
989 004e 1865 str r0, [r3, #80]
506:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
990 .loc 1 506 7 is_stmt 1 view .LVU373
991 0050 E6E7 b .L60
992 .L64:
509:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** break;
993 .loc 1 509 7 view .LVU374
509:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** break;
994 .loc 1 509 32 is_stmt 0 view .LVU375
995 0052 0020 movs r0, #0
996 0054 5865 str r0, [r3, #84]
510:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
997 .loc 1 510 7 is_stmt 1 view .LVU376
998 0056 E3E7 b .L60
999 .L63:
513:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** break;
1000 .loc 1 513 7 view .LVU377
513:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** break;
1001 .loc 1 513 32 is_stmt 0 view .LVU378
1002 0058 0020 movs r0, #0
1003 005a 9865 str r0, [r3, #88]
514:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1004 .loc 1 514 7 is_stmt 1 view .LVU379
1005 005c E0E7 b .L60
1006 .L61:
517:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->XferBufferCpltCallback = NULL;
1007 .loc 1 517 7 view .LVU380
517:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->XferBufferCpltCallback = NULL;
1008 .loc 1 517 31 is_stmt 0 view .LVU381
1009 005e 0020 movs r0, #0
1010 0060 5864 str r0, [r3, #68]
518:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->XferBlockCpltCallback = NULL;
1011 .loc 1 518 7 is_stmt 1 view .LVU382
518:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->XferBlockCpltCallback = NULL;
1012 .loc 1 518 37 is_stmt 0 view .LVU383
1013 0062 9864 str r0, [r3, #72]
519:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->XferRepeatBlockCpltCallback = NULL;
1014 .loc 1 519 7 is_stmt 1 view .LVU384
519:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->XferRepeatBlockCpltCallback = NULL;
1015 .loc 1 519 36 is_stmt 0 view .LVU385
1016 0064 D864 str r0, [r3, #76]
520:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->XferErrorCallback = NULL;
1017 .loc 1 520 7 is_stmt 1 view .LVU386
520:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->XferErrorCallback = NULL;
ARM GAS /tmp/ccBjdYa2.s page 57
1018 .loc 1 520 42 is_stmt 0 view .LVU387
1019 0066 1865 str r0, [r3, #80]
521:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->XferAbortCallback = NULL;
1020 .loc 1 521 7 is_stmt 1 view .LVU388
521:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->XferAbortCallback = NULL;
1021 .loc 1 521 32 is_stmt 0 view .LVU389
1022 0068 5865 str r0, [r3, #84]
522:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** break;
1023 .loc 1 522 7 is_stmt 1 view .LVU390
522:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** break;
1024 .loc 1 522 32 is_stmt 0 view .LVU391
1025 006a 9865 str r0, [r3, #88]
523:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1026 .loc 1 523 7 is_stmt 1 view .LVU392
1027 006c D8E7 b .L60
1028 .LVL58:
1029 .L69:
482:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1030 .loc 1 482 12 is_stmt 0 view .LVU393
1031 006e 0120 movs r0, #1
1032 .LVL59:
482:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1033 .loc 1 482 12 view .LVU394
1034 0070 7047 bx lr
1035 .LVL60:
1036 .L70:
486:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1037 .loc 1 486 3 view .LVU395
1038 0072 0220 movs r0, #2
1039 .LVL61:
539:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1040 .loc 1 539 1 view .LVU396
1041 0074 7047 bx lr
1042 .cfi_endproc
1043 .LFE145:
1045 .section .text.HAL_MDMA_LinkedList_CreateNode,"ax",%progbits
1046 .align 1
1047 .global HAL_MDMA_LinkedList_CreateNode
1048 .syntax unified
1049 .thumb
1050 .thumb_func
1051 .fpu fpv5-d16
1053 HAL_MDMA_LinkedList_CreateNode:
1054 .LVL62:
1055 .LFB146:
570:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** uint32_t addressMask;
1056 .loc 1 570 1 is_stmt 1 view -0
1057 .cfi_startproc
1058 @ args = 0, pretend = 0, frame = 0
1059 @ frame_needed = 0, uses_anonymous_args = 0
1060 @ link register save eliminated.
571:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** uint32_t blockoffset;
1061 .loc 1 571 3 view .LVU398
572:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1062 .loc 1 572 3 view .LVU399
575:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1063 .loc 1 575 3 view .LVU400
ARM GAS /tmp/ccBjdYa2.s page 58
575:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1064 .loc 1 575 13 is_stmt 0 view .LVU401
1065 0000 0246 mov r2, r0
575:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1066 .loc 1 575 38 view .LVU402
1067 0002 0B46 mov r3, r1
575:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1068 .loc 1 575 5 view .LVU403
1069 0004 0029 cmp r1, #0
1070 0006 18BF it ne
1071 0008 0028 cmpne r0, #0
1072 000a 7CD0 beq .L84
581:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** assert_param(IS_MDMA_ENDIANNESS_MODE(pNodeConfig->Init.Endianness));
1073 .loc 1 581 3 is_stmt 1 view .LVU404
582:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** assert_param(IS_MDMA_REQUEST(pNodeConfig->Init.Request));
1074 .loc 1 582 3 view .LVU405
583:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** assert_param(IS_MDMA_SOURCE_INC(pNodeConfig->Init.SourceInc));
1075 .loc 1 583 3 view .LVU406
584:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** assert_param(IS_MDMA_DESTINATION_INC(pNodeConfig->Init.DestinationInc));
1076 .loc 1 584 3 view .LVU407
585:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** assert_param(IS_MDMA_SOURCE_DATASIZE(pNodeConfig->Init.SourceDataSize));
1077 .loc 1 585 3 view .LVU408
586:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** assert_param(IS_MDMA_DESTINATION_DATASIZE(pNodeConfig->Init.DestDataSize));
1078 .loc 1 586 3 view .LVU409
587:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** assert_param(IS_MDMA_DATA_ALIGNMENT(pNodeConfig->Init.DataAlignment));
1079 .loc 1 587 3 view .LVU410
588:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** assert_param(IS_MDMA_SOURCE_BURST(pNodeConfig->Init.SourceBurst));
1080 .loc 1 588 3 view .LVU411
589:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** assert_param(IS_MDMA_DESTINATION_BURST(pNodeConfig->Init.DestBurst));
1081 .loc 1 589 3 view .LVU412
590:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** assert_param(IS_MDMA_BUFFER_TRANSFER_LENGTH(pNodeConfig->Init.BufferTransferLength));
1082 .loc 1 590 3 view .LVU413
591:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** assert_param(IS_MDMA_TRANSFER_TRIGGER_MODE(pNodeConfig->Init.TransferTriggerMode));
1083 .loc 1 591 3 view .LVU414
592:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** assert_param(IS_MDMA_BLOCK_ADDR_OFFSET(pNodeConfig->Init.SourceBlockAddressOffset));
1084 .loc 1 592 3 view .LVU415
593:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** assert_param(IS_MDMA_BLOCK_ADDR_OFFSET(pNodeConfig->Init.DestBlockAddressOffset));
1085 .loc 1 593 3 view .LVU416
594:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1086 .loc 1 594 3 view .LVU417
596:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** assert_param(IS_MDMA_BLOCK_COUNT(pNodeConfig->BlockCount));
1087 .loc 1 596 3 view .LVU418
597:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1088 .loc 1 597 3 view .LVU419
601:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1089 .loc 1 601 3 view .LVU420
601:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1090 .loc 1 601 15 is_stmt 0 view .LVU421
1091 000c 0021 movs r1, #0
1092 .LVL63:
601:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1093 .loc 1 601 15 view .LVU422
1094 000e 4161 str r1, [r0, #20]
604:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** pNode->CMAR = 0;
1095 .loc 1 604 3 is_stmt 1 view .LVU423
604:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** pNode->CMAR = 0;
1096 .loc 1 604 17 is_stmt 0 view .LVU424
ARM GAS /tmp/ccBjdYa2.s page 59
1097 0010 8161 str r1, [r0, #24]
605:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** pNode->CMDR = 0;
1098 .loc 1 605 3 is_stmt 1 view .LVU425
605:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** pNode->CMDR = 0;
1099 .loc 1 605 17 is_stmt 0 view .LVU426
1100 0012 0162 str r1, [r0, #32]
606:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** pNode->Reserved = 0;
1101 .loc 1 606 3 is_stmt 1 view .LVU427
606:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** pNode->Reserved = 0;
1102 .loc 1 606 17 is_stmt 0 view .LVU428
1103 0014 4162 str r1, [r0, #36]
607:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1104 .loc 1 607 3 is_stmt 1 view .LVU429
607:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1105 .loc 1 607 19 is_stmt 0 view .LVU430
1106 0016 C161 str r1, [r0, #28]
610:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** pNodeConfig->Init.SourceDataSize | pNodeConfig->Init.DestDataSize | \
1107 .loc 1 610 3 is_stmt 1 view .LVU431
610:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** pNodeConfig->Init.SourceDataSize | pNodeConfig->Init.DestDataSize | \
1108 .loc 1 610 35 is_stmt 0 view .LVU432
1109 0018 1969 ldr r1, [r3, #16]
610:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** pNodeConfig->Init.SourceDataSize | pNodeConfig->Init.DestDataSize | \
1110 .loc 1 610 65 view .LVU433
1111 001a 5869 ldr r0, [r3, #20]
1112 .LVL64:
610:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** pNodeConfig->Init.SourceDataSize | pNodeConfig->Init.DestDataSize | \
1113 .loc 1 610 46 view .LVU434
1114 001c 0143 orrs r1, r1, r0
611:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** pNodeConfig->Init.DataAlignment| pNodeConfig->Init.SourceBurst | \
1115 .loc 1 611 22 view .LVU435
1116 001e 9869 ldr r0, [r3, #24]
610:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** pNodeConfig->Init.SourceDataSize | pNodeConfig->Init.DestDataSize | \
1117 .loc 1 610 81 view .LVU436
1118 0020 0143 orrs r1, r1, r0
611:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** pNodeConfig->Init.DataAlignment| pNodeConfig->Init.SourceBurst | \
1119 .loc 1 611 57 view .LVU437
1120 0022 D869 ldr r0, [r3, #28]
611:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** pNodeConfig->Init.DataAlignment| pNodeConfig->Init.SourceBurst | \
1121 .loc 1 611 38 view .LVU438
1122 0024 0143 orrs r1, r1, r0
612:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** pNodeConfig->Init.DestBurst | \
1123 .loc 1 612 24 view .LVU439
1124 0026 186A ldr r0, [r3, #32]
611:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** pNodeConfig->Init.DataAlignment| pNodeConfig->Init.SourceBurst | \
1125 .loc 1 611 81 view .LVU440
1126 0028 0143 orrs r1, r1, r0
612:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** pNodeConfig->Init.DestBurst | \
1127 .loc 1 612 57 view .LVU441
1128 002a 986A ldr r0, [r3, #40]
612:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** pNodeConfig->Init.DestBurst | \
1129 .loc 1 612 38 view .LVU442
1130 002c 0143 orrs r1, r1, r0
613:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** ((pNodeConfig->Init.BufferTransferLength - 1U) << MDMA_CTCR_TLEN_Pos) | \
1131 .loc 1 613 26 view .LVU443
1132 002e D86A ldr r0, [r3, #44]
612:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** pNodeConfig->Init.DestBurst | \
1133 .loc 1 612 81 view .LVU444
ARM GAS /tmp/ccBjdYa2.s page 60
1134 0030 0143 orrs r1, r1, r0
614:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** pNodeConfig->Init.TransferTriggerMode;
1135 .loc 1 614 30 view .LVU445
1136 0032 586A ldr r0, [r3, #36]
614:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** pNodeConfig->Init.TransferTriggerMode;
1137 .loc 1 614 52 view .LVU446
1138 0034 0138 subs r0, r0, #1
613:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** ((pNodeConfig->Init.BufferTransferLength - 1U) << MDMA_CTCR_TLEN_Pos) | \
1139 .loc 1 613 81 view .LVU447
1140 0036 41EA8041 orr r1, r1, r0, lsl #18
615:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1141 .loc 1 615 30 view .LVU448
1142 003a 5868 ldr r0, [r3, #4]
614:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** pNodeConfig->Init.TransferTriggerMode;
1143 .loc 1 614 81 view .LVU449
1144 003c 0143 orrs r1, r1, r0
610:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** pNodeConfig->Init.SourceDataSize | pNodeConfig->Init.DestDataSize | \
1145 .loc 1 610 15 view .LVU450
1146 003e 1160 str r1, [r2]
618:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1147 .loc 1 618 3 is_stmt 1 view .LVU451
618:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1148 .loc 1 618 23 is_stmt 0 view .LVU452
1149 0040 1968 ldr r1, [r3]
618:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1150 .loc 1 618 5 view .LVU453
1151 0042 B1F1804F cmp r1, #1073741824
1152 0046 45D0 beq .L86
1153 .L75:
629:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1154 .loc 1 629 3 is_stmt 1 view .LVU454
629:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1155 .loc 1 629 24 is_stmt 0 view .LVU455
1156 0048 1968 ldr r1, [r3]
629:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1157 .loc 1 629 5 view .LVU456
1158 004a B1F1804F cmp r1, #1073741824
1159 004e 01D0 beq .L76
629:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1160 .loc 1 629 68 discriminator 1 view .LVU457
1161 0050 996C ldr r1, [r3, #72]
629:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1162 .loc 1 629 53 discriminator 1 view .LVU458
1163 0052 19B1 cbz r1, .L77
1164 .L76:
631:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1165 .loc 1 631 5 is_stmt 1 view .LVU459
631:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1166 .loc 1 631 17 is_stmt 0 view .LVU460
1167 0054 1168 ldr r1, [r2]
1168 0056 41F00041 orr r1, r1, #-2147483648
1169 005a 1160 str r1, [r2]
1170 .L77:
635:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1171 .loc 1 635 3 is_stmt 1 view .LVU461
635:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1172 .loc 1 635 32 is_stmt 0 view .LVU462
ARM GAS /tmp/ccBjdYa2.s page 61
1173 005c 596C ldr r1, [r3, #68]
635:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1174 .loc 1 635 45 view .LVU463
1175 005e 0139 subs r1, r1, #1
635:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1176 .loc 1 635 75 view .LVU464
1177 0060 0905 lsls r1, r1, #20
635:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1178 .loc 1 635 17 view .LVU465
1179 0062 5160 str r1, [r2, #4]
638:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1180 .loc 1 638 3 is_stmt 1 view .LVU466
638:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1181 .loc 1 638 23 is_stmt 0 view .LVU467
1182 0064 196B ldr r1, [r3, #48]
638:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1183 .loc 1 638 5 view .LVU468
1184 0066 0029 cmp r1, #0
1185 0068 39DB blt .L87
648:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1186 .loc 1 648 5 is_stmt 1 view .LVU469
648:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1187 .loc 1 648 77 is_stmt 0 view .LVU470
1188 006a 89B2 uxth r1, r1
648:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1189 .loc 1 648 18 view .LVU471
1190 006c 1161 str r1, [r2, #16]
1191 .L79:
652:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1192 .loc 1 652 3 is_stmt 1 view .LVU472
652:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1193 .loc 1 652 23 is_stmt 0 view .LVU473
1194 006e 596B ldr r1, [r3, #52]
652:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1195 .loc 1 652 5 view .LVU474
1196 0070 0029 cmp r1, #0
1197 0072 3DDB blt .L88
662:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1198 .loc 1 662 5 is_stmt 1 view .LVU475
662:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1199 .loc 1 662 18 is_stmt 0 view .LVU476
1200 0074 1069 ldr r0, [r2, #16]
1201 0076 40EA0141 orr r1, r0, r1, lsl #16
1202 007a 1161 str r1, [r2, #16]
1203 .L81:
666:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1204 .loc 1 666 3 is_stmt 1 view .LVU477
666:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1205 .loc 1 666 17 is_stmt 0 view .LVU478
1206 007c 5168 ldr r1, [r2, #4]
666:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1207 .loc 1 666 32 view .LVU479
1208 007e 186C ldr r0, [r3, #64]
666:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1209 .loc 1 666 17 view .LVU480
1210 0080 0143 orrs r1, r1, r0
1211 0082 5160 str r1, [r2, #4]
ARM GAS /tmp/ccBjdYa2.s page 62
669:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1212 .loc 1 669 3 is_stmt 1 view .LVU481
669:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1213 .loc 1 669 28 is_stmt 0 view .LVU482
1214 0084 D96B ldr r1, [r3, #60]
669:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1215 .loc 1 669 15 view .LVU483
1216 0086 D160 str r1, [r2, #12]
672:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1217 .loc 1 672 3 is_stmt 1 view .LVU484
672:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1218 .loc 1 672 28 is_stmt 0 view .LVU485
1219 0088 996B ldr r1, [r3, #56]
672:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1220 .loc 1 672 15 view .LVU486
1221 008a 9160 str r1, [r2, #8]
675:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1222 .loc 1 675 3 is_stmt 1 view .LVU487
675:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1223 .loc 1 675 23 is_stmt 0 view .LVU488
1224 008c 1968 ldr r1, [r3]
675:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1225 .loc 1 675 5 view .LVU489
1226 008e B1F1804F cmp r1, #1073741824
1227 0092 05D0 beq .L82
678:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Set the HW request clear Mask and Data */
1228 .loc 1 678 5 is_stmt 1 view .LVU490
678:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Set the HW request clear Mask and Data */
1229 .loc 1 678 45 is_stmt 0 view .LVU491
1230 0094 C9B2 uxtb r1, r1
678:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Set the HW request clear Mask and Data */
1231 .loc 1 678 17 view .LVU492
1232 0096 9161 str r1, [r2, #24]
680:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** pNode->CMDR = pNodeConfig->PostRequestMaskData;
1233 .loc 1 680 5 is_stmt 1 view .LVU493
680:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** pNode->CMDR = pNodeConfig->PostRequestMaskData;
1234 .loc 1 680 30 is_stmt 0 view .LVU494
1235 0098 996C ldr r1, [r3, #72]
680:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** pNode->CMDR = pNodeConfig->PostRequestMaskData;
1236 .loc 1 680 17 view .LVU495
1237 009a 1162 str r1, [r2, #32]
681:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1238 .loc 1 681 5 is_stmt 1 view .LVU496
681:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1239 .loc 1 681 30 is_stmt 0 view .LVU497
1240 009c D96C ldr r1, [r3, #76]
681:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1241 .loc 1 681 17 view .LVU498
1242 009e 5162 str r1, [r2, #36]
1243 .L82:
684:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if((addressMask == 0x20000000U) || (addressMask == 0x00000000U))
1244 .loc 1 684 3 is_stmt 1 view .LVU499
684:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if((addressMask == 0x20000000U) || (addressMask == 0x00000000U))
1245 .loc 1 684 28 is_stmt 0 view .LVU500
1246 00a0 996B ldr r1, [r3, #56]
684:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if((addressMask == 0x20000000U) || (addressMask == 0x00000000U))
1247 .loc 1 684 15 view .LVU501
ARM GAS /tmp/ccBjdYa2.s page 63
1248 00a2 01F07F41 and r1, r1, #-16777216
1249 .LVL65:
685:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1250 .loc 1 685 3 is_stmt 1 view .LVU502
685:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1251 .loc 1 685 5 is_stmt 0 view .LVU503
1252 00a6 0029 cmp r1, #0
1253 00a8 18BF it ne
1254 00aa B1F1005F cmpne r1, #536870912
1255 00ae 03D1 bne .L83
688:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1256 .loc 1 688 5 is_stmt 1 view .LVU504
688:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1257 .loc 1 688 17 is_stmt 0 view .LVU505
1258 00b0 9169 ldr r1, [r2, #24]
1259 .LVL66:
688:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1260 .loc 1 688 17 view .LVU506
1261 00b2 41F48031 orr r1, r1, #65536
1262 00b6 9161 str r1, [r2, #24]
1263 .LVL67:
1264 .L83:
691:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if((addressMask == 0x20000000U) || (addressMask == 0x00000000U))
1265 .loc 1 691 3 is_stmt 1 view .LVU507
691:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if((addressMask == 0x20000000U) || (addressMask == 0x00000000U))
1266 .loc 1 691 28 is_stmt 0 view .LVU508
1267 00b8 DB6B ldr r3, [r3, #60]
1268 .LVL68:
691:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if((addressMask == 0x20000000U) || (addressMask == 0x00000000U))
1269 .loc 1 691 15 view .LVU509
1270 00ba 03F07F43 and r3, r3, #-16777216
1271 .LVL69:
692:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1272 .loc 1 692 3 is_stmt 1 view .LVU510
692:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1273 .loc 1 692 5 is_stmt 0 view .LVU511
1274 00be 002B cmp r3, #0
1275 00c0 18BF it ne
1276 00c2 B3F1005F cmpne r3, #536870912
1277 00c6 20D1 bne .L85
695:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1278 .loc 1 695 5 is_stmt 1 view .LVU512
695:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1279 .loc 1 695 17 is_stmt 0 view .LVU513
1280 00c8 9369 ldr r3, [r2, #24]
1281 .LVL70:
695:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1282 .loc 1 695 17 view .LVU514
1283 00ca 43F40033 orr r3, r3, #131072
1284 00ce 9361 str r3, [r2, #24]
1285 .LVL71:
698:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1286 .loc 1 698 10 view .LVU515
1287 00d0 0020 movs r0, #0
1288 00d2 7047 bx lr
1289 .LVL72:
1290 .L86:
ARM GAS /tmp/ccBjdYa2.s page 64
620:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1291 .loc 1 620 5 is_stmt 1 view .LVU516
620:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1292 .loc 1 620 17 is_stmt 0 view .LVU517
1293 00d4 1168 ldr r1, [r2]
1294 00d6 41F08041 orr r1, r1, #1073741824
1295 00da 1160 str r1, [r2]
1296 00dc B4E7 b .L75
1297 .L87:
640:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /*write new CBRUR Register value : source repeat block offset */
1298 .loc 1 640 5 is_stmt 1 view .LVU518
640:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /*write new CBRUR Register value : source repeat block offset */
1299 .loc 1 640 19 is_stmt 0 view .LVU519
1300 00de 5168 ldr r1, [r2, #4]
1301 00e0 41F48021 orr r1, r1, #262144
1302 00e4 5160 str r1, [r2, #4]
642:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** pNode->CBRUR = blockoffset & 0x0000FFFFU;
1303 .loc 1 642 5 is_stmt 1 view .LVU520
642:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** pNode->CBRUR = blockoffset & 0x0000FFFFU;
1304 .loc 1 642 49 is_stmt 0 view .LVU521
1305 00e6 196B ldr r1, [r3, #48]
642:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** pNode->CBRUR = blockoffset & 0x0000FFFFU;
1306 .loc 1 642 30 view .LVU522
1307 00e8 4942 rsbs r1, r1, #0
1308 .LVL73:
643:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1309 .loc 1 643 5 is_stmt 1 view .LVU523
643:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1310 .loc 1 643 32 is_stmt 0 view .LVU524
1311 00ea 89B2 uxth r1, r1
1312 .LVL74:
643:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1313 .loc 1 643 18 view .LVU525
1314 00ec 1161 str r1, [r2, #16]
1315 .LVL75:
643:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1316 .loc 1 643 18 view .LVU526
1317 00ee BEE7 b .L79
1318 .L88:
654:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /*write new CBRUR Register value : destination repeat block offset */
1319 .loc 1 654 5 is_stmt 1 view .LVU527
654:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /*write new CBRUR Register value : destination repeat block offset */
1320 .loc 1 654 19 is_stmt 0 view .LVU528
1321 00f0 5168 ldr r1, [r2, #4]
1322 00f2 41F40021 orr r1, r1, #524288
1323 00f6 5160 str r1, [r2, #4]
656:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** pNode->CBRUR |= ((blockoffset & 0x0000FFFFU) << MDMA_CBRUR_DUV_Pos);
1324 .loc 1 656 5 is_stmt 1 view .LVU529
656:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** pNode->CBRUR |= ((blockoffset & 0x0000FFFFU) << MDMA_CBRUR_DUV_Pos);
1325 .loc 1 656 49 is_stmt 0 view .LVU530
1326 00f8 596B ldr r1, [r3, #52]
656:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** pNode->CBRUR |= ((blockoffset & 0x0000FFFFU) << MDMA_CBRUR_DUV_Pos);
1327 .loc 1 656 30 view .LVU531
1328 00fa 4842 rsbs r0, r1, #0
1329 .LVL76:
657:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1330 .loc 1 657 5 is_stmt 1 view .LVU532
ARM GAS /tmp/ccBjdYa2.s page 65
657:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1331 .loc 1 657 18 is_stmt 0 view .LVU533
1332 00fc 1169 ldr r1, [r2, #16]
1333 00fe 41EA0041 orr r1, r1, r0, lsl #16
1334 0102 1161 str r1, [r2, #16]
1335 0104 BAE7 b .L81
1336 .LVL77:
1337 .L84:
577:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1338 .loc 1 577 12 view .LVU534
1339 0106 0120 movs r0, #1
1340 .LVL78:
577:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1341 .loc 1 577 12 view .LVU535
1342 0108 7047 bx lr
1343 .LVL79:
1344 .L85:
698:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1345 .loc 1 698 10 view .LVU536
1346 010a 0020 movs r0, #0
699:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1347 .loc 1 699 1 view .LVU537
1348 010c 7047 bx lr
1349 .cfi_endproc
1350 .LFE146:
1352 .section .text.HAL_MDMA_LinkedList_AddNode,"ax",%progbits
1353 .align 1
1354 .global HAL_MDMA_LinkedList_AddNode
1355 .syntax unified
1356 .thumb
1357 .thumb_func
1358 .fpu fpv5-d16
1360 HAL_MDMA_LinkedList_AddNode:
1361 .LVL80:
1362 .LFB147:
713:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** MDMA_LinkNodeTypeDef *pNode;
1363 .loc 1 713 1 is_stmt 1 view -0
1364 .cfi_startproc
1365 @ args = 0, pretend = 0, frame = 0
1366 @ frame_needed = 0, uses_anonymous_args = 0
1367 @ link register save eliminated.
714:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** uint32_t counter = 0, nodeInserted = 0;
1368 .loc 1 714 3 view .LVU539
715:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** HAL_StatusTypeDef hal_status = HAL_OK;
1369 .loc 1 715 3 view .LVU540
716:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1370 .loc 1 716 3 view .LVU541
719:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1371 .loc 1 719 3 view .LVU542
719:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1372 .loc 1 719 5 is_stmt 0 view .LVU543
1373 0000 0029 cmp r1, #0
1374 0002 18BF it ne
1375 0004 0028 cmpne r0, #0
1376 0006 6BD0 beq .L104
1377 0008 0346 mov r3, r0
1378 000a 8C46 mov ip, r1
ARM GAS /tmp/ccBjdYa2.s page 66
725:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1379 .loc 1 725 3 is_stmt 1 view .LVU544
725:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1380 .loc 1 725 3 view .LVU545
1381 000c 90F83C10 ldrb r1, [r0, #60] @ zero_extendqisi2
1382 .LVL81:
725:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1383 .loc 1 725 3 is_stmt 0 view .LVU546
1384 0010 0129 cmp r1, #1
1385 0012 67D0 beq .L105
725:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1386 .loc 1 725 3 is_stmt 1 discriminator 2 view .LVU547
1387 0014 0121 movs r1, #1
1388 0016 80F83C10 strb r1, [r0, #60]
725:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1389 .loc 1 725 3 discriminator 2 view .LVU548
727:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1390 .loc 1 727 3 discriminator 2 view .LVU549
727:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1391 .loc 1 727 35 is_stmt 0 discriminator 2 view .LVU550
1392 001a 90F83D00 ldrb r0, [r0, #61] @ zero_extendqisi2
1393 .LVL82:
727:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1394 .loc 1 727 35 discriminator 2 view .LVU551
1395 001e C0B2 uxtb r0, r0
727:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1396 .loc 1 727 5 discriminator 2 view .LVU552
1397 0020 8842 cmp r0, r1
1398 0022 04D0 beq .L114
829:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1399 .loc 1 829 5 is_stmt 1 view .LVU553
829:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1400 .loc 1 829 5 view .LVU554
1401 0024 0022 movs r2, #0
1402 .LVL83:
829:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1403 .loc 1 829 5 is_stmt 0 view .LVU555
1404 0026 83F83C20 strb r2, [r3, #60]
829:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1405 .loc 1 829 5 is_stmt 1 view .LVU556
832:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1406 .loc 1 832 5 view .LVU557
832:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1407 .loc 1 832 12 is_stmt 0 view .LVU558
1408 002a 0220 movs r0, #2
1409 002c 7047 bx lr
1410 .LVL84:
1411 .L114:
713:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** MDMA_LinkNodeTypeDef *pNode;
1412 .loc 1 713 1 view .LVU559
1413 002e F0B4 push {r4, r5, r6, r7}
1414 .LCFI8:
1415 .cfi_def_cfa_offset 16
1416 .cfi_offset 4, -16
1417 .cfi_offset 5, -12
1418 .cfi_offset 6, -8
1419 .cfi_offset 7, -4
ARM GAS /tmp/ccBjdYa2.s page 67
730:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1420 .loc 1 730 5 is_stmt 1 view .LVU560
730:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1421 .loc 1 730 18 is_stmt 0 view .LVU561
1422 0030 0221 movs r1, #2
1423 0032 83F83D10 strb r1, [r3, #61]
733:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1424 .loc 1 733 5 is_stmt 1 view .LVU562
733:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1425 .loc 1 733 23 is_stmt 0 view .LVU563
1426 0036 DF6D ldr r7, [r3, #92]
733:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1427 .loc 1 733 7 view .LVU564
1428 0038 2FB1 cbz r7, .L115
757:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1429 .loc 1 757 10 is_stmt 1 view .LVU565
757:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1430 .loc 1 757 12 is_stmt 0 view .LVU566
1431 003a 6745 cmp r7, ip
1432 003c 48D0 beq .L93
760:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** while((counter < hmdma->LinkedListNodeCounter) && (hal_status == HAL_OK))
1433 .loc 1 760 13 view .LVU567
1434 003e 3C46 mov r4, r7
716:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1435 .loc 1 716 21 view .LVU568
1436 0040 0026 movs r6, #0
715:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** HAL_StatusTypeDef hal_status = HAL_OK;
1437 .loc 1 715 12 view .LVU569
1438 0042 3146 mov r1, r6
1439 0044 10E0 b .L94
1440 .L115:
735:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1441 .loc 1 735 7 is_stmt 1 view .LVU570
735:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1442 .loc 1 735 9 is_stmt 0 view .LVU571
1443 0046 002A cmp r2, #0
1444 0048 42D1 bne .L93
740:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Set the MDMA handle First linked List node*/
1445 .loc 1 740 9 is_stmt 1 view .LVU572
740:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Set the MDMA handle First linked List node*/
1446 .loc 1 740 14 is_stmt 0 view .LVU573
1447 004a 1A68 ldr r2, [r3]
1448 .LVL85:
740:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Set the MDMA handle First linked List node*/
1449 .loc 1 740 31 view .LVU574
1450 004c C2F824C0 str ip, [r2, #36]
742:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1451 .loc 1 742 9 is_stmt 1 view .LVU575
742:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1452 .loc 1 742 43 is_stmt 0 view .LVU576
1453 0050 C3F85CC0 str ip, [r3, #92]
745:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1454 .loc 1 745 9 is_stmt 1 view .LVU577
745:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1455 .loc 1 745 24 is_stmt 0 view .LVU578
1456 0054 0020 movs r0, #0
1457 0056 CCF81400 str r0, [ip, #20]
ARM GAS /tmp/ccBjdYa2.s page 68
748:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1458 .loc 1 748 9 is_stmt 1 view .LVU579
748:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1459 .loc 1 748 42 is_stmt 0 view .LVU580
1460 005a C3F860C0 str ip, [r3, #96]
750:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1461 .loc 1 750 9 is_stmt 1 view .LVU581
750:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1462 .loc 1 750 38 is_stmt 0 view .LVU582
1463 005e 0122 movs r2, #1
1464 0060 5A66 str r2, [r3, #100]
1465 0062 35E0 b .L93
1466 .LVL86:
1467 .L95:
767:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** counter++;
1468 .loc 1 767 9 is_stmt 1 view .LVU583
767:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** counter++;
1469 .loc 1 767 46 is_stmt 0 view .LVU584
1470 0064 6469 ldr r4, [r4, #20]
1471 .LVL87:
768:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1472 .loc 1 768 9 is_stmt 1 view .LVU585
768:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1473 .loc 1 768 16 is_stmt 0 view .LVU586
1474 0066 0131 adds r1, r1, #1
1475 .LVL88:
1476 .L94:
761:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1477 .loc 1 761 12 is_stmt 1 view .LVU587
761:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1478 .loc 1 761 29 is_stmt 0 view .LVU588
1479 0068 5D6E ldr r5, [r3, #100]
761:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1480 .loc 1 761 12 view .LVU589
1481 006a 8D42 cmp r5, r1
1482 006c 05D9 bls .L96
761:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1483 .loc 1 761 54 discriminator 1 view .LVU590
1484 006e 26B9 cbnz r6, .L96
763:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1485 .loc 1 763 9 is_stmt 1 view .LVU591
763:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1486 .loc 1 763 17 is_stmt 0 view .LVU592
1487 0070 6569 ldr r5, [r4, #20]
763:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1488 .loc 1 763 11 view .LVU593
1489 0072 6545 cmp r5, ip
1490 0074 F6D1 bne .L95
765:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1491 .loc 1 765 22 view .LVU594
1492 0076 0646 mov r6, r0
1493 .LVL89:
765:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1494 .loc 1 765 22 view .LVU595
1495 0078 F4E7 b .L95
1496 .LVL90:
1497 .L96:
ARM GAS /tmp/ccBjdYa2.s page 69
771:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1498 .loc 1 771 7 is_stmt 1 view .LVU596
771:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1499 .loc 1 771 9 is_stmt 0 view .LVU597
1500 007a 46BB cbnz r6, .L108
774:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1501 .loc 1 774 9 is_stmt 1 view .LVU598
774:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1502 .loc 1 774 31 is_stmt 0 view .LVU599
1503 007c 196E ldr r1, [r3, #96]
1504 .LVL91:
774:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1505 .loc 1 774 11 view .LVU600
1506 007e 9142 cmp r1, r2
1507 0080 03D0 beq .L98
774:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1508 .loc 1 774 60 discriminator 1 view .LVU601
1509 0082 12B1 cbz r2, .L98
715:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** HAL_StatusTypeDef hal_status = HAL_OK;
1510 .loc 1 715 25 view .LVU602
1511 0084 0025 movs r5, #0
788:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** while((counter < hmdma->LinkedListNodeCounter) && (nodeInserted == 0U))
1512 .loc 1 788 19 view .LVU603
1513 0086 2946 mov r1, r5
1514 0088 15E0 b .L99
1515 .L98:
777:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->LastLinkedListNodeAddress->CLAR = (uint32_t)pNewNode;
1516 .loc 1 777 11 is_stmt 1 view .LVU604
777:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->LastLinkedListNodeAddress->CLAR = (uint32_t)pNewNode;
1517 .loc 1 777 60 is_stmt 0 view .LVU605
1518 008a 4A69 ldr r2, [r1, #20]
1519 .LVL92:
777:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->LastLinkedListNodeAddress->CLAR = (uint32_t)pNewNode;
1520 .loc 1 777 26 view .LVU606
1521 008c CCF81420 str r2, [ip, #20]
778:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Update the Handle last node address */
1522 .loc 1 778 11 is_stmt 1 view .LVU607
778:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Update the Handle last node address */
1523 .loc 1 778 16 is_stmt 0 view .LVU608
1524 0090 1A6E ldr r2, [r3, #96]
778:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Update the Handle last node address */
1525 .loc 1 778 50 view .LVU609
1526 0092 C2F814C0 str ip, [r2, #20]
780:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Increment the linked list node counter */
1527 .loc 1 780 11 is_stmt 1 view .LVU610
780:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Increment the linked list node counter */
1528 .loc 1 780 44 is_stmt 0 view .LVU611
1529 0096 C3F860C0 str ip, [r3, #96]
782:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1530 .loc 1 782 11 is_stmt 1 view .LVU612
782:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1531 .loc 1 782 16 is_stmt 0 view .LVU613
1532 009a 5A6E ldr r2, [r3, #100]
782:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1533 .loc 1 782 39 view .LVU614
1534 009c 0132 adds r2, r2, #1
1535 009e 5A66 str r2, [r3, #100]
ARM GAS /tmp/ccBjdYa2.s page 70
1536 00a0 3046 mov r0, r6
1537 00a2 15E0 b .L93
1538 .LVL93:
1539 .L116:
795:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** pNode->CLAR = (uint32_t)pNewNode;
1540 .loc 1 795 15 is_stmt 1 view .LVU615
795:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** pNode->CLAR = (uint32_t)pNewNode;
1541 .loc 1 795 37 is_stmt 0 view .LVU616
1542 00a4 7C69 ldr r4, [r7, #20]
795:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** pNode->CLAR = (uint32_t)pNewNode;
1543 .loc 1 795 30 view .LVU617
1544 00a6 CCF81440 str r4, [ip, #20]
796:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Increment the linked list node counter */
1545 .loc 1 796 15 is_stmt 1 view .LVU618
796:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Increment the linked list node counter */
1546 .loc 1 796 27 is_stmt 0 view .LVU619
1547 00aa C7F814C0 str ip, [r7, #20]
798:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** nodeInserted = 1;
1548 .loc 1 798 15 is_stmt 1 view .LVU620
798:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** nodeInserted = 1;
1549 .loc 1 798 20 is_stmt 0 view .LVU621
1550 00ae 5C6E ldr r4, [r3, #100]
798:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** nodeInserted = 1;
1551 .loc 1 798 43 view .LVU622
1552 00b0 0134 adds r4, r4, #1
1553 00b2 5C66 str r4, [r3, #100]
799:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1554 .loc 1 799 15 is_stmt 1 view .LVU623
1555 .LVL94:
799:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1556 .loc 1 799 28 is_stmt 0 view .LVU624
1557 00b4 0125 movs r5, #1
1558 .LVL95:
1559 .L99:
789:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1560 .loc 1 789 16 is_stmt 1 view .LVU625
789:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1561 .loc 1 789 33 is_stmt 0 view .LVU626
1562 00b6 5C6E ldr r4, [r3, #100]
789:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1563 .loc 1 789 16 view .LVU627
1564 00b8 8C42 cmp r4, r1
1565 00ba 05D9 bls .L102
789:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1566 .loc 1 789 58 discriminator 1 view .LVU628
1567 00bc 25B9 cbnz r5, .L102
791:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if(pNode == pPrevNode)
1568 .loc 1 791 13 is_stmt 1 view .LVU629
791:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if(pNode == pPrevNode)
1569 .loc 1 791 20 is_stmt 0 view .LVU630
1570 00be 0131 adds r1, r1, #1
1571 .LVL96:
792:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1572 .loc 1 792 13 is_stmt 1 view .LVU631
792:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1573 .loc 1 792 15 is_stmt 0 view .LVU632
1574 00c0 9742 cmp r7, r2
ARM GAS /tmp/ccBjdYa2.s page 71
1575 00c2 EFD0 beq .L116
803:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1576 .loc 1 803 15 is_stmt 1 view .LVU633
803:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1577 .loc 1 803 52 is_stmt 0 view .LVU634
1578 00c4 7F69 ldr r7, [r7, #20]
1579 .LVL97:
803:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1580 .loc 1 803 52 view .LVU635
1581 00c6 F6E7 b .L99
1582 .L102:
807:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1583 .loc 1 807 11 is_stmt 1 view .LVU636
807:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1584 .loc 1 807 13 is_stmt 0 view .LVU637
1585 00c8 15B1 cbz r5, .L93
1586 00ca 3046 mov r0, r6
1587 00cc 00E0 b .L93
1588 .LVL98:
1589 .L108:
807:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1590 .loc 1 807 13 view .LVU638
1591 00ce 3046 mov r0, r6
1592 .LVL99:
1593 .L93:
820:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1594 .loc 1 820 5 is_stmt 1 view .LVU639
820:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1595 .loc 1 820 5 view .LVU640
1596 00d0 0022 movs r2, #0
1597 00d2 83F83C20 strb r2, [r3, #60]
820:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1598 .loc 1 820 5 view .LVU641
822:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1599 .loc 1 822 5 view .LVU642
822:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1600 .loc 1 822 18 is_stmt 0 view .LVU643
1601 00d6 0122 movs r2, #1
1602 00d8 83F83D20 strb r2, [r3, #61]
824:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1603 .loc 1 824 5 is_stmt 1 view .LVU644
834:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1604 .loc 1 834 1 is_stmt 0 view .LVU645
1605 00dc F0BC pop {r4, r5, r6, r7}
1606 .LCFI9:
1607 .cfi_restore 7
1608 .cfi_restore 6
1609 .cfi_restore 5
1610 .cfi_restore 4
1611 .cfi_def_cfa_offset 0
1612 00de 7047 bx lr
1613 .LVL100:
1614 .L104:
721:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1615 .loc 1 721 12 view .LVU646
1616 00e0 0120 movs r0, #1
1617 .LVL101:
ARM GAS /tmp/ccBjdYa2.s page 72
721:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1618 .loc 1 721 12 view .LVU647
1619 00e2 7047 bx lr
1620 .LVL102:
1621 .L105:
725:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1622 .loc 1 725 3 view .LVU648
1623 00e4 0220 movs r0, #2
1624 .LVL103:
834:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1625 .loc 1 834 1 view .LVU649
1626 00e6 7047 bx lr
1627 .cfi_endproc
1628 .LFE147:
1630 .section .text.HAL_MDMA_LinkedList_RemoveNode,"ax",%progbits
1631 .align 1
1632 .global HAL_MDMA_LinkedList_RemoveNode
1633 .syntax unified
1634 .thumb
1635 .thumb_func
1636 .fpu fpv5-d16
1638 HAL_MDMA_LinkedList_RemoveNode:
1639 .LVL104:
1640 .LFB148:
846:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** MDMA_LinkNodeTypeDef *ptmpNode;
1641 .loc 1 846 1 is_stmt 1 view -0
1642 .cfi_startproc
1643 @ args = 0, pretend = 0, frame = 0
1644 @ frame_needed = 0, uses_anonymous_args = 0
1645 @ link register save eliminated.
847:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** uint32_t counter = 0, nodeDeleted = 0;
1646 .loc 1 847 3 view .LVU651
848:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** HAL_StatusTypeDef hal_status = HAL_OK;
1647 .loc 1 848 3 view .LVU652
849:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1648 .loc 1 849 3 view .LVU653
852:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1649 .loc 1 852 3 view .LVU654
852:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1650 .loc 1 852 5 is_stmt 0 view .LVU655
1651 0000 0029 cmp r1, #0
1652 0002 18BF it ne
1653 0004 0028 cmpne r0, #0
1654 0006 60D0 beq .L129
1655 0008 0346 mov r3, r0
1656 000a 8C46 mov ip, r1
858:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1657 .loc 1 858 3 is_stmt 1 view .LVU656
858:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1658 .loc 1 858 3 view .LVU657
1659 000c 90F83C20 ldrb r2, [r0, #60] @ zero_extendqisi2
1660 0010 012A cmp r2, #1
1661 0012 5CD0 beq .L130
858:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1662 .loc 1 858 3 discriminator 2 view .LVU658
1663 0014 0122 movs r2, #1
1664 0016 80F83C20 strb r2, [r0, #60]
ARM GAS /tmp/ccBjdYa2.s page 73
858:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1665 .loc 1 858 3 discriminator 2 view .LVU659
860:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1666 .loc 1 860 3 discriminator 2 view .LVU660
860:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1667 .loc 1 860 35 is_stmt 0 discriminator 2 view .LVU661
1668 001a 90F83D00 ldrb r0, [r0, #61] @ zero_extendqisi2
1669 .LVL105:
860:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1670 .loc 1 860 35 discriminator 2 view .LVU662
1671 001e C0B2 uxtb r0, r0
860:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1672 .loc 1 860 5 discriminator 2 view .LVU663
1673 0020 9042 cmp r0, r2
1674 0022 04D0 beq .L136
945:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1675 .loc 1 945 5 is_stmt 1 view .LVU664
945:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1676 .loc 1 945 5 view .LVU665
1677 0024 0022 movs r2, #0
1678 0026 83F83C20 strb r2, [r3, #60]
945:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1679 .loc 1 945 5 view .LVU666
948:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1680 .loc 1 948 5 view .LVU667
948:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1681 .loc 1 948 12 is_stmt 0 view .LVU668
1682 002a 0220 movs r0, #2
1683 002c 7047 bx lr
1684 .L136:
846:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** MDMA_LinkNodeTypeDef *ptmpNode;
1685 .loc 1 846 1 view .LVU669
1686 002e 30B4 push {r4, r5}
1687 .LCFI10:
1688 .cfi_def_cfa_offset 8
1689 .cfi_offset 4, -8
1690 .cfi_offset 5, -4
863:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1691 .loc 1 863 5 is_stmt 1 view .LVU670
863:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1692 .loc 1 863 18 is_stmt 0 view .LVU671
1693 0030 0222 movs r2, #2
1694 0032 83F83D20 strb r2, [r3, #61]
866:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1695 .loc 1 866 5 is_stmt 1 view .LVU672
866:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1696 .loc 1 866 24 is_stmt 0 view .LVU673
1697 0036 DA6D ldr r2, [r3, #92]
866:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1698 .loc 1 866 7 view .LVU674
1699 0038 002A cmp r2, #0
1700 003a 3ED0 beq .L120
866:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1701 .loc 1 866 79 discriminator 1 view .LVU675
1702 003c 196E ldr r1, [r3, #96]
1703 .LVL106:
866:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
ARM GAS /tmp/ccBjdYa2.s page 74
1704 .loc 1 866 60 discriminator 1 view .LVU676
1705 003e 0029 cmp r1, #0
1706 0040 3BD0 beq .L120
866:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1707 .loc 1 866 123 discriminator 2 view .LVU677
1708 0042 5C6E ldr r4, [r3, #100]
866:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1709 .loc 1 866 114 discriminator 2 view .LVU678
1710 0044 002C cmp r4, #0
1711 0046 38D0 beq .L120
870:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1712 .loc 1 870 10 is_stmt 1 view .LVU679
870:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1713 .loc 1 870 12 is_stmt 0 view .LVU680
1714 0048 6245 cmp r2, ip
1715 004a 02D0 beq .L137
848:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** HAL_StatusTypeDef hal_status = HAL_OK;
1716 .loc 1 848 25 view .LVU681
1717 004c 0025 movs r5, #0
848:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** HAL_StatusTypeDef hal_status = HAL_OK;
1718 .loc 1 848 12 view .LVU682
1719 004e 2946 mov r1, r5
1720 0050 25E0 b .L121
1721 .L137:
873:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1722 .loc 1 873 7 is_stmt 1 view .LVU683
873:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1723 .loc 1 873 9 is_stmt 0 view .LVU684
1724 0052 6145 cmp r1, ip
1725 0054 0ED0 beq .L138
886:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1726 .loc 1 886 9 is_stmt 1 view .LVU685
886:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1727 .loc 1 886 91 is_stmt 0 view .LVU686
1728 0056 4869 ldr r0, [r1, #20]
886:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1729 .loc 1 886 11 view .LVU687
1730 0058 8242 cmp r2, r0
1731 005a 12D0 beq .L139
1732 .L123:
895:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->FirstLinkedListNodeAddress = (MDMA_LinkNodeTypeDef *)hmdma->Instance->CLAR;
1733 .loc 1 895 9 is_stmt 1 view .LVU688
895:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->FirstLinkedListNodeAddress = (MDMA_LinkNodeTypeDef *)hmdma->Instance->CLAR;
1734 .loc 1 895 14 is_stmt 0 view .LVU689
1735 005c 1A68 ldr r2, [r3]
895:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->FirstLinkedListNodeAddress = (MDMA_LinkNodeTypeDef *)hmdma->Instance->CLAR;
1736 .loc 1 895 38 view .LVU690
1737 005e DCF81410 ldr r1, [ip, #20]
895:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->FirstLinkedListNodeAddress = (MDMA_LinkNodeTypeDef *)hmdma->Instance->CLAR;
1738 .loc 1 895 31 view .LVU691
1739 0062 5162 str r1, [r2, #36]
896:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Update the Handle node counter */
1740 .loc 1 896 9 is_stmt 1 view .LVU692
896:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Update the Handle node counter */
1741 .loc 1 896 74 is_stmt 0 view .LVU693
1742 0064 1A68 ldr r2, [r3]
896:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Update the Handle node counter */
ARM GAS /tmp/ccBjdYa2.s page 75
1743 .loc 1 896 84 view .LVU694
1744 0066 526A ldr r2, [r2, #36]
896:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Update the Handle node counter */
1745 .loc 1 896 43 view .LVU695
1746 0068 DA65 str r2, [r3, #92]
898:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1747 .loc 1 898 9 is_stmt 1 view .LVU696
898:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1748 .loc 1 898 14 is_stmt 0 view .LVU697
1749 006a 5A6E ldr r2, [r3, #100]
898:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1750 .loc 1 898 37 view .LVU698
1751 006c 013A subs r2, r2, #1
1752 006e 5A66 str r2, [r3, #100]
849:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1753 .loc 1 849 21 view .LVU699
1754 0070 0020 movs r0, #0
1755 0072 22E0 b .L120
1756 .L138:
878:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->LastLinkedListNodeAddress = 0;
1757 .loc 1 878 9 is_stmt 1 view .LVU700
878:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->LastLinkedListNodeAddress = 0;
1758 .loc 1 878 43 is_stmt 0 view .LVU701
1759 0074 0020 movs r0, #0
1760 0076 D865 str r0, [r3, #92]
879:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->LinkedListNodeCounter = 0;
1761 .loc 1 879 9 is_stmt 1 view .LVU702
879:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** hmdma->LinkedListNodeCounter = 0;
1762 .loc 1 879 43 is_stmt 0 view .LVU703
1763 0078 1866 str r0, [r3, #96]
880:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1764 .loc 1 880 9 is_stmt 1 view .LVU704
880:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1765 .loc 1 880 38 is_stmt 0 view .LVU705
1766 007a 5866 str r0, [r3, #100]
882:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1767 .loc 1 882 9 is_stmt 1 view .LVU706
882:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1768 .loc 1 882 14 is_stmt 0 view .LVU707
1769 007c 1A68 ldr r2, [r3]
882:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1770 .loc 1 882 31 view .LVU708
1771 007e 5062 str r0, [r2, #36]
1772 0080 1BE0 b .L120
1773 .L139:
889:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1774 .loc 1 889 11 is_stmt 1 view .LVU709
889:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1775 .loc 1 889 57 is_stmt 0 view .LVU710
1776 0082 DCF81420 ldr r2, [ip, #20]
889:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1777 .loc 1 889 50 view .LVU711
1778 0086 4A61 str r2, [r1, #20]
1779 0088 E8E7 b .L123
1780 .LVL107:
1781 .L141:
911:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
ARM GAS /tmp/ccBjdYa2.s page 76
1782 .loc 1 911 11 is_stmt 1 view .LVU712
911:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1783 .loc 1 911 28 is_stmt 0 view .LVU713
1784 008a 1C6E ldr r4, [r3, #96]
911:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1785 .loc 1 911 13 view .LVU714
1786 008c 6445 cmp r4, ip
1787 008e 10D0 beq .L140
1788 .L125:
917:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** nodeDeleted = 1;
1789 .loc 1 917 11 is_stmt 1 view .LVU715
917:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** nodeDeleted = 1;
1790 .loc 1 917 33 is_stmt 0 view .LVU716
1791 0090 DCF81440 ldr r4, [ip, #20]
917:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** nodeDeleted = 1;
1792 .loc 1 917 26 view .LVU717
1793 0094 5461 str r4, [r2, #20]
918:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Update the Handle node counter */
1794 .loc 1 918 11 is_stmt 1 view .LVU718
1795 .LVL108:
920:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1796 .loc 1 920 11 view .LVU719
920:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1797 .loc 1 920 16 is_stmt 0 view .LVU720
1798 0096 5C6E ldr r4, [r3, #100]
920:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1799 .loc 1 920 39 view .LVU721
1800 0098 013C subs r4, r4, #1
1801 009a 5C66 str r4, [r3, #100]
918:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Update the Handle node counter */
1802 .loc 1 918 23 view .LVU722
1803 009c 0125 movs r5, #1
1804 .LVL109:
1805 .L121:
905:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1806 .loc 1 905 12 is_stmt 1 view .LVU723
1807 009e 5C6E ldr r4, [r3, #100]
1808 00a0 8C42 cmp r4, r1
1809 00a2 08D9 bls .L127
905:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1810 .loc 1 905 54 is_stmt 0 discriminator 1 view .LVU724
1811 00a4 3DB9 cbnz r5, .L127
907:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if(ptmpNode->CLAR == ((uint32_t)pNode))
1812 .loc 1 907 9 is_stmt 1 view .LVU725
907:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if(ptmpNode->CLAR == ((uint32_t)pNode))
1813 .loc 1 907 16 is_stmt 0 view .LVU726
1814 00a6 0131 adds r1, r1, #1
1815 .LVL110:
908:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1816 .loc 1 908 9 is_stmt 1 view .LVU727
908:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1817 .loc 1 908 20 is_stmt 0 view .LVU728
1818 00a8 5469 ldr r4, [r2, #20]
908:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1819 .loc 1 908 11 view .LVU729
1820 00aa 6445 cmp r4, ip
1821 00ac EDD0 beq .L141
ARM GAS /tmp/ccBjdYa2.s page 77
924:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1822 .loc 1 924 11 is_stmt 1 view .LVU730
924:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1823 .loc 1 924 54 is_stmt 0 view .LVU731
1824 00ae 5269 ldr r2, [r2, #20]
1825 .LVL111:
924:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1826 .loc 1 924 54 view .LVU732
1827 00b0 F5E7 b .L121
1828 .L140:
914:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1829 .loc 1 914 13 is_stmt 1 view .LVU733
914:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1830 .loc 1 914 46 is_stmt 0 view .LVU734
1831 00b2 1A66 str r2, [r3, #96]
1832 00b4 ECE7 b .L125
1833 .L127:
928:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1834 .loc 1 928 7 is_stmt 1 view .LVU735
928:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1835 .loc 1 928 9 is_stmt 0 view .LVU736
1836 00b6 05B1 cbz r5, .L120
849:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1837 .loc 1 849 21 view .LVU737
1838 00b8 0020 movs r0, #0
1839 .LVL112:
1840 .L120:
936:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1841 .loc 1 936 5 is_stmt 1 view .LVU738
936:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1842 .loc 1 936 5 view .LVU739
1843 00ba 0022 movs r2, #0
1844 00bc 83F83C20 strb r2, [r3, #60]
936:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1845 .loc 1 936 5 view .LVU740
938:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1846 .loc 1 938 5 view .LVU741
938:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1847 .loc 1 938 18 is_stmt 0 view .LVU742
1848 00c0 0122 movs r2, #1
1849 00c2 83F83D20 strb r2, [r3, #61]
940:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1850 .loc 1 940 5 is_stmt 1 view .LVU743
950:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1851 .loc 1 950 1 is_stmt 0 view .LVU744
1852 00c6 30BC pop {r4, r5}
1853 .LCFI11:
1854 .cfi_restore 5
1855 .cfi_restore 4
1856 .cfi_def_cfa_offset 0
1857 00c8 7047 bx lr
1858 .LVL113:
1859 .L129:
854:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1860 .loc 1 854 12 view .LVU745
1861 00ca 0120 movs r0, #1
1862 .LVL114:
ARM GAS /tmp/ccBjdYa2.s page 78
854:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1863 .loc 1 854 12 view .LVU746
1864 00cc 7047 bx lr
1865 .LVL115:
1866 .L130:
858:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1867 .loc 1 858 3 view .LVU747
1868 00ce 0220 movs r0, #2
1869 .LVL116:
950:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1870 .loc 1 950 1 view .LVU748
1871 00d0 7047 bx lr
1872 .cfi_endproc
1873 .LFE148:
1875 .section .text.HAL_MDMA_LinkedList_EnableCircularMode,"ax",%progbits
1876 .align 1
1877 .global HAL_MDMA_LinkedList_EnableCircularMode
1878 .syntax unified
1879 .thumb
1880 .thumb_func
1881 .fpu fpv5-d16
1883 HAL_MDMA_LinkedList_EnableCircularMode:
1884 .LVL117:
1885 .LFB149:
959:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** HAL_StatusTypeDef hal_status = HAL_OK;
1886 .loc 1 959 1 is_stmt 1 view -0
1887 .cfi_startproc
1888 @ args = 0, pretend = 0, frame = 0
1889 @ frame_needed = 0, uses_anonymous_args = 0
1890 @ link register save eliminated.
960:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1891 .loc 1 960 3 view .LVU750
963:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1892 .loc 1 963 3 view .LVU751
963:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1893 .loc 1 963 5 is_stmt 0 view .LVU752
1894 0000 30B3 cbz r0, .L145
1895 0002 0346 mov r3, r0
969:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1896 .loc 1 969 3 is_stmt 1 view .LVU753
969:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1897 .loc 1 969 3 view .LVU754
1898 0004 90F83C20 ldrb r2, [r0, #60] @ zero_extendqisi2
1899 0008 012A cmp r2, #1
1900 000a 23D0 beq .L146
959:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** HAL_StatusTypeDef hal_status = HAL_OK;
1901 .loc 1 959 1 is_stmt 0 discriminator 2 view .LVU755
1902 000c 10B4 push {r4}
1903 .LCFI12:
1904 .cfi_def_cfa_offset 4
1905 .cfi_offset 4, -4
969:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1906 .loc 1 969 3 is_stmt 1 discriminator 2 view .LVU756
1907 000e 0122 movs r2, #1
1908 0010 80F83C20 strb r2, [r0, #60]
969:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1909 .loc 1 969 3 discriminator 2 view .LVU757
ARM GAS /tmp/ccBjdYa2.s page 79
971:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1910 .loc 1 971 3 discriminator 2 view .LVU758
971:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1911 .loc 1 971 35 is_stmt 0 discriminator 2 view .LVU759
1912 0014 90F83D00 ldrb r0, [r0, #61] @ zero_extendqisi2
1913 .LVL118:
971:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1914 .loc 1 971 35 discriminator 2 view .LVU760
1915 0018 C0B2 uxtb r0, r0
971:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1916 .loc 1 971 5 discriminator 2 view .LVU761
1917 001a 9042 cmp r0, r2
1918 001c 09D0 beq .L152
960:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1919 .loc 1 960 21 view .LVU762
1920 001e 0020 movs r0, #0
1921 .L144:
1922 .LVL119:
989:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1923 .loc 1 989 3 is_stmt 1 view .LVU763
989:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1924 .loc 1 989 3 view .LVU764
1925 0020 0022 movs r2, #0
1926 0022 83F83C20 strb r2, [r3, #60]
989:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1927 .loc 1 989 3 view .LVU765
991:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1928 .loc 1 991 3 view .LVU766
991:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1929 .loc 1 991 16 is_stmt 0 view .LVU767
1930 0026 0122 movs r2, #1
1931 0028 83F83D20 strb r2, [r3, #61]
993:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1932 .loc 1 993 3 is_stmt 1 view .LVU768
994:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1933 .loc 1 994 1 is_stmt 0 view .LVU769
1934 002c 5DF8044B ldr r4, [sp], #4
1935 .LCFI13:
1936 .cfi_remember_state
1937 .cfi_restore 4
1938 .cfi_def_cfa_offset 0
1939 0030 7047 bx lr
1940 .LVL120:
1941 .L152:
1942 .LCFI14:
1943 .cfi_restore_state
974:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1944 .loc 1 974 5 is_stmt 1 view .LVU770
974:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1945 .loc 1 974 18 is_stmt 0 view .LVU771
1946 0032 0222 movs r2, #2
1947 0034 83F83D20 strb r2, [r3, #61]
977:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1948 .loc 1 977 5 is_stmt 1 view .LVU772
977:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1949 .loc 1 977 24 is_stmt 0 view .LVU773
1950 0038 DA6D ldr r2, [r3, #92]
ARM GAS /tmp/ccBjdYa2.s page 80
977:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1951 .loc 1 977 7 view .LVU774
1952 003a 002A cmp r2, #0
1953 003c F0D0 beq .L144
977:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1954 .loc 1 977 79 discriminator 1 view .LVU775
1955 003e 196E ldr r1, [r3, #96]
977:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1956 .loc 1 977 60 discriminator 1 view .LVU776
1957 0040 0029 cmp r1, #0
1958 0042 EDD0 beq .L144
977:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
1959 .loc 1 977 114 discriminator 2 view .LVU777
1960 0044 5C6E ldr r4, [r3, #100]
1961 0046 002C cmp r4, #0
1962 0048 EAD0 beq .L144
984:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1963 .loc 1 984 7 is_stmt 1 view .LVU778
984:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1964 .loc 1 984 46 is_stmt 0 view .LVU779
1965 004a 4A61 str r2, [r1, #20]
960:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1966 .loc 1 960 21 view .LVU780
1967 004c 0020 movs r0, #0
1968 004e E7E7 b .L144
1969 .LVL121:
1970 .L145:
1971 .LCFI15:
1972 .cfi_def_cfa_offset 0
1973 .cfi_restore 4
965:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1974 .loc 1 965 12 view .LVU781
1975 0050 0120 movs r0, #1
1976 .LVL122:
965:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
1977 .loc 1 965 12 view .LVU782
1978 0052 7047 bx lr
1979 .LVL123:
1980 .L146:
969:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1981 .loc 1 969 3 view .LVU783
1982 0054 0220 movs r0, #2
1983 .LVL124:
994:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
1984 .loc 1 994 1 view .LVU784
1985 0056 7047 bx lr
1986 .cfi_endproc
1987 .LFE149:
1989 .section .text.HAL_MDMA_LinkedList_DisableCircularMode,"ax",%progbits
1990 .align 1
1991 .global HAL_MDMA_LinkedList_DisableCircularMode
1992 .syntax unified
1993 .thumb
1994 .thumb_func
1995 .fpu fpv5-d16
1997 HAL_MDMA_LinkedList_DisableCircularMode:
1998 .LVL125:
ARM GAS /tmp/ccBjdYa2.s page 81
1999 .LFB150:
1003:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** HAL_StatusTypeDef hal_status = HAL_OK;
2000 .loc 1 1003 1 is_stmt 1 view -0
2001 .cfi_startproc
2002 @ args = 0, pretend = 0, frame = 0
2003 @ frame_needed = 0, uses_anonymous_args = 0
2004 @ link register save eliminated.
1004:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2005 .loc 1 1004 3 view .LVU786
1007:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2006 .loc 1 1007 3 view .LVU787
1007:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2007 .loc 1 1007 5 is_stmt 0 view .LVU788
2008 0000 0346 mov r3, r0
2009 0002 10B3 cbz r0, .L156
1013:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2010 .loc 1 1013 3 is_stmt 1 view .LVU789
1013:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2011 .loc 1 1013 3 view .LVU790
2012 0004 90F83C20 ldrb r2, [r0, #60] @ zero_extendqisi2
2013 0008 012A cmp r2, #1
2014 000a 20D0 beq .L157
1013:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2015 .loc 1 1013 3 discriminator 2 view .LVU791
2016 000c 0122 movs r2, #1
2017 000e 80F83C20 strb r2, [r0, #60]
1013:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2018 .loc 1 1013 3 discriminator 2 view .LVU792
1015:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2019 .loc 1 1015 3 discriminator 2 view .LVU793
1015:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2020 .loc 1 1015 35 is_stmt 0 discriminator 2 view .LVU794
2021 0012 90F83D00 ldrb r0, [r0, #61] @ zero_extendqisi2
2022 .LVL126:
1015:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2023 .loc 1 1015 35 discriminator 2 view .LVU795
2024 0016 C0B2 uxtb r0, r0
1015:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2025 .loc 1 1015 5 discriminator 2 view .LVU796
2026 0018 9042 cmp r0, r2
2027 001a 07D0 beq .L159
1004:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2028 .loc 1 1004 21 view .LVU797
2029 001c 0020 movs r0, #0
2030 .L155:
2031 .LVL127:
1033:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2032 .loc 1 1033 3 is_stmt 1 view .LVU798
1033:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2033 .loc 1 1033 3 view .LVU799
2034 001e 0022 movs r2, #0
2035 0020 83F83C20 strb r2, [r3, #60]
1033:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2036 .loc 1 1033 3 view .LVU800
1035:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2037 .loc 1 1035 3 view .LVU801
1035:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
ARM GAS /tmp/ccBjdYa2.s page 82
2038 .loc 1 1035 16 is_stmt 0 view .LVU802
2039 0024 0122 movs r2, #1
2040 0026 83F83D20 strb r2, [r3, #61]
1037:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
2041 .loc 1 1037 3 is_stmt 1 view .LVU803
1037:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
2042 .loc 1 1037 10 is_stmt 0 view .LVU804
2043 002a 7047 bx lr
2044 .LVL128:
2045 .L159:
1018:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2046 .loc 1 1018 5 is_stmt 1 view .LVU805
1018:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2047 .loc 1 1018 18 is_stmt 0 view .LVU806
2048 002c 0222 movs r2, #2
2049 002e 83F83D20 strb r2, [r3, #61]
1021:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2050 .loc 1 1021 5 is_stmt 1 view .LVU807
1021:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2051 .loc 1 1021 24 is_stmt 0 view .LVU808
2052 0032 DA6D ldr r2, [r3, #92]
1021:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2053 .loc 1 1021 7 view .LVU809
2054 0034 002A cmp r2, #0
2055 0036 F2D0 beq .L155
1021:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2056 .loc 1 1021 79 discriminator 1 view .LVU810
2057 0038 1A6E ldr r2, [r3, #96]
1021:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2058 .loc 1 1021 60 discriminator 1 view .LVU811
2059 003a 002A cmp r2, #0
2060 003c EFD0 beq .L155
1021:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2061 .loc 1 1021 123 discriminator 2 view .LVU812
2062 003e 596E ldr r1, [r3, #100]
1021:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2063 .loc 1 1021 114 discriminator 2 view .LVU813
2064 0040 0029 cmp r1, #0
2065 0042 ECD0 beq .L155
1028:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
2066 .loc 1 1028 7 is_stmt 1 view .LVU814
1028:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
2067 .loc 1 1028 46 is_stmt 0 view .LVU815
2068 0044 0020 movs r0, #0
2069 0046 5061 str r0, [r2, #20]
2070 0048 E9E7 b .L155
2071 .LVL129:
2072 .L156:
1009:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
2073 .loc 1 1009 12 view .LVU816
2074 004a 0120 movs r0, #1
2075 .LVL130:
1009:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
2076 .loc 1 1009 12 view .LVU817
2077 004c 7047 bx lr
2078 .LVL131:
2079 .L157:
ARM GAS /tmp/ccBjdYa2.s page 83
1013:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2080 .loc 1 1013 3 view .LVU818
2081 004e 0220 movs r0, #2
2082 .LVL132:
1038:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2083 .loc 1 1038 1 view .LVU819
2084 0050 7047 bx lr
2085 .cfi_endproc
2086 .LFE150:
2088 .section .text.HAL_MDMA_Start,"ax",%progbits
2089 .align 1
2090 .global HAL_MDMA_Start
2091 .syntax unified
2092 .thumb
2093 .thumb_func
2094 .fpu fpv5-d16
2096 HAL_MDMA_Start:
2097 .LVL133:
2098 .LFB151:
1074:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Check the parameters */
2099 .loc 1 1074 1 is_stmt 1 view -0
2100 .cfi_startproc
2101 @ args = 4, pretend = 0, frame = 0
2102 @ frame_needed = 0, uses_anonymous_args = 0
1076:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** assert_param(IS_MDMA_BLOCK_COUNT(BlockCount));
2103 .loc 1 1076 3 view .LVU821
1077:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2104 .loc 1 1077 3 view .LVU822
1080:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2105 .loc 1 1080 3 view .LVU823
1080:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2106 .loc 1 1080 5 is_stmt 0 view .LVU824
2107 0000 0028 cmp r0, #0
2108 0002 35D0 beq .L163
1074:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Check the parameters */
2109 .loc 1 1074 1 view .LVU825
2110 0004 30B5 push {r4, r5, lr}
2111 .LCFI16:
2112 .cfi_def_cfa_offset 12
2113 .cfi_offset 4, -12
2114 .cfi_offset 5, -8
2115 .cfi_offset 14, -4
2116 0006 83B0 sub sp, sp, #12
2117 .LCFI17:
2118 .cfi_def_cfa_offset 24
2119 0008 0446 mov r4, r0
1086:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2120 .loc 1 1086 3 is_stmt 1 view .LVU826
1086:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2121 .loc 1 1086 3 view .LVU827
2122 000a 90F83C00 ldrb r0, [r0, #60] @ zero_extendqisi2
2123 .LVL134:
1086:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2124 .loc 1 1086 3 is_stmt 0 view .LVU828
2125 000e 0128 cmp r0, #1
2126 0010 30D0 beq .L164
1086:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
ARM GAS /tmp/ccBjdYa2.s page 84
2127 .loc 1 1086 3 is_stmt 1 discriminator 2 view .LVU829
2128 0012 0120 movs r0, #1
2129 0014 84F83C00 strb r0, [r4, #60]
1086:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2130 .loc 1 1086 3 discriminator 2 view .LVU830
1088:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2131 .loc 1 1088 3 discriminator 2 view .LVU831
1088:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2132 .loc 1 1088 35 is_stmt 0 discriminator 2 view .LVU832
2133 0018 94F83D00 ldrb r0, [r4, #61] @ zero_extendqisi2
2134 001c C0B2 uxtb r0, r0
1088:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2135 .loc 1 1088 5 discriminator 2 view .LVU833
2136 001e 0128 cmp r0, #1
2137 0020 05D0 beq .L170
1114:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2138 .loc 1 1114 5 is_stmt 1 view .LVU834
1114:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2139 .loc 1 1114 5 view .LVU835
2140 0022 0023 movs r3, #0
2141 .LVL135:
1114:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2142 .loc 1 1114 5 is_stmt 0 view .LVU836
2143 0024 84F83C30 strb r3, [r4, #60]
1114:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2144 .loc 1 1114 5 is_stmt 1 view .LVU837
1117:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
2145 .loc 1 1117 5 view .LVU838
1117:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
2146 .loc 1 1117 12 is_stmt 0 view .LVU839
2147 0028 0220 movs r0, #2
2148 .LVL136:
2149 .L161:
1121:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2150 .loc 1 1121 1 view .LVU840
2151 002a 03B0 add sp, sp, #12
2152 .LCFI18:
2153 .cfi_remember_state
2154 .cfi_def_cfa_offset 12
2155 @ sp needed
2156 002c 30BD pop {r4, r5, pc}
2157 .LVL137:
2158 .L170:
2159 .LCFI19:
2160 .cfi_restore_state
1091:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2161 .loc 1 1091 5 is_stmt 1 view .LVU841
1091:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2162 .loc 1 1091 18 is_stmt 0 view .LVU842
2163 002e 0220 movs r0, #2
2164 0030 84F83D00 strb r0, [r4, #61]
1094:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2165 .loc 1 1094 5 is_stmt 1 view .LVU843
1094:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2166 .loc 1 1094 22 is_stmt 0 view .LVU844
2167 0034 0020 movs r0, #0
2168 0036 A066 str r0, [r4, #104]
ARM GAS /tmp/ccBjdYa2.s page 85
1097:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2169 .loc 1 1097 5 is_stmt 1 view .LVU845
2170 0038 2568 ldr r5, [r4]
2171 003a E868 ldr r0, [r5, #12]
2172 003c 20F00100 bic r0, r0, #1
2173 0040 E860 str r0, [r5, #12]
1100:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2174 .loc 1 1100 5 view .LVU846
2175 0042 0698 ldr r0, [sp, #24]
2176 0044 0090 str r0, [sp]
2177 0046 2046 mov r0, r4
2178 0048 FFF7FEFF bl MDMA_SetConfig
2179 .LVL138:
1103:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2180 .loc 1 1103 5 view .LVU847
2181 004c 2268 ldr r2, [r4]
2182 004e D368 ldr r3, [r2, #12]
2183 0050 43F00103 orr r3, r3, #1
2184 0054 D360 str r3, [r2, #12]
1105:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2185 .loc 1 1105 5 view .LVU848
1105:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2186 .loc 1 1105 19 is_stmt 0 view .LVU849
2187 0056 6368 ldr r3, [r4, #4]
1105:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2188 .loc 1 1105 7 view .LVU850
2189 0058 B3F1804F cmp r3, #1073741824
2190 005c 01D0 beq .L171
1120:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
2191 .loc 1 1120 10 view .LVU851
2192 005e 0020 movs r0, #0
2193 0060 E3E7 b .L161
2194 .L171:
1108:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
2195 .loc 1 1108 7 is_stmt 1 view .LVU852
1108:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
2196 .loc 1 1108 12 is_stmt 0 view .LVU853
2197 0062 2268 ldr r2, [r4]
1108:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
2198 .loc 1 1108 28 view .LVU854
2199 0064 D368 ldr r3, [r2, #12]
2200 0066 43F48033 orr r3, r3, #65536
2201 006a D360 str r3, [r2, #12]
1120:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
2202 .loc 1 1120 10 view .LVU855
2203 006c 0020 movs r0, #0
2204 006e DCE7 b .L161
2205 .LVL139:
2206 .L163:
2207 .LCFI20:
2208 .cfi_def_cfa_offset 0
2209 .cfi_restore 4
2210 .cfi_restore 5
2211 .cfi_restore 14
1082:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
2212 .loc 1 1082 12 view .LVU856
2213 0070 0120 movs r0, #1
ARM GAS /tmp/ccBjdYa2.s page 86
2214 .LVL140:
1121:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2215 .loc 1 1121 1 view .LVU857
2216 0072 7047 bx lr
2217 .LVL141:
2218 .L164:
2219 .LCFI21:
2220 .cfi_def_cfa_offset 24
2221 .cfi_offset 4, -12
2222 .cfi_offset 5, -8
2223 .cfi_offset 14, -4
1086:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2224 .loc 1 1086 3 view .LVU858
2225 0074 0220 movs r0, #2
2226 0076 D8E7 b .L161
2227 .cfi_endproc
2228 .LFE151:
2230 .section .text.HAL_MDMA_Start_IT,"ax",%progbits
2231 .align 1
2232 .global HAL_MDMA_Start_IT
2233 .syntax unified
2234 .thumb
2235 .thumb_func
2236 .fpu fpv5-d16
2238 HAL_MDMA_Start_IT:
2239 .LVL142:
2240 .LFB152:
1134:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Check the parameters */
2241 .loc 1 1134 1 is_stmt 1 view -0
2242 .cfi_startproc
2243 @ args = 4, pretend = 0, frame = 0
2244 @ frame_needed = 0, uses_anonymous_args = 0
1136:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** assert_param(IS_MDMA_BLOCK_COUNT(BlockCount));
2245 .loc 1 1136 3 view .LVU860
1137:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2246 .loc 1 1137 3 view .LVU861
1140:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2247 .loc 1 1140 3 view .LVU862
1140:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2248 .loc 1 1140 5 is_stmt 0 view .LVU863
2249 0000 0028 cmp r0, #0
2250 0002 4FD0 beq .L178
1134:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Check the parameters */
2251 .loc 1 1134 1 view .LVU864
2252 0004 30B5 push {r4, r5, lr}
2253 .LCFI22:
2254 .cfi_def_cfa_offset 12
2255 .cfi_offset 4, -12
2256 .cfi_offset 5, -8
2257 .cfi_offset 14, -4
2258 0006 83B0 sub sp, sp, #12
2259 .LCFI23:
2260 .cfi_def_cfa_offset 24
2261 0008 0446 mov r4, r0
1146:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2262 .loc 1 1146 3 is_stmt 1 view .LVU865
1146:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
ARM GAS /tmp/ccBjdYa2.s page 87
2263 .loc 1 1146 3 view .LVU866
2264 000a 90F83C00 ldrb r0, [r0, #60] @ zero_extendqisi2
2265 .LVL143:
1146:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2266 .loc 1 1146 3 is_stmt 0 view .LVU867
2267 000e 0128 cmp r0, #1
2268 0010 4AD0 beq .L179
1146:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2269 .loc 1 1146 3 is_stmt 1 discriminator 2 view .LVU868
2270 0012 0120 movs r0, #1
2271 0014 84F83C00 strb r0, [r4, #60]
1146:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2272 .loc 1 1146 3 discriminator 2 view .LVU869
1148:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2273 .loc 1 1148 3 discriminator 2 view .LVU870
1148:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2274 .loc 1 1148 35 is_stmt 0 discriminator 2 view .LVU871
2275 0018 94F83D00 ldrb r0, [r4, #61] @ zero_extendqisi2
2276 001c C0B2 uxtb r0, r0
1148:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2277 .loc 1 1148 5 discriminator 2 view .LVU872
2278 001e 0128 cmp r0, #1
2279 0020 05D0 beq .L185
1195:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2280 .loc 1 1195 5 is_stmt 1 view .LVU873
1195:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2281 .loc 1 1195 5 view .LVU874
2282 0022 0023 movs r3, #0
2283 .LVL144:
1195:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2284 .loc 1 1195 5 is_stmt 0 view .LVU875
2285 0024 84F83C30 strb r3, [r4, #60]
1195:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2286 .loc 1 1195 5 is_stmt 1 view .LVU876
1198:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
2287 .loc 1 1198 5 view .LVU877
1198:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
2288 .loc 1 1198 12 is_stmt 0 view .LVU878
2289 0028 0220 movs r0, #2
2290 .LVL145:
2291 .L173:
1202:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2292 .loc 1 1202 1 view .LVU879
2293 002a 03B0 add sp, sp, #12
2294 .LCFI24:
2295 .cfi_remember_state
2296 .cfi_def_cfa_offset 12
2297 @ sp needed
2298 002c 30BD pop {r4, r5, pc}
2299 .LVL146:
2300 .L185:
2301 .LCFI25:
2302 .cfi_restore_state
1151:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2303 .loc 1 1151 5 is_stmt 1 view .LVU880
1151:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2304 .loc 1 1151 18 is_stmt 0 view .LVU881
ARM GAS /tmp/ccBjdYa2.s page 88
2305 002e 0220 movs r0, #2
2306 0030 84F83D00 strb r0, [r4, #61]
1154:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2307 .loc 1 1154 5 is_stmt 1 view .LVU882
1154:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2308 .loc 1 1154 22 is_stmt 0 view .LVU883
2309 0034 0020 movs r0, #0
2310 0036 A066 str r0, [r4, #104]
1157:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2311 .loc 1 1157 5 is_stmt 1 view .LVU884
2312 0038 2568 ldr r5, [r4]
2313 003a E868 ldr r0, [r5, #12]
2314 003c 20F00100 bic r0, r0, #1
2315 0040 E860 str r0, [r5, #12]
1160:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2316 .loc 1 1160 5 view .LVU885
2317 0042 0698 ldr r0, [sp, #24]
2318 0044 0090 str r0, [sp]
2319 0046 2046 mov r0, r4
2320 0048 FFF7FEFF bl MDMA_SetConfig
2321 .LVL147:
1163:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2322 .loc 1 1163 5 view .LVU886
2323 004c 2268 ldr r2, [r4]
2324 004e D368 ldr r3, [r2, #12]
2325 0050 43F00603 orr r3, r3, #6
2326 0054 D360 str r3, [r2, #12]
1165:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2327 .loc 1 1165 5 view .LVU887
1165:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2328 .loc 1 1165 13 is_stmt 0 view .LVU888
2329 0056 E36C ldr r3, [r4, #76]
1165:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2330 .loc 1 1165 7 view .LVU889
2331 0058 23B1 cbz r3, .L175
1168:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
2332 .loc 1 1168 7 is_stmt 1 view .LVU890
2333 005a 2268 ldr r2, [r4]
2334 005c D368 ldr r3, [r2, #12]
2335 005e 43F01003 orr r3, r3, #16
2336 0062 D360 str r3, [r2, #12]
2337 .L175:
1171:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2338 .loc 1 1171 5 view .LVU891
1171:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2339 .loc 1 1171 13 is_stmt 0 view .LVU892
2340 0064 236D ldr r3, [r4, #80]
1171:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2341 .loc 1 1171 7 view .LVU893
2342 0066 23B1 cbz r3, .L176
1174:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
2343 .loc 1 1174 7 is_stmt 1 view .LVU894
2344 0068 2268 ldr r2, [r4]
2345 006a D368 ldr r3, [r2, #12]
2346 006c 43F00803 orr r3, r3, #8
2347 0070 D360 str r3, [r2, #12]
2348 .L176:
ARM GAS /tmp/ccBjdYa2.s page 89
1177:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2349 .loc 1 1177 5 view .LVU895
1177:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2350 .loc 1 1177 13 is_stmt 0 view .LVU896
2351 0072 A36C ldr r3, [r4, #72]
1177:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2352 .loc 1 1177 7 view .LVU897
2353 0074 23B1 cbz r3, .L177
1180:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
2354 .loc 1 1180 7 is_stmt 1 view .LVU898
2355 0076 2268 ldr r2, [r4]
2356 0078 D368 ldr r3, [r2, #12]
2357 007a 43F02003 orr r3, r3, #32
2358 007e D360 str r3, [r2, #12]
2359 .L177:
1184:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2360 .loc 1 1184 5 view .LVU899
2361 0080 2268 ldr r2, [r4]
2362 0082 D368 ldr r3, [r2, #12]
2363 0084 43F00103 orr r3, r3, #1
2364 0088 D360 str r3, [r2, #12]
1186:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2365 .loc 1 1186 5 view .LVU900
1186:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2366 .loc 1 1186 19 is_stmt 0 view .LVU901
2367 008a 6368 ldr r3, [r4, #4]
1186:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2368 .loc 1 1186 7 view .LVU902
2369 008c B3F1804F cmp r3, #1073741824
2370 0090 01D0 beq .L186
1201:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
2371 .loc 1 1201 10 view .LVU903
2372 0092 0020 movs r0, #0
2373 0094 C9E7 b .L173
2374 .L186:
1189:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
2375 .loc 1 1189 7 is_stmt 1 view .LVU904
1189:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
2376 .loc 1 1189 12 is_stmt 0 view .LVU905
2377 0096 2268 ldr r2, [r4]
1189:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
2378 .loc 1 1189 28 view .LVU906
2379 0098 D368 ldr r3, [r2, #12]
2380 009a 43F48033 orr r3, r3, #65536
2381 009e D360 str r3, [r2, #12]
1201:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
2382 .loc 1 1201 10 view .LVU907
2383 00a0 0020 movs r0, #0
2384 00a2 C2E7 b .L173
2385 .LVL148:
2386 .L178:
2387 .LCFI26:
2388 .cfi_def_cfa_offset 0
2389 .cfi_restore 4
2390 .cfi_restore 5
2391 .cfi_restore 14
1142:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
ARM GAS /tmp/ccBjdYa2.s page 90
2392 .loc 1 1142 12 view .LVU908
2393 00a4 0120 movs r0, #1
2394 .LVL149:
1202:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2395 .loc 1 1202 1 view .LVU909
2396 00a6 7047 bx lr
2397 .LVL150:
2398 .L179:
2399 .LCFI27:
2400 .cfi_def_cfa_offset 24
2401 .cfi_offset 4, -12
2402 .cfi_offset 5, -8
2403 .cfi_offset 14, -4
1146:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2404 .loc 1 1146 3 view .LVU910
2405 00a8 0220 movs r0, #2
2406 00aa BEE7 b .L173
2407 .cfi_endproc
2408 .LFE152:
2410 .section .text.HAL_MDMA_Abort,"ax",%progbits
2411 .align 1
2412 .global HAL_MDMA_Abort
2413 .syntax unified
2414 .thumb
2415 .thumb_func
2416 .fpu fpv5-d16
2418 HAL_MDMA_Abort:
2419 .LVL151:
2420 .LFB153:
1217:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** uint32_t tickstart = HAL_GetTick();
2421 .loc 1 1217 1 is_stmt 1 view -0
2422 .cfi_startproc
2423 @ args = 0, pretend = 0, frame = 0
2424 @ frame_needed = 0, uses_anonymous_args = 0
1217:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** uint32_t tickstart = HAL_GetTick();
2425 .loc 1 1217 1 is_stmt 0 view .LVU912
2426 0000 38B5 push {r3, r4, r5, lr}
2427 .LCFI28:
2428 .cfi_def_cfa_offset 16
2429 .cfi_offset 3, -16
2430 .cfi_offset 4, -12
2431 .cfi_offset 5, -8
2432 .cfi_offset 14, -4
2433 0002 0446 mov r4, r0
1218:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2434 .loc 1 1218 3 is_stmt 1 view .LVU913
1218:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2435 .loc 1 1218 25 is_stmt 0 view .LVU914
2436 0004 FFF7FEFF bl HAL_GetTick
2437 .LVL152:
1221:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2438 .loc 1 1221 3 is_stmt 1 view .LVU915
1221:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2439 .loc 1 1221 5 is_stmt 0 view .LVU916
2440 0008 002C cmp r4, #0
2441 000a 35D0 beq .L192
2442 000c 0546 mov r5, r0
ARM GAS /tmp/ccBjdYa2.s page 91
1226:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2443 .loc 1 1226 3 is_stmt 1 view .LVU917
1226:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2444 .loc 1 1226 34 is_stmt 0 view .LVU918
2445 000e 94F83D30 ldrb r3, [r4, #61] @ zero_extendqisi2
2446 0012 DBB2 uxtb r3, r3
1226:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2447 .loc 1 1226 5 view .LVU919
2448 0014 022B cmp r3, #2
2449 0016 06D0 beq .L189
1228:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2450 .loc 1 1228 5 is_stmt 1 view .LVU920
1228:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2451 .loc 1 1228 22 is_stmt 0 view .LVU921
2452 0018 8023 movs r3, #128
2453 001a A366 str r3, [r4, #104]
1231:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2454 .loc 1 1231 5 is_stmt 1 view .LVU922
1231:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2455 .loc 1 1231 5 view .LVU923
2456 001c 0023 movs r3, #0
2457 001e 84F83C30 strb r3, [r4, #60]
1231:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2458 .loc 1 1231 5 view .LVU924
1233:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
2459 .loc 1 1233 5 view .LVU925
1233:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
2460 .loc 1 1233 12 is_stmt 0 view .LVU926
2461 0022 0120 movs r0, #1
2462 .LVL153:
2463 .L188:
1273:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2464 .loc 1 1273 1 view .LVU927
2465 0024 38BD pop {r3, r4, r5, pc}
2466 .LVL154:
2467 .L189:
1238:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2468 .loc 1 1238 5 is_stmt 1 view .LVU928
2469 0026 2268 ldr r2, [r4]
2470 0028 D368 ldr r3, [r2, #12]
2471 002a 23F03E03 bic r3, r3, #62
2472 002e D360 str r3, [r2, #12]
1241:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2473 .loc 1 1241 5 view .LVU929
2474 0030 2268 ldr r2, [r4]
2475 0032 D368 ldr r3, [r2, #12]
2476 0034 23F00103 bic r3, r3, #1
2477 0038 D360 str r3, [r2, #12]
1244:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2478 .loc 1 1244 5 view .LVU930
2479 .LVL155:
2480 .L190:
1244:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2481 .loc 1 1244 10 view .LVU931
1244:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2482 .loc 1 1244 17 is_stmt 0 view .LVU932
2483 003a 2368 ldr r3, [r4]
ARM GAS /tmp/ccBjdYa2.s page 92
1244:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2484 .loc 1 1244 27 view .LVU933
2485 003c DA68 ldr r2, [r3, #12]
1244:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2486 .loc 1 1244 10 view .LVU934
2487 003e 12F0010F tst r2, #1
2488 0042 10D0 beq .L194
1247:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2489 .loc 1 1247 7 is_stmt 1 view .LVU935
1247:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2490 .loc 1 1247 12 is_stmt 0 view .LVU936
2491 0044 FFF7FEFF bl HAL_GetTick
2492 .LVL156:
1247:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2493 .loc 1 1247 27 view .LVU937
2494 0048 431B subs r3, r0, r5
1247:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2495 .loc 1 1247 9 view .LVU938
2496 004a 052B cmp r3, #5
2497 004c F5D9 bls .L190
1250:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2498 .loc 1 1250 9 is_stmt 1 view .LVU939
1250:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2499 .loc 1 1250 26 is_stmt 0 view .LVU940
2500 004e A36E ldr r3, [r4, #104]
2501 0050 43F04003 orr r3, r3, #64
2502 0054 A366 str r3, [r4, #104]
1253:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2503 .loc 1 1253 9 is_stmt 1 view .LVU941
1253:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2504 .loc 1 1253 9 view .LVU942
2505 0056 0023 movs r3, #0
2506 0058 84F83C30 strb r3, [r4, #60]
1253:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2507 .loc 1 1253 9 view .LVU943
1256:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2508 .loc 1 1256 9 view .LVU944
1256:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2509 .loc 1 1256 22 is_stmt 0 view .LVU945
2510 005c 0323 movs r3, #3
2511 005e 84F83D30 strb r3, [r4, #61]
1258:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
2512 .loc 1 1258 9 is_stmt 1 view .LVU946
1258:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
2513 .loc 1 1258 16 is_stmt 0 view .LVU947
2514 0062 0120 movs r0, #1
2515 0064 DEE7 b .L188
2516 .L194:
1263:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2517 .loc 1 1263 5 is_stmt 1 view .LVU948
2518 0066 1F22 movs r2, #31
2519 0068 5A60 str r2, [r3, #4]
1266:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2520 .loc 1 1266 5 view .LVU949
1266:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2521 .loc 1 1266 5 view .LVU950
2522 006a 0020 movs r0, #0
ARM GAS /tmp/ccBjdYa2.s page 93
2523 006c 84F83C00 strb r0, [r4, #60]
1266:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2524 .loc 1 1266 5 view .LVU951
1269:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
2525 .loc 1 1269 5 view .LVU952
1269:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
2526 .loc 1 1269 18 is_stmt 0 view .LVU953
2527 0070 0123 movs r3, #1
2528 0072 84F83D30 strb r3, [r4, #61]
1272:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
2529 .loc 1 1272 3 is_stmt 1 view .LVU954
1272:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
2530 .loc 1 1272 10 is_stmt 0 view .LVU955
2531 0076 D5E7 b .L188
2532 .LVL157:
2533 .L192:
1223:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
2534 .loc 1 1223 12 view .LVU956
2535 0078 0120 movs r0, #1
2536 .LVL158:
1223:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
2537 .loc 1 1223 12 view .LVU957
2538 007a D3E7 b .L188
2539 .cfi_endproc
2540 .LFE153:
2542 .section .text.HAL_MDMA_Abort_IT,"ax",%progbits
2543 .align 1
2544 .global HAL_MDMA_Abort_IT
2545 .syntax unified
2546 .thumb
2547 .thumb_func
2548 .fpu fpv5-d16
2550 HAL_MDMA_Abort_IT:
2551 .LVL159:
2552 .LFB154:
1282:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** /* Check the MDMA peripheral handle */
2553 .loc 1 1282 1 is_stmt 1 view -0
2554 .cfi_startproc
2555 @ args = 0, pretend = 0, frame = 0
2556 @ frame_needed = 0, uses_anonymous_args = 0
2557 @ link register save eliminated.
1284:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2558 .loc 1 1284 3 view .LVU959
1284:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2559 .loc 1 1284 5 is_stmt 0 view .LVU960
2560 0000 90B1 cbz r0, .L198
1289:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2561 .loc 1 1289 3 is_stmt 1 view .LVU961
1289:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2562 .loc 1 1289 34 is_stmt 0 view .LVU962
2563 0002 90F83D30 ldrb r3, [r0, #61] @ zero_extendqisi2
2564 0006 DBB2 uxtb r3, r3
1289:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2565 .loc 1 1289 5 view .LVU963
2566 0008 022B cmp r3, #2
2567 000a 03D0 beq .L197
1292:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
ARM GAS /tmp/ccBjdYa2.s page 94
2568 .loc 1 1292 5 is_stmt 1 view .LVU964
1292:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2569 .loc 1 1292 22 is_stmt 0 view .LVU965
2570 000c 8023 movs r3, #128
2571 000e 8366 str r3, [r0, #104]
1294:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
2572 .loc 1 1294 5 is_stmt 1 view .LVU966
1294:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
2573 .loc 1 1294 12 is_stmt 0 view .LVU967
2574 0010 0120 movs r0, #1
2575 .LVL160:
1294:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
2576 .loc 1 1294 12 view .LVU968
2577 0012 7047 bx lr
2578 .LVL161:
2579 .L197:
1299:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2580 .loc 1 1299 5 is_stmt 1 view .LVU969
1299:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2581 .loc 1 1299 18 is_stmt 0 view .LVU970
2582 0014 0423 movs r3, #4
2583 0016 80F83D30 strb r3, [r0, #61]
1302:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
2584 .loc 1 1302 5 is_stmt 1 view .LVU971
2585 001a 0268 ldr r2, [r0]
2586 001c D368 ldr r3, [r2, #12]
2587 001e 23F00103 bic r3, r3, #1
2588 0022 D360 str r3, [r2, #12]
1305:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
2589 .loc 1 1305 3 view .LVU972
1305:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
2590 .loc 1 1305 10 is_stmt 0 view .LVU973
2591 0024 0020 movs r0, #0
2592 .LVL162:
1305:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
2593 .loc 1 1305 10 view .LVU974
2594 0026 7047 bx lr
2595 .LVL163:
2596 .L198:
1286:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
2597 .loc 1 1286 12 view .LVU975
2598 0028 0120 movs r0, #1
2599 .LVL164:
1306:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2600 .loc 1 1306 1 view .LVU976
2601 002a 7047 bx lr
2602 .cfi_endproc
2603 .LFE154:
2605 .section .text.HAL_MDMA_PollForTransfer,"ax",%progbits
2606 .align 1
2607 .global HAL_MDMA_PollForTransfer
2608 .syntax unified
2609 .thumb
2610 .thumb_func
2611 .fpu fpv5-d16
2613 HAL_MDMA_PollForTransfer:
2614 .LVL165:
ARM GAS /tmp/ccBjdYa2.s page 95
2615 .LFB155:
1317:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** uint32_t levelFlag, errorFlag;
2616 .loc 1 1317 1 is_stmt 1 view -0
2617 .cfi_startproc
2618 @ args = 0, pretend = 0, frame = 0
2619 @ frame_needed = 0, uses_anonymous_args = 0
1318:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** uint32_t tickstart;
2620 .loc 1 1318 3 view .LVU978
1319:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2621 .loc 1 1319 3 view .LVU979
1322:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2622 .loc 1 1322 3 view .LVU980
1325:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2623 .loc 1 1325 3 view .LVU981
1325:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2624 .loc 1 1325 5 is_stmt 0 view .LVU982
2625 0000 0028 cmp r0, #0
2626 0002 00F08A80 beq .L217
1317:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** uint32_t levelFlag, errorFlag;
2627 .loc 1 1317 1 view .LVU983
2628 0006 2DE9F843 push {r3, r4, r5, r6, r7, r8, r9, lr}
2629 .LCFI29:
2630 .cfi_def_cfa_offset 32
2631 .cfi_offset 3, -32
2632 .cfi_offset 4, -28
2633 .cfi_offset 5, -24
2634 .cfi_offset 6, -20
2635 .cfi_offset 7, -16
2636 .cfi_offset 8, -12
2637 .cfi_offset 9, -8
2638 .cfi_offset 14, -4
2639 000a 0F46 mov r7, r1
2640 000c 1646 mov r6, r2
2641 000e 0546 mov r5, r0
1330:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2642 .loc 1 1330 3 is_stmt 1 view .LVU984
1330:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2643 .loc 1 1330 34 is_stmt 0 view .LVU985
2644 0010 90F83D30 ldrb r3, [r0, #61] @ zero_extendqisi2
2645 0014 DBB2 uxtb r3, r3
1330:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2646 .loc 1 1330 5 view .LVU986
2647 0016 022B cmp r3, #2
2648 0018 04D0 beq .L201
1333:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2649 .loc 1 1333 5 is_stmt 1 view .LVU987
1333:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2650 .loc 1 1333 22 is_stmt 0 view .LVU988
2651 001a 8023 movs r3, #128
2652 001c 8366 str r3, [r0, #104]
1335:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
2653 .loc 1 1335 5 is_stmt 1 view .LVU989
1335:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
2654 .loc 1 1335 12 is_stmt 0 view .LVU990
2655 001e 0120 movs r0, #1
2656 .LVL166:
2657 .L200:
ARM GAS /tmp/ccBjdYa2.s page 96
1455:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2658 .loc 1 1455 1 view .LVU991
2659 0020 BDE8F883 pop {r3, r4, r5, r6, r7, r8, r9, pc}
2660 .LVL167:
2661 .L201:
1339:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** (CompleteLevel == HAL_MDMA_BUFFER_TRANSFER)? MDMA_FLAG_BFTC : \
2662 .loc 1 1339 3 is_stmt 1 view .LVU992
1339:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** (CompleteLevel == HAL_MDMA_BUFFER_TRANSFER)? MDMA_FLAG_BFTC : \
2663 .loc 1 1339 76 is_stmt 0 view .LVU993
2664 0024 49B1 cbz r1, .L218
1340:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** (CompleteLevel == HAL_MDMA_BLOCK_TRANSFER) ? MDMA_FLAG_BT : \
2665 .loc 1 1340 76 view .LVU994
2666 0026 0129 cmp r1, #1
2667 0028 29D0 beq .L219
1341:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** MDMA_FLAG_BRT);
2668 .loc 1 1341 76 view .LVU995
2669 002a 0229 cmp r1, #2
2670 002c 02D0 beq .L226
2671 002e 4FF00408 mov r8, #4
2672 0032 04E0 b .L202
2673 .L226:
2674 0034 4FF00808 mov r8, #8
2675 0038 01E0 b .L202
2676 .L218:
1339:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** (CompleteLevel == HAL_MDMA_BUFFER_TRANSFER)? MDMA_FLAG_BFTC : \
2677 .loc 1 1339 76 view .LVU996
2678 003a 4FF00208 mov r8, #2
2679 .L202:
2680 .LVL168:
1346:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2681 .loc 1 1346 3 is_stmt 1 discriminator 3 view .LVU997
1346:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2682 .loc 1 1346 15 is_stmt 0 discriminator 3 view .LVU998
2683 003e FFF7FEFF bl HAL_GetTick
2684 .LVL169:
1346:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2685 .loc 1 1346 15 discriminator 3 view .LVU999
2686 0042 8146 mov r9, r0
2687 .LVL170:
1348:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2688 .loc 1 1348 3 is_stmt 1 discriminator 3 view .LVU1000
2689 .L211:
1348:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2690 .loc 1 1348 8 view .LVU1001
1348:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2691 .loc 1 1348 9 is_stmt 0 view .LVU1002
2692 0044 2B68 ldr r3, [r5]
2693 0046 1C68 ldr r4, [r3]
1348:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2694 .loc 1 1348 8 view .LVU1003
2695 0048 14EA080F tst r4, r8
2696 004c 48D1 bne .L227
1350:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2697 .loc 1 1350 5 is_stmt 1 view .LVU1004
1350:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2698 .loc 1 1350 9 is_stmt 0 view .LVU1005
2699 004e 1C68 ldr r4, [r3]
ARM GAS /tmp/ccBjdYa2.s page 97
1350:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2700 .loc 1 1350 7 view .LVU1006
2701 0050 14F0010F tst r4, #1
2702 0054 16D1 bne .L228
1404:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2703 .loc 1 1404 5 is_stmt 1 view .LVU1007
1404:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2704 .loc 1 1404 7 is_stmt 0 view .LVU1008
2705 0056 B6F1FF3F cmp r6, #-1
2706 005a F3D0 beq .L211
1406:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2707 .loc 1 1406 7 is_stmt 1 view .LVU1009
1406:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2708 .loc 1 1406 12 is_stmt 0 view .LVU1010
2709 005c FFF7FEFF bl HAL_GetTick
2710 .LVL171:
1406:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2711 .loc 1 1406 26 view .LVU1011
2712 0060 A0EB0900 sub r0, r0, r9
1406:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2713 .loc 1 1406 9 view .LVU1012
2714 0064 B042 cmp r0, r6
2715 0066 01D8 bhi .L212
1406:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2716 .loc 1 1406 51 discriminator 1 view .LVU1013
2717 0068 002E cmp r6, #0
2718 006a EBD1 bne .L211
2719 .L212:
1409:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2720 .loc 1 1409 9 is_stmt 1 view .LVU1014
1409:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2721 .loc 1 1409 26 is_stmt 0 view .LVU1015
2722 006c AB6E ldr r3, [r5, #104]
2723 006e 43F04003 orr r3, r3, #64
2724 0072 AB66 str r3, [r5, #104]
1411:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2725 .loc 1 1411 9 is_stmt 1 view .LVU1016
1411:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2726 .loc 1 1411 16 is_stmt 0 view .LVU1017
2727 0074 2846 mov r0, r5
2728 0076 FFF7FEFF bl HAL_MDMA_Abort
2729 .LVL172:
1420:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
2730 .loc 1 1420 9 is_stmt 1 view .LVU1018
1420:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
2731 .loc 1 1420 16 is_stmt 0 view .LVU1019
2732 007a 0120 movs r0, #1
2733 007c D0E7 b .L200
2734 .LVL173:
2735 .L219:
1340:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** (CompleteLevel == HAL_MDMA_BLOCK_TRANSFER) ? MDMA_FLAG_BT : \
2736 .loc 1 1340 76 view .LVU1020
2737 007e 4FF01008 mov r8, #16
2738 0082 DCE7 b .L202
2739 .LVL174:
2740 .L228:
1353:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
ARM GAS /tmp/ccBjdYa2.s page 98
2741 .loc 1 1353 7 is_stmt 1 view .LVU1021
1353:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2742 .loc 1 1353 17 is_stmt 0 view .LVU1022
2743 0084 9B68 ldr r3, [r3, #8]
2744 .LVL175:
1355:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2745 .loc 1 1355 7 is_stmt 1 view .LVU1023
1355:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2746 .loc 1 1355 9 is_stmt 0 view .LVU1024
2747 0086 13F0800F tst r3, #128
2748 008a 24D1 bne .L205
1358:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
2749 .loc 1 1358 9 is_stmt 1 view .LVU1025
1358:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
2750 .loc 1 1358 26 is_stmt 0 view .LVU1026
2751 008c AA6E ldr r2, [r5, #104]
2752 008e 42F00102 orr r2, r2, #1
2753 0092 AA66 str r2, [r5, #104]
2754 .L206:
1366:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2755 .loc 1 1366 7 is_stmt 1 view .LVU1027
1366:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2756 .loc 1 1366 9 is_stmt 0 view .LVU1028
2757 0094 13F4007F tst r3, #512
2758 0098 03D0 beq .L207
1369:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
2759 .loc 1 1369 9 is_stmt 1 view .LVU1029
1369:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
2760 .loc 1 1369 26 is_stmt 0 view .LVU1030
2761 009a AA6E ldr r2, [r5, #104]
2762 009c 42F00402 orr r2, r2, #4
2763 00a0 AA66 str r2, [r5, #104]
2764 .L207:
1372:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2765 .loc 1 1372 7 is_stmt 1 view .LVU1031
1372:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2766 .loc 1 1372 9 is_stmt 0 view .LVU1032
2767 00a2 13F4807F tst r3, #256
2768 00a6 03D0 beq .L208
1375:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
2769 .loc 1 1375 9 is_stmt 1 view .LVU1033
1375:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
2770 .loc 1 1375 26 is_stmt 0 view .LVU1034
2771 00a8 AA6E ldr r2, [r5, #104]
2772 00aa 42F00802 orr r2, r2, #8
2773 00ae AA66 str r2, [r5, #104]
2774 .L208:
1378:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2775 .loc 1 1378 7 is_stmt 1 view .LVU1035
1378:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2776 .loc 1 1378 9 is_stmt 0 view .LVU1036
2777 00b0 13F4806F tst r3, #1024
2778 00b4 03D0 beq .L209
1381:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
2779 .loc 1 1381 9 is_stmt 1 view .LVU1037
1381:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
2780 .loc 1 1381 26 is_stmt 0 view .LVU1038
ARM GAS /tmp/ccBjdYa2.s page 99
2781 00b6 AA6E ldr r2, [r5, #104]
2782 00b8 42F01002 orr r2, r2, #16
2783 00bc AA66 str r2, [r5, #104]
2784 .L209:
1384:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2785 .loc 1 1384 7 is_stmt 1 view .LVU1039
1384:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2786 .loc 1 1384 9 is_stmt 0 view .LVU1040
2787 00be 13F4006F tst r3, #2048
2788 00c2 03D0 beq .L210
1387:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
2789 .loc 1 1387 9 is_stmt 1 view .LVU1041
1387:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
2790 .loc 1 1387 26 is_stmt 0 view .LVU1042
2791 00c4 AB6E ldr r3, [r5, #104]
2792 .LVL176:
1387:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
2793 .loc 1 1387 26 view .LVU1043
2794 00c6 43F02003 orr r3, r3, #32
2795 00ca AB66 str r3, [r5, #104]
2796 .L210:
1390:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2797 .loc 1 1390 7 is_stmt 1 view .LVU1044
1390:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2798 .loc 1 1390 14 is_stmt 0 view .LVU1045
2799 00cc 2846 mov r0, r5
2800 00ce FFF7FEFF bl HAL_MDMA_Abort
2801 .LVL177:
1399:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2802 .loc 1 1399 7 is_stmt 1 view .LVU1046
1399:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2803 .loc 1 1399 14 is_stmt 0 view .LVU1047
2804 00d2 0120 movs r0, #1
2805 00d4 A4E7 b .L200
2806 .LVL178:
2807 .L205:
1363:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
2808 .loc 1 1363 9 is_stmt 1 view .LVU1048
1363:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
2809 .loc 1 1363 26 is_stmt 0 view .LVU1049
2810 00d6 AA6E ldr r2, [r5, #104]
2811 00d8 42F00202 orr r2, r2, #2
2812 00dc AA66 str r2, [r5, #104]
2813 00de D9E7 b .L206
2814 .LVL179:
2815 .L227:
1426:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2816 .loc 1 1426 3 is_stmt 1 view .LVU1050
1426:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2817 .loc 1 1426 5 is_stmt 0 view .LVU1051
2818 00e0 012F cmp r7, #1
2819 00e2 0ED0 beq .L229
1431:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2820 .loc 1 1431 8 is_stmt 1 view .LVU1052
1431:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2821 .loc 1 1431 10 is_stmt 0 view .LVU1053
2822 00e4 022F cmp r7, #2
ARM GAS /tmp/ccBjdYa2.s page 100
2823 00e6 10D0 beq .L230
1436:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2824 .loc 1 1436 8 is_stmt 1 view .LVU1054
1436:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2825 .loc 1 1436 10 is_stmt 0 view .LVU1055
2826 00e8 032F cmp r7, #3
2827 00ea 12D0 beq .L231
1440:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2828 .loc 1 1440 8 is_stmt 1 view .LVU1056
1440:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2829 .loc 1 1440 10 is_stmt 0 view .LVU1057
2830 00ec BFB9 cbnz r7, .L221
1442:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2831 .loc 1 1442 5 is_stmt 1 view .LVU1058
2832 00ee 1E22 movs r2, #30
2833 00f0 5A60 str r2, [r3, #4]
1445:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2834 .loc 1 1445 5 view .LVU1059
1445:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2835 .loc 1 1445 5 view .LVU1060
2836 00f2 0023 movs r3, #0
2837 00f4 85F83C30 strb r3, [r5, #60]
1445:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2838 .loc 1 1445 5 view .LVU1061
1447:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
2839 .loc 1 1447 5 view .LVU1062
1447:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
2840 .loc 1 1447 18 is_stmt 0 view .LVU1063
2841 00f8 0123 movs r3, #1
2842 00fa 85F83D30 strb r3, [r5, #61]
1454:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
2843 .loc 1 1454 10 view .LVU1064
2844 00fe 3846 mov r0, r7
2845 0100 8EE7 b .L200
2846 .L229:
1428:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2847 .loc 1 1428 5 is_stmt 1 view .LVU1065
2848 0102 1022 movs r2, #16
2849 0104 5A60 str r2, [r3, #4]
1454:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
2850 .loc 1 1454 10 is_stmt 0 view .LVU1066
2851 0106 0020 movs r0, #0
2852 0108 8AE7 b .L200
2853 .L230:
1433:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2854 .loc 1 1433 5 is_stmt 1 view .LVU1067
2855 010a 1822 movs r2, #24
2856 010c 5A60 str r2, [r3, #4]
1454:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
2857 .loc 1 1454 10 is_stmt 0 view .LVU1068
2858 010e 0020 movs r0, #0
2859 0110 86E7 b .L200
2860 .L231:
1438:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
2861 .loc 1 1438 5 is_stmt 1 view .LVU1069
2862 0112 1C22 movs r2, #28
2863 0114 5A60 str r2, [r3, #4]
ARM GAS /tmp/ccBjdYa2.s page 101
1454:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
2864 .loc 1 1454 10 is_stmt 0 view .LVU1070
2865 0116 0020 movs r0, #0
2866 0118 82E7 b .L200
2867 .LVL180:
2868 .L217:
2869 .LCFI30:
2870 .cfi_def_cfa_offset 0
2871 .cfi_restore 3
2872 .cfi_restore 4
2873 .cfi_restore 5
2874 .cfi_restore 6
2875 .cfi_restore 7
2876 .cfi_restore 8
2877 .cfi_restore 9
2878 .cfi_restore 14
1327:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
2879 .loc 1 1327 12 view .LVU1071
2880 011a 0120 movs r0, #1
2881 .LVL181:
1455:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2882 .loc 1 1455 1 view .LVU1072
2883 011c 7047 bx lr
2884 .LVL182:
2885 .L221:
2886 .LCFI31:
2887 .cfi_def_cfa_offset 32
2888 .cfi_offset 3, -32
2889 .cfi_offset 4, -28
2890 .cfi_offset 5, -24
2891 .cfi_offset 6, -20
2892 .cfi_offset 7, -16
2893 .cfi_offset 8, -12
2894 .cfi_offset 9, -8
2895 .cfi_offset 14, -4
1451:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
2896 .loc 1 1451 12 view .LVU1073
2897 011e 0120 movs r0, #1
2898 0120 7EE7 b .L200
2899 .cfi_endproc
2900 .LFE155:
2902 .section .text.HAL_MDMA_GenerateSWRequest,"ax",%progbits
2903 .align 1
2904 .global HAL_MDMA_GenerateSWRequest
2905 .syntax unified
2906 .thumb
2907 .thumb_func
2908 .fpu fpv5-d16
2910 HAL_MDMA_GenerateSWRequest:
2911 .LVL183:
2912 .LFB156:
1464:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** uint32_t request_mode;
2913 .loc 1 1464 1 is_stmt 1 view -0
2914 .cfi_startproc
2915 @ args = 0, pretend = 0, frame = 0
2916 @ frame_needed = 0, uses_anonymous_args = 0
2917 @ link register save eliminated.
ARM GAS /tmp/ccBjdYa2.s page 102
1465:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2918 .loc 1 1465 3 view .LVU1075
1468:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2919 .loc 1 1468 3 view .LVU1076
1468:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2920 .loc 1 1468 5 is_stmt 0 view .LVU1077
2921 0000 0146 mov r1, r0
2922 0002 D8B1 cbz r0, .L237
1474:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2923 .loc 1 1474 3 is_stmt 1 view .LVU1078
1474:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2924 .loc 1 1474 23 is_stmt 0 view .LVU1079
2925 0004 0368 ldr r3, [r0]
1474:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2926 .loc 1 1474 33 view .LVU1080
2927 0006 1A69 ldr r2, [r3, #16]
1474:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2928 .loc 1 1474 16 view .LVU1081
2929 0008 02F08042 and r2, r2, #1073741824
2930 .LVL184:
1476:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2931 .loc 1 1476 3 is_stmt 1 view .LVU1082
1476:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2932 .loc 1 1476 22 is_stmt 0 view .LVU1083
2933 000c D868 ldr r0, [r3, #12]
2934 .LVL185:
1476:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2935 .loc 1 1476 5 view .LVU1084
2936 000e 10F0010F tst r0, #1
2937 0012 09D0 beq .L238
1483:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2938 .loc 1 1483 8 is_stmt 1 view .LVU1085
1483:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2939 .loc 1 1483 28 is_stmt 0 view .LVU1086
2940 0014 1868 ldr r0, [r3]
1483:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2941 .loc 1 1483 10 view .LVU1087
2942 0016 10F4803F tst r0, #65536
2943 001a 00D1 bne .L235
1483:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
2944 .loc 1 1483 61 discriminator 1 view .LVU1088
2945 001c 42B9 cbnz r2, .L236
2946 .L235:
1486:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2947 .loc 1 1486 5 is_stmt 1 view .LVU1089
1486:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2948 .loc 1 1486 22 is_stmt 0 view .LVU1090
2949 001e 4FF48073 mov r3, #256
2950 0022 8B66 str r3, [r1, #104]
1488:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
2951 .loc 1 1488 5 is_stmt 1 view .LVU1091
1488:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
2952 .loc 1 1488 12 is_stmt 0 view .LVU1092
2953 0024 0120 movs r0, #1
2954 0026 7047 bx lr
2955 .L238:
1479:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
ARM GAS /tmp/ccBjdYa2.s page 103
2956 .loc 1 1479 5 is_stmt 1 view .LVU1093
1479:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2957 .loc 1 1479 22 is_stmt 0 view .LVU1094
2958 0028 8023 movs r3, #128
2959 002a 8B66 str r3, [r1, #104]
1481:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
2960 .loc 1 1481 5 is_stmt 1 view .LVU1095
1481:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
2961 .loc 1 1481 12 is_stmt 0 view .LVU1096
2962 002c 0120 movs r0, #1
2963 002e 7047 bx lr
2964 .L236:
1493:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2965 .loc 1 1493 5 is_stmt 1 view .LVU1097
1493:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2966 .loc 1 1493 26 is_stmt 0 view .LVU1098
2967 0030 DA68 ldr r2, [r3, #12]
2968 .LVL186:
1493:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2969 .loc 1 1493 26 view .LVU1099
2970 0032 42F48032 orr r2, r2, #65536
2971 0036 DA60 str r2, [r3, #12]
1495:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
2972 .loc 1 1495 5 is_stmt 1 view .LVU1100
1495:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
2973 .loc 1 1495 12 is_stmt 0 view .LVU1101
2974 0038 0020 movs r0, #0
2975 003a 7047 bx lr
2976 .LVL187:
2977 .L237:
1470:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
2978 .loc 1 1470 12 view .LVU1102
2979 003c 0120 movs r0, #1
2980 .LVL188:
1497:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
2981 .loc 1 1497 1 view .LVU1103
2982 003e 7047 bx lr
2983 .cfi_endproc
2984 .LFE156:
2986 .section .text.HAL_MDMA_IRQHandler,"ax",%progbits
2987 .align 1
2988 .global HAL_MDMA_IRQHandler
2989 .syntax unified
2990 .thumb
2991 .thumb_func
2992 .fpu fpv5-d16
2994 HAL_MDMA_IRQHandler:
2995 .LVL189:
2996 .LFB157:
1506:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** __IO uint32_t count = 0;
2997 .loc 1 1506 1 is_stmt 1 view -0
2998 .cfi_startproc
2999 @ args = 0, pretend = 0, frame = 8
3000 @ frame_needed = 0, uses_anonymous_args = 0
1506:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** __IO uint32_t count = 0;
3001 .loc 1 1506 1 is_stmt 0 view .LVU1105
3002 0000 30B5 push {r4, r5, lr}
ARM GAS /tmp/ccBjdYa2.s page 104
3003 .LCFI32:
3004 .cfi_def_cfa_offset 12
3005 .cfi_offset 4, -12
3006 .cfi_offset 5, -8
3007 .cfi_offset 14, -4
3008 0002 83B0 sub sp, sp, #12
3009 .LCFI33:
3010 .cfi_def_cfa_offset 24
1507:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** uint32_t timeout = SystemCoreClock / 9600U;
3011 .loc 1 1507 3 is_stmt 1 view .LVU1106
1507:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** uint32_t timeout = SystemCoreClock / 9600U;
3012 .loc 1 1507 17 is_stmt 0 view .LVU1107
3013 0004 0023 movs r3, #0
3014 0006 0193 str r3, [sp, #4]
1508:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
3015 .loc 1 1508 3 is_stmt 1 view .LVU1108
1508:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
3016 .loc 1 1508 38 is_stmt 0 view .LVU1109
3017 0008 674B ldr r3, .L260
3018 000a 1D68 ldr r5, [r3]
1508:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
3019 .loc 1 1508 12 view .LVU1110
3020 000c 674B ldr r3, .L260+4
3021 000e A3FB0535 umull r3, r5, r3, r5
3022 .LVL190:
1510:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
3023 .loc 1 1510 3 is_stmt 1 view .LVU1111
1513:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if((MDMA->GISR0 & generalIntFlag) == 0U)
3024 .loc 1 1513 3 view .LVU1112
1513:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if((MDMA->GISR0 & generalIntFlag) == 0U)
3025 .loc 1 1513 46 is_stmt 0 view .LVU1113
3026 0012 0168 ldr r1, [r0]
1513:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if((MDMA->GISR0 & generalIntFlag) == 0U)
3027 .loc 1 1513 57 view .LVU1114
3028 0014 664B ldr r3, .L260+8
3029 0016 0B44 add r3, r3, r1
1513:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if((MDMA->GISR0 & generalIntFlag) == 0U)
3030 .loc 1 1513 109 view .LVU1115
3031 0018 C3F38413 ubfx r3, r3, #6, #5
1513:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** if((MDMA->GISR0 & generalIntFlag) == 0U)
3032 .loc 1 1513 18 view .LVU1116
3033 001c 0122 movs r2, #1
3034 001e 02FA03F3 lsl r3, r2, r3
3035 .LVL191:
1514:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
3036 .loc 1 1514 3 is_stmt 1 view .LVU1117
1514:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
3037 .loc 1 1514 11 is_stmt 0 view .LVU1118
3038 0022 4FF0A442 mov r2, #1375731712
3039 0026 1268 ldr r2, [r2]
1514:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
3040 .loc 1 1514 5 view .LVU1119
3041 0028 1A42 tst r2, r3
3042 002a 00F0A580 beq .L239
3043 002e 0446 mov r4, r0
3044 0030 AD0A lsrs r5, r5, #10
3045 .LVL192:
ARM GAS /tmp/ccBjdYa2.s page 105
1520:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
3046 .loc 1 1520 3 is_stmt 1 view .LVU1120
1520:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
3047 .loc 1 1520 7 is_stmt 0 view .LVU1121
3048 0032 0B68 ldr r3, [r1]
3049 .LVL193:
1520:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
3050 .loc 1 1520 5 view .LVU1122
3051 0034 13F0010F tst r3, #1
3052 0038 2FD0 beq .L241
1522:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
3053 .loc 1 1522 5 is_stmt 1 view .LVU1123
1522:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
3054 .loc 1 1522 8 is_stmt 0 view .LVU1124
3055 003a CB68 ldr r3, [r1, #12]
1522:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
3056 .loc 1 1522 7 view .LVU1125
3057 003c 13F0020F tst r3, #2
3058 0040 2BD0 beq .L241
1525:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
3059 .loc 1 1525 7 is_stmt 1 view .LVU1126
3060 0042 CB68 ldr r3, [r1, #12]
3061 0044 23F00203 bic r3, r3, #2
3062 0048 CB60 str r3, [r1, #12]
1528:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
3063 .loc 1 1528 7 view .LVU1127
1528:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
3064 .loc 1 1528 24 is_stmt 0 view .LVU1128
3065 004a 0268 ldr r2, [r0]
1528:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
3066 .loc 1 1528 17 view .LVU1129
3067 004c 9368 ldr r3, [r2, #8]
3068 .LVL194:
1530:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
3069 .loc 1 1530 7 is_stmt 1 view .LVU1130
1530:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
3070 .loc 1 1530 9 is_stmt 0 view .LVU1131
3071 004e 13F0800F tst r3, #128
3072 0052 40F09380 bne .L242
1533:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
3073 .loc 1 1533 9 is_stmt 1 view .LVU1132
1533:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
3074 .loc 1 1533 26 is_stmt 0 view .LVU1133
3075 0056 816E ldr r1, [r0, #104]
3076 .LVL195:
1533:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
3077 .loc 1 1533 26 view .LVU1134
3078 0058 41F00101 orr r1, r1, #1
3079 005c 8166 str r1, [r0, #104]
3080 .L243:
1541:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
3081 .loc 1 1541 7 is_stmt 1 view .LVU1135
1541:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
3082 .loc 1 1541 9 is_stmt 0 view .LVU1136
3083 005e 13F4007F tst r3, #512
3084 0062 03D0 beq .L244
1544:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
ARM GAS /tmp/ccBjdYa2.s page 106
3085 .loc 1 1544 9 is_stmt 1 view .LVU1137
1544:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
3086 .loc 1 1544 26 is_stmt 0 view .LVU1138
3087 0064 A16E ldr r1, [r4, #104]
3088 0066 41F00401 orr r1, r1, #4
3089 006a A166 str r1, [r4, #104]
3090 .L244:
1547:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
3091 .loc 1 1547 7 is_stmt 1 view .LVU1139
1547:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
3092 .loc 1 1547 9 is_stmt 0 view .LVU1140
3093 006c 13F4807F tst r3, #256
3094 0070 03D0 beq .L245
1550:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
3095 .loc 1 1550 9 is_stmt 1 view .LVU1141
1550:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
3096 .loc 1 1550 26 is_stmt 0 view .LVU1142
3097 0072 A16E ldr r1, [r4, #104]
3098 0074 41F00801 orr r1, r1, #8
3099 0078 A166 str r1, [r4, #104]
3100 .L245:
1553:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
3101 .loc 1 1553 7 is_stmt 1 view .LVU1143
1553:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
3102 .loc 1 1553 9 is_stmt 0 view .LVU1144
3103 007a 13F4806F tst r3, #1024
3104 007e 03D0 beq .L246
1556:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
3105 .loc 1 1556 9 is_stmt 1 view .LVU1145
1556:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
3106 .loc 1 1556 26 is_stmt 0 view .LVU1146
3107 0080 A16E ldr r1, [r4, #104]
3108 0082 41F01001 orr r1, r1, #16
3109 0086 A166 str r1, [r4, #104]
3110 .L246:
1559:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
3111 .loc 1 1559 7 is_stmt 1 view .LVU1147
1559:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
3112 .loc 1 1559 9 is_stmt 0 view .LVU1148
3113 0088 13F4006F tst r3, #2048
3114 008c 03D0 beq .L247
1562:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
3115 .loc 1 1562 9 is_stmt 1 view .LVU1149
1562:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
3116 .loc 1 1562 26 is_stmt 0 view .LVU1150
3117 008e A36E ldr r3, [r4, #104]
3118 .LVL196:
1562:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
3119 .loc 1 1562 26 view .LVU1151
3120 0090 43F02003 orr r3, r3, #32
3121 0094 A366 str r3, [r4, #104]
3122 .L247:
1566:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
3123 .loc 1 1566 7 is_stmt 1 view .LVU1152
3124 0096 0123 movs r3, #1
1566:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
3125 .loc 1 1566 7 is_stmt 0 view .LVU1153
ARM GAS /tmp/ccBjdYa2.s page 107
3126 0098 5360 str r3, [r2, #4]
3127 .L241:
1571:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
3128 .loc 1 1571 3 is_stmt 1 view .LVU1154
1571:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
3129 .loc 1 1571 7 is_stmt 0 view .LVU1155
3130 009a 2368 ldr r3, [r4]
3131 009c 1A68 ldr r2, [r3]
1571:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
3132 .loc 1 1571 5 view .LVU1156
3133 009e 12F0100F tst r2, #16
3134 00a2 09D0 beq .L248
1573:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
3135 .loc 1 1573 5 is_stmt 1 view .LVU1157
1573:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
3136 .loc 1 1573 8 is_stmt 0 view .LVU1158
3137 00a4 DA68 ldr r2, [r3, #12]
1573:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
3138 .loc 1 1573 7 view .LVU1159
3139 00a6 12F0200F tst r2, #32
3140 00aa 05D0 beq .L248
1576:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
3141 .loc 1 1576 7 is_stmt 1 view .LVU1160
3142 00ac 1022 movs r2, #16
3143 00ae 5A60 str r2, [r3, #4]
1578:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
3144 .loc 1 1578 7 view .LVU1161
1578:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
3145 .loc 1 1578 15 is_stmt 0 view .LVU1162
3146 00b0 A36C ldr r3, [r4, #72]
1578:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
3147 .loc 1 1578 9 view .LVU1163
3148 00b2 0BB1 cbz r3, .L248
1581:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
3149 .loc 1 1581 9 is_stmt 1 view .LVU1164
3150 00b4 2046 mov r0, r4
3151 .LVL197:
1581:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
3152 .loc 1 1581 9 is_stmt 0 view .LVU1165
3153 00b6 9847 blx r3
3154 .LVL198:
3155 .L248:
1587:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
3156 .loc 1 1587 3 is_stmt 1 view .LVU1166
1587:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
3157 .loc 1 1587 7 is_stmt 0 view .LVU1167
3158 00b8 2368 ldr r3, [r4]
3159 00ba 1A68 ldr r2, [r3]
1587:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
3160 .loc 1 1587 5 view .LVU1168
3161 00bc 12F0080F tst r2, #8
3162 00c0 09D0 beq .L249
1589:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
3163 .loc 1 1589 5 is_stmt 1 view .LVU1169
1589:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
3164 .loc 1 1589 8 is_stmt 0 view .LVU1170
3165 00c2 DA68 ldr r2, [r3, #12]
ARM GAS /tmp/ccBjdYa2.s page 108
1589:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
3166 .loc 1 1589 7 view .LVU1171
3167 00c4 12F0100F tst r2, #16
3168 00c8 05D0 beq .L249
1592:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
3169 .loc 1 1592 7 is_stmt 1 view .LVU1172
3170 00ca 0822 movs r2, #8
3171 00cc 5A60 str r2, [r3, #4]
1594:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
3172 .loc 1 1594 7 view .LVU1173
1594:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
3173 .loc 1 1594 15 is_stmt 0 view .LVU1174
3174 00ce E36C ldr r3, [r4, #76]
1594:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
3175 .loc 1 1594 9 view .LVU1175
3176 00d0 0BB1 cbz r3, .L249
1597:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
3177 .loc 1 1597 9 is_stmt 1 view .LVU1176
3178 00d2 2046 mov r0, r4
3179 00d4 9847 blx r3
3180 .LVL199:
3181 .L249:
1603:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
3182 .loc 1 1603 3 view .LVU1177
1603:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
3183 .loc 1 1603 7 is_stmt 0 view .LVU1178
3184 00d6 2368 ldr r3, [r4]
3185 00d8 1A68 ldr r2, [r3]
1603:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
3186 .loc 1 1603 5 view .LVU1179
3187 00da 12F0040F tst r2, #4
3188 00de 09D0 beq .L250
1605:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
3189 .loc 1 1605 5 is_stmt 1 view .LVU1180
1605:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
3190 .loc 1 1605 8 is_stmt 0 view .LVU1181
3191 00e0 DA68 ldr r2, [r3, #12]
1605:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
3192 .loc 1 1605 7 view .LVU1182
3193 00e2 12F0080F tst r2, #8
3194 00e6 05D0 beq .L250
1608:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
3195 .loc 1 1608 7 is_stmt 1 view .LVU1183
3196 00e8 0422 movs r2, #4
3197 00ea 5A60 str r2, [r3, #4]
1610:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
3198 .loc 1 1610 7 view .LVU1184
1610:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
3199 .loc 1 1610 15 is_stmt 0 view .LVU1185
3200 00ec 236D ldr r3, [r4, #80]
1610:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
3201 .loc 1 1610 9 view .LVU1186
3202 00ee 0BB1 cbz r3, .L250
1613:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
3203 .loc 1 1613 9 is_stmt 1 view .LVU1187
3204 00f0 2046 mov r0, r4
3205 00f2 9847 blx r3
ARM GAS /tmp/ccBjdYa2.s page 109
3206 .LVL200:
3207 .L250:
1619:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
3208 .loc 1 1619 3 view .LVU1188
1619:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
3209 .loc 1 1619 7 is_stmt 0 view .LVU1189
3210 00f4 2368 ldr r3, [r4]
3211 00f6 1A68 ldr r2, [r3]
1619:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
3212 .loc 1 1619 5 view .LVU1190
3213 00f8 12F0020F tst r2, #2
3214 00fc 19D0 beq .L251
1621:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
3215 .loc 1 1621 5 is_stmt 1 view .LVU1191
1621:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
3216 .loc 1 1621 8 is_stmt 0 view .LVU1192
3217 00fe DA68 ldr r2, [r3, #12]
1621:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
3218 .loc 1 1621 7 view .LVU1193
3219 0100 12F0040F tst r2, #4
3220 0104 15D0 beq .L251
1624:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
3221 .loc 1 1624 7 is_stmt 1 view .LVU1194
3222 0106 DA68 ldr r2, [r3, #12]
3223 0108 22F03E02 bic r2, r2, #62
3224 010c DA60 str r2, [r3, #12]
1626:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
3225 .loc 1 1626 7 view .LVU1195
1626:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
3226 .loc 1 1626 39 is_stmt 0 view .LVU1196
3227 010e 94F83D30 ldrb r3, [r4, #61] @ zero_extendqisi2
3228 0112 DBB2 uxtb r3, r3
1626:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
3229 .loc 1 1626 9 view .LVU1197
3230 0114 042B cmp r3, #4
3231 0116 36D0 beq .L259
1642:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
3232 .loc 1 1642 7 is_stmt 1 view .LVU1198
3233 0118 2368 ldr r3, [r4]
3234 011a 0222 movs r2, #2
3235 011c 5A60 str r2, [r3, #4]
1645:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
3236 .loc 1 1645 7 view .LVU1199
1645:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
3237 .loc 1 1645 7 view .LVU1200
3238 011e 0023 movs r3, #0
3239 0120 84F83C30 strb r3, [r4, #60]
1645:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
3240 .loc 1 1645 7 view .LVU1201
1648:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
3241 .loc 1 1648 7 view .LVU1202
1648:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
3242 .loc 1 1648 20 is_stmt 0 view .LVU1203
3243 0124 0123 movs r3, #1
1648:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
3244 .loc 1 1648 20 view .LVU1204
3245 0126 84F83D30 strb r3, [r4, #61]
ARM GAS /tmp/ccBjdYa2.s page 110
1650:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
3246 .loc 1 1650 7 is_stmt 1 view .LVU1205
1650:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
3247 .loc 1 1650 15 is_stmt 0 view .LVU1206
3248 012a 636C ldr r3, [r4, #68]
1650:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
3249 .loc 1 1650 9 view .LVU1207
3250 012c 0BB1 cbz r3, .L251
1653:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
3251 .loc 1 1653 9 is_stmt 1 view .LVU1208
3252 012e 2046 mov r0, r4
3253 0130 9847 blx r3
3254 .LVL201:
3255 .L251:
1659:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
3256 .loc 1 1659 3 view .LVU1209
1659:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
3257 .loc 1 1659 11 is_stmt 0 view .LVU1210
3258 0132 A36E ldr r3, [r4, #104]
1659:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
3259 .loc 1 1659 5 view .LVU1211
3260 0134 03B3 cbz r3, .L239
1661:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
3261 .loc 1 1661 5 is_stmt 1 view .LVU1212
1661:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
3262 .loc 1 1661 18 is_stmt 0 view .LVU1213
3263 0136 0423 movs r3, #4
3264 0138 84F83D30 strb r3, [r4, #61]
1664:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
3265 .loc 1 1664 5 is_stmt 1 view .LVU1214
3266 013c 2268 ldr r2, [r4]
3267 013e D368 ldr r3, [r2, #12]
3268 0140 23F00103 bic r3, r3, #1
3269 0144 D360 str r3, [r2, #12]
3270 .L255:
1666:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
3271 .loc 1 1666 5 view .LVU1215
1668:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
3272 .loc 1 1668 7 view .LVU1216
1668:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
3273 .loc 1 1668 11 is_stmt 0 view .LVU1217
3274 0146 019B ldr r3, [sp, #4]
3275 0148 0133 adds r3, r3, #1
1668:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
3276 .loc 1 1668 10 view .LVU1218
3277 014a 0193 str r3, [sp, #4]
3278 014c AB42 cmp r3, r5
3279 014e 04D8 bhi .L254
1673:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
3280 .loc 1 1673 10 is_stmt 1 view .LVU1219
1673:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
3281 .loc 1 1673 17 is_stmt 0 view .LVU1220
3282 0150 2368 ldr r3, [r4]
1673:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
3283 .loc 1 1673 27 view .LVU1221
3284 0152 DB68 ldr r3, [r3, #12]
1673:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
ARM GAS /tmp/ccBjdYa2.s page 111
3285 .loc 1 1673 5 view .LVU1222
3286 0154 13F0010F tst r3, #1
3287 0158 F5D1 bne .L255
3288 .L254:
1676:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
3289 .loc 1 1676 5 is_stmt 1 view .LVU1223
1676:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
3290 .loc 1 1676 5 view .LVU1224
3291 015a 0023 movs r3, #0
3292 015c 84F83C30 strb r3, [r4, #60]
1676:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
3293 .loc 1 1676 5 view .LVU1225
1678:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
3294 .loc 1 1678 5 view .LVU1226
1678:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
3295 .loc 1 1678 14 is_stmt 0 view .LVU1227
3296 0160 2368 ldr r3, [r4]
1678:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
3297 .loc 1 1678 24 view .LVU1228
3298 0162 DB68 ldr r3, [r3, #12]
1678:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
3299 .loc 1 1678 7 view .LVU1229
3300 0164 13F0010F tst r3, #1
3301 0168 19D0 beq .L256
1681:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
3302 .loc 1 1681 7 is_stmt 1 view .LVU1230
1681:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
3303 .loc 1 1681 20 is_stmt 0 view .LVU1231
3304 016a 0323 movs r3, #3
3305 016c 84F83D30 strb r3, [r4, #61]
3306 .L257:
1690:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
3307 .loc 1 1690 5 is_stmt 1 view .LVU1232
1690:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
3308 .loc 1 1690 14 is_stmt 0 view .LVU1233
3309 0170 636D ldr r3, [r4, #84]
1690:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
3310 .loc 1 1690 8 view .LVU1234
3311 0172 0BB1 cbz r3, .L239
1693:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
3312 .loc 1 1693 7 is_stmt 1 view .LVU1235
3313 0174 2046 mov r0, r4
3314 0176 9847 blx r3
3315 .LVL202:
3316 .L239:
1696:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
3317 .loc 1 1696 1 is_stmt 0 view .LVU1236
3318 0178 03B0 add sp, sp, #12
3319 .LCFI34:
3320 .cfi_remember_state
3321 .cfi_def_cfa_offset 12
3322 @ sp needed
3323 017a 30BD pop {r4, r5, pc}
3324 .LVL203:
3325 .L242:
3326 .LCFI35:
3327 .cfi_restore_state
ARM GAS /tmp/ccBjdYa2.s page 112
1538:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
3328 .loc 1 1538 9 is_stmt 1 view .LVU1237
1538:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
3329 .loc 1 1538 26 is_stmt 0 view .LVU1238
3330 017c 816E ldr r1, [r0, #104]
3331 .LVL204:
1538:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
3332 .loc 1 1538 26 view .LVU1239
3333 017e 41F00201 orr r1, r1, #2
3334 0182 8166 str r1, [r0, #104]
3335 0184 6BE7 b .L243
3336 .LVL205:
3337 .L259:
1629:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
3338 .loc 1 1629 9 is_stmt 1 view .LVU1240
1629:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
3339 .loc 1 1629 9 view .LVU1241
3340 0186 0023 movs r3, #0
3341 0188 84F83C30 strb r3, [r4, #60]
1629:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
3342 .loc 1 1629 9 view .LVU1242
1632:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
3343 .loc 1 1632 9 view .LVU1243
1632:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
3344 .loc 1 1632 22 is_stmt 0 view .LVU1244
3345 018c 0123 movs r3, #1
1632:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
3346 .loc 1 1632 22 view .LVU1245
3347 018e 84F83D30 strb r3, [r4, #61]
1634:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
3348 .loc 1 1634 9 is_stmt 1 view .LVU1246
1634:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
3349 .loc 1 1634 17 is_stmt 0 view .LVU1247
3350 0192 A36D ldr r3, [r4, #88]
1634:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** {
3351 .loc 1 1634 11 view .LVU1248
3352 0194 002B cmp r3, #0
3353 0196 EFD0 beq .L239
1636:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
3354 .loc 1 1636 11 is_stmt 1 view .LVU1249
3355 0198 2046 mov r0, r4
3356 019a 9847 blx r3
3357 .LVL206:
1638:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
3358 .loc 1 1638 9 view .LVU1250
3359 019c ECE7 b .L239
3360 .L256:
1686:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
3361 .loc 1 1686 7 view .LVU1251
1686:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
3362 .loc 1 1686 20 is_stmt 0 view .LVU1252
3363 019e 0123 movs r3, #1
1686:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
3364 .loc 1 1686 20 view .LVU1253
3365 01a0 84F83D30 strb r3, [r4, #61]
3366 01a4 E4E7 b .L257
3367 .L261:
ARM GAS /tmp/ccBjdYa2.s page 113
3368 01a6 00BF .align 2
3369 .L260:
3370 01a8 00000000 .word SystemCoreClock
3371 01ac B5814E1B .word 458129845
3372 01b0 C0FFFFAD .word -1375731776
3373 .cfi_endproc
3374 .LFE157:
3376 .section .text.HAL_MDMA_GetState,"ax",%progbits
3377 .align 1
3378 .global HAL_MDMA_GetState
3379 .syntax unified
3380 .thumb
3381 .thumb_func
3382 .fpu fpv5-d16
3384 HAL_MDMA_GetState:
3385 .LVL207:
3386 .LFB158:
1724:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** return hmdma->State;
3387 .loc 1 1724 1 is_stmt 1 view -0
3388 .cfi_startproc
3389 @ args = 0, pretend = 0, frame = 0
3390 @ frame_needed = 0, uses_anonymous_args = 0
3391 @ link register save eliminated.
1725:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
3392 .loc 1 1725 3 view .LVU1255
1725:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
3393 .loc 1 1725 15 is_stmt 0 view .LVU1256
3394 0000 90F83D00 ldrb r0, [r0, #61] @ zero_extendqisi2
3395 .LVL208:
1726:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
3396 .loc 1 1726 1 view .LVU1257
3397 0004 7047 bx lr
3398 .cfi_endproc
3399 .LFE158:
3401 .section .text.HAL_MDMA_GetError,"ax",%progbits
3402 .align 1
3403 .global HAL_MDMA_GetError
3404 .syntax unified
3405 .thumb
3406 .thumb_func
3407 .fpu fpv5-d16
3409 HAL_MDMA_GetError:
3410 .LVL209:
3411 .LFB159:
1735:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** return hmdma->ErrorCode;
3412 .loc 1 1735 1 is_stmt 1 view -0
3413 .cfi_startproc
3414 @ args = 0, pretend = 0, frame = 0
3415 @ frame_needed = 0, uses_anonymous_args = 0
3416 @ link register save eliminated.
1736:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
3417 .loc 1 1736 3 view .LVU1259
1736:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c **** }
3418 .loc 1 1736 15 is_stmt 0 view .LVU1260
3419 0000 806E ldr r0, [r0, #104]
3420 .LVL210:
1737:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.c ****
ARM GAS /tmp/ccBjdYa2.s page 114
3421 .loc 1 1737 1 view .LVU1261
3422 0002 7047 bx lr
3423 .cfi_endproc
3424 .LFE159:
3426 .text
3427 .Letext0:
3428 .file 2 "/usr/arm-none-eabi/include/machine/_default_types.h"
3429 .file 3 "/usr/arm-none-eabi/include/sys/_stdint.h"
3430 .file 4 "Drivers/CMSIS/Device/ST/STM32H7xx/Include/stm32h750xx.h"
3431 .file 5 "Drivers/STM32H7xx_HAL_Driver/Inc/stm32h7xx_hal_def.h"
3432 .file 6 "Drivers/STM32H7xx_HAL_Driver/Inc/stm32h7xx_hal_mdma.h"
3433 .file 7 "Drivers/CMSIS/Device/ST/STM32H7xx/Include/system_stm32h7xx.h"
3434 .file 8 "Drivers/STM32H7xx_HAL_Driver/Inc/stm32h7xx_hal.h"
ARM GAS /tmp/ccBjdYa2.s page 115
DEFINED SYMBOLS
*ABS*:0000000000000000 stm32h7xx_hal_mdma.c
/tmp/ccBjdYa2.s:17 .text.MDMA_SetConfig:0000000000000000 $t
/tmp/ccBjdYa2.s:24 .text.MDMA_SetConfig:0000000000000000 MDMA_SetConfig
/tmp/ccBjdYa2.s:161 .text.MDMA_SetConfig:0000000000000084 $d
/tmp/ccBjdYa2.s:166 .text.MDMA_Init:0000000000000000 $t
/tmp/ccBjdYa2.s:172 .text.MDMA_Init:0000000000000000 MDMA_Init
/tmp/ccBjdYa2.s:365 .text.HAL_MDMA_Init:0000000000000000 $t
/tmp/ccBjdYa2.s:372 .text.HAL_MDMA_Init:0000000000000000 HAL_MDMA_Init
/tmp/ccBjdYa2.s:495 .text.HAL_MDMA_DeInit:0000000000000000 $t
/tmp/ccBjdYa2.s:502 .text.HAL_MDMA_DeInit:0000000000000000 HAL_MDMA_DeInit
/tmp/ccBjdYa2.s:610 .text.HAL_MDMA_ConfigPostRequestMask:0000000000000000 $t
/tmp/ccBjdYa2.s:617 .text.HAL_MDMA_ConfigPostRequestMask:0000000000000000 HAL_MDMA_ConfigPostRequestMask
/tmp/ccBjdYa2.s:755 .text.HAL_MDMA_RegisterCallback:0000000000000000 $t
/tmp/ccBjdYa2.s:762 .text.HAL_MDMA_RegisterCallback:0000000000000000 HAL_MDMA_RegisterCallback
/tmp/ccBjdYa2.s:814 .text.HAL_MDMA_RegisterCallback:000000000000002e $d
/tmp/ccBjdYa2.s:820 .text.HAL_MDMA_RegisterCallback:0000000000000034 $t
/tmp/ccBjdYa2.s:895 .text.HAL_MDMA_UnRegisterCallback:0000000000000000 $t
/tmp/ccBjdYa2.s:902 .text.HAL_MDMA_UnRegisterCallback:0000000000000000 HAL_MDMA_UnRegisterCallback
/tmp/ccBjdYa2.s:953 .text.HAL_MDMA_UnRegisterCallback:0000000000000030 $d
/tmp/ccBjdYa2.s:1046 .text.HAL_MDMA_LinkedList_CreateNode:0000000000000000 $t
/tmp/ccBjdYa2.s:1053 .text.HAL_MDMA_LinkedList_CreateNode:0000000000000000 HAL_MDMA_LinkedList_CreateNode
/tmp/ccBjdYa2.s:1353 .text.HAL_MDMA_LinkedList_AddNode:0000000000000000 $t
/tmp/ccBjdYa2.s:1360 .text.HAL_MDMA_LinkedList_AddNode:0000000000000000 HAL_MDMA_LinkedList_AddNode
/tmp/ccBjdYa2.s:1631 .text.HAL_MDMA_LinkedList_RemoveNode:0000000000000000 $t
/tmp/ccBjdYa2.s:1638 .text.HAL_MDMA_LinkedList_RemoveNode:0000000000000000 HAL_MDMA_LinkedList_RemoveNode
/tmp/ccBjdYa2.s:1876 .text.HAL_MDMA_LinkedList_EnableCircularMode:0000000000000000 $t
/tmp/ccBjdYa2.s:1883 .text.HAL_MDMA_LinkedList_EnableCircularMode:0000000000000000 HAL_MDMA_LinkedList_EnableCircularMode
/tmp/ccBjdYa2.s:1990 .text.HAL_MDMA_LinkedList_DisableCircularMode:0000000000000000 $t
/tmp/ccBjdYa2.s:1997 .text.HAL_MDMA_LinkedList_DisableCircularMode:0000000000000000 HAL_MDMA_LinkedList_DisableCircularMode
/tmp/ccBjdYa2.s:2089 .text.HAL_MDMA_Start:0000000000000000 $t
/tmp/ccBjdYa2.s:2096 .text.HAL_MDMA_Start:0000000000000000 HAL_MDMA_Start
/tmp/ccBjdYa2.s:2231 .text.HAL_MDMA_Start_IT:0000000000000000 $t
/tmp/ccBjdYa2.s:2238 .text.HAL_MDMA_Start_IT:0000000000000000 HAL_MDMA_Start_IT
/tmp/ccBjdYa2.s:2411 .text.HAL_MDMA_Abort:0000000000000000 $t
/tmp/ccBjdYa2.s:2418 .text.HAL_MDMA_Abort:0000000000000000 HAL_MDMA_Abort
/tmp/ccBjdYa2.s:2543 .text.HAL_MDMA_Abort_IT:0000000000000000 $t
/tmp/ccBjdYa2.s:2550 .text.HAL_MDMA_Abort_IT:0000000000000000 HAL_MDMA_Abort_IT
/tmp/ccBjdYa2.s:2606 .text.HAL_MDMA_PollForTransfer:0000000000000000 $t
/tmp/ccBjdYa2.s:2613 .text.HAL_MDMA_PollForTransfer:0000000000000000 HAL_MDMA_PollForTransfer
/tmp/ccBjdYa2.s:2903 .text.HAL_MDMA_GenerateSWRequest:0000000000000000 $t
/tmp/ccBjdYa2.s:2910 .text.HAL_MDMA_GenerateSWRequest:0000000000000000 HAL_MDMA_GenerateSWRequest
/tmp/ccBjdYa2.s:2987 .text.HAL_MDMA_IRQHandler:0000000000000000 $t
/tmp/ccBjdYa2.s:2994 .text.HAL_MDMA_IRQHandler:0000000000000000 HAL_MDMA_IRQHandler
/tmp/ccBjdYa2.s:3370 .text.HAL_MDMA_IRQHandler:00000000000001a8 $d
/tmp/ccBjdYa2.s:3377 .text.HAL_MDMA_GetState:0000000000000000 $t
/tmp/ccBjdYa2.s:3384 .text.HAL_MDMA_GetState:0000000000000000 HAL_MDMA_GetState
/tmp/ccBjdYa2.s:3402 .text.HAL_MDMA_GetError:0000000000000000 $t
/tmp/ccBjdYa2.s:3409 .text.HAL_MDMA_GetError:0000000000000000 HAL_MDMA_GetError
/tmp/ccBjdYa2.s:960 .text.HAL_MDMA_UnRegisterCallback:0000000000000037 $d
/tmp/ccBjdYa2.s:960 .text.HAL_MDMA_UnRegisterCallback:0000000000000038 $t
UNDEFINED SYMBOLS
HAL_GetTick
SystemCoreClock