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