STM32H750VB_Bootloader/build/stm32h7xx_hal_qspi.lst

8504 lines
523 KiB
Plaintext
Raw Blame History

This file contains invisible Unicode characters

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

ARM GAS /tmp/ccNpZKQO.s page 1
1 .cpu cortex-m7
2 .eabi_attribute 28, 1
3 .eabi_attribute 20, 1
4 .eabi_attribute 21, 1
5 .eabi_attribute 23, 3
6 .eabi_attribute 24, 1
7 .eabi_attribute 25, 1
8 .eabi_attribute 26, 1
9 .eabi_attribute 30, 1
10 .eabi_attribute 34, 1
11 .eabi_attribute 18, 4
12 .file "stm32h7xx_hal_qspi.c"
13 .text
14 .Ltext0:
15 .cfi_sections .debug_frame
16 .section .text.QSPI_DMARxCplt,"ax",%progbits
17 .align 1
18 .arch armv7e-m
19 .syntax unified
20 .thumb
21 .thumb_func
22 .fpu fpv5-d16
24 QSPI_DMARxCplt:
25 .LVL0:
26 .LFB173:
27 .file 1 "Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c"
1:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /**
2:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** ******************************************************************************
3:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @file stm32h7xx_hal_qspi.c
4:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @author MCD Application Team
5:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @brief QSPI HAL module driver.
6:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * This file provides firmware functions to manage the following
7:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * functionalities of the QuadSPI interface (QSPI).
8:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * + Initialization and de-initialization functions
9:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * + Indirect functional mode management
10:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * + Memory-mapped functional mode management
11:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * + Auto-polling functional mode management
12:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * + Interrupts and flags management
13:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * + MDMA channel configuration for indirect functional mode
14:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * + Errors management and abort functionality
15:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** *
16:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** *
17:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** @verbatim
18:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** ===============================================================================
19:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** ##### How to use this driver #####
20:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** ===============================================================================
21:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** [..]
22:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** *** Initialization ***
23:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** ======================
24:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** [..]
25:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (#) As prerequisite, fill in the HAL_QSPI_MspInit() :
26:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (++) Enable QuadSPI clock interface with __HAL_RCC_QSPI_CLK_ENABLE().
27:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (++) Reset QuadSPI Peripheral with __HAL_RCC_QSPI_FORCE_RESET() and __HAL_RCC_QSPI_RELEASE_
28:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (++) Enable the clocks for the QuadSPI GPIOS with __HAL_RCC_GPIOx_CLK_ENABLE().
29:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (++) Configure these QuadSPI pins in alternate mode using HAL_GPIO_Init().
30:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (++) If interrupt mode is used, enable and configure QuadSPI global
31:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** interrupt with HAL_NVIC_SetPriority() and HAL_NVIC_EnableIRQ().
ARM GAS /tmp/ccNpZKQO.s page 2
32:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (++) If DMA mode is used, enable the clocks for the QuadSPI MDMA
33:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** with __HAL_RCC_MDMA_CLK_ENABLE(), configure MDMA with HAL_MDMA_Init(),
34:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** link it with QuadSPI handle using __HAL_LINKDMA(), enable and configure
35:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** MDMA global interrupt with HAL_NVIC_SetPriority() and HAL_NVIC_EnableIRQ().
36:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (#) Configure the flash size, the clock prescaler, the fifo threshold, the
37:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** clock mode, the sample shifting and the CS high time using the HAL_QSPI_Init() function.
38:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
39:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** *** Indirect functional mode ***
40:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** ================================
41:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** [..]
42:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (#) Configure the command sequence using the HAL_QSPI_Command() or HAL_QSPI_Command_IT()
43:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** functions :
44:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (++) Instruction phase : the mode used and if present the instruction opcode.
45:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (++) Address phase : the mode used and if present the size and the address value.
46:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (++) Alternate-bytes phase : the mode used and if present the size and the alternate
47:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** bytes values.
48:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (++) Dummy-cycles phase : the number of dummy cycles (mode used is same as data phase).
49:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (++) Data phase : the mode used and if present the number of bytes.
50:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (++) Double Data Rate (DDR) mode : the activation (or not) of this mode and the delay
51:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if activated.
52:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (++) Sending Instruction Only Once (SIOO) mode : the activation (or not) of this mode.
53:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (#) If no data is required for the command, it is sent directly to the memory :
54:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (++) In polling mode, the output of the function is done when the transfer is complete.
55:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (++) In interrupt mode, HAL_QSPI_CmdCpltCallback() will be called when the transfer is com
56:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (#) For the indirect write mode, use HAL_QSPI_Transmit(), HAL_QSPI_Transmit_DMA() or
57:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** HAL_QSPI_Transmit_IT() after the command configuration :
58:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (++) In polling mode, the output of the function is done when the transfer is complete.
59:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (++) In interrupt mode, HAL_QSPI_FifoThresholdCallback() will be called when the fifo thre
60:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** is reached and HAL_QSPI_TxCpltCallback() will be called when the transfer is complete.
61:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (++) In DMA mode,HAL_QSPI_TxCpltCallback() will be called when the transfer is complete.
62:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (#) For the indirect read mode, use HAL_QSPI_Receive(), HAL_QSPI_Receive_DMA() or
63:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** HAL_QSPI_Receive_IT() after the command configuration :
64:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (++) In polling mode, the output of the function is done when the transfer is complete.
65:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (++) In interrupt mode, HAL_QSPI_FifoThresholdCallback() will be called when the fifo thre
66:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** is reached and HAL_QSPI_RxCpltCallback() will be called when the transfer is complete.
67:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (++) In DMA mode,HAL_QSPI_RxCpltCallback() will be called when the transfer is complete.
68:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
69:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** *** Auto-polling functional mode ***
70:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** ====================================
71:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** [..]
72:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (#) Configure the command sequence and the auto-polling functional mode using the
73:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** HAL_QSPI_AutoPolling() or HAL_QSPI_AutoPolling_IT() functions :
74:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (++) Instruction phase : the mode used and if present the instruction opcode.
75:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (++) Address phase : the mode used and if present the size and the address value.
76:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (++) Alternate-bytes phase : the mode used and if present the size and the alternate
77:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** bytes values.
78:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (++) Dummy-cycles phase : the number of dummy cycles (mode used is same as data phase).
79:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (++) Data phase : the mode used.
80:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (++) Double Data Rate (DDR) mode : the activation (or not) of this mode and the delay
81:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if activated.
82:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (++) Sending Instruction Only Once (SIOO) mode : the activation (or not) of this mode.
83:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (++) The size of the status bytes, the match value, the mask used, the match mode (OR/AND)
84:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** the polling interval and the automatic stop activation.
85:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (#) After the configuration :
86:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (++) In polling mode, the output of the function is done when the status match is reached.
87:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** automatic stop is activated to avoid an infinite loop.
88:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (++) In interrupt mode, HAL_QSPI_StatusMatchCallback() will be called each time the status
ARM GAS /tmp/ccNpZKQO.s page 3
89:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
90:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** *** MDMA functional mode ***
91:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** ====================================
92:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** [..]
93:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (#) Configure the SourceInc and DestinationInc of MDMA paramters in the HAL_QSPI_MspInit() fu
94:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (++) MDMA settings for write operation :
95:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (+) The DestinationInc should be MDMA_DEST_INC_DISABLE
96:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (+) The SourceInc must be a value of @ref MDMA_Source_increment_mode (Except the MDMA_SRC
97:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (+) The SourceDataSize must be a value of @ref MDMA Source data size (Except the MDMA_SRC
98:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** aligned with @ref MDMA_Source_increment_mode .
99:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (+) The DestDataSize must be a value of @ref MDMA Destination data size (Except the MDMA_
100:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (++) MDMA settings for read operation :
101:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (+) The SourceInc should be MDMA_SRC_INC_DISABLE
102:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (+) The DestinationInc must be a value of @ref MDMA_Destination_increment_mode (Except th
103:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (+) The SourceDataSize must be a value of @ref MDMA Source data size (Except the MDMA_SRC
104:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (+) The DestDataSize must be a value of @ref MDMA Destination data size (Except the MDMA_
105:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** aligned with @ref MDMA_Destination_increment_mode.
106:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (++)The buffer Transfer Length (BufferTransferLength) = number of bytes in the FIFO (FifoT
107:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (#)In case of wrong MDMA setting
108:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (++) For write operation :
109:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (+) If the DestinationInc is different to MDMA_DEST_INC_DISABLE , it will be disabled by t
110:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (++) For read operation :
111:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (+) If the SourceInc is not set to MDMA_SRC_INC_DISABLE , it will be disabled by the HAL_Q
112:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
113:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** *** Memory-mapped functional mode ***
114:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** =====================================
115:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** [..]
116:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (#) Configure the command sequence and the memory-mapped functional mode using the
117:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** HAL_QSPI_MemoryMapped() functions :
118:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (++) Instruction phase : the mode used and if present the instruction opcode.
119:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (++) Address phase : the mode used and the size.
120:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (++) Alternate-bytes phase : the mode used and if present the size and the alternate
121:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** bytes values.
122:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (++) Dummy-cycles phase : the number of dummy cycles (mode used is same as data phase).
123:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (++) Data phase : the mode used.
124:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (++) Double Data Rate (DDR) mode : the activation (or not) of this mode and the delay
125:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if activated.
126:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (++) Sending Instruction Only Once (SIOO) mode : the activation (or not) of this mode.
127:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (++) The timeout activation and the timeout period.
128:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (#) After the configuration, the QuadSPI will be used as soon as an access on the AHB is done
129:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** the address range. HAL_QSPI_TimeOutCallback() will be called when the timeout expires.
130:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
131:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** *** Errors management and abort functionality ***
132:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** =================================================
133:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** [..]
134:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (#) HAL_QSPI_GetError() function gives the error raised during the last operation.
135:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (#) HAL_QSPI_Abort() and HAL_QSPI_AbortIT() functions aborts any on-going operation and
136:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** flushes the fifo :
137:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (++) In polling mode, the output of the function is done when the transfer
138:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** complete bit is set and the busy bit cleared.
139:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (++) In interrupt mode, HAL_QSPI_AbortCpltCallback() will be called when
140:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** the transfer complete bit is set.
141:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
142:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** *** Control functions ***
143:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** =========================
144:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** [..]
145:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (#) HAL_QSPI_GetState() function gives the current state of the HAL QuadSPI driver.
ARM GAS /tmp/ccNpZKQO.s page 4
146:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (#) HAL_QSPI_SetTimeout() function configures the timeout value used in the driver.
147:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (#) HAL_QSPI_SetFifoThreshold() function configures the threshold on the Fifo of the QSPI IP.
148:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (#) HAL_QSPI_GetFifoThreshold() function gives the current of the Fifo's threshold
149:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (#) HAL_QSPI_SetFlashID() function configures the index of the flash memory to be accessed.
150:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
151:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** *** Callback registration ***
152:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** =============================================
153:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** [..]
154:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** The compilation define USE_HAL_QSPI_REGISTER_CALLBACKS when set to 1
155:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** allows the user to configure dynamically the driver callbacks.
156:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
157:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** Use Functions @ref HAL_QSPI_RegisterCallback() to register a user callback,
158:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** it allows to register following callbacks:
159:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (+) ErrorCallback : callback when error occurs.
160:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (+) AbortCpltCallback : callback when abort is completed.
161:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (+) FifoThresholdCallback : callback when the fifo threshold is reached.
162:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (+) CmdCpltCallback : callback when a command without data is completed.
163:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (+) RxCpltCallback : callback when a reception transfer is completed.
164:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (+) TxCpltCallback : callback when a transmission transfer is completed.
165:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (+) StatusMatchCallback : callback when a status match occurs.
166:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (+) TimeOutCallback : callback when the timeout perioed expires.
167:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (+) MspInitCallback : QSPI MspInit.
168:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (+) MspDeInitCallback : QSPI MspDeInit.
169:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** This function takes as parameters the HAL peripheral handle, the Callback ID
170:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** and a pointer to the user callback function.
171:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
172:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** Use function @ref HAL_QSPI_UnRegisterCallback() to reset a callback to the default
173:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** weak (surcharged) function. It allows to reset following callbacks:
174:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (+) ErrorCallback : callback when error occurs.
175:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (+) AbortCpltCallback : callback when abort is completed.
176:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (+) FifoThresholdCallback : callback when the fifo threshold is reached.
177:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (+) CmdCpltCallback : callback when a command without data is completed.
178:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (+) RxCpltCallback : callback when a reception transfer is completed.
179:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (+) TxCpltCallback : callback when a transmission transfer is completed.
180:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (+) StatusMatchCallback : callback when a status match occurs.
181:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (+) TimeOutCallback : callback when the timeout perioed expires.
182:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (+) MspInitCallback : QSPI MspInit.
183:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (+) MspDeInitCallback : QSPI MspDeInit.
184:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** This function) takes as parameters the HAL peripheral handle and the Callback ID.
185:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
186:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** By default, after the @ref HAL_QSPI_Init and if the state is HAL_QSPI_STATE_RESET
187:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** all callbacks are reset to the corresponding legacy weak (surcharged) functions.
188:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** Exception done for MspInit and MspDeInit callbacks that are respectively
189:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** reset to the legacy weak (surcharged) functions in the @ref HAL_QSPI_Init
190:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** and @ref HAL_QSPI_DeInit only when these callbacks are null (not registered beforehand).
191:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** If not, MspInit or MspDeInit are not null, the @ref HAL_QSPI_Init and @ref HAL_QSPI_DeInit
192:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** keep and use the user MspInit/MspDeInit callbacks (registered beforehand)
193:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
194:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** Callbacks can be registered/unregistered in READY state only.
195:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** Exception done for MspInit/MspDeInit callbacks that can be registered/unregistered
196:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** in READY or RESET state, thus registered (user) MspInit/DeInit callbacks can be used
197:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** during the Init/DeInit.
198:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** In that case first register the MspInit/MspDeInit user callbacks
199:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** using @ref HAL_QSPI_RegisterCallback before calling @ref HAL_QSPI_DeInit
200:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** or @ref HAL_QSPI_Init function.
201:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
202:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** When The compilation define USE_HAL_QSPI_REGISTER_CALLBACKS is set to 0 or
ARM GAS /tmp/ccNpZKQO.s page 5
203:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** not defined, the callback registering feature is not available
204:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** and weak (surcharged) callbacks are used.
205:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
206:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** *** Workarounds linked to Silicon Limitation ***
207:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** ====================================================
208:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** [..]
209:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (#) Workarounds Implemented inside HAL Driver
210:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (++) Extra data written in the FIFO at the end of a read transfer
211:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
212:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** @endverbatim
213:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** ******************************************************************************
214:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @attention
215:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** *
216:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * <h2><center>&copy; Copyright (c) 2017 STMicroelectronics.
217:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * All rights reserved.</center></h2>
218:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** *
219:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * This software component is licensed by ST under BSD 3-Clause license,
220:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * the "License"; You may not use this file except in compliance with the
221:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * License. You may obtain a copy of the License at:
222:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * opensource.org/licenses/BSD-3-Clause
223:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** *
224:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** ******************************************************************************
225:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** */
226:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
227:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Includes ------------------------------------------------------------------*/
228:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** #include "stm32h7xx_hal.h"
229:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
230:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** #if defined(QUADSPI)
231:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
232:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /** @addtogroup STM32H7xx_HAL_Driver
233:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @{
234:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** */
235:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
236:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /** @defgroup QSPI QSPI
237:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @brief QSPI HAL module driver
238:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @{
239:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** */
240:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** #ifdef HAL_QSPI_MODULE_ENABLED
241:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
242:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Private typedef -----------------------------------------------------------*/
243:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
244:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Private define ------------------------------------------------------------*/
245:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /** @defgroup QSPI_Private_Constants QSPI Private Constants
246:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @{
247:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** */
248:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** #define QSPI_FUNCTIONAL_MODE_INDIRECT_WRITE 0x00000000U /*!<Indirect write mode
249:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** #define QSPI_FUNCTIONAL_MODE_INDIRECT_READ ((uint32_t)QUADSPI_CCR_FMODE_0) /*!<Indirect read mode*
250:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** #define QSPI_FUNCTIONAL_MODE_AUTO_POLLING ((uint32_t)QUADSPI_CCR_FMODE_1) /*!<Automatic polling m
251:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** #define QSPI_FUNCTIONAL_MODE_MEMORY_MAPPED ((uint32_t)QUADSPI_CCR_FMODE) /*!<Memory-mapped mode*
252:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /**
253:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @}
254:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** */
255:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
256:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Private macro -------------------------------------------------------------*/
257:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /** @defgroup QSPI_Private_Macros QSPI Private Macros
258:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @{
259:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** */
ARM GAS /tmp/ccNpZKQO.s page 6
260:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** #define IS_QSPI_FUNCTIONAL_MODE(MODE) (((MODE) == QSPI_FUNCTIONAL_MODE_INDIRECT_WRITE) || \
261:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** ((MODE) == QSPI_FUNCTIONAL_MODE_INDIRECT_READ) || \
262:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** ((MODE) == QSPI_FUNCTIONAL_MODE_AUTO_POLLING) || \
263:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** ((MODE) == QSPI_FUNCTIONAL_MODE_MEMORY_MAPPED))
264:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /**
265:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @}
266:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** */
267:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
268:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Private variables ---------------------------------------------------------*/
269:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
270:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Private function prototypes -----------------------------------------------*/
271:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** static void QSPI_DMARxCplt(MDMA_HandleTypeDef *hmdma);
272:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** static void QSPI_DMATxCplt(MDMA_HandleTypeDef *hmdma);
273:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** static void QSPI_DMAError(MDMA_HandleTypeDef *hmdma);
274:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** static void QSPI_DMAAbortCplt(MDMA_HandleTypeDef *hmdma);
275:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** static HAL_StatusTypeDef QSPI_WaitFlagStateUntilTimeout(QSPI_HandleTypeDef *hqspi, uint32_t Flag, F
276:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** static void QSPI_Config(QSPI_HandleTypeDef *hqspi, QSPI_CommandTypeDef *cmd, uint32_t FunctionalMod
277:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
278:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Exported functions --------------------------------------------------------*/
279:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
280:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /** @defgroup QSPI_Exported_Functions QSPI Exported Functions
281:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @{
282:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** */
283:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
284:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /** @defgroup QSPI_Exported_Functions_Group1 Initialization/de-initialization functions
285:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @brief Initialization and Configuration functions
286:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** *
287:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** @verbatim
288:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** ===============================================================================
289:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** ##### Initialization and Configuration functions #####
290:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** ===============================================================================
291:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** [..]
292:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** This subsection provides a set of functions allowing to :
293:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (+) Initialize the QuadSPI.
294:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (+) De-initialize the QuadSPI.
295:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
296:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** @endverbatim
297:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @{
298:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** */
299:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
300:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /**
301:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @brief Initialize the QSPI mode according to the specified parameters
302:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * in the QSPI_InitTypeDef and initialize the associated handle.
303:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @param hqspi : QSPI handle
304:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @retval HAL status
305:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** */
306:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** HAL_StatusTypeDef HAL_QSPI_Init(QSPI_HandleTypeDef *hqspi)
307:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
308:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** HAL_StatusTypeDef status;
309:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** uint32_t tickstart = HAL_GetTick();
310:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
311:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Check the QSPI handle allocation */
312:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if(hqspi == NULL)
313:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
314:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** return HAL_ERROR;
315:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
316:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
ARM GAS /tmp/ccNpZKQO.s page 7
317:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Check the parameters */
318:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** assert_param(IS_QSPI_ALL_INSTANCE(hqspi->Instance));
319:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** assert_param(IS_QSPI_CLOCK_PRESCALER(hqspi->Init.ClockPrescaler));
320:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** assert_param(IS_QSPI_FIFO_THRESHOLD(hqspi->Init.FifoThreshold));
321:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** assert_param(IS_QSPI_SSHIFT(hqspi->Init.SampleShifting));
322:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** assert_param(IS_QSPI_FLASH_SIZE(hqspi->Init.FlashSize));
323:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** assert_param(IS_QSPI_CS_HIGH_TIME(hqspi->Init.ChipSelectHighTime));
324:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** assert_param(IS_QSPI_CLOCK_MODE(hqspi->Init.ClockMode));
325:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** assert_param(IS_QSPI_DUAL_FLASH_MODE(hqspi->Init.DualFlash));
326:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
327:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if (hqspi->Init.DualFlash != QSPI_DUALFLASH_ENABLE )
328:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
329:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** assert_param(IS_QSPI_FLASH_ID(hqspi->Init.FlashID));
330:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
331:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
332:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if(hqspi->State == HAL_QSPI_STATE_RESET)
333:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
334:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
335:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** #if (USE_HAL_QSPI_REGISTER_CALLBACKS == 1)
336:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Reset Callback pointers in HAL_QSPI_STATE_RESET only */
337:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->ErrorCallback = HAL_QSPI_ErrorCallback;
338:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->AbortCpltCallback = HAL_QSPI_AbortCpltCallback;
339:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->FifoThresholdCallback = HAL_QSPI_FifoThresholdCallback;
340:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->CmdCpltCallback = HAL_QSPI_CmdCpltCallback;
341:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->RxCpltCallback = HAL_QSPI_RxCpltCallback;
342:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->TxCpltCallback = HAL_QSPI_TxCpltCallback;
343:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->StatusMatchCallback = HAL_QSPI_StatusMatchCallback;
344:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->TimeOutCallback = HAL_QSPI_TimeOutCallback;
345:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
346:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if(hqspi->MspInitCallback == NULL)
347:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
348:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->MspInitCallback = HAL_QSPI_MspInit;
349:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
350:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
351:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Init the low level hardware */
352:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->MspInitCallback(hqspi);
353:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** #else
354:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Init the low level hardware : GPIO, CLOCK */
355:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** HAL_QSPI_MspInit(hqspi);
356:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** #endif
357:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
358:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Configure the default timeout for the QSPI memory access */
359:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** HAL_QSPI_SetTimeout(hqspi, HAL_QSPI_TIMEOUT_DEFAULT_VALUE);
360:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
361:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
362:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Configure QSPI FIFO Threshold */
363:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** MODIFY_REG(hqspi->Instance->CR, QUADSPI_CR_FTHRES,
364:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** ((hqspi->Init.FifoThreshold - 1U) << QUADSPI_CR_FTHRES_Pos));
365:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
366:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Wait till BUSY flag reset */
367:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** status = QSPI_WaitFlagStateUntilTimeout(hqspi, QSPI_FLAG_BUSY, RESET, tickstart, hqspi->Timeout);
368:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
369:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if(status == HAL_OK)
370:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
371:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Configure QSPI Clock Prescaler and Sample Shift */
372:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** MODIFY_REG(hqspi->Instance->CR, (QUADSPI_CR_PRESCALER | QUADSPI_CR_SSHIFT | QUADSPI_CR_FSEL | Q
373:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** ((hqspi->Init.ClockPrescaler << QUADSPI_CR_PRESCALER_Pos) |
ARM GAS /tmp/ccNpZKQO.s page 8
374:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->Init.SampleShifting | hqspi->Init.FlashID | hqspi->Init.DualFlash));
375:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
376:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Configure QSPI Flash Size, CS High Time and Clock Mode */
377:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** MODIFY_REG(hqspi->Instance->DCR, (QUADSPI_DCR_FSIZE | QUADSPI_DCR_CSHT | QUADSPI_DCR_CKMODE),
378:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** ((hqspi->Init.FlashSize << QUADSPI_DCR_FSIZE_Pos) |
379:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->Init.ChipSelectHighTime | hqspi->Init.ClockMode));
380:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
381:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Enable the QSPI peripheral */
382:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** __HAL_QSPI_ENABLE(hqspi);
383:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
384:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Set QSPI error code to none */
385:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->ErrorCode = HAL_QSPI_ERROR_NONE;
386:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
387:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Initialize the QSPI state */
388:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->State = HAL_QSPI_STATE_READY;
389:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
390:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
391:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Return function status */
392:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** return status;
393:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
394:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
395:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /**
396:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @brief De-Initialize the QSPI peripheral.
397:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @param hqspi : QSPI handle
398:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @retval HAL status
399:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** */
400:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** HAL_StatusTypeDef HAL_QSPI_DeInit(QSPI_HandleTypeDef *hqspi)
401:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
402:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Check the QSPI handle allocation */
403:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if(hqspi == NULL)
404:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
405:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** return HAL_ERROR;
406:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
407:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
408:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Disable the QSPI Peripheral Clock */
409:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** __HAL_QSPI_DISABLE(hqspi);
410:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
411:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** #if (USE_HAL_QSPI_REGISTER_CALLBACKS == 1)
412:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if(hqspi->MspDeInitCallback == NULL)
413:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
414:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->MspDeInitCallback = HAL_QSPI_MspDeInit;
415:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
416:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
417:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* DeInit the low level hardware */
418:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->MspDeInitCallback(hqspi);
419:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** #else
420:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* DeInit the low level hardware: GPIO, CLOCK, NVIC... */
421:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** HAL_QSPI_MspDeInit(hqspi);
422:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** #endif
423:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
424:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Set QSPI error code to none */
425:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->ErrorCode = HAL_QSPI_ERROR_NONE;
426:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
427:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Initialize the QSPI state */
428:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->State = HAL_QSPI_STATE_RESET;
429:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
430:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** return HAL_OK;
ARM GAS /tmp/ccNpZKQO.s page 9
431:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
432:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
433:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /**
434:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @brief Initialize the QSPI MSP.
435:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @param hqspi : QSPI handle
436:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @retval None
437:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** */
438:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** __weak void HAL_QSPI_MspInit(QSPI_HandleTypeDef *hqspi)
439:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
440:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Prevent unused argument(s) compilation warning */
441:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** UNUSED(hqspi);
442:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
443:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* NOTE : This function should not be modified, when the callback is needed,
444:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** the HAL_QSPI_MspInit can be implemented in the user file
445:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** */
446:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
447:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
448:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /**
449:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @brief DeInitialize the QSPI MSP.
450:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @param hqspi : QSPI handle
451:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @retval None
452:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** */
453:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** __weak void HAL_QSPI_MspDeInit(QSPI_HandleTypeDef *hqspi)
454:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
455:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Prevent unused argument(s) compilation warning */
456:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** UNUSED(hqspi);
457:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
458:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* NOTE : This function should not be modified, when the callback is needed,
459:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** the HAL_QSPI_MspDeInit can be implemented in the user file
460:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** */
461:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
462:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
463:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /**
464:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @}
465:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** */
466:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
467:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /** @defgroup QSPI_Exported_Functions_Group2 Input and Output operation functions
468:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @brief QSPI Transmit/Receive functions
469:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** *
470:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** @verbatim
471:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** ===============================================================================
472:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** ##### IO operation functions #####
473:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** ===============================================================================
474:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** [..]
475:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** This subsection provides a set of functions allowing to :
476:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (+) Handle the interrupts.
477:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (+) Handle the command sequence.
478:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (+) Transmit data in blocking, interrupt or DMA mode.
479:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (+) Receive data in blocking, interrupt or DMA mode.
480:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (+) Manage the auto-polling functional mode.
481:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (+) Manage the memory-mapped functional mode.
482:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
483:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** @endverbatim
484:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @{
485:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** */
486:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
487:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /**
ARM GAS /tmp/ccNpZKQO.s page 10
488:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @brief Handle QSPI interrupt request.
489:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @param hqspi : QSPI handle
490:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @retval None
491:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** */
492:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** void HAL_QSPI_IRQHandler(QSPI_HandleTypeDef *hqspi)
493:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
494:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** __IO uint32_t *data_reg;
495:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** uint32_t flag = READ_REG(hqspi->Instance->SR);
496:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** uint32_t itsource = READ_REG(hqspi->Instance->CR);
497:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
498:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* QSPI Fifo Threshold interrupt occurred ----------------------------------*/
499:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if(((flag & QSPI_FLAG_FT) != 0U) && ((itsource & QSPI_IT_FT) != 0U))
500:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
501:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** data_reg = &hqspi->Instance->DR;
502:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
503:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if(hqspi->State == HAL_QSPI_STATE_BUSY_INDIRECT_TX)
504:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
505:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Transmission process */
506:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** while(__HAL_QSPI_GET_FLAG(hqspi, QSPI_FLAG_FT) != RESET)
507:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
508:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if (hqspi->TxXferCount > 0U)
509:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
510:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Fill the FIFO until the threshold is reached */
511:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** *((__IO uint8_t *)data_reg) = *hqspi->pTxBuffPtr;
512:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->pTxBuffPtr++;
513:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->TxXferCount--;
514:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
515:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** else
516:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
517:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* No more data available for the transfer */
518:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Disable the QSPI FIFO Threshold Interrupt */
519:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** __HAL_QSPI_DISABLE_IT(hqspi, QSPI_IT_FT);
520:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** break;
521:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
522:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
523:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
524:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** else if(hqspi->State == HAL_QSPI_STATE_BUSY_INDIRECT_RX)
525:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
526:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Receiving Process */
527:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** while(__HAL_QSPI_GET_FLAG(hqspi, QSPI_FLAG_FT) != RESET)
528:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
529:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if (hqspi->RxXferCount > 0U)
530:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
531:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Read the FIFO until the threshold is reached */
532:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** *hqspi->pRxBuffPtr = *((__IO uint8_t *)data_reg);
533:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->pRxBuffPtr++;
534:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->RxXferCount--;
535:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
536:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** else
537:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
538:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* All data have been received for the transfer */
539:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Disable the QSPI FIFO Threshold Interrupt */
540:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** __HAL_QSPI_DISABLE_IT(hqspi, QSPI_IT_FT);
541:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** break;
542:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
543:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
544:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
ARM GAS /tmp/ccNpZKQO.s page 11
545:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** else
546:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
547:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Nothing to do */
548:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
549:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
550:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* FIFO Threshold callback */
551:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** #if (USE_HAL_QSPI_REGISTER_CALLBACKS == 1)
552:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->FifoThresholdCallback(hqspi);
553:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** #else
554:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** HAL_QSPI_FifoThresholdCallback(hqspi);
555:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** #endif
556:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
557:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
558:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* QSPI Transfer Complete interrupt occurred -------------------------------*/
559:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** else if(((flag & QSPI_FLAG_TC) != 0U) && ((itsource & QSPI_IT_TC) != 0U))
560:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
561:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Clear interrupt */
562:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** WRITE_REG(hqspi->Instance->FCR, QSPI_FLAG_TC);
563:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
564:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Disable the QSPI FIFO Threshold, Transfer Error and Transfer complete Interrupts */
565:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** __HAL_QSPI_DISABLE_IT(hqspi, QSPI_IT_TC | QSPI_IT_TE | QSPI_IT_FT);
566:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
567:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Transfer complete callback */
568:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if(hqspi->State == HAL_QSPI_STATE_BUSY_INDIRECT_TX)
569:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
570:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if ((hqspi->Instance->CR & QUADSPI_CR_DMAEN) != 0U)
571:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
572:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Disable the DMA transfer by clearing the DMAEN bit in the QSPI CR register */
573:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** CLEAR_BIT(hqspi->Instance->CR, QUADSPI_CR_DMAEN);
574:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
575:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Disable the MDMA channel */
576:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** __HAL_MDMA_DISABLE(hqspi->hmdma);
577:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
578:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
579:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
580:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Change state of QSPI */
581:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->State = HAL_QSPI_STATE_READY;
582:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
583:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* TX Complete callback */
584:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** #if (USE_HAL_QSPI_REGISTER_CALLBACKS == 1)
585:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->TxCpltCallback(hqspi);
586:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** #else
587:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** HAL_QSPI_TxCpltCallback(hqspi);
588:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** #endif
589:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
590:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** else if(hqspi->State == HAL_QSPI_STATE_BUSY_INDIRECT_RX)
591:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
592:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if ((hqspi->Instance->CR & QUADSPI_CR_DMAEN) != 0U)
593:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
594:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Disable the DMA transfer by clearing the DMAEN bit in the QSPI CR register */
595:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** CLEAR_BIT(hqspi->Instance->CR, QUADSPI_CR_DMAEN);
596:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
597:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Disable the MDMA channel */
598:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** __HAL_MDMA_DISABLE(hqspi->hmdma);
599:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
600:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** else
601:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
ARM GAS /tmp/ccNpZKQO.s page 12
602:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** data_reg = &hqspi->Instance->DR;
603:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** while(READ_BIT(hqspi->Instance->SR, QUADSPI_SR_FLEVEL) != 0U)
604:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
605:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if (hqspi->RxXferCount > 0U)
606:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
607:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Read the last data received in the FIFO until it is empty */
608:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** *hqspi->pRxBuffPtr = *((__IO uint8_t *)data_reg);
609:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->pRxBuffPtr++;
610:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->RxXferCount--;
611:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
612:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** else
613:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
614:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* All data have been received for the transfer */
615:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** break;
616:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
617:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
618:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
619:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
620:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
621:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Change state of QSPI */
622:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->State = HAL_QSPI_STATE_READY;
623:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
624:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* RX Complete callback */
625:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** #if (USE_HAL_QSPI_REGISTER_CALLBACKS == 1)
626:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->RxCpltCallback(hqspi);
627:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** #else
628:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** HAL_QSPI_RxCpltCallback(hqspi);
629:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** #endif
630:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
631:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** else if(hqspi->State == HAL_QSPI_STATE_BUSY)
632:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
633:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Change state of QSPI */
634:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->State = HAL_QSPI_STATE_READY;
635:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
636:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Command Complete callback */
637:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** #if (USE_HAL_QSPI_REGISTER_CALLBACKS == 1)
638:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->CmdCpltCallback(hqspi);
639:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** #else
640:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** HAL_QSPI_CmdCpltCallback(hqspi);
641:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** #endif
642:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
643:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** else if(hqspi->State == HAL_QSPI_STATE_ABORT)
644:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
645:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Reset functional mode configuration to indirect write mode by default */
646:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** CLEAR_BIT(hqspi->Instance->CCR, QUADSPI_CCR_FMODE);
647:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
648:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Change state of QSPI */
649:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->State = HAL_QSPI_STATE_READY;
650:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
651:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if (hqspi->ErrorCode == HAL_QSPI_ERROR_NONE)
652:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
653:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Abort called by the user */
654:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
655:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Abort Complete callback */
656:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** #if (USE_HAL_QSPI_REGISTER_CALLBACKS == 1)
657:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->AbortCpltCallback(hqspi);
658:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** #else
ARM GAS /tmp/ccNpZKQO.s page 13
659:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** HAL_QSPI_AbortCpltCallback(hqspi);
660:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** #endif
661:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
662:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** else
663:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
664:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Abort due to an error (eg : MDMA error) */
665:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
666:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Error callback */
667:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** #if (USE_HAL_QSPI_REGISTER_CALLBACKS == 1)
668:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->ErrorCallback(hqspi);
669:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** #else
670:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** HAL_QSPI_ErrorCallback(hqspi);
671:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** #endif
672:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
673:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
674:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** else
675:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
676:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Nothing to do */
677:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
678:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
679:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
680:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* QSPI Status Match interrupt occurred ------------------------------------*/
681:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** else if(((flag & QSPI_FLAG_SM) != 0U) && ((itsource & QSPI_IT_SM) != 0U))
682:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
683:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Clear interrupt */
684:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** WRITE_REG(hqspi->Instance->FCR, QSPI_FLAG_SM);
685:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
686:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Check if the automatic poll mode stop is activated */
687:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if(READ_BIT(hqspi->Instance->CR, QUADSPI_CR_APMS) != 0U)
688:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
689:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Disable the QSPI Transfer Error and Status Match Interrupts */
690:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** __HAL_QSPI_DISABLE_IT(hqspi, (QSPI_IT_SM | QSPI_IT_TE));
691:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
692:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Change state of QSPI */
693:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->State = HAL_QSPI_STATE_READY;
694:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
695:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
696:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Status match callback */
697:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** #if (USE_HAL_QSPI_REGISTER_CALLBACKS == 1)
698:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->StatusMatchCallback(hqspi);
699:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** #else
700:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** HAL_QSPI_StatusMatchCallback(hqspi);
701:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** #endif
702:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
703:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
704:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* QSPI Transfer Error interrupt occurred ----------------------------------*/
705:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** else if(((flag & QSPI_FLAG_TE) != 0U) && ((itsource & QSPI_IT_TE) != 0U))
706:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
707:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Clear interrupt */
708:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** WRITE_REG(hqspi->Instance->FCR, QSPI_FLAG_TE);
709:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
710:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Disable all the QSPI Interrupts */
711:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** __HAL_QSPI_DISABLE_IT(hqspi, QSPI_IT_SM | QSPI_IT_TC | QSPI_IT_TE | QSPI_IT_FT);
712:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
713:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Set error code */
714:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->ErrorCode |= HAL_QSPI_ERROR_TRANSFER;
715:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
ARM GAS /tmp/ccNpZKQO.s page 14
716:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if ((hqspi->Instance->CR & QUADSPI_CR_DMAEN) != 0U)
717:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
718:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Disable the DMA transfer by clearing the DMAEN bit in the QSPI CR register */
719:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** CLEAR_BIT(hqspi->Instance->CR, QUADSPI_CR_DMAEN);
720:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
721:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Disable the MDMA channel */
722:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->hmdma->XferAbortCallback = QSPI_DMAAbortCplt;
723:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if (HAL_MDMA_Abort_IT(hqspi->hmdma) != HAL_OK)
724:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
725:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Set error code to DMA */
726:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->ErrorCode |= HAL_QSPI_ERROR_DMA;
727:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
728:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Change state of QSPI */
729:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->State = HAL_QSPI_STATE_READY;
730:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
731:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Error callback */
732:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** #if (USE_HAL_QSPI_REGISTER_CALLBACKS == 1)
733:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->ErrorCallback(hqspi);
734:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** #else
735:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** HAL_QSPI_ErrorCallback(hqspi);
736:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** #endif
737:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
738:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
739:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** else
740:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
741:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Change state of QSPI */
742:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->State = HAL_QSPI_STATE_READY;
743:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
744:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Error callback */
745:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** #if (USE_HAL_QSPI_REGISTER_CALLBACKS == 1)
746:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->ErrorCallback(hqspi);
747:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** #else
748:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** HAL_QSPI_ErrorCallback(hqspi);
749:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** #endif
750:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
751:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
752:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
753:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* QSPI Timeout interrupt occurred -----------------------------------------*/
754:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** else if(((flag & QSPI_FLAG_TO) != 0U) && ((itsource & QSPI_IT_TO) != 0U))
755:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
756:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Clear interrupt */
757:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** WRITE_REG(hqspi->Instance->FCR, QSPI_FLAG_TO);
758:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
759:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Timeout callback */
760:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** #if (USE_HAL_QSPI_REGISTER_CALLBACKS == 1)
761:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->TimeOutCallback(hqspi);
762:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** #else
763:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** HAL_QSPI_TimeOutCallback(hqspi);
764:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** #endif
765:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
766:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
767:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** else
768:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
769:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Nothing to do */
770:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
771:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
772:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
ARM GAS /tmp/ccNpZKQO.s page 15
773:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /**
774:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @brief Set the command configuration.
775:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @param hqspi : QSPI handle
776:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @param cmd : structure that contains the command configuration information
777:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @param Timeout : Timeout duration
778:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @note This function is used only in Indirect Read or Write Modes
779:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @retval HAL status
780:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** */
781:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** HAL_StatusTypeDef HAL_QSPI_Command(QSPI_HandleTypeDef *hqspi, QSPI_CommandTypeDef *cmd, uint32_t Ti
782:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
783:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** HAL_StatusTypeDef status;
784:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** uint32_t tickstart = HAL_GetTick();
785:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
786:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Check the parameters */
787:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** assert_param(IS_QSPI_INSTRUCTION_MODE(cmd->InstructionMode));
788:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if (cmd->InstructionMode != QSPI_INSTRUCTION_NONE)
789:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
790:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** assert_param(IS_QSPI_INSTRUCTION(cmd->Instruction));
791:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
792:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
793:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** assert_param(IS_QSPI_ADDRESS_MODE(cmd->AddressMode));
794:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if (cmd->AddressMode != QSPI_ADDRESS_NONE)
795:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
796:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** assert_param(IS_QSPI_ADDRESS_SIZE(cmd->AddressSize));
797:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
798:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
799:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** assert_param(IS_QSPI_ALTERNATE_BYTES_MODE(cmd->AlternateByteMode));
800:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if (cmd->AlternateByteMode != QSPI_ALTERNATE_BYTES_NONE)
801:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
802:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** assert_param(IS_QSPI_ALTERNATE_BYTES_SIZE(cmd->AlternateBytesSize));
803:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
804:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
805:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** assert_param(IS_QSPI_DUMMY_CYCLES(cmd->DummyCycles));
806:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** assert_param(IS_QSPI_DATA_MODE(cmd->DataMode));
807:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
808:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** assert_param(IS_QSPI_DDR_MODE(cmd->DdrMode));
809:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** assert_param(IS_QSPI_DDR_HHC(cmd->DdrHoldHalfCycle));
810:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** assert_param(IS_QSPI_SIOO_MODE(cmd->SIOOMode));
811:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
812:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Process locked */
813:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** __HAL_LOCK(hqspi);
814:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
815:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if(hqspi->State == HAL_QSPI_STATE_READY)
816:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
817:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->ErrorCode = HAL_QSPI_ERROR_NONE;
818:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
819:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Update QSPI state */
820:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->State = HAL_QSPI_STATE_BUSY;
821:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
822:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Wait till BUSY flag reset */
823:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** status = QSPI_WaitFlagStateUntilTimeout(hqspi, QSPI_FLAG_BUSY, RESET, tickstart, Timeout);
824:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
825:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if (status == HAL_OK)
826:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
827:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Call the configuration function */
828:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** QSPI_Config(hqspi, cmd, QSPI_FUNCTIONAL_MODE_INDIRECT_WRITE);
829:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
ARM GAS /tmp/ccNpZKQO.s page 16
830:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if (cmd->DataMode == QSPI_DATA_NONE)
831:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
832:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* When there is no data phase, the transfer start as soon as the configuration is done
833:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** so wait until TC flag is set to go back in idle state */
834:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** status = QSPI_WaitFlagStateUntilTimeout(hqspi, QSPI_FLAG_TC, SET, tickstart, Timeout);
835:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
836:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if (status == HAL_OK)
837:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
838:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** __HAL_QSPI_CLEAR_FLAG(hqspi, QSPI_FLAG_TC);
839:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
840:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Update QSPI state */
841:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->State = HAL_QSPI_STATE_READY;
842:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
843:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
844:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** else
845:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
846:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Update QSPI state */
847:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->State = HAL_QSPI_STATE_READY;
848:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
849:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
850:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
851:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** else
852:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
853:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** status = HAL_BUSY;
854:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
855:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
856:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Process unlocked */
857:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** __HAL_UNLOCK(hqspi);
858:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
859:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Return function status */
860:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** return status;
861:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
862:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
863:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /**
864:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @brief Set the command configuration in interrupt mode.
865:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @param hqspi : QSPI handle
866:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @param cmd : structure that contains the command configuration information
867:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @note This function is used only in Indirect Read or Write Modes
868:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @retval HAL status
869:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** */
870:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** HAL_StatusTypeDef HAL_QSPI_Command_IT(QSPI_HandleTypeDef *hqspi, QSPI_CommandTypeDef *cmd)
871:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
872:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** HAL_StatusTypeDef status;
873:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** uint32_t tickstart = HAL_GetTick();
874:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
875:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Check the parameters */
876:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** assert_param(IS_QSPI_INSTRUCTION_MODE(cmd->InstructionMode));
877:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if (cmd->InstructionMode != QSPI_INSTRUCTION_NONE)
878:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
879:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** assert_param(IS_QSPI_INSTRUCTION(cmd->Instruction));
880:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
881:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
882:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** assert_param(IS_QSPI_ADDRESS_MODE(cmd->AddressMode));
883:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if (cmd->AddressMode != QSPI_ADDRESS_NONE)
884:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
885:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** assert_param(IS_QSPI_ADDRESS_SIZE(cmd->AddressSize));
886:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
ARM GAS /tmp/ccNpZKQO.s page 17
887:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
888:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** assert_param(IS_QSPI_ALTERNATE_BYTES_MODE(cmd->AlternateByteMode));
889:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if (cmd->AlternateByteMode != QSPI_ALTERNATE_BYTES_NONE)
890:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
891:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** assert_param(IS_QSPI_ALTERNATE_BYTES_SIZE(cmd->AlternateBytesSize));
892:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
893:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
894:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** assert_param(IS_QSPI_DUMMY_CYCLES(cmd->DummyCycles));
895:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** assert_param(IS_QSPI_DATA_MODE(cmd->DataMode));
896:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
897:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** assert_param(IS_QSPI_DDR_MODE(cmd->DdrMode));
898:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** assert_param(IS_QSPI_DDR_HHC(cmd->DdrHoldHalfCycle));
899:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** assert_param(IS_QSPI_SIOO_MODE(cmd->SIOOMode));
900:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
901:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Process locked */
902:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** __HAL_LOCK(hqspi);
903:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
904:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if(hqspi->State == HAL_QSPI_STATE_READY)
905:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
906:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->ErrorCode = HAL_QSPI_ERROR_NONE;
907:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
908:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Update QSPI state */
909:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->State = HAL_QSPI_STATE_BUSY;
910:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
911:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Wait till BUSY flag reset */
912:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** status = QSPI_WaitFlagStateUntilTimeout(hqspi, QSPI_FLAG_BUSY, RESET, tickstart, hqspi->Timeout
913:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
914:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if (status == HAL_OK)
915:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
916:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if (cmd->DataMode == QSPI_DATA_NONE)
917:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
918:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Clear interrupt */
919:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** __HAL_QSPI_CLEAR_FLAG(hqspi, QSPI_FLAG_TE | QSPI_FLAG_TC);
920:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
921:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
922:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Call the configuration function */
923:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** QSPI_Config(hqspi, cmd, QSPI_FUNCTIONAL_MODE_INDIRECT_WRITE);
924:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
925:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if (cmd->DataMode == QSPI_DATA_NONE)
926:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
927:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* When there is no data phase, the transfer start as soon as the configuration is done
928:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** so activate TC and TE interrupts */
929:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Process unlocked */
930:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** __HAL_UNLOCK(hqspi);
931:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
932:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Enable the QSPI Transfer Error Interrupt */
933:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** __HAL_QSPI_ENABLE_IT(hqspi, QSPI_IT_TE | QSPI_IT_TC);
934:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
935:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** else
936:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
937:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Update QSPI state */
938:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->State = HAL_QSPI_STATE_READY;
939:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
940:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Process unlocked */
941:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** __HAL_UNLOCK(hqspi);
942:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
943:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
ARM GAS /tmp/ccNpZKQO.s page 18
944:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** else
945:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
946:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Process unlocked */
947:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** __HAL_UNLOCK(hqspi);
948:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
949:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
950:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** else
951:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
952:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** status = HAL_BUSY;
953:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
954:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Process unlocked */
955:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** __HAL_UNLOCK(hqspi);
956:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
957:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
958:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Return function status */
959:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** return status;
960:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
961:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
962:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /**
963:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @brief Transmit an amount of data in blocking mode.
964:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @param hqspi : QSPI handle
965:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @param pData : pointer to data buffer
966:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @param Timeout : Timeout duration
967:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @note This function is used only in Indirect Write Mode
968:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
969:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @retval HAL status
970:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** */
971:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** HAL_StatusTypeDef HAL_QSPI_Transmit(QSPI_HandleTypeDef *hqspi, uint8_t *pData, uint32_t Timeout)
972:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
973:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** HAL_StatusTypeDef status = HAL_OK;
974:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** uint32_t tickstart = HAL_GetTick();
975:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** __IO uint32_t *data_reg = &hqspi->Instance->DR;
976:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
977:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Process locked */
978:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** __HAL_LOCK(hqspi);
979:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
980:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if(hqspi->State == HAL_QSPI_STATE_READY)
981:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
982:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->ErrorCode = HAL_QSPI_ERROR_NONE;
983:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
984:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if(pData != NULL )
985:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
986:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Update state */
987:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->State = HAL_QSPI_STATE_BUSY_INDIRECT_TX;
988:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
989:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Configure counters and size of the handle */
990:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->TxXferCount = READ_REG(hqspi->Instance->DLR) + 1U;
991:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->TxXferSize = READ_REG(hqspi->Instance->DLR) + 1U;
992:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->pTxBuffPtr = pData;
993:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
994:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Configure QSPI: CCR register with functional as indirect write */
995:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** MODIFY_REG(hqspi->Instance->CCR, QUADSPI_CCR_FMODE, QSPI_FUNCTIONAL_MODE_INDIRECT_WRITE);
996:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
997:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** while(hqspi->TxXferCount > 0U)
998:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
999:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Wait until FT flag is set to send data */
1000:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** status = QSPI_WaitFlagStateUntilTimeout(hqspi, QSPI_FLAG_FT, SET, tickstart, Timeout);
ARM GAS /tmp/ccNpZKQO.s page 19
1001:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1002:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if (status != HAL_OK)
1003:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1004:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** break;
1005:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1006:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1007:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** *((__IO uint8_t *)data_reg) = *hqspi->pTxBuffPtr;
1008:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->pTxBuffPtr++;
1009:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->TxXferCount--;
1010:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1011:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1012:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if (status == HAL_OK)
1013:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1014:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Wait until TC flag is set to go back in idle state */
1015:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** status = QSPI_WaitFlagStateUntilTimeout(hqspi, QSPI_FLAG_TC, SET, tickstart, Timeout);
1016:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1017:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if (status == HAL_OK)
1018:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1019:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Clear Transfer Complete bit */
1020:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** __HAL_QSPI_CLEAR_FLAG(hqspi, QSPI_FLAG_TC);
1021:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1022:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1023:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1024:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1025:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Update QSPI state */
1026:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->State = HAL_QSPI_STATE_READY;
1027:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1028:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** else
1029:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1030:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->ErrorCode |= HAL_QSPI_ERROR_INVALID_PARAM;
1031:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** status = HAL_ERROR;
1032:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1033:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1034:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** else
1035:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1036:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** status = HAL_BUSY;
1037:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1038:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1039:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Process unlocked */
1040:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** __HAL_UNLOCK(hqspi);
1041:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1042:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** return status;
1043:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1044:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1045:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1046:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /**
1047:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @brief Receive an amount of data in blocking mode.
1048:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @param hqspi : QSPI handle
1049:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @param pData : pointer to data buffer
1050:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @param Timeout : Timeout duration
1051:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @note This function is used only in Indirect Read Mode
1052:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @retval HAL status
1053:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** */
1054:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** HAL_StatusTypeDef HAL_QSPI_Receive(QSPI_HandleTypeDef *hqspi, uint8_t *pData, uint32_t Timeout)
1055:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1056:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** HAL_StatusTypeDef status = HAL_OK;
1057:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** uint32_t tickstart = HAL_GetTick();
ARM GAS /tmp/ccNpZKQO.s page 20
1058:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** uint32_t addr_reg = READ_REG(hqspi->Instance->AR);
1059:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** __IO uint32_t *data_reg = &hqspi->Instance->DR;
1060:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1061:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Process locked */
1062:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** __HAL_LOCK(hqspi);
1063:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1064:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if(hqspi->State == HAL_QSPI_STATE_READY)
1065:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1066:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->ErrorCode = HAL_QSPI_ERROR_NONE;
1067:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1068:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if(pData != NULL )
1069:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1070:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Update state */
1071:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->State = HAL_QSPI_STATE_BUSY_INDIRECT_RX;
1072:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1073:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Configure counters and size of the handle */
1074:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->RxXferCount = READ_REG(hqspi->Instance->DLR) + 1U;
1075:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->RxXferSize = READ_REG(hqspi->Instance->DLR) + 1U;
1076:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->pRxBuffPtr = pData;
1077:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1078:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Configure QSPI: CCR register with functional as indirect read */
1079:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** MODIFY_REG(hqspi->Instance->CCR, QUADSPI_CCR_FMODE, QSPI_FUNCTIONAL_MODE_INDIRECT_READ);
1080:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1081:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Start the transfer by re-writing the address in AR register */
1082:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** WRITE_REG(hqspi->Instance->AR, addr_reg);
1083:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1084:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** while(hqspi->RxXferCount > 0U)
1085:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1086:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Wait until FT or TC flag is set to read received data */
1087:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** status = QSPI_WaitFlagStateUntilTimeout(hqspi, (QSPI_FLAG_FT | QSPI_FLAG_TC), SET, tickstar
1088:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1089:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if (status != HAL_OK)
1090:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1091:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** break;
1092:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1093:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1094:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** *hqspi->pRxBuffPtr = *((__IO uint8_t *)data_reg);
1095:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->pRxBuffPtr++;
1096:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->RxXferCount--;
1097:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1098:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1099:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if (status == HAL_OK)
1100:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1101:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Wait until TC flag is set to go back in idle state */
1102:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** status = QSPI_WaitFlagStateUntilTimeout(hqspi, QSPI_FLAG_TC, SET, tickstart, Timeout);
1103:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1104:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if (status == HAL_OK)
1105:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1106:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Clear Transfer Complete bit */
1107:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** __HAL_QSPI_CLEAR_FLAG(hqspi, QSPI_FLAG_TC);
1108:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1109:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1110:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1111:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1112:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Update QSPI state */
1113:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->State = HAL_QSPI_STATE_READY;
1114:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
ARM GAS /tmp/ccNpZKQO.s page 21
1115:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** else
1116:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1117:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->ErrorCode |= HAL_QSPI_ERROR_INVALID_PARAM;
1118:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** status = HAL_ERROR;
1119:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1120:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1121:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** else
1122:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1123:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** status = HAL_BUSY;
1124:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1125:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1126:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Process unlocked */
1127:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** __HAL_UNLOCK(hqspi);
1128:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1129:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** return status;
1130:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1131:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1132:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /**
1133:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @brief Send an amount of data in non-blocking mode with interrupt.
1134:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @param hqspi : QSPI handle
1135:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @param pData : pointer to data buffer
1136:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @note This function is used only in Indirect Write Mode
1137:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @retval HAL status
1138:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** */
1139:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** HAL_StatusTypeDef HAL_QSPI_Transmit_IT(QSPI_HandleTypeDef *hqspi, uint8_t *pData)
1140:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1141:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** HAL_StatusTypeDef status = HAL_OK;
1142:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1143:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Process locked */
1144:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** __HAL_LOCK(hqspi);
1145:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1146:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if(hqspi->State == HAL_QSPI_STATE_READY)
1147:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1148:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->ErrorCode = HAL_QSPI_ERROR_NONE;
1149:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1150:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if(pData != NULL )
1151:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1152:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Update state */
1153:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->State = HAL_QSPI_STATE_BUSY_INDIRECT_TX;
1154:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1155:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Configure counters and size of the handle */
1156:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->TxXferCount = READ_REG(hqspi->Instance->DLR) + 1U;
1157:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->TxXferSize = READ_REG(hqspi->Instance->DLR) + 1U;
1158:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->pTxBuffPtr = pData;
1159:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1160:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Clear interrupt */
1161:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** __HAL_QSPI_CLEAR_FLAG(hqspi, QSPI_FLAG_TE | QSPI_FLAG_TC);
1162:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1163:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Configure QSPI: CCR register with functional as indirect write */
1164:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** MODIFY_REG(hqspi->Instance->CCR, QUADSPI_CCR_FMODE, QSPI_FUNCTIONAL_MODE_INDIRECT_WRITE);
1165:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1166:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Process unlocked */
1167:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** __HAL_UNLOCK(hqspi);
1168:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1169:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Enable the QSPI transfer error, FIFO threshold and transfer complete Interrupts */
1170:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** __HAL_QSPI_ENABLE_IT(hqspi, QSPI_IT_TE | QSPI_IT_FT | QSPI_IT_TC);
1171:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
ARM GAS /tmp/ccNpZKQO.s page 22
1172:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** else
1173:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1174:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->ErrorCode |= HAL_QSPI_ERROR_INVALID_PARAM;
1175:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** status = HAL_ERROR;
1176:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1177:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Process unlocked */
1178:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** __HAL_UNLOCK(hqspi);
1179:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1180:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1181:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** else
1182:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1183:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** status = HAL_BUSY;
1184:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1185:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Process unlocked */
1186:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** __HAL_UNLOCK(hqspi);
1187:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1188:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1189:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** return status;
1190:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1191:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1192:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /**
1193:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @brief Receive an amount of data in non-blocking mode with interrupt.
1194:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @param hqspi : QSPI handle
1195:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @param pData : pointer to data buffer
1196:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @note This function is used only in Indirect Read Mode
1197:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @retval HAL status
1198:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** */
1199:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** HAL_StatusTypeDef HAL_QSPI_Receive_IT(QSPI_HandleTypeDef *hqspi, uint8_t *pData)
1200:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1201:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** HAL_StatusTypeDef status = HAL_OK;
1202:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** uint32_t addr_reg = READ_REG(hqspi->Instance->AR);
1203:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1204:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Process locked */
1205:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** __HAL_LOCK(hqspi);
1206:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1207:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if(hqspi->State == HAL_QSPI_STATE_READY)
1208:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1209:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->ErrorCode = HAL_QSPI_ERROR_NONE;
1210:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1211:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if(pData != NULL )
1212:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1213:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Update state */
1214:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->State = HAL_QSPI_STATE_BUSY_INDIRECT_RX;
1215:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1216:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Configure counters and size of the handle */
1217:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->RxXferCount = READ_REG(hqspi->Instance->DLR) + 1U;
1218:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->RxXferSize = READ_REG(hqspi->Instance->DLR) + 1U;
1219:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->pRxBuffPtr = pData;
1220:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1221:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Clear interrupt */
1222:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** __HAL_QSPI_CLEAR_FLAG(hqspi, QSPI_FLAG_TE | QSPI_FLAG_TC);
1223:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1224:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Configure QSPI: CCR register with functional as indirect read */
1225:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** MODIFY_REG(hqspi->Instance->CCR, QUADSPI_CCR_FMODE, QSPI_FUNCTIONAL_MODE_INDIRECT_READ);
1226:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1227:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Start the transfer by re-writing the address in AR register */
1228:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** WRITE_REG(hqspi->Instance->AR, addr_reg);
ARM GAS /tmp/ccNpZKQO.s page 23
1229:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1230:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Process unlocked */
1231:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** __HAL_UNLOCK(hqspi);
1232:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1233:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Enable the QSPI transfer error, FIFO threshold and transfer complete Interrupts */
1234:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** __HAL_QSPI_ENABLE_IT(hqspi, QSPI_IT_TE | QSPI_IT_FT | QSPI_IT_TC);
1235:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1236:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** else
1237:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1238:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->ErrorCode |= HAL_QSPI_ERROR_INVALID_PARAM;
1239:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** status = HAL_ERROR;
1240:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1241:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Process unlocked */
1242:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** __HAL_UNLOCK(hqspi);
1243:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1244:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1245:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** else
1246:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1247:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** status = HAL_BUSY;
1248:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1249:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Process unlocked */
1250:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** __HAL_UNLOCK(hqspi);
1251:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1252:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1253:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** return status;
1254:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1255:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1256:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /**
1257:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @brief Send an amount of data in non-blocking mode with DMA.
1258:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @param hqspi : QSPI handle
1259:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @param pData : pointer to data buffer
1260:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @note This function is used only in Indirect Write Mode
1261:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @retval HAL status
1262:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** */
1263:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** HAL_StatusTypeDef HAL_QSPI_Transmit_DMA(QSPI_HandleTypeDef *hqspi, uint8_t *pData)
1264:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1265:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** HAL_StatusTypeDef status = HAL_OK;
1266:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** uint32_t data_size = (READ_REG(hqspi->Instance->DLR) + 1U);
1267:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1268:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Process locked */
1269:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** __HAL_LOCK(hqspi);
1270:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1271:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if(hqspi->State == HAL_QSPI_STATE_READY)
1272:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1273:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Clear the error code */
1274:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->ErrorCode = HAL_QSPI_ERROR_NONE;
1275:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1276:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if(pData != NULL )
1277:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1278:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Configure counters of the handle */
1279:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->TxXferCount = data_size;
1280:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1281:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Update state */
1282:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->State = HAL_QSPI_STATE_BUSY_INDIRECT_TX;
1283:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1284:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Clear interrupt */
1285:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** __HAL_QSPI_CLEAR_FLAG(hqspi, (QSPI_FLAG_TE | QSPI_FLAG_TC));
ARM GAS /tmp/ccNpZKQO.s page 24
1286:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1287:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Configure size and pointer of the handle */
1288:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->TxXferSize = hqspi->TxXferCount;
1289:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->pTxBuffPtr = pData;
1290:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1291:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Configure QSPI: CCR register with functional mode as indirect write */
1292:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** MODIFY_REG(hqspi->Instance->CCR, QUADSPI_CCR_FMODE, QSPI_FUNCTIONAL_MODE_INDIRECT_WRITE);
1293:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1294:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Set the QSPI MDMA transfer complete callback */
1295:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->hmdma->XferCpltCallback = QSPI_DMATxCplt;
1296:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1297:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Set the MDMA error callback */
1298:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->hmdma->XferErrorCallback = QSPI_DMAError;
1299:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1300:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Clear the MDMA abort callback */
1301:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->hmdma->XferAbortCallback = NULL;
1302:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1303:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* In Transmit mode , the MDMA destination is the QSPI DR register : Force the MDMA Destina
1304:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** MODIFY_REG(hqspi->hmdma->Instance->CTCR, (MDMA_CTCR_DINC | MDMA_CTCR_DINCOS) ,MDMA_DEST_INC
1305:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1306:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Update MDMA configuration with the correct SourceInc field for Write operation */
1307:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if (hqspi->hmdma->Init.SourceDataSize == MDMA_SRC_DATASIZE_BYTE)
1308:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1309:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** MODIFY_REG(hqspi->hmdma->Instance->CTCR, (MDMA_CTCR_SINC | MDMA_CTCR_SINCOS) , MDMA_SRC_I
1310:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1311:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** else if (hqspi->hmdma->Init.SourceDataSize == MDMA_SRC_DATASIZE_HALFWORD)
1312:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1313:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** MODIFY_REG(hqspi->hmdma->Instance->CTCR, (MDMA_CTCR_SINC | MDMA_CTCR_SINCOS) , MDMA_SRC_I
1314:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1315:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** else if (hqspi->hmdma->Init.SourceDataSize == MDMA_SRC_DATASIZE_WORD)
1316:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1317:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** MODIFY_REG(hqspi->hmdma->Instance->CTCR, (MDMA_CTCR_SINC | MDMA_CTCR_SINCOS) , MDMA_SRC_I
1318:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1319:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** else
1320:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1321:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* in case of incorrect source data size */
1322:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->ErrorCode |= HAL_QSPI_ERROR_DMA;
1323:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** status = HAL_ERROR;
1324:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1325:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1326:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Enable the QSPI transmit MDMA */
1327:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if (HAL_MDMA_Start_IT(hqspi->hmdma, (uint32_t)pData, (uint32_t)&hqspi->Instance->DR, hqspi-
1328:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1329:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Process unlocked */
1330:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** __HAL_UNLOCK(hqspi);
1331:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1332:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Enable the QSPI transfer error Interrupt */
1333:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** __HAL_QSPI_ENABLE_IT(hqspi, QSPI_IT_TE);
1334:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1335:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Enable the MDMA transfer by setting the DMAEN bit in the QSPI CR register */
1336:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** SET_BIT(hqspi->Instance->CR, QUADSPI_CR_DMAEN);
1337:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1338:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** else
1339:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1340:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** status = HAL_ERROR;
1341:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->ErrorCode |= HAL_QSPI_ERROR_DMA;
1342:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->State = HAL_QSPI_STATE_READY;
ARM GAS /tmp/ccNpZKQO.s page 25
1343:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1344:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Process unlocked */
1345:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** __HAL_UNLOCK(hqspi);
1346:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1347:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1348:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** else
1349:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1350:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->ErrorCode |= HAL_QSPI_ERROR_INVALID_PARAM;
1351:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** status = HAL_ERROR;
1352:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1353:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Process unlocked */
1354:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** __HAL_UNLOCK(hqspi);
1355:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1356:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1357:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** else
1358:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1359:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** status = HAL_BUSY;
1360:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1361:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Process unlocked */
1362:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** __HAL_UNLOCK(hqspi);
1363:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1364:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1365:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** return status;
1366:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1367:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1368:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /**
1369:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @brief Receive an amount of data in non-blocking mode with DMA.
1370:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @param hqspi : QSPI handle
1371:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @param pData : pointer to data buffer.
1372:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @note This function is used only in Indirect Read Mode
1373:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @retval HAL status
1374:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** */
1375:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** HAL_StatusTypeDef HAL_QSPI_Receive_DMA(QSPI_HandleTypeDef *hqspi, uint8_t *pData)
1376:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1377:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** HAL_StatusTypeDef status = HAL_OK;
1378:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** uint32_t addr_reg = READ_REG(hqspi->Instance->AR);
1379:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** uint32_t data_size = (READ_REG(hqspi->Instance->DLR) + 1U);
1380:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1381:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Process locked */
1382:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** __HAL_LOCK(hqspi);
1383:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1384:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if(hqspi->State == HAL_QSPI_STATE_READY)
1385:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1386:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Clear the error code */
1387:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->ErrorCode = HAL_QSPI_ERROR_NONE;
1388:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1389:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if(pData != NULL )
1390:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1391:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Configure counters of the handle */
1392:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->RxXferCount = data_size;
1393:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Update state */
1394:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->State = HAL_QSPI_STATE_BUSY_INDIRECT_RX;
1395:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1396:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Clear interrupt */
1397:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** __HAL_QSPI_CLEAR_FLAG(hqspi, (QSPI_FLAG_TE | QSPI_FLAG_TC));
1398:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1399:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Configure size and pointer of the handle */
ARM GAS /tmp/ccNpZKQO.s page 26
1400:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->RxXferSize = hqspi->RxXferCount;
1401:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->pRxBuffPtr = pData;
1402:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1403:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Set the QSPI MDMA transfer complete callback */
1404:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->hmdma->XferCpltCallback = QSPI_DMARxCplt;
1405:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1406:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Set the MDMA error callback */
1407:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->hmdma->XferErrorCallback = QSPI_DMAError;
1408:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1409:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Clear the MDMA abort callback */
1410:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->hmdma->XferAbortCallback = NULL;
1411:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1412:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* In Receive mode , the MDMA source is the QSPI DR register : Force the MDMA Source Incremen
1413:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** MODIFY_REG(hqspi->hmdma->Instance->CTCR, (MDMA_CTCR_SINC | MDMA_CTCR_SINCOS) , MDMA_SRC_INC_D
1414:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1415:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Update MDMA configuration with the correct DestinationInc field for read operation */
1416:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if (hqspi->hmdma->Init.DestDataSize == MDMA_DEST_DATASIZE_BYTE)
1417:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1418:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** MODIFY_REG(hqspi->hmdma->Instance->CTCR, (MDMA_CTCR_DINC | MDMA_CTCR_DINCOS) , MDMA_DEST_IN
1419:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1420:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** else if (hqspi->hmdma->Init.DestDataSize == MDMA_DEST_DATASIZE_HALFWORD)
1421:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1422:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** MODIFY_REG(hqspi->hmdma->Instance->CTCR, (MDMA_CTCR_DINC | MDMA_CTCR_DINCOS) , MDMA_DEST_IN
1423:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1424:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** else if (hqspi->hmdma->Init.DestDataSize == MDMA_DEST_DATASIZE_WORD)
1425:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1426:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** MODIFY_REG(hqspi->hmdma->Instance->CTCR, (MDMA_CTCR_DINC | MDMA_CTCR_DINCOS) , MDMA_DEST_IN
1427:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1428:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** else
1429:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1430:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* in case of incorrect destination data size */
1431:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->ErrorCode |= HAL_QSPI_ERROR_DMA;
1432:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** status = HAL_ERROR;
1433:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1434:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Configure QSPI: CCR register with functional as indirect read */
1435:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** MODIFY_REG(hqspi->Instance->CCR, QUADSPI_CCR_FMODE, QSPI_FUNCTIONAL_MODE_INDIRECT_READ);
1436:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1437:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Start the transfer by re-writing the address in AR register */
1438:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** WRITE_REG(hqspi->Instance->AR, addr_reg);
1439:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1440:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Enable the MDMA */
1441:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if (HAL_MDMA_Start_IT(hqspi->hmdma, (uint32_t)&hqspi->Instance->DR, (uint32_t)pData, hqspi-
1442:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1443:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Process unlocked */
1444:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** __HAL_UNLOCK(hqspi);
1445:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1446:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Enable the QSPI transfer error Interrupt */
1447:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** __HAL_QSPI_ENABLE_IT(hqspi, QSPI_IT_TE);
1448:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1449:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Enable the MDMA transfer by setting the DMAEN bit in the QSPI CR register */
1450:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** SET_BIT(hqspi->Instance->CR, QUADSPI_CR_DMAEN);
1451:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1452:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** else
1453:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1454:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** status = HAL_ERROR;
1455:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->ErrorCode |= HAL_QSPI_ERROR_DMA;
1456:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->State = HAL_QSPI_STATE_READY;
ARM GAS /tmp/ccNpZKQO.s page 27
1457:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1458:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Process unlocked */
1459:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** __HAL_UNLOCK(hqspi);
1460:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1461:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1462:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** else
1463:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1464:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->ErrorCode |= HAL_QSPI_ERROR_INVALID_PARAM;
1465:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** status = HAL_ERROR;
1466:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1467:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Process unlocked */
1468:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** __HAL_UNLOCK(hqspi);
1469:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1470:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1471:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** else
1472:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1473:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** status = HAL_BUSY;
1474:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1475:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Process unlocked */
1476:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** __HAL_UNLOCK(hqspi);
1477:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1478:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1479:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** return status;
1480:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1481:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1482:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /**
1483:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @brief Configure the QSPI Automatic Polling Mode in blocking mode.
1484:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @param hqspi : QSPI handle
1485:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @param cmd : structure that contains the command configuration information.
1486:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @param cfg : structure that contains the polling configuration information.
1487:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @param Timeout : Timeout duration
1488:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @note This function is used only in Automatic Polling Mode
1489:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @retval HAL status
1490:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** */
1491:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** HAL_StatusTypeDef HAL_QSPI_AutoPolling(QSPI_HandleTypeDef *hqspi, QSPI_CommandTypeDef *cmd, QSPI_Au
1492:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1493:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** HAL_StatusTypeDef status;
1494:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** uint32_t tickstart = HAL_GetTick();
1495:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1496:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Check the parameters */
1497:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** assert_param(IS_QSPI_INSTRUCTION_MODE(cmd->InstructionMode));
1498:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if (cmd->InstructionMode != QSPI_INSTRUCTION_NONE)
1499:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1500:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** assert_param(IS_QSPI_INSTRUCTION(cmd->Instruction));
1501:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1502:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1503:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** assert_param(IS_QSPI_ADDRESS_MODE(cmd->AddressMode));
1504:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if (cmd->AddressMode != QSPI_ADDRESS_NONE)
1505:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1506:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** assert_param(IS_QSPI_ADDRESS_SIZE(cmd->AddressSize));
1507:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1508:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1509:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** assert_param(IS_QSPI_ALTERNATE_BYTES_MODE(cmd->AlternateByteMode));
1510:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if (cmd->AlternateByteMode != QSPI_ALTERNATE_BYTES_NONE)
1511:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1512:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** assert_param(IS_QSPI_ALTERNATE_BYTES_SIZE(cmd->AlternateBytesSize));
1513:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
ARM GAS /tmp/ccNpZKQO.s page 28
1514:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1515:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** assert_param(IS_QSPI_DUMMY_CYCLES(cmd->DummyCycles));
1516:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** assert_param(IS_QSPI_DATA_MODE(cmd->DataMode));
1517:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1518:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** assert_param(IS_QSPI_DDR_MODE(cmd->DdrMode));
1519:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** assert_param(IS_QSPI_DDR_HHC(cmd->DdrHoldHalfCycle));
1520:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** assert_param(IS_QSPI_SIOO_MODE(cmd->SIOOMode));
1521:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1522:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** assert_param(IS_QSPI_INTERVAL(cfg->Interval));
1523:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** assert_param(IS_QSPI_STATUS_BYTES_SIZE(cfg->StatusBytesSize));
1524:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** assert_param(IS_QSPI_MATCH_MODE(cfg->MatchMode));
1525:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1526:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Process locked */
1527:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** __HAL_LOCK(hqspi);
1528:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1529:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if(hqspi->State == HAL_QSPI_STATE_READY)
1530:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1531:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->ErrorCode = HAL_QSPI_ERROR_NONE;
1532:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1533:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Update state */
1534:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->State = HAL_QSPI_STATE_BUSY_AUTO_POLLING;
1535:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1536:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Wait till BUSY flag reset */
1537:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** status = QSPI_WaitFlagStateUntilTimeout(hqspi, QSPI_FLAG_BUSY, RESET, tickstart, Timeout);
1538:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1539:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if (status == HAL_OK)
1540:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1541:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Configure QSPI: PSMAR register with the status match value */
1542:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** WRITE_REG(hqspi->Instance->PSMAR, cfg->Match);
1543:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1544:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Configure QSPI: PSMKR register with the status mask value */
1545:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** WRITE_REG(hqspi->Instance->PSMKR, cfg->Mask);
1546:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1547:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Configure QSPI: PIR register with the interval value */
1548:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** WRITE_REG(hqspi->Instance->PIR, cfg->Interval);
1549:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1550:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Configure QSPI: CR register with Match mode and Automatic stop enabled
1551:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (otherwise there will be an infinite loop in blocking mode) */
1552:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** MODIFY_REG(hqspi->Instance->CR, (QUADSPI_CR_PMM | QUADSPI_CR_APMS),
1553:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (cfg->MatchMode | QSPI_AUTOMATIC_STOP_ENABLE));
1554:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1555:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Call the configuration function */
1556:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** cmd->NbData = cfg->StatusBytesSize;
1557:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** QSPI_Config(hqspi, cmd, QSPI_FUNCTIONAL_MODE_AUTO_POLLING);
1558:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1559:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Wait until SM flag is set to go back in idle state */
1560:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** status = QSPI_WaitFlagStateUntilTimeout(hqspi, QSPI_FLAG_SM, SET, tickstart, Timeout);
1561:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1562:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if (status == HAL_OK)
1563:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1564:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** __HAL_QSPI_CLEAR_FLAG(hqspi, QSPI_FLAG_SM);
1565:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1566:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Update state */
1567:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->State = HAL_QSPI_STATE_READY;
1568:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1569:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1570:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
ARM GAS /tmp/ccNpZKQO.s page 29
1571:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** else
1572:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1573:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** status = HAL_BUSY;
1574:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1575:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1576:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Process unlocked */
1577:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** __HAL_UNLOCK(hqspi);
1578:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1579:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Return function status */
1580:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** return status;
1581:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1582:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1583:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /**
1584:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @brief Configure the QSPI Automatic Polling Mode in non-blocking mode.
1585:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @param hqspi : QSPI handle
1586:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @param cmd : structure that contains the command configuration information.
1587:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @param cfg : structure that contains the polling configuration information.
1588:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @note This function is used only in Automatic Polling Mode
1589:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @retval HAL status
1590:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** */
1591:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** HAL_StatusTypeDef HAL_QSPI_AutoPolling_IT(QSPI_HandleTypeDef *hqspi, QSPI_CommandTypeDef *cmd, QSPI
1592:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1593:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** HAL_StatusTypeDef status;
1594:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** uint32_t tickstart = HAL_GetTick();
1595:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1596:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Check the parameters */
1597:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** assert_param(IS_QSPI_INSTRUCTION_MODE(cmd->InstructionMode));
1598:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if (cmd->InstructionMode != QSPI_INSTRUCTION_NONE)
1599:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1600:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** assert_param(IS_QSPI_INSTRUCTION(cmd->Instruction));
1601:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1602:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1603:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** assert_param(IS_QSPI_ADDRESS_MODE(cmd->AddressMode));
1604:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if (cmd->AddressMode != QSPI_ADDRESS_NONE)
1605:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1606:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** assert_param(IS_QSPI_ADDRESS_SIZE(cmd->AddressSize));
1607:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1608:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1609:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** assert_param(IS_QSPI_ALTERNATE_BYTES_MODE(cmd->AlternateByteMode));
1610:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if (cmd->AlternateByteMode != QSPI_ALTERNATE_BYTES_NONE)
1611:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1612:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** assert_param(IS_QSPI_ALTERNATE_BYTES_SIZE(cmd->AlternateBytesSize));
1613:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1614:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1615:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** assert_param(IS_QSPI_DUMMY_CYCLES(cmd->DummyCycles));
1616:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** assert_param(IS_QSPI_DATA_MODE(cmd->DataMode));
1617:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1618:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** assert_param(IS_QSPI_DDR_MODE(cmd->DdrMode));
1619:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** assert_param(IS_QSPI_DDR_HHC(cmd->DdrHoldHalfCycle));
1620:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** assert_param(IS_QSPI_SIOO_MODE(cmd->SIOOMode));
1621:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1622:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** assert_param(IS_QSPI_INTERVAL(cfg->Interval));
1623:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** assert_param(IS_QSPI_STATUS_BYTES_SIZE(cfg->StatusBytesSize));
1624:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** assert_param(IS_QSPI_MATCH_MODE(cfg->MatchMode));
1625:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** assert_param(IS_QSPI_AUTOMATIC_STOP(cfg->AutomaticStop));
1626:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1627:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Process locked */
ARM GAS /tmp/ccNpZKQO.s page 30
1628:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** __HAL_LOCK(hqspi);
1629:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1630:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if(hqspi->State == HAL_QSPI_STATE_READY)
1631:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1632:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->ErrorCode = HAL_QSPI_ERROR_NONE;
1633:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1634:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Update state */
1635:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->State = HAL_QSPI_STATE_BUSY_AUTO_POLLING;
1636:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1637:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Wait till BUSY flag reset */
1638:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** status = QSPI_WaitFlagStateUntilTimeout(hqspi, QSPI_FLAG_BUSY, RESET, tickstart, hqspi->Timeout
1639:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1640:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if (status == HAL_OK)
1641:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1642:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Configure QSPI: PSMAR register with the status match value */
1643:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** WRITE_REG(hqspi->Instance->PSMAR, cfg->Match);
1644:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1645:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Configure QSPI: PSMKR register with the status mask value */
1646:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** WRITE_REG(hqspi->Instance->PSMKR, cfg->Mask);
1647:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1648:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Configure QSPI: PIR register with the interval value */
1649:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** WRITE_REG(hqspi->Instance->PIR, cfg->Interval);
1650:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1651:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Configure QSPI: CR register with Match mode and Automatic stop mode */
1652:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** MODIFY_REG(hqspi->Instance->CR, (QUADSPI_CR_PMM | QUADSPI_CR_APMS),
1653:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (cfg->MatchMode | cfg->AutomaticStop));
1654:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1655:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Clear interrupt */
1656:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** __HAL_QSPI_CLEAR_FLAG(hqspi, QSPI_FLAG_TE | QSPI_FLAG_SM);
1657:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1658:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Call the configuration function */
1659:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** cmd->NbData = cfg->StatusBytesSize;
1660:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** QSPI_Config(hqspi, cmd, QSPI_FUNCTIONAL_MODE_AUTO_POLLING);
1661:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1662:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Process unlocked */
1663:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** __HAL_UNLOCK(hqspi);
1664:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1665:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Enable the QSPI Transfer Error and status match Interrupt */
1666:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** __HAL_QSPI_ENABLE_IT(hqspi, (QSPI_IT_SM | QSPI_IT_TE));
1667:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1668:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1669:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** else
1670:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1671:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Process unlocked */
1672:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** __HAL_UNLOCK(hqspi);
1673:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1674:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1675:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** else
1676:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1677:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** status = HAL_BUSY;
1678:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1679:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Process unlocked */
1680:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** __HAL_UNLOCK(hqspi);
1681:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1682:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1683:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Return function status */
1684:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** return status;
ARM GAS /tmp/ccNpZKQO.s page 31
1685:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1686:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1687:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /**
1688:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @brief Configure the Memory Mapped mode.
1689:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @param hqspi : QSPI handle
1690:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @param cmd : structure that contains the command configuration information.
1691:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @param cfg : structure that contains the memory mapped configuration information.
1692:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @note This function is used only in Memory mapped Mode
1693:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @retval HAL status
1694:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** */
1695:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** HAL_StatusTypeDef HAL_QSPI_MemoryMapped(QSPI_HandleTypeDef *hqspi, QSPI_CommandTypeDef *cmd, QSPI_M
1696:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1697:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** HAL_StatusTypeDef status;
1698:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** uint32_t tickstart = HAL_GetTick();
1699:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1700:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Check the parameters */
1701:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** assert_param(IS_QSPI_INSTRUCTION_MODE(cmd->InstructionMode));
1702:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if (cmd->InstructionMode != QSPI_INSTRUCTION_NONE)
1703:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1704:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** assert_param(IS_QSPI_INSTRUCTION(cmd->Instruction));
1705:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1706:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1707:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** assert_param(IS_QSPI_ADDRESS_MODE(cmd->AddressMode));
1708:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if (cmd->AddressMode != QSPI_ADDRESS_NONE)
1709:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1710:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** assert_param(IS_QSPI_ADDRESS_SIZE(cmd->AddressSize));
1711:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1712:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1713:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** assert_param(IS_QSPI_ALTERNATE_BYTES_MODE(cmd->AlternateByteMode));
1714:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if (cmd->AlternateByteMode != QSPI_ALTERNATE_BYTES_NONE)
1715:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1716:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** assert_param(IS_QSPI_ALTERNATE_BYTES_SIZE(cmd->AlternateBytesSize));
1717:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1718:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1719:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** assert_param(IS_QSPI_DUMMY_CYCLES(cmd->DummyCycles));
1720:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** assert_param(IS_QSPI_DATA_MODE(cmd->DataMode));
1721:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1722:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** assert_param(IS_QSPI_DDR_MODE(cmd->DdrMode));
1723:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** assert_param(IS_QSPI_DDR_HHC(cmd->DdrHoldHalfCycle));
1724:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** assert_param(IS_QSPI_SIOO_MODE(cmd->SIOOMode));
1725:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1726:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** assert_param(IS_QSPI_TIMEOUT_ACTIVATION(cfg->TimeOutActivation));
1727:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1728:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Process locked */
1729:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** __HAL_LOCK(hqspi);
1730:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1731:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if(hqspi->State == HAL_QSPI_STATE_READY)
1732:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1733:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->ErrorCode = HAL_QSPI_ERROR_NONE;
1734:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1735:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Update state */
1736:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->State = HAL_QSPI_STATE_BUSY_MEM_MAPPED;
1737:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1738:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Wait till BUSY flag reset */
1739:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** status = QSPI_WaitFlagStateUntilTimeout(hqspi, QSPI_FLAG_BUSY, RESET, tickstart, hqspi->Timeout
1740:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1741:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if (status == HAL_OK)
ARM GAS /tmp/ccNpZKQO.s page 32
1742:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1743:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Configure QSPI: CR register with timeout counter enable */
1744:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** MODIFY_REG(hqspi->Instance->CR, QUADSPI_CR_TCEN, cfg->TimeOutActivation);
1745:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1746:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if (cfg->TimeOutActivation == QSPI_TIMEOUT_COUNTER_ENABLE)
1747:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1748:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** assert_param(IS_QSPI_TIMEOUT_PERIOD(cfg->TimeOutPeriod));
1749:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1750:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Configure QSPI: LPTR register with the low-power timeout value */
1751:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** WRITE_REG(hqspi->Instance->LPTR, cfg->TimeOutPeriod);
1752:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1753:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Clear interrupt */
1754:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** __HAL_QSPI_CLEAR_FLAG(hqspi, QSPI_FLAG_TO);
1755:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1756:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Enable the QSPI TimeOut Interrupt */
1757:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** __HAL_QSPI_ENABLE_IT(hqspi, QSPI_IT_TO);
1758:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1759:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1760:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Call the configuration function */
1761:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** QSPI_Config(hqspi, cmd, QSPI_FUNCTIONAL_MODE_MEMORY_MAPPED);
1762:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1763:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1764:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** else
1765:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1766:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** status = HAL_BUSY;
1767:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1768:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1769:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Process unlocked */
1770:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** __HAL_UNLOCK(hqspi);
1771:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1772:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Return function status */
1773:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** return status;
1774:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1775:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1776:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /**
1777:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @brief Transfer Error callback.
1778:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @param hqspi : QSPI handle
1779:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @retval None
1780:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** */
1781:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** __weak void HAL_QSPI_ErrorCallback(QSPI_HandleTypeDef *hqspi)
1782:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1783:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Prevent unused argument(s) compilation warning */
1784:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** UNUSED(hqspi);
1785:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1786:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* NOTE : This function should not be modified, when the callback is needed,
1787:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** the HAL_QSPI_ErrorCallback could be implemented in the user file
1788:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** */
1789:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1790:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1791:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /**
1792:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @brief Abort completed callback.
1793:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @param hqspi : QSPI handle
1794:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @retval None
1795:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** */
1796:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** __weak void HAL_QSPI_AbortCpltCallback(QSPI_HandleTypeDef *hqspi)
1797:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1798:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Prevent unused argument(s) compilation warning */
ARM GAS /tmp/ccNpZKQO.s page 33
1799:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** UNUSED(hqspi);
1800:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1801:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* NOTE: This function should not be modified, when the callback is needed,
1802:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** the HAL_QSPI_AbortCpltCallback could be implemented in the user file
1803:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** */
1804:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1805:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1806:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /**
1807:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @brief Command completed callback.
1808:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @param hqspi : QSPI handle
1809:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @retval None
1810:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** */
1811:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** __weak void HAL_QSPI_CmdCpltCallback(QSPI_HandleTypeDef *hqspi)
1812:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1813:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Prevent unused argument(s) compilation warning */
1814:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** UNUSED(hqspi);
1815:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1816:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* NOTE: This function should not be modified, when the callback is needed,
1817:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** the HAL_QSPI_CmdCpltCallback could be implemented in the user file
1818:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** */
1819:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1820:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1821:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /**
1822:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @brief Rx Transfer completed callback.
1823:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @param hqspi : QSPI handle
1824:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @retval None
1825:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** */
1826:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** __weak void HAL_QSPI_RxCpltCallback(QSPI_HandleTypeDef *hqspi)
1827:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1828:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Prevent unused argument(s) compilation warning */
1829:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** UNUSED(hqspi);
1830:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1831:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* NOTE: This function should not be modified, when the callback is needed,
1832:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** the HAL_QSPI_RxCpltCallback could be implemented in the user file
1833:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** */
1834:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1835:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1836:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /**
1837:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @brief Tx Transfer completed callback.
1838:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @param hqspi : QSPI handle
1839:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @retval None
1840:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** */
1841:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** __weak void HAL_QSPI_TxCpltCallback(QSPI_HandleTypeDef *hqspi)
1842:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1843:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Prevent unused argument(s) compilation warning */
1844:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** UNUSED(hqspi);
1845:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1846:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* NOTE: This function should not be modified, when the callback is needed,
1847:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** the HAL_QSPI_TxCpltCallback could be implemented in the user file
1848:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** */
1849:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1850:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1851:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1852:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /**
1853:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @brief FIFO Threshold callback.
1854:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @param hqspi : QSPI handle
1855:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @retval None
ARM GAS /tmp/ccNpZKQO.s page 34
1856:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** */
1857:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** __weak void HAL_QSPI_FifoThresholdCallback(QSPI_HandleTypeDef *hqspi)
1858:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1859:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Prevent unused argument(s) compilation warning */
1860:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** UNUSED(hqspi);
1861:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1862:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* NOTE : This function should not be modified, when the callback is needed,
1863:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** the HAL_QSPI_FIFOThresholdCallback could be implemented in the user file
1864:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** */
1865:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1866:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1867:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /**
1868:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @brief Status Match callback.
1869:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @param hqspi : QSPI handle
1870:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @retval None
1871:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** */
1872:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** __weak void HAL_QSPI_StatusMatchCallback(QSPI_HandleTypeDef *hqspi)
1873:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1874:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Prevent unused argument(s) compilation warning */
1875:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** UNUSED(hqspi);
1876:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1877:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* NOTE : This function should not be modified, when the callback is needed,
1878:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** the HAL_QSPI_StatusMatchCallback could be implemented in the user file
1879:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** */
1880:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1881:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1882:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /**
1883:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @brief Timeout callback.
1884:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @param hqspi : QSPI handle
1885:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @retval None
1886:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** */
1887:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** __weak void HAL_QSPI_TimeOutCallback(QSPI_HandleTypeDef *hqspi)
1888:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1889:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Prevent unused argument(s) compilation warning */
1890:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** UNUSED(hqspi);
1891:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1892:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* NOTE : This function should not be modified, when the callback is needed,
1893:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** the HAL_QSPI_TimeOutCallback could be implemented in the user file
1894:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** */
1895:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1896:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** #if (USE_HAL_QSPI_REGISTER_CALLBACKS == 1)
1897:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /**
1898:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @brief Register a User QSPI Callback
1899:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * To be used instead of the weak (surcharged) predefined callback
1900:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @param hqspi : QSPI handle
1901:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @param CallbackId : ID of the callback to be registered
1902:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * This parameter can be one of the following values:
1903:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @arg @ref HAL_QSPI_ERROR_CB_ID QSPI Error Callback ID
1904:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @arg @ref HAL_QSPI_ABORT_CB_ID QSPI Abort Callback ID
1905:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @arg @ref HAL_QSPI_FIFO_THRESHOLD_CB_ID QSPI FIFO Threshold Callback ID
1906:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @arg @ref HAL_QSPI_CMD_CPLT_CB_ID QSPI Command Complete Callback ID
1907:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @arg @ref HAL_QSPI_RX_CPLT_CB_ID QSPI Rx Complete Callback ID
1908:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @arg @ref HAL_QSPI_TX_CPLT_CB_ID QSPI Tx Complete Callback ID
1909:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @arg @ref HAL_QSPI_STATUS_MATCH_CB_ID QSPI Status Match Callback ID
1910:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @arg @ref HAL_QSPI_TIMEOUT_CB_ID QSPI Timeout Callback ID
1911:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @arg @ref HAL_QSPI_MSP_INIT_CB_ID QSPI MspInit callback ID
1912:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @arg @ref HAL_QSPI_MSP_DEINIT_CB_ID QSPI MspDeInit callback ID
ARM GAS /tmp/ccNpZKQO.s page 35
1913:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @param pCallback : pointer to the Callback function
1914:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @retval status
1915:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** */
1916:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** HAL_StatusTypeDef HAL_QSPI_RegisterCallback (QSPI_HandleTypeDef *hqspi, HAL_QSPI_CallbackIDTypeDef
1917:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1918:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** HAL_StatusTypeDef status = HAL_OK;
1919:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1920:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if(pCallback == NULL)
1921:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1922:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Update the error code */
1923:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->ErrorCode |= HAL_QSPI_ERROR_INVALID_CALLBACK;
1924:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** return HAL_ERROR;
1925:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1926:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1927:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Process locked */
1928:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** __HAL_LOCK(hqspi);
1929:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1930:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if(hqspi->State == HAL_QSPI_STATE_READY)
1931:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1932:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** switch (CallbackId)
1933:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1934:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** case HAL_QSPI_ERROR_CB_ID :
1935:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->ErrorCallback = pCallback;
1936:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** break;
1937:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** case HAL_QSPI_ABORT_CB_ID :
1938:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->AbortCpltCallback = pCallback;
1939:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** break;
1940:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** case HAL_QSPI_FIFO_THRESHOLD_CB_ID :
1941:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->FifoThresholdCallback = pCallback;
1942:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** break;
1943:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** case HAL_QSPI_CMD_CPLT_CB_ID :
1944:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->CmdCpltCallback = pCallback;
1945:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** break;
1946:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** case HAL_QSPI_RX_CPLT_CB_ID :
1947:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->RxCpltCallback = pCallback;
1948:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** break;
1949:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** case HAL_QSPI_TX_CPLT_CB_ID :
1950:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->TxCpltCallback = pCallback;
1951:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** break;
1952:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** case HAL_QSPI_STATUS_MATCH_CB_ID :
1953:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->StatusMatchCallback = pCallback;
1954:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** break;
1955:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** case HAL_QSPI_TIMEOUT_CB_ID :
1956:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->TimeOutCallback = pCallback;
1957:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** break;
1958:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** case HAL_QSPI_MSP_INIT_CB_ID :
1959:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->MspInitCallback = pCallback;
1960:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** break;
1961:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** case HAL_QSPI_MSP_DEINIT_CB_ID :
1962:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->MspDeInitCallback = pCallback;
1963:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** break;
1964:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** default :
1965:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Update the error code */
1966:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->ErrorCode |= HAL_QSPI_ERROR_INVALID_CALLBACK;
1967:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* update return status */
1968:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** status = HAL_ERROR;
1969:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** break;
ARM GAS /tmp/ccNpZKQO.s page 36
1970:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1971:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1972:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** else if (hqspi->State == HAL_QSPI_STATE_RESET)
1973:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1974:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** switch (CallbackId)
1975:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1976:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** case HAL_QSPI_MSP_INIT_CB_ID :
1977:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->MspInitCallback = pCallback;
1978:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** break;
1979:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** case HAL_QSPI_MSP_DEINIT_CB_ID :
1980:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->MspDeInitCallback = pCallback;
1981:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** break;
1982:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** default :
1983:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Update the error code */
1984:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->ErrorCode |= HAL_QSPI_ERROR_INVALID_CALLBACK;
1985:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* update return status */
1986:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** status = HAL_ERROR;
1987:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** break;
1988:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1989:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1990:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** else
1991:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1992:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Update the error code */
1993:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->ErrorCode |= HAL_QSPI_ERROR_INVALID_CALLBACK;
1994:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* update return status */
1995:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** status = HAL_ERROR;
1996:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1997:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1998:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Release Lock */
1999:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** __HAL_UNLOCK(hqspi);
2000:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** return status;
2001:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
2002:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2003:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /**
2004:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @brief Unregister a User QSPI Callback
2005:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * QSPI Callback is redirected to the weak (surcharged) predefined callback
2006:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @param hqspi : QSPI handle
2007:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @param CallbackId : ID of the callback to be unregistered
2008:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * This parameter can be one of the following values:
2009:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @arg @ref HAL_QSPI_ERROR_CB_ID QSPI Error Callback ID
2010:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @arg @ref HAL_QSPI_ABORT_CB_ID QSPI Abort Callback ID
2011:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @arg @ref HAL_QSPI_FIFO_THRESHOLD_CB_ID QSPI FIFO Threshold Callback ID
2012:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @arg @ref HAL_QSPI_CMD_CPLT_CB_ID QSPI Command Complete Callback ID
2013:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @arg @ref HAL_QSPI_RX_CPLT_CB_ID QSPI Rx Complete Callback ID
2014:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @arg @ref HAL_QSPI_TX_CPLT_CB_ID QSPI Tx Complete Callback ID
2015:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @arg @ref HAL_QSPI_STATUS_MATCH_CB_ID QSPI Status Match Callback ID
2016:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @arg @ref HAL_QSPI_TIMEOUT_CB_ID QSPI Timeout Callback ID
2017:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @arg @ref HAL_QSPI_MSP_INIT_CB_ID QSPI MspInit callback ID
2018:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @arg @ref HAL_QSPI_MSP_DEINIT_CB_ID QSPI MspDeInit callback ID
2019:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @retval status
2020:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** */
2021:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** HAL_StatusTypeDef HAL_QSPI_UnRegisterCallback (QSPI_HandleTypeDef *hqspi, HAL_QSPI_CallbackIDTypeDe
2022:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
2023:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** HAL_StatusTypeDef status = HAL_OK;
2024:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2025:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Process locked */
2026:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** __HAL_LOCK(hqspi);
ARM GAS /tmp/ccNpZKQO.s page 37
2027:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2028:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if(hqspi->State == HAL_QSPI_STATE_READY)
2029:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
2030:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** switch (CallbackId)
2031:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
2032:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** case HAL_QSPI_ERROR_CB_ID :
2033:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->ErrorCallback = HAL_QSPI_ErrorCallback;
2034:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** break;
2035:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** case HAL_QSPI_ABORT_CB_ID :
2036:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->AbortCpltCallback = HAL_QSPI_AbortCpltCallback;
2037:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** break;
2038:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** case HAL_QSPI_FIFO_THRESHOLD_CB_ID :
2039:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->FifoThresholdCallback = HAL_QSPI_FifoThresholdCallback;
2040:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** break;
2041:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** case HAL_QSPI_CMD_CPLT_CB_ID :
2042:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->CmdCpltCallback = HAL_QSPI_CmdCpltCallback;
2043:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** break;
2044:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** case HAL_QSPI_RX_CPLT_CB_ID :
2045:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->RxCpltCallback = HAL_QSPI_RxCpltCallback;
2046:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** break;
2047:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** case HAL_QSPI_TX_CPLT_CB_ID :
2048:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->TxCpltCallback = HAL_QSPI_TxCpltCallback;
2049:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** break;
2050:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** case HAL_QSPI_STATUS_MATCH_CB_ID :
2051:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->StatusMatchCallback = HAL_QSPI_StatusMatchCallback;
2052:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** break;
2053:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** case HAL_QSPI_TIMEOUT_CB_ID :
2054:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->TimeOutCallback = HAL_QSPI_TimeOutCallback;
2055:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** break;
2056:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** case HAL_QSPI_MSP_INIT_CB_ID :
2057:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->MspInitCallback = HAL_QSPI_MspInit;
2058:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** break;
2059:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** case HAL_QSPI_MSP_DEINIT_CB_ID :
2060:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->MspDeInitCallback = HAL_QSPI_MspDeInit;
2061:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** break;
2062:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** default :
2063:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Update the error code */
2064:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->ErrorCode |= HAL_QSPI_ERROR_INVALID_CALLBACK;
2065:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* update return status */
2066:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** status = HAL_ERROR;
2067:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** break;
2068:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
2069:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
2070:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** else if (hqspi->State == HAL_QSPI_STATE_RESET)
2071:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
2072:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** switch (CallbackId)
2073:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
2074:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** case HAL_QSPI_MSP_INIT_CB_ID :
2075:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->MspInitCallback = HAL_QSPI_MspInit;
2076:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** break;
2077:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** case HAL_QSPI_MSP_DEINIT_CB_ID :
2078:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->MspDeInitCallback = HAL_QSPI_MspDeInit;
2079:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** break;
2080:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** default :
2081:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Update the error code */
2082:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->ErrorCode |= HAL_QSPI_ERROR_INVALID_CALLBACK;
2083:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* update return status */
ARM GAS /tmp/ccNpZKQO.s page 38
2084:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** status = HAL_ERROR;
2085:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** break;
2086:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
2087:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
2088:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** else
2089:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
2090:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Update the error code */
2091:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->ErrorCode |= HAL_QSPI_ERROR_INVALID_CALLBACK;
2092:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* update return status */
2093:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** status = HAL_ERROR;
2094:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
2095:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2096:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Release Lock */
2097:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** __HAL_UNLOCK(hqspi);
2098:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** return status;
2099:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
2100:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** #endif
2101:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2102:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /**
2103:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @}
2104:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** */
2105:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2106:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /** @defgroup QSPI_Exported_Functions_Group3 Peripheral Control and State functions
2107:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @brief QSPI control and State functions
2108:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** *
2109:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** @verbatim
2110:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** ===============================================================================
2111:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** ##### Peripheral Control and State functions #####
2112:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** ===============================================================================
2113:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** [..]
2114:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** This subsection provides a set of functions allowing to :
2115:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (+) Check in run-time the state of the driver.
2116:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (+) Check the error code set during last operation.
2117:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (+) Abort any operation.
2118:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2119:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2120:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** @endverbatim
2121:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @{
2122:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** */
2123:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2124:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /**
2125:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @brief Return the QSPI handle state.
2126:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @param hqspi : QSPI handle
2127:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @retval HAL state
2128:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** */
2129:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** HAL_QSPI_StateTypeDef HAL_QSPI_GetState(QSPI_HandleTypeDef *hqspi)
2130:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
2131:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Return QSPI handle state */
2132:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** return hqspi->State;
2133:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
2134:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2135:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /**
2136:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @brief Return the QSPI error code.
2137:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @param hqspi : QSPI handle
2138:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @retval QSPI Error Code
2139:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** */
2140:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** uint32_t HAL_QSPI_GetError(QSPI_HandleTypeDef *hqspi)
ARM GAS /tmp/ccNpZKQO.s page 39
2141:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
2142:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** return hqspi->ErrorCode;
2143:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
2144:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2145:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /**
2146:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @brief Abort the current transmission.
2147:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @param hqspi : QSPI handle
2148:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @retval HAL status
2149:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** */
2150:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** HAL_StatusTypeDef HAL_QSPI_Abort(QSPI_HandleTypeDef *hqspi)
2151:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
2152:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** HAL_StatusTypeDef status = HAL_OK;
2153:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** uint32_t tickstart = HAL_GetTick();
2154:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2155:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Check if the state is in one of the busy states */
2156:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if (((uint32_t)hqspi->State & 0x2U) != 0U)
2157:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
2158:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Process unlocked */
2159:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** __HAL_UNLOCK(hqspi);
2160:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2161:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if ((hqspi->Instance->CR & QUADSPI_CR_DMAEN) != 0U)
2162:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
2163:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Disable the DMA transfer by clearing the DMAEN bit in the QSPI CR register */
2164:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** CLEAR_BIT(hqspi->Instance->CR, QUADSPI_CR_DMAEN);
2165:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2166:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Abort MDMA */
2167:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** status = HAL_MDMA_Abort(hqspi->hmdma);
2168:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if(status != HAL_OK)
2169:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
2170:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->ErrorCode |= HAL_QSPI_ERROR_DMA;
2171:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
2172:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
2173:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2174:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Configure QSPI: CR register with Abort request */
2175:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** SET_BIT(hqspi->Instance->CR, QUADSPI_CR_ABORT);
2176:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2177:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Wait until TC flag is set to go back in idle state */
2178:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** status = QSPI_WaitFlagStateUntilTimeout(hqspi, QSPI_FLAG_TC, SET, tickstart, hqspi->Timeout);
2179:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2180:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if (status == HAL_OK)
2181:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
2182:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** __HAL_QSPI_CLEAR_FLAG(hqspi, QSPI_FLAG_TC);
2183:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2184:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Wait until BUSY flag is reset */
2185:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** status = QSPI_WaitFlagStateUntilTimeout(hqspi, QSPI_FLAG_BUSY, RESET, tickstart, hqspi->Timeo
2186:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
2187:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2188:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if (status == HAL_OK)
2189:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
2190:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Reset functional mode configuration to indirect write mode by default */
2191:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** CLEAR_BIT(hqspi->Instance->CCR, QUADSPI_CCR_FMODE);
2192:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2193:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Update state */
2194:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->State = HAL_QSPI_STATE_READY;
2195:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
2196:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
2197:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
ARM GAS /tmp/ccNpZKQO.s page 40
2198:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** return status;
2199:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
2200:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2201:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /**
2202:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @brief Abort the current transmission (non-blocking function)
2203:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @param hqspi : QSPI handle
2204:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @retval HAL status
2205:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** */
2206:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** HAL_StatusTypeDef HAL_QSPI_Abort_IT(QSPI_HandleTypeDef *hqspi)
2207:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
2208:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** HAL_StatusTypeDef status = HAL_OK;
2209:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2210:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Check if the state is in one of the busy states */
2211:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if (((uint32_t)hqspi->State & 0x2U) != 0U)
2212:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
2213:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Process unlocked */
2214:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** __HAL_UNLOCK(hqspi);
2215:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2216:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Update QSPI state */
2217:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->State = HAL_QSPI_STATE_ABORT;
2218:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2219:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Disable all interrupts */
2220:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** __HAL_QSPI_DISABLE_IT(hqspi, (QSPI_IT_TO | QSPI_IT_SM | QSPI_IT_FT | QSPI_IT_TC | QSPI_IT_TE));
2221:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2222:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if ((hqspi->Instance->CR & QUADSPI_CR_DMAEN) != 0U)
2223:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
2224:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Disable the DMA transfer by clearing the DMAEN bit in the QSPI CR register */
2225:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** CLEAR_BIT(hqspi->Instance->CR, QUADSPI_CR_DMAEN);
2226:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2227:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Abort MDMA channel */
2228:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->hmdma->XferAbortCallback = QSPI_DMAAbortCplt;
2229:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if (HAL_MDMA_Abort_IT(hqspi->hmdma) != HAL_OK)
2230:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
2231:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Change state of QSPI */
2232:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->State = HAL_QSPI_STATE_READY;
2233:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2234:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Abort Complete callback */
2235:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** #if (USE_HAL_QSPI_REGISTER_CALLBACKS == 1)
2236:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->AbortCpltCallback(hqspi);
2237:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** #else
2238:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** HAL_QSPI_AbortCpltCallback(hqspi);
2239:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** #endif
2240:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
2241:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
2242:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** else
2243:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
2244:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Clear interrupt */
2245:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** __HAL_QSPI_CLEAR_FLAG(hqspi, QSPI_FLAG_TC);
2246:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2247:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Enable the QSPI Transfer Complete Interrupt */
2248:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** __HAL_QSPI_ENABLE_IT(hqspi, QSPI_IT_TC);
2249:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2250:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Configure QSPI: CR register with Abort request */
2251:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** SET_BIT(hqspi->Instance->CR, QUADSPI_CR_ABORT);
2252:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
2253:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
2254:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** return status;
ARM GAS /tmp/ccNpZKQO.s page 41
2255:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
2256:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2257:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /** @brief Set QSPI timeout.
2258:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @param hqspi : QSPI handle.
2259:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @param Timeout : Timeout for the QSPI memory access.
2260:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @retval None
2261:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** */
2262:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** void HAL_QSPI_SetTimeout(QSPI_HandleTypeDef *hqspi, uint32_t Timeout)
2263:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
2264:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->Timeout = Timeout;
2265:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
2266:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2267:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /** @brief Set QSPI Fifo threshold.
2268:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @param hqspi : QSPI handle.
2269:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @param Threshold : Threshold of the Fifo (value between 1 and 16).
2270:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @retval HAL status
2271:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** */
2272:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** HAL_StatusTypeDef HAL_QSPI_SetFifoThreshold(QSPI_HandleTypeDef *hqspi, uint32_t Threshold)
2273:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
2274:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** HAL_StatusTypeDef status = HAL_OK;
2275:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2276:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Process locked */
2277:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** __HAL_LOCK(hqspi);
2278:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2279:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if(hqspi->State == HAL_QSPI_STATE_READY)
2280:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
2281:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Synchronize init structure with new FIFO threshold value */
2282:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->Init.FifoThreshold = Threshold;
2283:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2284:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Configure QSPI FIFO Threshold */
2285:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** MODIFY_REG(hqspi->Instance->CR, QUADSPI_CR_FTHRES,
2286:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** ((hqspi->Init.FifoThreshold - 1U) << QUADSPI_CR_FTHRES_Pos));
2287:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
2288:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** else
2289:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
2290:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** status = HAL_BUSY;
2291:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
2292:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2293:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Process unlocked */
2294:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** __HAL_UNLOCK(hqspi);
2295:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2296:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Return function status */
2297:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** return status;
2298:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
2299:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2300:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /** @brief Get QSPI Fifo threshold.
2301:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @param hqspi : QSPI handle.
2302:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @retval Fifo threshold (value between 1 and 16)
2303:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** */
2304:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** uint32_t HAL_QSPI_GetFifoThreshold(QSPI_HandleTypeDef *hqspi)
2305:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
2306:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** return ((READ_BIT(hqspi->Instance->CR, QUADSPI_CR_FTHRES) >> QUADSPI_CR_FTHRES_Pos) + 1U);
2307:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
2308:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2309:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /** @brief Set FlashID.
2310:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @param hqspi : QSPI handle.
2311:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @param FlashID : Index of the flash memory to be accessed.
ARM GAS /tmp/ccNpZKQO.s page 42
2312:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * This parameter can be a value of @ref QSPI_Flash_Select.
2313:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @note The FlashID is ignored when dual flash mode is enabled.
2314:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @retval HAL status
2315:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** */
2316:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** HAL_StatusTypeDef HAL_QSPI_SetFlashID(QSPI_HandleTypeDef *hqspi, uint32_t FlashID)
2317:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
2318:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** HAL_StatusTypeDef status = HAL_OK;
2319:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2320:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Check the parameter */
2321:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** assert_param(IS_QSPI_FLASH_ID(FlashID));
2322:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2323:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Process locked */
2324:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** __HAL_LOCK(hqspi);
2325:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2326:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if(hqspi->State == HAL_QSPI_STATE_READY)
2327:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
2328:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Synchronize init structure with new FlashID value */
2329:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->Init.FlashID = FlashID;
2330:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2331:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Configure QSPI FlashID */
2332:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** MODIFY_REG(hqspi->Instance->CR, QUADSPI_CR_FSEL, FlashID);
2333:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
2334:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** else
2335:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
2336:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** status = HAL_BUSY;
2337:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
2338:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2339:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Process unlocked */
2340:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** __HAL_UNLOCK(hqspi);
2341:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2342:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Return function status */
2343:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** return status;
2344:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
2345:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2346:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /**
2347:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @}
2348:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** */
2349:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2350:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /**
2351:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @}
2352:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** */
2353:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2354:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /** @defgroup QSPI_Private_Functions QSPI Private Functions
2355:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @{
2356:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** */
2357:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2358:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /**
2359:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @brief DMA QSPI receive process complete callback.
2360:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @param hmdma : MDMA handle
2361:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @retval None
2362:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** */
2363:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** static void QSPI_DMARxCplt(MDMA_HandleTypeDef *hmdma)
2364:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
28 .loc 1 2364 1 view -0
29 .cfi_startproc
30 @ args = 0, pretend = 0, frame = 0
31 @ frame_needed = 0, uses_anonymous_args = 0
ARM GAS /tmp/ccNpZKQO.s page 43
32 @ link register save eliminated.
2365:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** QSPI_HandleTypeDef* hqspi = (QSPI_HandleTypeDef*)(hmdma->Parent);
33 .loc 1 2365 3 view .LVU1
34 .loc 1 2365 23 is_stmt 0 view .LVU2
35 0000 036C ldr r3, [r0, #64]
36 .LVL1:
2366:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->RxXferCount = 0U;
37 .loc 1 2366 3 is_stmt 1 view .LVU3
38 .loc 1 2366 22 is_stmt 0 view .LVU4
39 0002 0022 movs r2, #0
40 0004 9A63 str r2, [r3, #56]
2367:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2368:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Enable the QSPI transfer complete Interrupt */
2369:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** __HAL_QSPI_ENABLE_IT(hqspi, QSPI_IT_TC);
41 .loc 1 2369 3 is_stmt 1 view .LVU5
42 0006 1A68 ldr r2, [r3]
43 0008 1368 ldr r3, [r2]
44 .LVL2:
45 .loc 1 2369 3 is_stmt 0 view .LVU6
46 000a 43F40033 orr r3, r3, #131072
47 000e 1360 str r3, [r2]
2370:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
48 .loc 1 2370 1 view .LVU7
49 0010 7047 bx lr
50 .cfi_endproc
51 .LFE173:
53 .section .text.QSPI_DMATxCplt,"ax",%progbits
54 .align 1
55 .syntax unified
56 .thumb
57 .thumb_func
58 .fpu fpv5-d16
60 QSPI_DMATxCplt:
61 .LVL3:
62 .LFB174:
2371:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2372:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /**
2373:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @brief DMA QSPI transmit process complete callback.
2374:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @param hmdma : MDMA handle
2375:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @retval None
2376:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** */
2377:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** static void QSPI_DMATxCplt(MDMA_HandleTypeDef *hmdma)
2378:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
63 .loc 1 2378 1 is_stmt 1 view -0
64 .cfi_startproc
65 @ args = 0, pretend = 0, frame = 0
66 @ frame_needed = 0, uses_anonymous_args = 0
67 @ link register save eliminated.
2379:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** QSPI_HandleTypeDef* hqspi = (QSPI_HandleTypeDef*)(hmdma->Parent);
68 .loc 1 2379 3 view .LVU9
69 .loc 1 2379 23 is_stmt 0 view .LVU10
70 0000 036C ldr r3, [r0, #64]
71 .LVL4:
2380:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->TxXferCount = 0U;
72 .loc 1 2380 3 is_stmt 1 view .LVU11
73 .loc 1 2380 22 is_stmt 0 view .LVU12
74 0002 0022 movs r2, #0
ARM GAS /tmp/ccNpZKQO.s page 44
75 0004 DA62 str r2, [r3, #44]
2381:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2382:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Enable the QSPI transfer complete Interrupt */
2383:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** __HAL_QSPI_ENABLE_IT(hqspi, QSPI_IT_TC);
76 .loc 1 2383 3 is_stmt 1 view .LVU13
77 0006 1A68 ldr r2, [r3]
78 0008 1368 ldr r3, [r2]
79 .LVL5:
80 .loc 1 2383 3 is_stmt 0 view .LVU14
81 000a 43F40033 orr r3, r3, #131072
82 000e 1360 str r3, [r2]
2384:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
83 .loc 1 2384 1 view .LVU15
84 0010 7047 bx lr
85 .cfi_endproc
86 .LFE174:
88 .section .text.QSPI_Config,"ax",%progbits
89 .align 1
90 .syntax unified
91 .thumb
92 .thumb_func
93 .fpu fpv5-d16
95 QSPI_Config:
96 .LVL6:
97 .LFB178:
2385:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2386:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /**
2387:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @brief DMA QSPI communication error callback.
2388:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @param hmdma : MDMA handle
2389:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @retval None
2390:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** */
2391:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** static void QSPI_DMAError(MDMA_HandleTypeDef *hmdma)
2392:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
2393:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** QSPI_HandleTypeDef* hqspi = ( QSPI_HandleTypeDef* )(hmdma->Parent);
2394:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2395:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->RxXferCount = 0U;
2396:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->TxXferCount = 0U;
2397:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->ErrorCode |= HAL_QSPI_ERROR_DMA;
2398:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2399:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Disable the MDMA transfer by clearing the DMAEN bit in the QSPI CR register */
2400:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** CLEAR_BIT(hqspi->Instance->CR, QUADSPI_CR_DMAEN);
2401:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2402:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Abort the QSPI */
2403:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (void)HAL_QSPI_Abort_IT(hqspi);
2404:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2405:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
2406:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2407:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /**
2408:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @brief MDMA QSPI abort complete callback.
2409:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @param hmdma : MDMA handle
2410:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @retval None
2411:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** */
2412:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** static void QSPI_DMAAbortCplt(MDMA_HandleTypeDef *hmdma)
2413:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
2414:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** QSPI_HandleTypeDef* hqspi = ( QSPI_HandleTypeDef* )(hmdma->Parent);
2415:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2416:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->RxXferCount = 0U;
ARM GAS /tmp/ccNpZKQO.s page 45
2417:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->TxXferCount = 0U;
2418:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2419:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if(hqspi->State == HAL_QSPI_STATE_ABORT)
2420:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
2421:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* MDMA Abort called by QSPI abort */
2422:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Clear interrupt */
2423:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** __HAL_QSPI_CLEAR_FLAG(hqspi, QSPI_FLAG_TC);
2424:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2425:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Enable the QSPI Transfer Complete Interrupt */
2426:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** __HAL_QSPI_ENABLE_IT(hqspi, QSPI_IT_TC);
2427:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2428:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Configure QSPI: CR register with Abort request */
2429:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** SET_BIT(hqspi->Instance->CR, QUADSPI_CR_ABORT);
2430:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
2431:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** else
2432:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
2433:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* MDMA Abort called due to a transfer error interrupt */
2434:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Change state of QSPI */
2435:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->State = HAL_QSPI_STATE_READY;
2436:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2437:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Error callback */
2438:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** #if (USE_HAL_QSPI_REGISTER_CALLBACKS == 1)
2439:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->ErrorCallback(hqspi);
2440:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** #else
2441:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** HAL_QSPI_ErrorCallback(hqspi);
2442:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** #endif
2443:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
2444:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
2445:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2446:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /**
2447:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @brief Wait for a flag state until timeout.
2448:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @param hqspi : QSPI handle
2449:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @param Flag : Flag checked
2450:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @param State : Value of the flag expected
2451:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @param Tickstart : Tick start value
2452:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @param Timeout : Duration of the timeout
2453:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @retval HAL status
2454:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** */
2455:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** static HAL_StatusTypeDef QSPI_WaitFlagStateUntilTimeout(QSPI_HandleTypeDef *hqspi, uint32_t Flag,
2456:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** FlagStatus State, uint32_t Tickstart, uint3
2457:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
2458:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Wait until flag is in expected state */
2459:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** while((__HAL_QSPI_GET_FLAG(hqspi, Flag)) != State)
2460:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
2461:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Check for the Timeout */
2462:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if (Timeout != HAL_MAX_DELAY)
2463:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
2464:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if(((HAL_GetTick() - Tickstart) > Timeout) || (Timeout == 0U))
2465:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
2466:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->State = HAL_QSPI_STATE_ERROR;
2467:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->ErrorCode |= HAL_QSPI_ERROR_TIMEOUT;
2468:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2469:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** return HAL_ERROR;
2470:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
2471:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
2472:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
2473:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** return HAL_OK;
ARM GAS /tmp/ccNpZKQO.s page 46
2474:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
2475:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2476:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /**
2477:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @brief Configure the communication registers.
2478:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @param hqspi : QSPI handle
2479:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @param cmd : structure that contains the command configuration information
2480:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @param FunctionalMode : functional mode to configured
2481:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * This parameter can be one of the following values:
2482:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @arg QSPI_FUNCTIONAL_MODE_INDIRECT_WRITE: Indirect write mode
2483:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @arg QSPI_FUNCTIONAL_MODE_INDIRECT_READ: Indirect read mode
2484:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @arg QSPI_FUNCTIONAL_MODE_AUTO_POLLING: Automatic polling mode
2485:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @arg QSPI_FUNCTIONAL_MODE_MEMORY_MAPPED: Memory-mapped mode
2486:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** * @retval None
2487:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** */
2488:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** static void QSPI_Config(QSPI_HandleTypeDef *hqspi, QSPI_CommandTypeDef *cmd, uint32_t FunctionalMod
2489:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
98 .loc 1 2489 1 is_stmt 1 view -0
99 .cfi_startproc
100 @ args = 0, pretend = 0, frame = 0
101 @ frame_needed = 0, uses_anonymous_args = 0
102 @ link register save eliminated.
103 .loc 1 2489 1 is_stmt 0 view .LVU17
104 0000 F0B4 push {r4, r5, r6, r7}
105 .LCFI0:
106 .cfi_def_cfa_offset 16
107 .cfi_offset 4, -16
108 .cfi_offset 5, -12
109 .cfi_offset 6, -8
110 .cfi_offset 7, -4
2490:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** assert_param(IS_QSPI_FUNCTIONAL_MODE(FunctionalMode));
111 .loc 1 2490 3 is_stmt 1 view .LVU18
2491:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2492:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if ((cmd->DataMode != QSPI_DATA_NONE) && (FunctionalMode != QSPI_FUNCTIONAL_MODE_MEMORY_MAPPED))
112 .loc 1 2492 3 view .LVU19
113 .loc 1 2492 11 is_stmt 0 view .LVU20
114 0002 4B6A ldr r3, [r1, #36]
115 .loc 1 2492 6 view .LVU21
116 0004 33B1 cbz r3, .L4
117 .loc 1 2492 41 discriminator 1 view .LVU22
118 0006 B2F1406F cmp r2, #201326592
119 000a 03D0 beq .L4
2493:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
2494:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Configure QSPI: DLR register with the number of data to read or write */
2495:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** WRITE_REG(hqspi->Instance->DLR, (cmd->NbData - 1U));
120 .loc 1 2495 5 is_stmt 1 view .LVU23
121 000c 8B6A ldr r3, [r1, #40]
122 000e 0468 ldr r4, [r0]
123 0010 013B subs r3, r3, #1
124 0012 2361 str r3, [r4, #16]
125 .L4:
2496:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
2497:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2498:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if (cmd->InstructionMode != QSPI_INSTRUCTION_NONE)
126 .loc 1 2498 3 view .LVU24
127 .loc 1 2498 10 is_stmt 0 view .LVU25
128 0014 8C69 ldr r4, [r1, #24]
129 .loc 1 2498 6 view .LVU26
ARM GAS /tmp/ccNpZKQO.s page 47
130 0016 002C cmp r4, #0
131 0018 6ED0 beq .L5
2499:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
2500:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if (cmd->AlternateByteMode != QSPI_ALTERNATE_BYTES_NONE)
132 .loc 1 2500 5 is_stmt 1 view .LVU27
133 .loc 1 2500 12 is_stmt 0 view .LVU28
134 001a 0E6A ldr r6, [r1, #32]
135 .loc 1 2500 8 view .LVU29
136 001c 002E cmp r6, #0
137 001e 3BD0 beq .L6
2501:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
2502:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Configure QSPI: ABR register with alternate bytes value */
2503:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** WRITE_REG(hqspi->Instance->ABR, cmd->AlternateBytes);
138 .loc 1 2503 7 is_stmt 1 view .LVU30
139 0020 0368 ldr r3, [r0]
140 0022 8C68 ldr r4, [r1, #8]
141 0024 DC61 str r4, [r3, #28]
2504:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2505:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if (cmd->AddressMode != QSPI_ADDRESS_NONE)
142 .loc 1 2505 7 view .LVU31
143 .loc 1 2505 14 is_stmt 0 view .LVU32
144 0026 CC69 ldr r4, [r1, #28]
145 .loc 1 2505 10 view .LVU33
146 0028 F4B1 cbz r4, .L7
2506:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
2507:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /*---- Command with instruction, address and alternate bytes ----*/
2508:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Configure QSPI: CCR register with all communications parameters */
2509:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** WRITE_REG(hqspi->Instance->CCR, (cmd->DdrMode | cmd->DdrHoldHalfCycle | cmd->SIOOMode |
147 .loc 1 2509 9 is_stmt 1 view .LVU34
148 002a CB6A ldr r3, [r1, #44]
149 002c 0D6B ldr r5, [r1, #48]
150 002e 2B43 orrs r3, r3, r5
151 0030 4D6B ldr r5, [r1, #52]
152 0032 2B43 orrs r3, r3, r5
153 0034 4D6A ldr r5, [r1, #36]
154 0036 2B43 orrs r3, r3, r5
155 0038 4D69 ldr r5, [r1, #20]
156 003a 43EA8543 orr r3, r3, r5, lsl #18
157 003e 0D69 ldr r5, [r1, #16]
158 0040 2B43 orrs r3, r3, r5
159 0042 0D6A ldr r5, [r1, #32]
160 0044 2B43 orrs r3, r3, r5
161 0046 CD68 ldr r5, [r1, #12]
162 0048 2B43 orrs r3, r3, r5
163 004a 2343 orrs r3, r3, r4
164 004c 8C69 ldr r4, [r1, #24]
165 004e 2343 orrs r3, r3, r4
166 0050 0C68 ldr r4, [r1]
167 0052 2343 orrs r3, r3, r4
168 0054 0468 ldr r4, [r0]
169 0056 1343 orrs r3, r3, r2
170 0058 6361 str r3, [r4, #20]
2510:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** cmd->DataMode | (cmd->DummyCycles << QUADSPI_CCR_DCYC_Pos)
2511:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** cmd->AlternateBytesSize | cmd->AlternateByteMode |
2512:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** cmd->AddressSize | cmd->AddressMode | cmd->InstructionMode
2513:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** cmd->Instruction | FunctionalMode));
2514:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
ARM GAS /tmp/ccNpZKQO.s page 48
2515:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if (FunctionalMode != QSPI_FUNCTIONAL_MODE_MEMORY_MAPPED)
171 .loc 1 2515 9 view .LVU35
172 .loc 1 2515 12 is_stmt 0 view .LVU36
173 005a B2F1406F cmp r2, #201326592
174 005e 19D0 beq .L3
2516:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
2517:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Configure QSPI: AR register with address value */
2518:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** WRITE_REG(hqspi->Instance->AR, cmd->Address);
175 .loc 1 2518 11 is_stmt 1 view .LVU37
176 0060 0368 ldr r3, [r0]
177 0062 4A68 ldr r2, [r1, #4]
178 .LVL7:
179 .loc 1 2518 11 is_stmt 0 view .LVU38
180 0064 9A61 str r2, [r3, #24]
181 0066 15E0 b .L3
182 .LVL8:
183 .L7:
2519:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
2520:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
2521:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** else
2522:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
2523:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /*---- Command with instruction and alternate bytes ----*/
2524:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Configure QSPI: CCR register with all communications parameters */
2525:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** WRITE_REG(hqspi->Instance->CCR, (cmd->DdrMode | cmd->DdrHoldHalfCycle | cmd->SIOOMode |
184 .loc 1 2525 9 is_stmt 1 view .LVU39
185 0068 CB6A ldr r3, [r1, #44]
186 006a 0D6B ldr r5, [r1, #48]
187 006c 2B43 orrs r3, r3, r5
188 006e 4D6B ldr r5, [r1, #52]
189 0070 2B43 orrs r3, r3, r5
190 0072 4D6A ldr r5, [r1, #36]
191 0074 2B43 orrs r3, r3, r5
192 0076 4D69 ldr r5, [r1, #20]
193 0078 43EA8543 orr r3, r3, r5, lsl #18
194 007c 0D69 ldr r5, [r1, #16]
195 007e 2B43 orrs r3, r3, r5
196 0080 0D6A ldr r5, [r1, #32]
197 0082 2B43 orrs r3, r3, r5
198 0084 2343 orrs r3, r3, r4
199 0086 8C69 ldr r4, [r1, #24]
200 0088 2343 orrs r3, r3, r4
201 008a 0C68 ldr r4, [r1]
202 008c 2343 orrs r3, r3, r4
203 008e 0168 ldr r1, [r0]
204 .LVL9:
205 .loc 1 2525 9 is_stmt 0 view .LVU40
206 0090 1A43 orrs r2, r2, r3
207 .LVL10:
208 .loc 1 2525 9 view .LVU41
209 0092 4A61 str r2, [r1, #20]
210 .L3:
2526:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** cmd->DataMode | (cmd->DummyCycles << QUADSPI_CCR_DCYC_Pos)
2527:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** cmd->AlternateBytesSize | cmd->AlternateByteMode |
2528:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** cmd->AddressMode | cmd->InstructionMode |
2529:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** cmd->Instruction | FunctionalMode));
2530:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
2531:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
ARM GAS /tmp/ccNpZKQO.s page 49
2532:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** else
2533:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
2534:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if (cmd->AddressMode != QSPI_ADDRESS_NONE)
2535:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
2536:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /*---- Command with instruction and address ----*/
2537:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Configure QSPI: CCR register with all communications parameters */
2538:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** WRITE_REG(hqspi->Instance->CCR, (cmd->DdrMode | cmd->DdrHoldHalfCycle | cmd->SIOOMode |
2539:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** cmd->DataMode | (cmd->DummyCycles << QUADSPI_CCR_DCYC_Pos)
2540:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** cmd->AlternateByteMode | cmd->AddressSize | cmd->AddressMo
2541:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** cmd->InstructionMode | cmd->Instruction | FunctionalMode))
2542:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2543:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if (FunctionalMode != QSPI_FUNCTIONAL_MODE_MEMORY_MAPPED)
2544:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
2545:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Configure QSPI: AR register with address value */
2546:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** WRITE_REG(hqspi->Instance->AR, cmd->Address);
2547:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
2548:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
2549:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** else
2550:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
2551:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /*---- Command with only instruction ----*/
2552:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Configure QSPI: CCR register with all communications parameters */
2553:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** WRITE_REG(hqspi->Instance->CCR, (cmd->DdrMode | cmd->DdrHoldHalfCycle | cmd->SIOOMode |
2554:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** cmd->DataMode | (cmd->DummyCycles << QUADSPI_CCR_DCYC_Pos)
2555:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** cmd->AlternateByteMode | cmd->AddressMode |
2556:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** cmd->InstructionMode | cmd->Instruction | FunctionalMode))
2557:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
2558:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
2559:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
2560:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** else
2561:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
2562:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if (cmd->AlternateByteMode != QSPI_ALTERNATE_BYTES_NONE)
2563:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
2564:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Configure QSPI: ABR register with alternate bytes value */
2565:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** WRITE_REG(hqspi->Instance->ABR, cmd->AlternateBytes);
2566:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2567:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if (cmd->AddressMode != QSPI_ADDRESS_NONE)
2568:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
2569:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /*---- Command with address and alternate bytes ----*/
2570:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Configure QSPI: CCR register with all communications parameters */
2571:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** WRITE_REG(hqspi->Instance->CCR, (cmd->DdrMode | cmd->DdrHoldHalfCycle | cmd->SIOOMode |
2572:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** cmd->DataMode | (cmd->DummyCycles << QUADSPI_CCR_DCYC_Pos)
2573:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** cmd->AlternateBytesSize | cmd->AlternateByteMode |
2574:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** cmd->AddressSize | cmd->AddressMode |
2575:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** cmd->InstructionMode | FunctionalMode));
2576:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2577:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if (FunctionalMode != QSPI_FUNCTIONAL_MODE_MEMORY_MAPPED)
2578:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
2579:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Configure QSPI: AR register with address value */
2580:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** WRITE_REG(hqspi->Instance->AR, cmd->Address);
2581:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
2582:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
2583:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** else
2584:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
2585:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /*---- Command with only alternate bytes ----*/
2586:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Configure QSPI: CCR register with all communications parameters */
2587:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** WRITE_REG(hqspi->Instance->CCR, (cmd->DdrMode | cmd->DdrHoldHalfCycle | cmd->SIOOMode |
2588:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** cmd->DataMode | (cmd->DummyCycles << QUADSPI_CCR_DCYC_Pos)
ARM GAS /tmp/ccNpZKQO.s page 50
2589:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** cmd->AlternateBytesSize | cmd->AlternateByteMode |
2590:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** cmd->AddressMode | cmd->InstructionMode | FunctionalMode))
2591:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
2592:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
2593:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** else
2594:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
2595:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if (cmd->AddressMode != QSPI_ADDRESS_NONE)
2596:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
2597:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /*---- Command with only address ----*/
2598:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Configure QSPI: CCR register with all communications parameters */
2599:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** WRITE_REG(hqspi->Instance->CCR, (cmd->DdrMode | cmd->DdrHoldHalfCycle | cmd->SIOOMode |
2600:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** cmd->DataMode | (cmd->DummyCycles << QUADSPI_CCR_DCYC_Pos)
2601:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** cmd->AlternateByteMode | cmd->AddressSize |
2602:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** cmd->AddressMode | cmd->InstructionMode | FunctionalMode))
2603:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2604:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if (FunctionalMode != QSPI_FUNCTIONAL_MODE_MEMORY_MAPPED)
2605:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
2606:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Configure QSPI: AR register with address value */
2607:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** WRITE_REG(hqspi->Instance->AR, cmd->Address);
2608:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
2609:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
2610:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** else
2611:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
2612:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /*---- Command with only data phase ----*/
2613:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if (cmd->DataMode != QSPI_DATA_NONE)
2614:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
2615:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Configure QSPI: CCR register with all communications parameters */
2616:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** WRITE_REG(hqspi->Instance->CCR, (cmd->DdrMode | cmd->DdrHoldHalfCycle | cmd->SIOOMode |
2617:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** cmd->DataMode | (cmd->DummyCycles << QUADSPI_CCR_DCYC_Po
2618:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** cmd->AlternateByteMode | cmd->AddressMode |
2619:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** cmd->InstructionMode | FunctionalMode));
2620:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
2621:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
2622:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
2623:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
2624:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
211 .loc 1 2624 1 view .LVU42
212 0094 F0BC pop {r4, r5, r6, r7}
213 .LCFI1:
214 .cfi_remember_state
215 .cfi_restore 7
216 .cfi_restore 6
217 .cfi_restore 5
218 .cfi_restore 4
219 .cfi_def_cfa_offset 0
220 0096 7047 bx lr
221 .LVL11:
222 .L6:
223 .LCFI2:
224 .cfi_restore_state
2534:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
225 .loc 1 2534 7 is_stmt 1 view .LVU43
2534:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
226 .loc 1 2534 14 is_stmt 0 view .LVU44
227 0098 CD69 ldr r5, [r1, #28]
2534:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
228 .loc 1 2534 10 view .LVU45
ARM GAS /tmp/ccNpZKQO.s page 51
229 009a D5B1 cbz r5, .L9
2538:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** cmd->DataMode | (cmd->DummyCycles << QUADSPI_CCR_DCYC_Pos)
230 .loc 1 2538 9 is_stmt 1 view .LVU46
231 009c CB6A ldr r3, [r1, #44]
232 009e 0F6B ldr r7, [r1, #48]
233 00a0 3B43 orrs r3, r3, r7
234 00a2 4F6B ldr r7, [r1, #52]
235 00a4 3B43 orrs r3, r3, r7
236 00a6 4F6A ldr r7, [r1, #36]
237 00a8 3B43 orrs r3, r3, r7
238 00aa 4F69 ldr r7, [r1, #20]
239 00ac 43EA8743 orr r3, r3, r7, lsl #18
240 00b0 3343 orrs r3, r3, r6
241 00b2 CE68 ldr r6, [r1, #12]
242 00b4 3343 orrs r3, r3, r6
243 00b6 2B43 orrs r3, r3, r5
244 00b8 2343 orrs r3, r3, r4
245 00ba 0C68 ldr r4, [r1]
246 00bc 2343 orrs r3, r3, r4
247 00be 0468 ldr r4, [r0]
248 00c0 1343 orrs r3, r3, r2
249 00c2 6361 str r3, [r4, #20]
2543:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
250 .loc 1 2543 9 view .LVU47
2543:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
251 .loc 1 2543 12 is_stmt 0 view .LVU48
252 00c4 B2F1406F cmp r2, #201326592
253 00c8 E4D0 beq .L3
2546:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
254 .loc 1 2546 11 is_stmt 1 view .LVU49
255 00ca 0368 ldr r3, [r0]
256 00cc 4A68 ldr r2, [r1, #4]
257 .LVL12:
2546:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
258 .loc 1 2546 11 is_stmt 0 view .LVU50
259 00ce 9A61 str r2, [r3, #24]
260 00d0 E0E7 b .L3
261 .LVL13:
262 .L9:
2553:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** cmd->DataMode | (cmd->DummyCycles << QUADSPI_CCR_DCYC_Pos)
263 .loc 1 2553 9 is_stmt 1 view .LVU51
264 00d2 CB6A ldr r3, [r1, #44]
265 00d4 0F6B ldr r7, [r1, #48]
266 00d6 3B43 orrs r3, r3, r7
267 00d8 4F6B ldr r7, [r1, #52]
268 00da 3B43 orrs r3, r3, r7
269 00dc 4F6A ldr r7, [r1, #36]
270 00de 3B43 orrs r3, r3, r7
271 00e0 4F69 ldr r7, [r1, #20]
272 00e2 43EA8743 orr r3, r3, r7, lsl #18
273 00e6 3343 orrs r3, r3, r6
274 00e8 2B43 orrs r3, r3, r5
275 00ea 2343 orrs r3, r3, r4
276 00ec 0C68 ldr r4, [r1]
277 00ee 2343 orrs r3, r3, r4
278 00f0 0168 ldr r1, [r0]
279 .LVL14:
ARM GAS /tmp/ccNpZKQO.s page 52
2553:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** cmd->DataMode | (cmd->DummyCycles << QUADSPI_CCR_DCYC_Pos)
280 .loc 1 2553 9 is_stmt 0 view .LVU52
281 00f2 1A43 orrs r2, r2, r3
282 .LVL15:
2553:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** cmd->DataMode | (cmd->DummyCycles << QUADSPI_CCR_DCYC_Pos)
283 .loc 1 2553 9 view .LVU53
284 00f4 4A61 str r2, [r1, #20]
285 00f6 CDE7 b .L3
286 .LVL16:
287 .L5:
2562:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
288 .loc 1 2562 5 is_stmt 1 view .LVU54
2562:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
289 .loc 1 2562 12 is_stmt 0 view .LVU55
290 00f8 0D6A ldr r5, [r1, #32]
2562:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
291 .loc 1 2562 8 view .LVU56
292 00fa 002D cmp r5, #0
293 00fc 37D0 beq .L10
2565:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
294 .loc 1 2565 7 is_stmt 1 view .LVU57
295 00fe 0368 ldr r3, [r0]
296 0100 8C68 ldr r4, [r1, #8]
297 0102 DC61 str r4, [r3, #28]
2567:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
298 .loc 1 2567 7 view .LVU58
2567:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
299 .loc 1 2567 14 is_stmt 0 view .LVU59
300 0104 CD69 ldr r5, [r1, #28]
2567:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
301 .loc 1 2567 10 view .LVU60
302 0106 E5B1 cbz r5, .L11
2571:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** cmd->DataMode | (cmd->DummyCycles << QUADSPI_CCR_DCYC_Pos)
303 .loc 1 2571 9 is_stmt 1 view .LVU61
304 0108 CB6A ldr r3, [r1, #44]
305 010a 0C6B ldr r4, [r1, #48]
306 010c 2343 orrs r3, r3, r4
307 010e 4C6B ldr r4, [r1, #52]
308 0110 2343 orrs r3, r3, r4
309 0112 4C6A ldr r4, [r1, #36]
310 0114 2343 orrs r3, r3, r4
311 0116 4C69 ldr r4, [r1, #20]
312 0118 43EA8443 orr r3, r3, r4, lsl #18
313 011c 0C69 ldr r4, [r1, #16]
314 011e 2343 orrs r3, r3, r4
315 0120 0C6A ldr r4, [r1, #32]
316 0122 2343 orrs r3, r3, r4
317 0124 CC68 ldr r4, [r1, #12]
318 0126 2343 orrs r3, r3, r4
319 0128 2B43 orrs r3, r3, r5
320 012a 8C69 ldr r4, [r1, #24]
321 012c 2343 orrs r3, r3, r4
322 012e 0468 ldr r4, [r0]
323 0130 1343 orrs r3, r3, r2
324 0132 6361 str r3, [r4, #20]
2577:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
325 .loc 1 2577 9 view .LVU62
ARM GAS /tmp/ccNpZKQO.s page 53
2577:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
326 .loc 1 2577 12 is_stmt 0 view .LVU63
327 0134 B2F1406F cmp r2, #201326592
328 0138 ACD0 beq .L3
2580:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
329 .loc 1 2580 11 is_stmt 1 view .LVU64
330 013a 0368 ldr r3, [r0]
331 013c 4A68 ldr r2, [r1, #4]
332 .LVL17:
2580:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
333 .loc 1 2580 11 is_stmt 0 view .LVU65
334 013e 9A61 str r2, [r3, #24]
335 0140 A8E7 b .L3
336 .LVL18:
337 .L11:
2587:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** cmd->DataMode | (cmd->DummyCycles << QUADSPI_CCR_DCYC_Pos)
338 .loc 1 2587 9 is_stmt 1 view .LVU66
339 0142 CC6A ldr r4, [r1, #44]
340 0144 0B6B ldr r3, [r1, #48]
341 0146 1C43 orrs r4, r4, r3
342 0148 4B6B ldr r3, [r1, #52]
343 014a 1C43 orrs r4, r4, r3
344 014c 4B6A ldr r3, [r1, #36]
345 014e 1C43 orrs r4, r4, r3
346 0150 4B69 ldr r3, [r1, #20]
347 0152 44EA8344 orr r4, r4, r3, lsl #18
348 0156 0B69 ldr r3, [r1, #16]
349 0158 1C43 orrs r4, r4, r3
350 015a 0B6A ldr r3, [r1, #32]
351 015c 1C43 orrs r4, r4, r3
352 015e 45EA0403 orr r3, r5, r4
353 0162 8C69 ldr r4, [r1, #24]
354 0164 2343 orrs r3, r3, r4
355 0166 0168 ldr r1, [r0]
356 .LVL19:
2587:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** cmd->DataMode | (cmd->DummyCycles << QUADSPI_CCR_DCYC_Pos)
357 .loc 1 2587 9 is_stmt 0 view .LVU67
358 0168 1A43 orrs r2, r2, r3
359 .LVL20:
2587:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** cmd->DataMode | (cmd->DummyCycles << QUADSPI_CCR_DCYC_Pos)
360 .loc 1 2587 9 view .LVU68
361 016a 4A61 str r2, [r1, #20]
362 016c 92E7 b .L3
363 .LVL21:
364 .L10:
2595:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
365 .loc 1 2595 7 is_stmt 1 view .LVU69
2595:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
366 .loc 1 2595 14 is_stmt 0 view .LVU70
367 016e CE69 ldr r6, [r1, #28]
2595:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
368 .loc 1 2595 10 view .LVU71
369 0170 CEB1 cbz r6, .L12
2599:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** cmd->DataMode | (cmd->DummyCycles << QUADSPI_CCR_DCYC_Pos)
370 .loc 1 2599 9 is_stmt 1 view .LVU72
371 0172 0B6B ldr r3, [r1, #48]
372 0174 CF6A ldr r7, [r1, #44]
ARM GAS /tmp/ccNpZKQO.s page 54
373 0176 3B43 orrs r3, r3, r7
374 0178 4F6B ldr r7, [r1, #52]
375 017a 3B43 orrs r3, r3, r7
376 017c 4F6A ldr r7, [r1, #36]
377 017e 3B43 orrs r3, r3, r7
378 0180 4F69 ldr r7, [r1, #20]
379 0182 43EA8743 orr r3, r3, r7, lsl #18
380 0186 2B43 orrs r3, r3, r5
381 0188 CD68 ldr r5, [r1, #12]
382 018a 2B43 orrs r3, r3, r5
383 018c 3343 orrs r3, r3, r6
384 018e 2343 orrs r3, r3, r4
385 0190 0468 ldr r4, [r0]
386 0192 1343 orrs r3, r3, r2
387 0194 6361 str r3, [r4, #20]
2604:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
388 .loc 1 2604 9 view .LVU73
2604:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
389 .loc 1 2604 12 is_stmt 0 view .LVU74
390 0196 B2F1406F cmp r2, #201326592
391 019a 3FF47BAF beq .L3
2607:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
392 .loc 1 2607 11 is_stmt 1 view .LVU75
393 019e 0368 ldr r3, [r0]
394 01a0 4A68 ldr r2, [r1, #4]
395 .LVL22:
2607:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
396 .loc 1 2607 11 is_stmt 0 view .LVU76
397 01a2 9A61 str r2, [r3, #24]
398 01a4 76E7 b .L3
399 .LVL23:
400 .L12:
2613:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
401 .loc 1 2613 9 is_stmt 1 view .LVU77
2613:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
402 .loc 1 2613 16 is_stmt 0 view .LVU78
403 01a6 D1F824C0 ldr ip, [r1, #36]
2613:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
404 .loc 1 2613 12 view .LVU79
405 01aa BCF1000F cmp ip, #0
406 01ae 3FF471AF beq .L3
2616:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** cmd->DataMode | (cmd->DummyCycles << QUADSPI_CCR_DCYC_Po
407 .loc 1 2616 11 is_stmt 1 view .LVU80
408 01b2 CB6A ldr r3, [r1, #44]
409 01b4 0F6B ldr r7, [r1, #48]
410 01b6 3B43 orrs r3, r3, r7
411 01b8 4F6B ldr r7, [r1, #52]
412 01ba 3B43 orrs r3, r3, r7
413 01bc 4CEA0307 orr r7, ip, r3
414 01c0 4B69 ldr r3, [r1, #20]
415 01c2 47EA8343 orr r3, r7, r3, lsl #18
416 01c6 1D43 orrs r5, r5, r3
417 01c8 46EA0503 orr r3, r6, r5
418 01cc 2343 orrs r3, r3, r4
419 01ce 0168 ldr r1, [r0]
420 .LVL24:
2616:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** cmd->DataMode | (cmd->DummyCycles << QUADSPI_CCR_DCYC_Po
ARM GAS /tmp/ccNpZKQO.s page 55
421 .loc 1 2616 11 is_stmt 0 view .LVU81
422 01d0 1A43 orrs r2, r2, r3
423 .LVL25:
2616:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** cmd->DataMode | (cmd->DummyCycles << QUADSPI_CCR_DCYC_Po
424 .loc 1 2616 11 view .LVU82
425 01d2 4A61 str r2, [r1, #20]
426 .loc 1 2624 1 view .LVU83
427 01d4 5EE7 b .L3
428 .cfi_endproc
429 .LFE178:
431 .section .text.QSPI_WaitFlagStateUntilTimeout,"ax",%progbits
432 .align 1
433 .syntax unified
434 .thumb
435 .thumb_func
436 .fpu fpv5-d16
438 QSPI_WaitFlagStateUntilTimeout:
439 .LVL26:
440 .LFB177:
2457:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Wait until flag is in expected state */
441 .loc 1 2457 1 is_stmt 1 view -0
442 .cfi_startproc
443 @ args = 4, pretend = 0, frame = 0
444 @ frame_needed = 0, uses_anonymous_args = 0
2457:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Wait until flag is in expected state */
445 .loc 1 2457 1 is_stmt 0 view .LVU85
446 0000 2DE9F843 push {r3, r4, r5, r6, r7, r8, r9, lr}
447 .LCFI3:
448 .cfi_def_cfa_offset 32
449 .cfi_offset 3, -32
450 .cfi_offset 4, -28
451 .cfi_offset 5, -24
452 .cfi_offset 6, -20
453 .cfi_offset 7, -16
454 .cfi_offset 8, -12
455 .cfi_offset 9, -8
456 .cfi_offset 14, -4
457 0004 0546 mov r5, r0
458 0006 0F46 mov r7, r1
459 0008 1646 mov r6, r2
460 000a 9946 mov r9, r3
461 000c DDF82080 ldr r8, [sp, #32]
2459:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
462 .loc 1 2459 3 is_stmt 1 view .LVU86
463 .LVL27:
464 .L16:
2459:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
465 .loc 1 2459 8 view .LVU87
2459:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
466 .loc 1 2459 10 is_stmt 0 view .LVU88
467 0010 2C68 ldr r4, [r5]
468 0012 A468 ldr r4, [r4, #8]
469 0014 3C42 tst r4, r7
470 0016 14BF ite ne
471 0018 4FF0010C movne ip, #1
472 001c 4FF0000C moveq ip, #0
2459:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
ARM GAS /tmp/ccNpZKQO.s page 56
473 .loc 1 2459 8 view .LVU89
474 0020 B445 cmp ip, r6
475 0022 14D0 beq .L21
2462:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
476 .loc 1 2462 5 is_stmt 1 view .LVU90
2462:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
477 .loc 1 2462 8 is_stmt 0 view .LVU91
478 0024 B8F1FF3F cmp r8, #-1
479 0028 F2D0 beq .L16
2464:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
480 .loc 1 2464 7 is_stmt 1 view .LVU92
2464:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
481 .loc 1 2464 12 is_stmt 0 view .LVU93
482 002a FFF7FEFF bl HAL_GetTick
483 .LVL28:
2464:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
484 .loc 1 2464 26 view .LVU94
485 002e A0EB0900 sub r0, r0, r9
2464:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
486 .loc 1 2464 9 view .LVU95
487 0032 4045 cmp r0, r8
488 0034 02D8 bhi .L17
2464:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
489 .loc 1 2464 50 discriminator 1 view .LVU96
490 0036 B8F1000F cmp r8, #0
491 003a E9D1 bne .L16
492 .L17:
2466:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->ErrorCode |= HAL_QSPI_ERROR_TIMEOUT;
493 .loc 1 2466 9 is_stmt 1 view .LVU97
2466:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->ErrorCode |= HAL_QSPI_ERROR_TIMEOUT;
494 .loc 1 2466 26 is_stmt 0 view .LVU98
495 003c 0423 movs r3, #4
496 003e 85F84130 strb r3, [r5, #65]
2467:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
497 .loc 1 2467 9 is_stmt 1 view .LVU99
2467:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
498 .loc 1 2467 26 is_stmt 0 view .LVU100
499 0042 6B6C ldr r3, [r5, #68]
500 0044 43F00103 orr r3, r3, #1
501 0048 6B64 str r3, [r5, #68]
2469:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
502 .loc 1 2469 9 is_stmt 1 view .LVU101
2469:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
503 .loc 1 2469 16 is_stmt 0 view .LVU102
504 004a 0120 movs r0, #1
505 004c 00E0 b .L18
506 .L21:
2473:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
507 .loc 1 2473 10 view .LVU103
508 004e 0020 movs r0, #0
509 .L18:
2474:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
510 .loc 1 2474 1 view .LVU104
511 0050 BDE8F883 pop {r3, r4, r5, r6, r7, r8, r9, pc}
2474:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
512 .loc 1 2474 1 view .LVU105
513 .cfi_endproc
ARM GAS /tmp/ccNpZKQO.s page 57
514 .LFE177:
516 .section .text.HAL_QSPI_MspInit,"ax",%progbits
517 .align 1
518 .weak HAL_QSPI_MspInit
519 .syntax unified
520 .thumb
521 .thumb_func
522 .fpu fpv5-d16
524 HAL_QSPI_MspInit:
525 .LVL29:
526 .LFB143:
439:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Prevent unused argument(s) compilation warning */
527 .loc 1 439 1 is_stmt 1 view -0
528 .cfi_startproc
529 @ args = 0, pretend = 0, frame = 0
530 @ frame_needed = 0, uses_anonymous_args = 0
531 @ link register save eliminated.
441:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
532 .loc 1 441 3 view .LVU107
446:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
533 .loc 1 446 1 is_stmt 0 view .LVU108
534 0000 7047 bx lr
535 .cfi_endproc
536 .LFE143:
538 .section .text.HAL_QSPI_MspDeInit,"ax",%progbits
539 .align 1
540 .weak HAL_QSPI_MspDeInit
541 .syntax unified
542 .thumb
543 .thumb_func
544 .fpu fpv5-d16
546 HAL_QSPI_MspDeInit:
547 .LVL30:
548 .LFB144:
454:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Prevent unused argument(s) compilation warning */
549 .loc 1 454 1 is_stmt 1 view -0
550 .cfi_startproc
551 @ args = 0, pretend = 0, frame = 0
552 @ frame_needed = 0, uses_anonymous_args = 0
553 @ link register save eliminated.
456:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
554 .loc 1 456 3 view .LVU110
461:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
555 .loc 1 461 1 is_stmt 0 view .LVU111
556 0000 7047 bx lr
557 .cfi_endproc
558 .LFE144:
560 .section .text.HAL_QSPI_DeInit,"ax",%progbits
561 .align 1
562 .global HAL_QSPI_DeInit
563 .syntax unified
564 .thumb
565 .thumb_func
566 .fpu fpv5-d16
568 HAL_QSPI_DeInit:
569 .LVL31:
570 .LFB142:
ARM GAS /tmp/ccNpZKQO.s page 58
401:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Check the QSPI handle allocation */
571 .loc 1 401 1 is_stmt 1 view -0
572 .cfi_startproc
573 @ args = 0, pretend = 0, frame = 0
574 @ frame_needed = 0, uses_anonymous_args = 0
403:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
575 .loc 1 403 3 view .LVU113
403:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
576 .loc 1 403 5 is_stmt 0 view .LVU114
577 0000 68B1 cbz r0, .L26
401:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Check the QSPI handle allocation */
578 .loc 1 401 1 view .LVU115
579 0002 10B5 push {r4, lr}
580 .LCFI4:
581 .cfi_def_cfa_offset 8
582 .cfi_offset 4, -8
583 .cfi_offset 14, -4
584 0004 0446 mov r4, r0
409:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
585 .loc 1 409 3 is_stmt 1 view .LVU116
586 0006 0268 ldr r2, [r0]
587 0008 1368 ldr r3, [r2]
588 000a 23F00103 bic r3, r3, #1
589 000e 1360 str r3, [r2]
421:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** #endif
590 .loc 1 421 3 view .LVU117
591 0010 FFF7FEFF bl HAL_QSPI_MspDeInit
592 .LVL32:
425:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
593 .loc 1 425 3 view .LVU118
425:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
594 .loc 1 425 20 is_stmt 0 view .LVU119
595 0014 0020 movs r0, #0
596 0016 6064 str r0, [r4, #68]
428:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
597 .loc 1 428 3 is_stmt 1 view .LVU120
428:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
598 .loc 1 428 16 is_stmt 0 view .LVU121
599 0018 84F84100 strb r0, [r4, #65]
430:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
600 .loc 1 430 3 is_stmt 1 view .LVU122
431:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
601 .loc 1 431 1 is_stmt 0 view .LVU123
602 001c 10BD pop {r4, pc}
603 .LVL33:
604 .L26:
605 .LCFI5:
606 .cfi_def_cfa_offset 0
607 .cfi_restore 4
608 .cfi_restore 14
405:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
609 .loc 1 405 12 view .LVU124
610 001e 0120 movs r0, #1
611 .LVL34:
431:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
612 .loc 1 431 1 view .LVU125
613 0020 7047 bx lr
ARM GAS /tmp/ccNpZKQO.s page 59
614 .cfi_endproc
615 .LFE142:
617 .section .text.HAL_QSPI_Command,"ax",%progbits
618 .align 1
619 .global HAL_QSPI_Command
620 .syntax unified
621 .thumb
622 .thumb_func
623 .fpu fpv5-d16
625 HAL_QSPI_Command:
626 .LVL35:
627 .LFB146:
782:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** HAL_StatusTypeDef status;
628 .loc 1 782 1 is_stmt 1 view -0
629 .cfi_startproc
630 @ args = 0, pretend = 0, frame = 0
631 @ frame_needed = 0, uses_anonymous_args = 0
782:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** HAL_StatusTypeDef status;
632 .loc 1 782 1 is_stmt 0 view .LVU127
633 0000 2DE9F041 push {r4, r5, r6, r7, r8, lr}
634 .LCFI6:
635 .cfi_def_cfa_offset 24
636 .cfi_offset 4, -24
637 .cfi_offset 5, -20
638 .cfi_offset 6, -16
639 .cfi_offset 7, -12
640 .cfi_offset 8, -8
641 .cfi_offset 14, -4
642 0004 82B0 sub sp, sp, #8
643 .LCFI7:
644 .cfi_def_cfa_offset 32
645 0006 0446 mov r4, r0
646 0008 0F46 mov r7, r1
647 000a 1646 mov r6, r2
783:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** uint32_t tickstart = HAL_GetTick();
648 .loc 1 783 3 is_stmt 1 view .LVU128
784:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
649 .loc 1 784 3 view .LVU129
784:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
650 .loc 1 784 24 is_stmt 0 view .LVU130
651 000c FFF7FEFF bl HAL_GetTick
652 .LVL36:
787:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if (cmd->InstructionMode != QSPI_INSTRUCTION_NONE)
653 .loc 1 787 3 is_stmt 1 view .LVU131
788:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
654 .loc 1 788 3 view .LVU132
790:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
655 .loc 1 790 5 view .LVU133
793:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if (cmd->AddressMode != QSPI_ADDRESS_NONE)
656 .loc 1 793 3 view .LVU134
794:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
657 .loc 1 794 3 view .LVU135
796:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
658 .loc 1 796 5 view .LVU136
799:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if (cmd->AlternateByteMode != QSPI_ALTERNATE_BYTES_NONE)
659 .loc 1 799 3 view .LVU137
800:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
ARM GAS /tmp/ccNpZKQO.s page 60
660 .loc 1 800 3 view .LVU138
802:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
661 .loc 1 802 5 view .LVU139
805:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** assert_param(IS_QSPI_DATA_MODE(cmd->DataMode));
662 .loc 1 805 3 view .LVU140
806:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
663 .loc 1 806 3 view .LVU141
808:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** assert_param(IS_QSPI_DDR_HHC(cmd->DdrHoldHalfCycle));
664 .loc 1 808 3 view .LVU142
809:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** assert_param(IS_QSPI_SIOO_MODE(cmd->SIOOMode));
665 .loc 1 809 3 view .LVU143
810:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
666 .loc 1 810 3 view .LVU144
813:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
667 .loc 1 813 3 view .LVU145
813:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
668 .loc 1 813 3 view .LVU146
669 0010 94F840C0 ldrb ip, [r4, #64] @ zero_extendqisi2
670 0014 5FFA8CFC uxtb ip, ip
671 0018 BCF1010F cmp ip, #1
672 001c 3CD0 beq .L35
673 001e 0546 mov r5, r0
813:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
674 .loc 1 813 3 discriminator 2 view .LVU147
675 0020 0123 movs r3, #1
676 0022 84F84030 strb r3, [r4, #64]
813:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
677 .loc 1 813 3 discriminator 2 view .LVU148
815:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
678 .loc 1 815 3 discriminator 2 view .LVU149
815:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
679 .loc 1 815 11 is_stmt 0 discriminator 2 view .LVU150
680 0026 94F841C0 ldrb ip, [r4, #65] @ zero_extendqisi2
681 002a 5FFA8CFC uxtb ip, ip
815:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
682 .loc 1 815 5 discriminator 2 view .LVU151
683 002e 9C45 cmp ip, r3
684 0030 08D0 beq .L38
853:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
685 .loc 1 853 12 view .LVU152
686 0032 4FF00208 mov r8, #2
687 .LVL37:
688 .L33:
857:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
689 .loc 1 857 3 is_stmt 1 view .LVU153
857:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
690 .loc 1 857 3 view .LVU154
691 0036 0023 movs r3, #0
692 0038 84F84030 strb r3, [r4, #64]
857:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
693 .loc 1 857 3 view .LVU155
860:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
694 .loc 1 860 3 view .LVU156
695 .LVL38:
696 .L32:
861:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
697 .loc 1 861 1 is_stmt 0 view .LVU157
ARM GAS /tmp/ccNpZKQO.s page 61
698 003c 4046 mov r0, r8
699 003e 02B0 add sp, sp, #8
700 .LCFI8:
701 .cfi_remember_state
702 .cfi_def_cfa_offset 24
703 @ sp needed
704 0040 BDE8F081 pop {r4, r5, r6, r7, r8, pc}
705 .LVL39:
706 .L38:
707 .LCFI9:
708 .cfi_restore_state
817:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
709 .loc 1 817 5 is_stmt 1 view .LVU158
817:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
710 .loc 1 817 22 is_stmt 0 view .LVU159
711 0044 0022 movs r2, #0
712 0046 6264 str r2, [r4, #68]
820:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
713 .loc 1 820 5 is_stmt 1 view .LVU160
820:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
714 .loc 1 820 18 is_stmt 0 view .LVU161
715 0048 0223 movs r3, #2
716 004a 84F84130 strb r3, [r4, #65]
823:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
717 .loc 1 823 5 is_stmt 1 view .LVU162
823:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
718 .loc 1 823 14 is_stmt 0 view .LVU163
719 004e 0096 str r6, [sp]
720 0050 0346 mov r3, r0
721 0052 2021 movs r1, #32
722 0054 2046 mov r0, r4
723 .LVL40:
823:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
724 .loc 1 823 14 view .LVU164
725 0056 FFF7FEFF bl QSPI_WaitFlagStateUntilTimeout
726 .LVL41:
825:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
727 .loc 1 825 5 is_stmt 1 view .LVU165
825:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
728 .loc 1 825 8 is_stmt 0 view .LVU166
729 005a 8046 mov r8, r0
730 005c 0028 cmp r0, #0
731 005e EAD1 bne .L33
828:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
732 .loc 1 828 7 is_stmt 1 view .LVU167
733 0060 0022 movs r2, #0
734 0062 3946 mov r1, r7
735 0064 2046 mov r0, r4
736 .LVL42:
828:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
737 .loc 1 828 7 is_stmt 0 view .LVU168
738 0066 FFF7FEFF bl QSPI_Config
739 .LVL43:
830:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
740 .loc 1 830 7 is_stmt 1 view .LVU169
830:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
741 .loc 1 830 14 is_stmt 0 view .LVU170
ARM GAS /tmp/ccNpZKQO.s page 62
742 006a 7B6A ldr r3, [r7, #36]
830:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
743 .loc 1 830 10 view .LVU171
744 006c 1BB1 cbz r3, .L39
847:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
745 .loc 1 847 9 is_stmt 1 view .LVU172
847:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
746 .loc 1 847 22 is_stmt 0 view .LVU173
747 006e 0123 movs r3, #1
748 0070 84F84130 strb r3, [r4, #65]
749 0074 DFE7 b .L33
750 .L39:
834:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
751 .loc 1 834 9 is_stmt 1 view .LVU174
834:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
752 .loc 1 834 18 is_stmt 0 view .LVU175
753 0076 0096 str r6, [sp]
754 0078 2B46 mov r3, r5
755 007a 0122 movs r2, #1
756 007c 0221 movs r1, #2
757 007e 2046 mov r0, r4
758 0080 FFF7FEFF bl QSPI_WaitFlagStateUntilTimeout
759 .LVL44:
836:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
760 .loc 1 836 9 is_stmt 1 view .LVU176
836:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
761 .loc 1 836 12 is_stmt 0 view .LVU177
762 0084 8046 mov r8, r0
763 0086 0028 cmp r0, #0
764 0088 D5D1 bne .L33
838:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
765 .loc 1 838 11 is_stmt 1 view .LVU178
766 008a 2368 ldr r3, [r4]
767 008c 0222 movs r2, #2
768 008e DA60 str r2, [r3, #12]
841:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
769 .loc 1 841 11 view .LVU179
841:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
770 .loc 1 841 24 is_stmt 0 view .LVU180
771 0090 0123 movs r3, #1
772 0092 84F84130 strb r3, [r4, #65]
773 0096 CEE7 b .L33
774 .LVL45:
775 .L35:
813:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
776 .loc 1 813 3 view .LVU181
777 0098 4FF00208 mov r8, #2
778 009c CEE7 b .L32
779 .cfi_endproc
780 .LFE146:
782 .section .text.HAL_QSPI_Command_IT,"ax",%progbits
783 .align 1
784 .global HAL_QSPI_Command_IT
785 .syntax unified
786 .thumb
787 .thumb_func
788 .fpu fpv5-d16
ARM GAS /tmp/ccNpZKQO.s page 63
790 HAL_QSPI_Command_IT:
791 .LVL46:
792 .LFB147:
871:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** HAL_StatusTypeDef status;
793 .loc 1 871 1 is_stmt 1 view -0
794 .cfi_startproc
795 @ args = 0, pretend = 0, frame = 0
796 @ frame_needed = 0, uses_anonymous_args = 0
871:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** HAL_StatusTypeDef status;
797 .loc 1 871 1 is_stmt 0 view .LVU183
798 0000 70B5 push {r4, r5, r6, lr}
799 .LCFI10:
800 .cfi_def_cfa_offset 16
801 .cfi_offset 4, -16
802 .cfi_offset 5, -12
803 .cfi_offset 6, -8
804 .cfi_offset 14, -4
805 0002 82B0 sub sp, sp, #8
806 .LCFI11:
807 .cfi_def_cfa_offset 24
808 0004 0446 mov r4, r0
809 0006 0D46 mov r5, r1
872:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** uint32_t tickstart = HAL_GetTick();
810 .loc 1 872 3 is_stmt 1 view .LVU184
873:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
811 .loc 1 873 3 view .LVU185
873:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
812 .loc 1 873 24 is_stmt 0 view .LVU186
813 0008 FFF7FEFF bl HAL_GetTick
814 .LVL47:
876:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if (cmd->InstructionMode != QSPI_INSTRUCTION_NONE)
815 .loc 1 876 3 is_stmt 1 view .LVU187
877:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
816 .loc 1 877 3 view .LVU188
879:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
817 .loc 1 879 5 view .LVU189
882:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if (cmd->AddressMode != QSPI_ADDRESS_NONE)
818 .loc 1 882 3 view .LVU190
883:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
819 .loc 1 883 3 view .LVU191
885:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
820 .loc 1 885 5 view .LVU192
888:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if (cmd->AlternateByteMode != QSPI_ALTERNATE_BYTES_NONE)
821 .loc 1 888 3 view .LVU193
889:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
822 .loc 1 889 3 view .LVU194
891:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
823 .loc 1 891 5 view .LVU195
894:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** assert_param(IS_QSPI_DATA_MODE(cmd->DataMode));
824 .loc 1 894 3 view .LVU196
895:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
825 .loc 1 895 3 view .LVU197
897:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** assert_param(IS_QSPI_DDR_HHC(cmd->DdrHoldHalfCycle));
826 .loc 1 897 3 view .LVU198
898:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** assert_param(IS_QSPI_SIOO_MODE(cmd->SIOOMode));
827 .loc 1 898 3 view .LVU199
899:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
ARM GAS /tmp/ccNpZKQO.s page 64
828 .loc 1 899 3 view .LVU200
902:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
829 .loc 1 902 3 view .LVU201
902:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
830 .loc 1 902 3 view .LVU202
831 000c 94F84020 ldrb r2, [r4, #64] @ zero_extendqisi2
832 0010 D2B2 uxtb r2, r2
833 0012 012A cmp r2, #1
834 0014 3BD0 beq .L46
902:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
835 .loc 1 902 3 discriminator 2 view .LVU203
836 0016 0123 movs r3, #1
837 0018 84F84030 strb r3, [r4, #64]
902:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
838 .loc 1 902 3 discriminator 2 view .LVU204
904:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
839 .loc 1 904 3 discriminator 2 view .LVU205
904:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
840 .loc 1 904 11 is_stmt 0 discriminator 2 view .LVU206
841 001c 94F84120 ldrb r2, [r4, #65] @ zero_extendqisi2
842 0020 D2B2 uxtb r2, r2
904:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
843 .loc 1 904 5 discriminator 2 view .LVU207
844 0022 9A42 cmp r2, r3
845 0024 06D0 beq .L48
952:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
846 .loc 1 952 5 is_stmt 1 view .LVU208
847 .LVL48:
955:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
848 .loc 1 955 5 view .LVU209
955:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
849 .loc 1 955 5 view .LVU210
850 0026 0023 movs r3, #0
851 0028 84F84030 strb r3, [r4, #64]
952:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
852 .loc 1 952 12 is_stmt 0 view .LVU211
853 002c 0226 movs r6, #2
854 .LVL49:
855 .L41:
960:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
856 .loc 1 960 1 view .LVU212
857 002e 3046 mov r0, r6
858 0030 02B0 add sp, sp, #8
859 .LCFI12:
860 .cfi_remember_state
861 .cfi_def_cfa_offset 16
862 @ sp needed
863 0032 70BD pop {r4, r5, r6, pc}
864 .LVL50:
865 .L48:
866 .LCFI13:
867 .cfi_restore_state
906:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
868 .loc 1 906 5 is_stmt 1 view .LVU213
906:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
869 .loc 1 906 22 is_stmt 0 view .LVU214
870 0034 0022 movs r2, #0
ARM GAS /tmp/ccNpZKQO.s page 65
871 0036 6264 str r2, [r4, #68]
909:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
872 .loc 1 909 5 is_stmt 1 view .LVU215
909:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
873 .loc 1 909 18 is_stmt 0 view .LVU216
874 0038 0223 movs r3, #2
875 003a 84F84130 strb r3, [r4, #65]
912:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
876 .loc 1 912 5 is_stmt 1 view .LVU217
912:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
877 .loc 1 912 14 is_stmt 0 view .LVU218
878 003e A36C ldr r3, [r4, #72]
879 0040 0093 str r3, [sp]
880 0042 0346 mov r3, r0
881 0044 2021 movs r1, #32
882 0046 2046 mov r0, r4
883 .LVL51:
912:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
884 .loc 1 912 14 view .LVU219
885 0048 FFF7FEFF bl QSPI_WaitFlagStateUntilTimeout
886 .LVL52:
914:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
887 .loc 1 914 5 is_stmt 1 view .LVU220
914:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
888 .loc 1 914 8 is_stmt 0 view .LVU221
889 004c 0646 mov r6, r0
890 004e D0B9 cbnz r0, .L43
916:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
891 .loc 1 916 7 is_stmt 1 view .LVU222
916:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
892 .loc 1 916 14 is_stmt 0 view .LVU223
893 0050 6B6A ldr r3, [r5, #36]
916:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
894 .loc 1 916 10 view .LVU224
895 0052 13B9 cbnz r3, .L44
919:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
896 .loc 1 919 9 is_stmt 1 view .LVU225
897 0054 2368 ldr r3, [r4]
898 0056 0322 movs r2, #3
899 0058 DA60 str r2, [r3, #12]
900 .L44:
923:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
901 .loc 1 923 7 view .LVU226
902 005a 0022 movs r2, #0
903 005c 2946 mov r1, r5
904 005e 2046 mov r0, r4
905 .LVL53:
923:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
906 .loc 1 923 7 is_stmt 0 view .LVU227
907 0060 FFF7FEFF bl QSPI_Config
908 .LVL54:
925:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
909 .loc 1 925 7 is_stmt 1 view .LVU228
925:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
910 .loc 1 925 14 is_stmt 0 view .LVU229
911 0064 6B6A ldr r3, [r5, #36]
925:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
ARM GAS /tmp/ccNpZKQO.s page 66
912 .loc 1 925 10 view .LVU230
913 0066 3BB9 cbnz r3, .L45
930:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
914 .loc 1 930 9 is_stmt 1 view .LVU231
930:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
915 .loc 1 930 9 view .LVU232
916 0068 84F84030 strb r3, [r4, #64]
930:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
917 .loc 1 930 9 view .LVU233
933:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
918 .loc 1 933 9 view .LVU234
919 006c 2268 ldr r2, [r4]
920 006e 1368 ldr r3, [r2]
921 0070 43F44033 orr r3, r3, #196608
922 0074 1360 str r3, [r2]
923 0076 DAE7 b .L41
924 .L45:
938:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
925 .loc 1 938 9 view .LVU235
938:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
926 .loc 1 938 22 is_stmt 0 view .LVU236
927 0078 0123 movs r3, #1
928 007a 84F84130 strb r3, [r4, #65]
941:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
929 .loc 1 941 9 is_stmt 1 view .LVU237
941:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
930 .loc 1 941 9 view .LVU238
931 007e 0023 movs r3, #0
932 0080 84F84030 strb r3, [r4, #64]
933 0084 D3E7 b .L41
934 .LVL55:
935 .L43:
947:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
936 .loc 1 947 7 discriminator 1 view .LVU239
947:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
937 .loc 1 947 7 discriminator 1 view .LVU240
938 0086 0023 movs r3, #0
939 0088 84F84030 strb r3, [r4, #64]
940 008c CFE7 b .L41
941 .LVL56:
942 .L46:
902:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
943 .loc 1 902 3 is_stmt 0 view .LVU241
944 008e 0226 movs r6, #2
945 0090 CDE7 b .L41
946 .cfi_endproc
947 .LFE147:
949 .section .text.HAL_QSPI_Transmit,"ax",%progbits
950 .align 1
951 .global HAL_QSPI_Transmit
952 .syntax unified
953 .thumb
954 .thumb_func
955 .fpu fpv5-d16
957 HAL_QSPI_Transmit:
958 .LVL57:
959 .LFB148:
ARM GAS /tmp/ccNpZKQO.s page 67
972:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** HAL_StatusTypeDef status = HAL_OK;
960 .loc 1 972 1 is_stmt 1 view -0
961 .cfi_startproc
962 @ args = 0, pretend = 0, frame = 0
963 @ frame_needed = 0, uses_anonymous_args = 0
972:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** HAL_StatusTypeDef status = HAL_OK;
964 .loc 1 972 1 is_stmt 0 view .LVU243
965 0000 2DE9F043 push {r4, r5, r6, r7, r8, r9, lr}
966 .LCFI14:
967 .cfi_def_cfa_offset 28
968 .cfi_offset 4, -28
969 .cfi_offset 5, -24
970 .cfi_offset 6, -20
971 .cfi_offset 7, -16
972 .cfi_offset 8, -12
973 .cfi_offset 9, -8
974 .cfi_offset 14, -4
975 0004 83B0 sub sp, sp, #12
976 .LCFI15:
977 .cfi_def_cfa_offset 40
978 0006 0446 mov r4, r0
979 0008 8946 mov r9, r1
980 000a 1746 mov r7, r2
973:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** uint32_t tickstart = HAL_GetTick();
981 .loc 1 973 3 is_stmt 1 view .LVU244
982 .LVL58:
974:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** __IO uint32_t *data_reg = &hqspi->Instance->DR;
983 .loc 1 974 3 view .LVU245
974:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** __IO uint32_t *data_reg = &hqspi->Instance->DR;
984 .loc 1 974 24 is_stmt 0 view .LVU246
985 000c FFF7FEFF bl HAL_GetTick
986 .LVL59:
975:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
987 .loc 1 975 3 is_stmt 1 view .LVU247
975:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
988 .loc 1 975 35 is_stmt 0 view .LVU248
989 0010 D4F80080 ldr r8, [r4]
990 .LVL60:
978:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
991 .loc 1 978 3 is_stmt 1 view .LVU249
978:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
992 .loc 1 978 3 view .LVU250
993 0014 94F84030 ldrb r3, [r4, #64] @ zero_extendqisi2
994 0018 DBB2 uxtb r3, r3
995 001a 012B cmp r3, #1
996 001c 57D0 beq .L57
997 001e 0646 mov r6, r0
978:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
998 .loc 1 978 3 discriminator 2 view .LVU251
999 0020 0123 movs r3, #1
1000 0022 84F84030 strb r3, [r4, #64]
978:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1001 .loc 1 978 3 discriminator 2 view .LVU252
980:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1002 .loc 1 980 3 discriminator 2 view .LVU253
980:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1003 .loc 1 980 11 is_stmt 0 discriminator 2 view .LVU254
ARM GAS /tmp/ccNpZKQO.s page 68
1004 0026 94F84150 ldrb r5, [r4, #65] @ zero_extendqisi2
1005 002a EDB2 uxtb r5, r5
980:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1006 .loc 1 980 5 discriminator 2 view .LVU255
1007 002c 9D42 cmp r5, r3
1008 002e 07D0 beq .L60
1036:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1009 .loc 1 1036 12 view .LVU256
1010 0030 0225 movs r5, #2
1011 .LVL61:
1012 .L51:
1040:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1013 .loc 1 1040 3 is_stmt 1 view .LVU257
1040:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1014 .loc 1 1040 3 view .LVU258
1015 0032 0023 movs r3, #0
1016 0034 84F84030 strb r3, [r4, #64]
1040:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1017 .loc 1 1040 3 view .LVU259
1042:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1018 .loc 1 1042 3 view .LVU260
1019 .LVL62:
1020 .L50:
1043:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1021 .loc 1 1043 1 is_stmt 0 view .LVU261
1022 0038 2846 mov r0, r5
1023 003a 03B0 add sp, sp, #12
1024 .LCFI16:
1025 .cfi_remember_state
1026 .cfi_def_cfa_offset 28
1027 @ sp needed
1028 003c BDE8F083 pop {r4, r5, r6, r7, r8, r9, pc}
1029 .LVL63:
1030 .L60:
1031 .LCFI17:
1032 .cfi_restore_state
982:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1033 .loc 1 982 5 is_stmt 1 view .LVU262
982:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1034 .loc 1 982 22 is_stmt 0 view .LVU263
1035 0040 0023 movs r3, #0
1036 0042 6364 str r3, [r4, #68]
984:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1037 .loc 1 984 5 is_stmt 1 view .LVU264
984:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1038 .loc 1 984 7 is_stmt 0 view .LVU265
1039 0044 B9F1000F cmp r9, #0
1040 0048 3CD0 beq .L52
987:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1041 .loc 1 987 7 is_stmt 1 view .LVU266
987:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1042 .loc 1 987 20 is_stmt 0 view .LVU267
1043 004a 1223 movs r3, #18
1044 004c 84F84130 strb r3, [r4, #65]
990:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->TxXferSize = READ_REG(hqspi->Instance->DLR) + 1U;
1045 .loc 1 990 7 is_stmt 1 view .LVU268
990:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->TxXferSize = READ_REG(hqspi->Instance->DLR) + 1U;
ARM GAS /tmp/ccNpZKQO.s page 69
1046 .loc 1 990 28 is_stmt 0 view .LVU269
1047 0050 D8F81030 ldr r3, [r8, #16]
990:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->TxXferSize = READ_REG(hqspi->Instance->DLR) + 1U;
1048 .loc 1 990 59 view .LVU270
1049 0054 0133 adds r3, r3, #1
990:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->TxXferSize = READ_REG(hqspi->Instance->DLR) + 1U;
1050 .loc 1 990 26 view .LVU271
1051 0056 E362 str r3, [r4, #44]
991:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->pTxBuffPtr = pData;
1052 .loc 1 991 7 is_stmt 1 view .LVU272
991:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->pTxBuffPtr = pData;
1053 .loc 1 991 27 is_stmt 0 view .LVU273
1054 0058 D8F81030 ldr r3, [r8, #16]
991:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->pTxBuffPtr = pData;
1055 .loc 1 991 58 view .LVU274
1056 005c 0133 adds r3, r3, #1
991:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->pTxBuffPtr = pData;
1057 .loc 1 991 25 view .LVU275
1058 005e A362 str r3, [r4, #40]
992:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1059 .loc 1 992 7 is_stmt 1 view .LVU276
992:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1060 .loc 1 992 25 is_stmt 0 view .LVU277
1061 0060 C4F82490 str r9, [r4, #36]
995:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1062 .loc 1 995 7 is_stmt 1 view .LVU278
1063 0064 D8F81430 ldr r3, [r8, #20]
1064 0068 23F04063 bic r3, r3, #201326592
1065 006c C8F81430 str r3, [r8, #20]
997:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1066 .loc 1 997 7 view .LVU279
973:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** uint32_t tickstart = HAL_GetTick();
1067 .loc 1 973 21 is_stmt 0 view .LVU280
1068 0070 0025 movs r5, #0
1069 .LVL64:
1070 .L53:
997:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1071 .loc 1 997 12 is_stmt 1 view .LVU281
997:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1072 .loc 1 997 18 is_stmt 0 view .LVU282
1073 0072 E36A ldr r3, [r4, #44]
997:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1074 .loc 1 997 12 view .LVU283
1075 0074 9BB1 cbz r3, .L54
1000:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1076 .loc 1 1000 9 is_stmt 1 view .LVU284
1000:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1077 .loc 1 1000 18 is_stmt 0 view .LVU285
1078 0076 0097 str r7, [sp]
1079 0078 3346 mov r3, r6
1080 007a 0122 movs r2, #1
1081 007c 0421 movs r1, #4
1082 007e 2046 mov r0, r4
1083 0080 FFF7FEFF bl QSPI_WaitFlagStateUntilTimeout
1084 .LVL65:
1002:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1085 .loc 1 1002 9 is_stmt 1 view .LVU286
ARM GAS /tmp/ccNpZKQO.s page 70
1002:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1086 .loc 1 1002 12 is_stmt 0 view .LVU287
1087 0084 0546 mov r5, r0
1088 0086 50B9 cbnz r0, .L54
1007:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->pTxBuffPtr++;
1089 .loc 1 1007 9 is_stmt 1 view .LVU288
1007:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->pTxBuffPtr++;
1090 .loc 1 1007 45 is_stmt 0 view .LVU289
1091 0088 636A ldr r3, [r4, #36]
1007:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->pTxBuffPtr++;
1092 .loc 1 1007 39 view .LVU290
1093 008a 1B78 ldrb r3, [r3] @ zero_extendqisi2
1007:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->pTxBuffPtr++;
1094 .loc 1 1007 37 view .LVU291
1095 008c 88F82030 strb r3, [r8, #32]
1008:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->TxXferCount--;
1096 .loc 1 1008 9 is_stmt 1 view .LVU292
1008:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->TxXferCount--;
1097 .loc 1 1008 14 is_stmt 0 view .LVU293
1098 0090 616A ldr r1, [r4, #36]
1008:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->TxXferCount--;
1099 .loc 1 1008 26 view .LVU294
1100 0092 0131 adds r1, r1, #1
1101 0094 6162 str r1, [r4, #36]
1009:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1102 .loc 1 1009 9 is_stmt 1 view .LVU295
1009:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1103 .loc 1 1009 14 is_stmt 0 view .LVU296
1104 0096 E16A ldr r1, [r4, #44]
1009:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1105 .loc 1 1009 27 view .LVU297
1106 0098 0139 subs r1, r1, #1
1107 009a E162 str r1, [r4, #44]
1108 009c E9E7 b .L53
1109 .LVL66:
1110 .L54:
1012:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1111 .loc 1 1012 7 is_stmt 1 view .LVU298
1012:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1112 .loc 1 1012 10 is_stmt 0 view .LVU299
1113 009e 1DB1 cbz r5, .L61
1114 .LVL67:
1115 .L56:
1026:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1116 .loc 1 1026 7 is_stmt 1 view .LVU300
1026:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1117 .loc 1 1026 20 is_stmt 0 view .LVU301
1118 00a0 0123 movs r3, #1
1119 00a2 84F84130 strb r3, [r4, #65]
1120 00a6 C4E7 b .L51
1121 .L61:
1015:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1122 .loc 1 1015 9 is_stmt 1 view .LVU302
1015:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1123 .loc 1 1015 18 is_stmt 0 view .LVU303
1124 00a8 0097 str r7, [sp]
1125 00aa 3346 mov r3, r6
ARM GAS /tmp/ccNpZKQO.s page 71
1126 00ac 0122 movs r2, #1
1127 00ae 0221 movs r1, #2
1128 00b0 2046 mov r0, r4
1129 00b2 FFF7FEFF bl QSPI_WaitFlagStateUntilTimeout
1130 .LVL68:
1017:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1131 .loc 1 1017 9 is_stmt 1 view .LVU304
1017:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1132 .loc 1 1017 12 is_stmt 0 view .LVU305
1133 00b6 0546 mov r5, r0
1134 00b8 0028 cmp r0, #0
1135 00ba F1D1 bne .L56
1020:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1136 .loc 1 1020 11 is_stmt 1 view .LVU306
1137 00bc 2368 ldr r3, [r4]
1138 00be 0222 movs r2, #2
1139 00c0 DA60 str r2, [r3, #12]
1140 00c2 EDE7 b .L56
1141 .LVL69:
1142 .L52:
1030:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** status = HAL_ERROR;
1143 .loc 1 1030 7 view .LVU307
1030:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** status = HAL_ERROR;
1144 .loc 1 1030 24 is_stmt 0 view .LVU308
1145 00c4 636C ldr r3, [r4, #68]
1146 00c6 43F00803 orr r3, r3, #8
1147 00ca 6364 str r3, [r4, #68]
1031:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1148 .loc 1 1031 7 is_stmt 1 view .LVU309
1149 .LVL70:
1031:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1150 .loc 1 1031 7 is_stmt 0 view .LVU310
1151 00cc B1E7 b .L51
1152 .LVL71:
1153 .L57:
978:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1154 .loc 1 978 3 view .LVU311
1155 00ce 0225 movs r5, #2
1156 00d0 B2E7 b .L50
1157 .cfi_endproc
1158 .LFE148:
1160 .section .text.HAL_QSPI_Receive,"ax",%progbits
1161 .align 1
1162 .global HAL_QSPI_Receive
1163 .syntax unified
1164 .thumb
1165 .thumb_func
1166 .fpu fpv5-d16
1168 HAL_QSPI_Receive:
1169 .LVL72:
1170 .LFB149:
1055:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** HAL_StatusTypeDef status = HAL_OK;
1171 .loc 1 1055 1 is_stmt 1 view -0
1172 .cfi_startproc
1173 @ args = 0, pretend = 0, frame = 0
1174 @ frame_needed = 0, uses_anonymous_args = 0
1055:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** HAL_StatusTypeDef status = HAL_OK;
ARM GAS /tmp/ccNpZKQO.s page 72
1175 .loc 1 1055 1 is_stmt 0 view .LVU313
1176 0000 2DE9F043 push {r4, r5, r6, r7, r8, r9, lr}
1177 .LCFI18:
1178 .cfi_def_cfa_offset 28
1179 .cfi_offset 4, -28
1180 .cfi_offset 5, -24
1181 .cfi_offset 6, -20
1182 .cfi_offset 7, -16
1183 .cfi_offset 8, -12
1184 .cfi_offset 9, -8
1185 .cfi_offset 14, -4
1186 0004 83B0 sub sp, sp, #12
1187 .LCFI19:
1188 .cfi_def_cfa_offset 40
1189 0006 0446 mov r4, r0
1190 0008 8946 mov r9, r1
1191 000a 1746 mov r7, r2
1056:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** uint32_t tickstart = HAL_GetTick();
1192 .loc 1 1056 3 is_stmt 1 view .LVU314
1193 .LVL73:
1057:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** uint32_t addr_reg = READ_REG(hqspi->Instance->AR);
1194 .loc 1 1057 3 view .LVU315
1057:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** uint32_t addr_reg = READ_REG(hqspi->Instance->AR);
1195 .loc 1 1057 24 is_stmt 0 view .LVU316
1196 000c FFF7FEFF bl HAL_GetTick
1197 .LVL74:
1058:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** __IO uint32_t *data_reg = &hqspi->Instance->DR;
1198 .loc 1 1058 3 is_stmt 1 view .LVU317
1058:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** __IO uint32_t *data_reg = &hqspi->Instance->DR;
1199 .loc 1 1058 23 is_stmt 0 view .LVU318
1200 0010 D4F80080 ldr r8, [r4]
1058:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** __IO uint32_t *data_reg = &hqspi->Instance->DR;
1201 .loc 1 1058 12 view .LVU319
1202 0014 D8F81820 ldr r2, [r8, #24]
1203 .LVL75:
1059:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1204 .loc 1 1059 3 is_stmt 1 view .LVU320
1062:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1205 .loc 1 1062 3 view .LVU321
1062:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1206 .loc 1 1062 3 view .LVU322
1207 0018 94F84030 ldrb r3, [r4, #64] @ zero_extendqisi2
1208 001c DBB2 uxtb r3, r3
1209 001e 012B cmp r3, #1
1210 0020 5BD0 beq .L70
1211 0022 0646 mov r6, r0
1062:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1212 .loc 1 1062 3 discriminator 2 view .LVU323
1213 0024 0123 movs r3, #1
1214 0026 84F84030 strb r3, [r4, #64]
1062:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1215 .loc 1 1062 3 discriminator 2 view .LVU324
1064:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1216 .loc 1 1064 3 discriminator 2 view .LVU325
1064:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1217 .loc 1 1064 11 is_stmt 0 discriminator 2 view .LVU326
1218 002a 94F84150 ldrb r5, [r4, #65] @ zero_extendqisi2
ARM GAS /tmp/ccNpZKQO.s page 73
1219 002e EDB2 uxtb r5, r5
1064:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1220 .loc 1 1064 5 discriminator 2 view .LVU327
1221 0030 9D42 cmp r5, r3
1222 0032 07D0 beq .L73
1123:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1223 .loc 1 1123 12 view .LVU328
1224 0034 0225 movs r5, #2
1225 .LVL76:
1226 .L64:
1127:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1227 .loc 1 1127 3 is_stmt 1 view .LVU329
1127:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1228 .loc 1 1127 3 view .LVU330
1229 0036 0023 movs r3, #0
1230 0038 84F84030 strb r3, [r4, #64]
1127:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1231 .loc 1 1127 3 view .LVU331
1129:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1232 .loc 1 1129 3 view .LVU332
1233 .LVL77:
1234 .L63:
1130:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1235 .loc 1 1130 1 is_stmt 0 view .LVU333
1236 003c 2846 mov r0, r5
1237 003e 03B0 add sp, sp, #12
1238 .LCFI20:
1239 .cfi_remember_state
1240 .cfi_def_cfa_offset 28
1241 @ sp needed
1242 0040 BDE8F083 pop {r4, r5, r6, r7, r8, r9, pc}
1243 .LVL78:
1244 .L73:
1245 .LCFI21:
1246 .cfi_restore_state
1066:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1247 .loc 1 1066 5 is_stmt 1 view .LVU334
1066:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1248 .loc 1 1066 22 is_stmt 0 view .LVU335
1249 0044 0023 movs r3, #0
1250 0046 6364 str r3, [r4, #68]
1068:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1251 .loc 1 1068 5 is_stmt 1 view .LVU336
1068:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1252 .loc 1 1068 7 is_stmt 0 view .LVU337
1253 0048 B9F1000F cmp r9, #0
1254 004c 40D0 beq .L65
1071:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1255 .loc 1 1071 7 is_stmt 1 view .LVU338
1071:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1256 .loc 1 1071 20 is_stmt 0 view .LVU339
1257 004e 2223 movs r3, #34
1258 0050 84F84130 strb r3, [r4, #65]
1074:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->RxXferSize = READ_REG(hqspi->Instance->DLR) + 1U;
1259 .loc 1 1074 7 is_stmt 1 view .LVU340
1074:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->RxXferSize = READ_REG(hqspi->Instance->DLR) + 1U;
1260 .loc 1 1074 28 is_stmt 0 view .LVU341
ARM GAS /tmp/ccNpZKQO.s page 74
1261 0054 D8F81030 ldr r3, [r8, #16]
1074:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->RxXferSize = READ_REG(hqspi->Instance->DLR) + 1U;
1262 .loc 1 1074 59 view .LVU342
1263 0058 0133 adds r3, r3, #1
1074:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->RxXferSize = READ_REG(hqspi->Instance->DLR) + 1U;
1264 .loc 1 1074 26 view .LVU343
1265 005a A363 str r3, [r4, #56]
1075:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->pRxBuffPtr = pData;
1266 .loc 1 1075 7 is_stmt 1 view .LVU344
1075:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->pRxBuffPtr = pData;
1267 .loc 1 1075 27 is_stmt 0 view .LVU345
1268 005c D8F81030 ldr r3, [r8, #16]
1075:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->pRxBuffPtr = pData;
1269 .loc 1 1075 58 view .LVU346
1270 0060 0133 adds r3, r3, #1
1075:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->pRxBuffPtr = pData;
1271 .loc 1 1075 25 view .LVU347
1272 0062 6363 str r3, [r4, #52]
1076:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1273 .loc 1 1076 7 is_stmt 1 view .LVU348
1076:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1274 .loc 1 1076 25 is_stmt 0 view .LVU349
1275 0064 C4F83090 str r9, [r4, #48]
1079:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1276 .loc 1 1079 7 is_stmt 1 view .LVU350
1277 0068 D8F81430 ldr r3, [r8, #20]
1278 006c 23F04063 bic r3, r3, #201326592
1279 0070 43F08063 orr r3, r3, #67108864
1280 0074 C8F81430 str r3, [r8, #20]
1082:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1281 .loc 1 1082 7 view .LVU351
1282 0078 2368 ldr r3, [r4]
1283 007a 9A61 str r2, [r3, #24]
1084:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1284 .loc 1 1084 7 view .LVU352
1056:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** uint32_t tickstart = HAL_GetTick();
1285 .loc 1 1056 21 is_stmt 0 view .LVU353
1286 007c 0025 movs r5, #0
1287 .LVL79:
1288 .L66:
1084:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1289 .loc 1 1084 12 is_stmt 1 view .LVU354
1084:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1290 .loc 1 1084 18 is_stmt 0 view .LVU355
1291 007e A36B ldr r3, [r4, #56]
1084:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1292 .loc 1 1084 12 view .LVU356
1293 0080 9BB1 cbz r3, .L67
1087:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1294 .loc 1 1087 9 is_stmt 1 view .LVU357
1087:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1295 .loc 1 1087 18 is_stmt 0 view .LVU358
1296 0082 0097 str r7, [sp]
1297 0084 3346 mov r3, r6
1298 0086 0122 movs r2, #1
1299 0088 0621 movs r1, #6
1300 008a 2046 mov r0, r4
ARM GAS /tmp/ccNpZKQO.s page 75
1301 008c FFF7FEFF bl QSPI_WaitFlagStateUntilTimeout
1302 .LVL80:
1089:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1303 .loc 1 1089 9 is_stmt 1 view .LVU359
1089:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1304 .loc 1 1089 13 is_stmt 0 view .LVU360
1305 0090 0546 mov r5, r0
1306 0092 50B9 cbnz r0, .L67
1094:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->pRxBuffPtr++;
1307 .loc 1 1094 9 is_stmt 1 view .LVU361
1094:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->pRxBuffPtr++;
1308 .loc 1 1094 15 is_stmt 0 view .LVU362
1309 0094 236B ldr r3, [r4, #48]
1094:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->pRxBuffPtr++;
1310 .loc 1 1094 30 view .LVU363
1311 0096 98F82020 ldrb r2, [r8, #32] @ zero_extendqisi2
1094:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->pRxBuffPtr++;
1312 .loc 1 1094 28 view .LVU364
1313 009a 1A70 strb r2, [r3]
1095:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->RxXferCount--;
1314 .loc 1 1095 9 is_stmt 1 view .LVU365
1095:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->RxXferCount--;
1315 .loc 1 1095 14 is_stmt 0 view .LVU366
1316 009c 216B ldr r1, [r4, #48]
1095:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->RxXferCount--;
1317 .loc 1 1095 26 view .LVU367
1318 009e 0131 adds r1, r1, #1
1319 00a0 2163 str r1, [r4, #48]
1096:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1320 .loc 1 1096 9 is_stmt 1 view .LVU368
1096:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1321 .loc 1 1096 14 is_stmt 0 view .LVU369
1322 00a2 A16B ldr r1, [r4, #56]
1096:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1323 .loc 1 1096 27 view .LVU370
1324 00a4 0139 subs r1, r1, #1
1325 00a6 A163 str r1, [r4, #56]
1326 00a8 E9E7 b .L66
1327 .LVL81:
1328 .L67:
1099:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1329 .loc 1 1099 7 is_stmt 1 view .LVU371
1099:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1330 .loc 1 1099 10 is_stmt 0 view .LVU372
1331 00aa 1DB1 cbz r5, .L74
1332 .LVL82:
1333 .L69:
1113:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1334 .loc 1 1113 7 is_stmt 1 view .LVU373
1113:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1335 .loc 1 1113 20 is_stmt 0 view .LVU374
1336 00ac 0123 movs r3, #1
1337 00ae 84F84130 strb r3, [r4, #65]
1338 00b2 C0E7 b .L64
1339 .L74:
1102:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1340 .loc 1 1102 9 is_stmt 1 view .LVU375
ARM GAS /tmp/ccNpZKQO.s page 76
1102:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1341 .loc 1 1102 18 is_stmt 0 view .LVU376
1342 00b4 0097 str r7, [sp]
1343 00b6 3346 mov r3, r6
1344 00b8 0122 movs r2, #1
1345 00ba 0221 movs r1, #2
1346 00bc 2046 mov r0, r4
1347 00be FFF7FEFF bl QSPI_WaitFlagStateUntilTimeout
1348 .LVL83:
1104:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1349 .loc 1 1104 9 is_stmt 1 view .LVU377
1104:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1350 .loc 1 1104 13 is_stmt 0 view .LVU378
1351 00c2 0546 mov r5, r0
1352 00c4 0028 cmp r0, #0
1353 00c6 F1D1 bne .L69
1107:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1354 .loc 1 1107 11 is_stmt 1 view .LVU379
1355 00c8 2368 ldr r3, [r4]
1356 00ca 0222 movs r2, #2
1357 00cc DA60 str r2, [r3, #12]
1358 00ce EDE7 b .L69
1359 .LVL84:
1360 .L65:
1117:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** status = HAL_ERROR;
1361 .loc 1 1117 7 view .LVU380
1117:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** status = HAL_ERROR;
1362 .loc 1 1117 24 is_stmt 0 view .LVU381
1363 00d0 636C ldr r3, [r4, #68]
1364 00d2 43F00803 orr r3, r3, #8
1365 00d6 6364 str r3, [r4, #68]
1118:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1366 .loc 1 1118 7 is_stmt 1 view .LVU382
1367 .LVL85:
1118:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1368 .loc 1 1118 7 is_stmt 0 view .LVU383
1369 00d8 ADE7 b .L64
1370 .LVL86:
1371 .L70:
1062:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1372 .loc 1 1062 3 view .LVU384
1373 00da 0225 movs r5, #2
1374 00dc AEE7 b .L63
1375 .cfi_endproc
1376 .LFE149:
1378 .section .text.HAL_QSPI_Transmit_IT,"ax",%progbits
1379 .align 1
1380 .global HAL_QSPI_Transmit_IT
1381 .syntax unified
1382 .thumb
1383 .thumb_func
1384 .fpu fpv5-d16
1386 HAL_QSPI_Transmit_IT:
1387 .LVL87:
1388 .LFB150:
1140:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** HAL_StatusTypeDef status = HAL_OK;
1389 .loc 1 1140 1 is_stmt 1 view -0
ARM GAS /tmp/ccNpZKQO.s page 77
1390 .cfi_startproc
1391 @ args = 0, pretend = 0, frame = 0
1392 @ frame_needed = 0, uses_anonymous_args = 0
1393 @ link register save eliminated.
1140:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** HAL_StatusTypeDef status = HAL_OK;
1394 .loc 1 1140 1 is_stmt 0 view .LVU386
1395 0000 0346 mov r3, r0
1141:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1396 .loc 1 1141 3 is_stmt 1 view .LVU387
1397 .LVL88:
1144:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1398 .loc 1 1144 3 view .LVU388
1144:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1399 .loc 1 1144 3 view .LVU389
1400 0002 90F84020 ldrb r2, [r0, #64] @ zero_extendqisi2
1401 0006 D2B2 uxtb r2, r2
1402 0008 012A cmp r2, #1
1403 000a 32D0 beq .L79
1144:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1404 .loc 1 1144 3 discriminator 2 view .LVU390
1405 000c 0122 movs r2, #1
1406 000e 80F84020 strb r2, [r0, #64]
1144:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1407 .loc 1 1144 3 discriminator 2 view .LVU391
1146:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1408 .loc 1 1146 3 discriminator 2 view .LVU392
1146:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1409 .loc 1 1146 11 is_stmt 0 discriminator 2 view .LVU393
1410 0012 90F84100 ldrb r0, [r0, #65] @ zero_extendqisi2
1411 .LVL89:
1146:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1412 .loc 1 1146 11 discriminator 2 view .LVU394
1413 0016 C0B2 uxtb r0, r0
1146:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1414 .loc 1 1146 5 discriminator 2 view .LVU395
1415 0018 9042 cmp r0, r2
1416 001a 04D0 beq .L80
1183:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1417 .loc 1 1183 5 is_stmt 1 view .LVU396
1418 .LVL90:
1186:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1419 .loc 1 1186 5 view .LVU397
1186:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1420 .loc 1 1186 5 view .LVU398
1421 001c 0022 movs r2, #0
1422 001e 83F84020 strb r2, [r3, #64]
1183:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1423 .loc 1 1183 12 is_stmt 0 view .LVU399
1424 0022 0220 movs r0, #2
1425 0024 7047 bx lr
1426 .LVL91:
1427 .L80:
1148:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1428 .loc 1 1148 5 is_stmt 1 view .LVU400
1148:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1429 .loc 1 1148 22 is_stmt 0 view .LVU401
1430 0026 0022 movs r2, #0
ARM GAS /tmp/ccNpZKQO.s page 78
1431 0028 5A64 str r2, [r3, #68]
1150:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1432 .loc 1 1150 5 is_stmt 1 view .LVU402
1150:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1433 .loc 1 1150 7 is_stmt 0 view .LVU403
1434 002a D1B1 cbz r1, .L78
1153:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1435 .loc 1 1153 7 is_stmt 1 view .LVU404
1153:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1436 .loc 1 1153 20 is_stmt 0 view .LVU405
1437 002c 1222 movs r2, #18
1438 002e 83F84120 strb r2, [r3, #65]
1156:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->TxXferSize = READ_REG(hqspi->Instance->DLR) + 1U;
1439 .loc 1 1156 7 is_stmt 1 view .LVU406
1156:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->TxXferSize = READ_REG(hqspi->Instance->DLR) + 1U;
1440 .loc 1 1156 28 is_stmt 0 view .LVU407
1441 0032 1A68 ldr r2, [r3]
1442 0034 1069 ldr r0, [r2, #16]
1156:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->TxXferSize = READ_REG(hqspi->Instance->DLR) + 1U;
1443 .loc 1 1156 59 view .LVU408
1444 0036 0130 adds r0, r0, #1
1156:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->TxXferSize = READ_REG(hqspi->Instance->DLR) + 1U;
1445 .loc 1 1156 26 view .LVU409
1446 0038 D862 str r0, [r3, #44]
1157:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->pTxBuffPtr = pData;
1447 .loc 1 1157 7 is_stmt 1 view .LVU410
1157:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->pTxBuffPtr = pData;
1448 .loc 1 1157 27 is_stmt 0 view .LVU411
1449 003a 1069 ldr r0, [r2, #16]
1157:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->pTxBuffPtr = pData;
1450 .loc 1 1157 58 view .LVU412
1451 003c 0130 adds r0, r0, #1
1157:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->pTxBuffPtr = pData;
1452 .loc 1 1157 25 view .LVU413
1453 003e 9862 str r0, [r3, #40]
1158:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1454 .loc 1 1158 7 is_stmt 1 view .LVU414
1158:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1455 .loc 1 1158 25 is_stmt 0 view .LVU415
1456 0040 5962 str r1, [r3, #36]
1161:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1457 .loc 1 1161 7 is_stmt 1 view .LVU416
1458 0042 0321 movs r1, #3
1459 .LVL92:
1161:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1460 .loc 1 1161 7 is_stmt 0 view .LVU417
1461 0044 D160 str r1, [r2, #12]
1462 .LVL93:
1164:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1463 .loc 1 1164 7 is_stmt 1 view .LVU418
1464 0046 1968 ldr r1, [r3]
1465 0048 4A69 ldr r2, [r1, #20]
1466 004a 22F04062 bic r2, r2, #201326592
1467 004e 4A61 str r2, [r1, #20]
1167:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1468 .loc 1 1167 7 view .LVU419
1167:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
ARM GAS /tmp/ccNpZKQO.s page 79
1469 .loc 1 1167 7 view .LVU420
1470 0050 0020 movs r0, #0
1471 0052 83F84000 strb r0, [r3, #64]
1167:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1472 .loc 1 1167 7 view .LVU421
1170:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1473 .loc 1 1170 7 view .LVU422
1474 0056 1A68 ldr r2, [r3]
1475 0058 1368 ldr r3, [r2]
1476 .LVL94:
1170:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1477 .loc 1 1170 7 is_stmt 0 view .LVU423
1478 005a 43F4E023 orr r3, r3, #458752
1479 005e 1360 str r3, [r2]
1480 0060 7047 bx lr
1481 .LVL95:
1482 .L78:
1174:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** status = HAL_ERROR;
1483 .loc 1 1174 7 is_stmt 1 view .LVU424
1174:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** status = HAL_ERROR;
1484 .loc 1 1174 24 is_stmt 0 view .LVU425
1485 0062 5A6C ldr r2, [r3, #68]
1486 0064 42F00802 orr r2, r2, #8
1487 0068 5A64 str r2, [r3, #68]
1175:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1488 .loc 1 1175 7 is_stmt 1 view .LVU426
1489 .LVL96:
1178:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1490 .loc 1 1178 7 view .LVU427
1178:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1491 .loc 1 1178 7 view .LVU428
1492 006a 0022 movs r2, #0
1493 006c 83F84020 strb r2, [r3, #64]
1494 0070 7047 bx lr
1495 .LVL97:
1496 .L79:
1144:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1497 .loc 1 1144 3 is_stmt 0 view .LVU429
1498 0072 0220 movs r0, #2
1499 .LVL98:
1190:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1500 .loc 1 1190 1 view .LVU430
1501 0074 7047 bx lr
1502 .cfi_endproc
1503 .LFE150:
1505 .section .text.HAL_QSPI_Receive_IT,"ax",%progbits
1506 .align 1
1507 .global HAL_QSPI_Receive_IT
1508 .syntax unified
1509 .thumb
1510 .thumb_func
1511 .fpu fpv5-d16
1513 HAL_QSPI_Receive_IT:
1514 .LVL99:
1515 .LFB151:
1200:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** HAL_StatusTypeDef status = HAL_OK;
1516 .loc 1 1200 1 is_stmt 1 view -0
ARM GAS /tmp/ccNpZKQO.s page 80
1517 .cfi_startproc
1518 @ args = 0, pretend = 0, frame = 0
1519 @ frame_needed = 0, uses_anonymous_args = 0
1520 @ link register save eliminated.
1200:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** HAL_StatusTypeDef status = HAL_OK;
1521 .loc 1 1200 1 is_stmt 0 view .LVU432
1522 0000 30B4 push {r4, r5}
1523 .LCFI22:
1524 .cfi_def_cfa_offset 8
1525 .cfi_offset 4, -8
1526 .cfi_offset 5, -4
1201:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** uint32_t addr_reg = READ_REG(hqspi->Instance->AR);
1527 .loc 1 1201 3 is_stmt 1 view .LVU433
1528 .LVL100:
1202:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1529 .loc 1 1202 3 view .LVU434
1202:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1530 .loc 1 1202 23 is_stmt 0 view .LVU435
1531 0002 0468 ldr r4, [r0]
1202:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1532 .loc 1 1202 12 view .LVU436
1533 0004 A569 ldr r5, [r4, #24]
1534 .LVL101:
1205:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1535 .loc 1 1205 3 is_stmt 1 view .LVU437
1205:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1536 .loc 1 1205 3 view .LVU438
1537 0006 90F84020 ldrb r2, [r0, #64] @ zero_extendqisi2
1538 000a D2B2 uxtb r2, r2
1539 000c 012A cmp r2, #1
1540 000e 37D0 beq .L85
1541 0010 0346 mov r3, r0
1205:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1542 .loc 1 1205 3 discriminator 2 view .LVU439
1543 0012 0122 movs r2, #1
1544 0014 80F84020 strb r2, [r0, #64]
1205:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1545 .loc 1 1205 3 discriminator 2 view .LVU440
1207:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1546 .loc 1 1207 3 discriminator 2 view .LVU441
1207:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1547 .loc 1 1207 11 is_stmt 0 discriminator 2 view .LVU442
1548 0018 90F84100 ldrb r0, [r0, #65] @ zero_extendqisi2
1549 .LVL102:
1207:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1550 .loc 1 1207 11 discriminator 2 view .LVU443
1551 001c C0B2 uxtb r0, r0
1207:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1552 .loc 1 1207 5 discriminator 2 view .LVU444
1553 001e 9042 cmp r0, r2
1554 0020 05D0 beq .L87
1247:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1555 .loc 1 1247 5 is_stmt 1 view .LVU445
1556 .LVL103:
1250:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1557 .loc 1 1250 5 view .LVU446
1250:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
ARM GAS /tmp/ccNpZKQO.s page 81
1558 .loc 1 1250 5 view .LVU447
1559 0022 0022 movs r2, #0
1560 0024 83F84020 strb r2, [r3, #64]
1247:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1561 .loc 1 1247 12 is_stmt 0 view .LVU448
1562 0028 0220 movs r0, #2
1563 .LVL104:
1564 .L82:
1254:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1565 .loc 1 1254 1 view .LVU449
1566 002a 30BC pop {r4, r5}
1567 .LCFI23:
1568 .cfi_remember_state
1569 .cfi_restore 5
1570 .cfi_restore 4
1571 .cfi_def_cfa_offset 0
1572 .LVL105:
1254:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1573 .loc 1 1254 1 view .LVU450
1574 002c 7047 bx lr
1575 .LVL106:
1576 .L87:
1577 .LCFI24:
1578 .cfi_restore_state
1209:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1579 .loc 1 1209 5 is_stmt 1 view .LVU451
1209:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1580 .loc 1 1209 22 is_stmt 0 view .LVU452
1581 002e 0022 movs r2, #0
1582 0030 5A64 str r2, [r3, #68]
1211:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1583 .loc 1 1211 5 is_stmt 1 view .LVU453
1211:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1584 .loc 1 1211 7 is_stmt 0 view .LVU454
1585 0032 E9B1 cbz r1, .L84
1214:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1586 .loc 1 1214 7 is_stmt 1 view .LVU455
1214:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1587 .loc 1 1214 20 is_stmt 0 view .LVU456
1588 0034 2222 movs r2, #34
1589 0036 83F84120 strb r2, [r3, #65]
1217:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->RxXferSize = READ_REG(hqspi->Instance->DLR) + 1U;
1590 .loc 1 1217 7 is_stmt 1 view .LVU457
1217:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->RxXferSize = READ_REG(hqspi->Instance->DLR) + 1U;
1591 .loc 1 1217 28 is_stmt 0 view .LVU458
1592 003a 2269 ldr r2, [r4, #16]
1217:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->RxXferSize = READ_REG(hqspi->Instance->DLR) + 1U;
1593 .loc 1 1217 59 view .LVU459
1594 003c 0132 adds r2, r2, #1
1217:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->RxXferSize = READ_REG(hqspi->Instance->DLR) + 1U;
1595 .loc 1 1217 26 view .LVU460
1596 003e 9A63 str r2, [r3, #56]
1218:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->pRxBuffPtr = pData;
1597 .loc 1 1218 7 is_stmt 1 view .LVU461
1218:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->pRxBuffPtr = pData;
1598 .loc 1 1218 27 is_stmt 0 view .LVU462
1599 0040 2269 ldr r2, [r4, #16]
ARM GAS /tmp/ccNpZKQO.s page 82
1218:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->pRxBuffPtr = pData;
1600 .loc 1 1218 58 view .LVU463
1601 0042 0132 adds r2, r2, #1
1218:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->pRxBuffPtr = pData;
1602 .loc 1 1218 25 view .LVU464
1603 0044 5A63 str r2, [r3, #52]
1219:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1604 .loc 1 1219 7 is_stmt 1 view .LVU465
1219:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1605 .loc 1 1219 25 is_stmt 0 view .LVU466
1606 0046 1963 str r1, [r3, #48]
1222:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1607 .loc 1 1222 7 is_stmt 1 view .LVU467
1608 0048 0322 movs r2, #3
1609 004a E260 str r2, [r4, #12]
1225:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1610 .loc 1 1225 7 view .LVU468
1611 004c 1968 ldr r1, [r3]
1612 .LVL107:
1225:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1613 .loc 1 1225 7 is_stmt 0 view .LVU469
1614 004e 4A69 ldr r2, [r1, #20]
1615 0050 22F04062 bic r2, r2, #201326592
1616 0054 42F08062 orr r2, r2, #67108864
1617 0058 4A61 str r2, [r1, #20]
1228:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1618 .loc 1 1228 7 is_stmt 1 view .LVU470
1619 005a 1A68 ldr r2, [r3]
1620 005c 9561 str r5, [r2, #24]
1231:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1621 .loc 1 1231 7 view .LVU471
1231:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1622 .loc 1 1231 7 view .LVU472
1623 005e 0020 movs r0, #0
1624 0060 83F84000 strb r0, [r3, #64]
1231:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1625 .loc 1 1231 7 view .LVU473
1234:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1626 .loc 1 1234 7 view .LVU474
1627 0064 1A68 ldr r2, [r3]
1628 0066 1368 ldr r3, [r2]
1629 .LVL108:
1234:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1630 .loc 1 1234 7 is_stmt 0 view .LVU475
1631 0068 43F4E023 orr r3, r3, #458752
1632 006c 1360 str r3, [r2]
1633 006e DCE7 b .L82
1634 .LVL109:
1635 .L84:
1238:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** status = HAL_ERROR;
1636 .loc 1 1238 7 is_stmt 1 view .LVU476
1238:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** status = HAL_ERROR;
1637 .loc 1 1238 24 is_stmt 0 view .LVU477
1638 0070 5A6C ldr r2, [r3, #68]
1639 0072 42F00802 orr r2, r2, #8
1640 0076 5A64 str r2, [r3, #68]
1239:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
ARM GAS /tmp/ccNpZKQO.s page 83
1641 .loc 1 1239 7 is_stmt 1 view .LVU478
1642 .LVL110:
1242:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1643 .loc 1 1242 7 view .LVU479
1242:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1644 .loc 1 1242 7 view .LVU480
1645 0078 0022 movs r2, #0
1646 007a 83F84020 strb r2, [r3, #64]
1647 007e D4E7 b .L82
1648 .LVL111:
1649 .L85:
1205:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1650 .loc 1 1205 3 is_stmt 0 view .LVU481
1651 0080 0220 movs r0, #2
1652 .LVL112:
1205:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1653 .loc 1 1205 3 view .LVU482
1654 0082 D2E7 b .L82
1655 .cfi_endproc
1656 .LFE151:
1658 .section .text.HAL_QSPI_Transmit_DMA,"ax",%progbits
1659 .align 1
1660 .global HAL_QSPI_Transmit_DMA
1661 .syntax unified
1662 .thumb
1663 .thumb_func
1664 .fpu fpv5-d16
1666 HAL_QSPI_Transmit_DMA:
1667 .LVL113:
1668 .LFB152:
1264:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** HAL_StatusTypeDef status = HAL_OK;
1669 .loc 1 1264 1 is_stmt 1 view -0
1670 .cfi_startproc
1671 @ args = 0, pretend = 0, frame = 0
1672 @ frame_needed = 0, uses_anonymous_args = 0
1264:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** HAL_StatusTypeDef status = HAL_OK;
1673 .loc 1 1264 1 is_stmt 0 view .LVU484
1674 0000 70B5 push {r4, r5, r6, lr}
1675 .LCFI25:
1676 .cfi_def_cfa_offset 16
1677 .cfi_offset 4, -16
1678 .cfi_offset 5, -12
1679 .cfi_offset 6, -8
1680 .cfi_offset 14, -4
1681 0002 82B0 sub sp, sp, #8
1682 .LCFI26:
1683 .cfi_def_cfa_offset 24
1684 0004 0446 mov r4, r0
1265:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** uint32_t data_size = (READ_REG(hqspi->Instance->DLR) + 1U);
1685 .loc 1 1265 3 is_stmt 1 view .LVU485
1686 .LVL114:
1266:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1687 .loc 1 1266 3 view .LVU486
1266:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1688 .loc 1 1266 25 is_stmt 0 view .LVU487
1689 0006 0068 ldr r0, [r0]
1690 .LVL115:
ARM GAS /tmp/ccNpZKQO.s page 84
1266:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1691 .loc 1 1266 25 view .LVU488
1692 0008 0269 ldr r2, [r0, #16]
1693 .LVL116:
1269:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1694 .loc 1 1269 3 is_stmt 1 view .LVU489
1269:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1695 .loc 1 1269 3 view .LVU490
1696 000a 94F84030 ldrb r3, [r4, #64] @ zero_extendqisi2
1697 000e DBB2 uxtb r3, r3
1698 0010 012B cmp r3, #1
1699 0012 00F08680 beq .L97
1700 0016 0132 adds r2, r2, #1
1701 .LVL117:
1269:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1702 .loc 1 1269 3 discriminator 2 view .LVU491
1703 0018 0123 movs r3, #1
1704 001a 84F84030 strb r3, [r4, #64]
1269:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1705 .loc 1 1269 3 discriminator 2 view .LVU492
1271:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1706 .loc 1 1271 3 discriminator 2 view .LVU493
1271:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1707 .loc 1 1271 11 is_stmt 0 discriminator 2 view .LVU494
1708 001e 94F84150 ldrb r5, [r4, #65] @ zero_extendqisi2
1709 0022 EDB2 uxtb r5, r5
1271:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1710 .loc 1 1271 5 discriminator 2 view .LVU495
1711 0024 9D42 cmp r5, r3
1712 0026 06D0 beq .L99
1359:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1713 .loc 1 1359 5 is_stmt 1 view .LVU496
1714 .LVL118:
1362:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1715 .loc 1 1362 5 view .LVU497
1362:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1716 .loc 1 1362 5 view .LVU498
1717 0028 0023 movs r3, #0
1718 002a 84F84030 strb r3, [r4, #64]
1359:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1719 .loc 1 1359 12 is_stmt 0 view .LVU499
1720 002e 0225 movs r5, #2
1721 .LVL119:
1722 .L89:
1366:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1723 .loc 1 1366 1 view .LVU500
1724 0030 2846 mov r0, r5
1725 0032 02B0 add sp, sp, #8
1726 .LCFI27:
1727 .cfi_remember_state
1728 .cfi_def_cfa_offset 16
1729 @ sp needed
1730 0034 70BD pop {r4, r5, r6, pc}
1731 .LVL120:
1732 .L99:
1733 .LCFI28:
1734 .cfi_restore_state
ARM GAS /tmp/ccNpZKQO.s page 85
1274:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1735 .loc 1 1274 5 is_stmt 1 view .LVU501
1274:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1736 .loc 1 1274 22 is_stmt 0 view .LVU502
1737 0036 0023 movs r3, #0
1738 0038 6364 str r3, [r4, #68]
1276:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1739 .loc 1 1276 5 is_stmt 1 view .LVU503
1276:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1740 .loc 1 1276 7 is_stmt 0 view .LVU504
1741 003a 0029 cmp r1, #0
1742 003c 69D0 beq .L91
1279:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1743 .loc 1 1279 7 is_stmt 1 view .LVU505
1279:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1744 .loc 1 1279 26 is_stmt 0 view .LVU506
1745 003e E262 str r2, [r4, #44]
1282:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1746 .loc 1 1282 9 is_stmt 1 view .LVU507
1282:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1747 .loc 1 1282 22 is_stmt 0 view .LVU508
1748 0040 1223 movs r3, #18
1749 0042 84F84130 strb r3, [r4, #65]
1285:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1750 .loc 1 1285 9 is_stmt 1 view .LVU509
1751 0046 0323 movs r3, #3
1752 0048 C360 str r3, [r0, #12]
1288:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->pTxBuffPtr = pData;
1753 .loc 1 1288 9 view .LVU510
1288:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->pTxBuffPtr = pData;
1754 .loc 1 1288 34 is_stmt 0 view .LVU511
1755 004a E36A ldr r3, [r4, #44]
1288:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->pTxBuffPtr = pData;
1756 .loc 1 1288 27 view .LVU512
1757 004c A362 str r3, [r4, #40]
1289:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1758 .loc 1 1289 9 is_stmt 1 view .LVU513
1289:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1759 .loc 1 1289 27 is_stmt 0 view .LVU514
1760 004e 6162 str r1, [r4, #36]
1292:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1761 .loc 1 1292 9 is_stmt 1 view .LVU515
1762 0050 2268 ldr r2, [r4]
1763 .LVL121:
1292:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1764 .loc 1 1292 9 is_stmt 0 view .LVU516
1765 0052 5369 ldr r3, [r2, #20]
1766 0054 23F04063 bic r3, r3, #201326592
1767 0058 5361 str r3, [r2, #20]
1295:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1768 .loc 1 1295 9 is_stmt 1 view .LVU517
1295:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1769 .loc 1 1295 14 is_stmt 0 view .LVU518
1770 005a E36B ldr r3, [r4, #60]
1295:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1771 .loc 1 1295 40 view .LVU519
1772 005c 324A ldr r2, .L102
ARM GAS /tmp/ccNpZKQO.s page 86
1773 005e 5A64 str r2, [r3, #68]
1298:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1774 .loc 1 1298 9 is_stmt 1 view .LVU520
1298:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1775 .loc 1 1298 14 is_stmt 0 view .LVU521
1776 0060 E36B ldr r3, [r4, #60]
1298:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1777 .loc 1 1298 41 view .LVU522
1778 0062 324A ldr r2, .L102+4
1779 0064 5A65 str r2, [r3, #84]
1301:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1780 .loc 1 1301 9 is_stmt 1 view .LVU523
1301:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1781 .loc 1 1301 14 is_stmt 0 view .LVU524
1782 0066 E36B ldr r3, [r4, #60]
1301:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1783 .loc 1 1301 41 view .LVU525
1784 0068 0022 movs r2, #0
1785 006a 9A65 str r2, [r3, #88]
1304:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1786 .loc 1 1304 9 is_stmt 1 view .LVU526
1787 006c E36B ldr r3, [r4, #60]
1788 006e 1A68 ldr r2, [r3]
1789 0070 1069 ldr r0, [r2, #16]
1790 0072 2F4B ldr r3, .L102+8
1791 0074 0340 ands r3, r3, r0
1792 0076 1361 str r3, [r2, #16]
1307:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1793 .loc 1 1307 9 view .LVU527
1307:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1794 .loc 1 1307 18 is_stmt 0 view .LVU528
1795 0078 E26B ldr r2, [r4, #60]
1307:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1796 .loc 1 1307 31 view .LVU529
1797 007a D369 ldr r3, [r2, #28]
1307:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1798 .loc 1 1307 12 view .LVU530
1799 007c 03BB cbnz r3, .L92
1309:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1800 .loc 1 1309 11 is_stmt 1 view .LVU531
1801 007e 1268 ldr r2, [r2]
1802 0080 1069 ldr r0, [r2, #16]
1803 0082 A3F54173 sub r3, r3, #772
1804 0086 0340 ands r3, r3, r0
1805 0088 43F00203 orr r3, r3, #2
1806 008c 1361 str r3, [r2, #16]
1265:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** uint32_t data_size = (READ_REG(hqspi->Instance->DLR) + 1U);
1807 .loc 1 1265 21 is_stmt 0 view .LVU532
1808 008e 0026 movs r6, #0
1809 .LVL122:
1810 .L93:
1327:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1811 .loc 1 1327 9 is_stmt 1 view .LVU533
1327:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1812 .loc 1 1327 78 is_stmt 0 view .LVU534
1813 0090 2268 ldr r2, [r4]
1327:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
ARM GAS /tmp/ccNpZKQO.s page 87
1814 .loc 1 1327 13 view .LVU535
1815 0092 A36A ldr r3, [r4, #40]
1816 0094 0120 movs r0, #1
1817 0096 0090 str r0, [sp]
1818 0098 2032 adds r2, r2, #32
1819 009a E06B ldr r0, [r4, #60]
1820 009c FFF7FEFF bl HAL_MDMA_Start_IT
1821 .LVL123:
1327:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1822 .loc 1 1327 12 view .LVU536
1823 00a0 60BB cbnz r0, .L96
1330:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1824 .loc 1 1330 11 is_stmt 1 view .LVU537
1330:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1825 .loc 1 1330 11 view .LVU538
1826 00a2 0023 movs r3, #0
1827 00a4 84F84030 strb r3, [r4, #64]
1330:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1828 .loc 1 1330 11 view .LVU539
1333:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1829 .loc 1 1333 11 view .LVU540
1830 00a8 2268 ldr r2, [r4]
1831 00aa 1368 ldr r3, [r2]
1832 00ac 43F48033 orr r3, r3, #65536
1833 00b0 1360 str r3, [r2]
1336:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1834 .loc 1 1336 11 view .LVU541
1835 00b2 2268 ldr r2, [r4]
1836 00b4 1368 ldr r3, [r2]
1837 00b6 43F00403 orr r3, r3, #4
1838 00ba 1360 str r3, [r2]
1839 00bc 3546 mov r5, r6
1840 00be B7E7 b .L89
1841 .LVL124:
1842 .L92:
1311:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1843 .loc 1 1311 14 view .LVU542
1311:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1844 .loc 1 1311 17 is_stmt 0 view .LVU543
1845 00c0 102B cmp r3, #16
1846 00c2 07D0 beq .L100
1315:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1847 .loc 1 1315 14 is_stmt 1 view .LVU544
1315:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1848 .loc 1 1315 17 is_stmt 0 view .LVU545
1849 00c4 202B cmp r3, #32
1850 00c6 0FD0 beq .L101
1322:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** status = HAL_ERROR;
1851 .loc 1 1322 11 is_stmt 1 view .LVU546
1322:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** status = HAL_ERROR;
1852 .loc 1 1322 28 is_stmt 0 view .LVU547
1853 00c8 636C ldr r3, [r4, #68]
1854 00ca 43F00403 orr r3, r3, #4
1855 00ce 6364 str r3, [r4, #68]
1323:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1856 .loc 1 1323 11 is_stmt 1 view .LVU548
1857 .LVL125:
ARM GAS /tmp/ccNpZKQO.s page 88
1323:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1858 .loc 1 1323 18 is_stmt 0 view .LVU549
1859 00d0 2E46 mov r6, r5
1860 00d2 DDE7 b .L93
1861 .LVL126:
1862 .L100:
1313:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1863 .loc 1 1313 11 is_stmt 1 view .LVU550
1864 00d4 1268 ldr r2, [r2]
1865 00d6 1069 ldr r0, [r2, #16]
1866 00d8 A3F54573 sub r3, r3, #788
1867 00dc 0340 ands r3, r3, r0
1868 00de 43F48173 orr r3, r3, #258
1869 00e2 1361 str r3, [r2, #16]
1265:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** uint32_t data_size = (READ_REG(hqspi->Instance->DLR) + 1U);
1870 .loc 1 1265 21 is_stmt 0 view .LVU551
1871 00e4 0026 movs r6, #0
1872 00e6 D3E7 b .L93
1873 .L101:
1317:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1874 .loc 1 1317 11 is_stmt 1 view .LVU552
1875 00e8 1068 ldr r0, [r2]
1876 00ea 0369 ldr r3, [r0, #16]
1877 00ec 114A ldr r2, .L102+12
1878 00ee 1A40 ands r2, r2, r3
1879 00f0 40F20223 movw r3, #514
1880 00f4 1343 orrs r3, r3, r2
1881 00f6 0361 str r3, [r0, #16]
1265:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** uint32_t data_size = (READ_REG(hqspi->Instance->DLR) + 1U);
1882 .loc 1 1265 21 is_stmt 0 view .LVU553
1883 00f8 0026 movs r6, #0
1884 00fa C9E7 b .L93
1885 .LVL127:
1886 .L96:
1340:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->ErrorCode |= HAL_QSPI_ERROR_DMA;
1887 .loc 1 1340 11 is_stmt 1 view .LVU554
1341:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->State = HAL_QSPI_STATE_READY;
1888 .loc 1 1341 11 view .LVU555
1341:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->State = HAL_QSPI_STATE_READY;
1889 .loc 1 1341 28 is_stmt 0 view .LVU556
1890 00fc 636C ldr r3, [r4, #68]
1891 00fe 43F00403 orr r3, r3, #4
1892 0102 6364 str r3, [r4, #68]
1342:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1893 .loc 1 1342 11 is_stmt 1 view .LVU557
1342:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1894 .loc 1 1342 24 is_stmt 0 view .LVU558
1895 0104 0123 movs r3, #1
1896 0106 84F84130 strb r3, [r4, #65]
1345:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1897 .loc 1 1345 11 is_stmt 1 view .LVU559
1345:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1898 .loc 1 1345 11 view .LVU560
1899 010a 0023 movs r3, #0
1900 010c 84F84030 strb r3, [r4, #64]
1901 0110 8EE7 b .L89
1902 .LVL128:
ARM GAS /tmp/ccNpZKQO.s page 89
1903 .L91:
1350:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** status = HAL_ERROR;
1904 .loc 1 1350 7 discriminator 1 view .LVU561
1350:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** status = HAL_ERROR;
1905 .loc 1 1350 24 is_stmt 0 discriminator 1 view .LVU562
1906 0112 636C ldr r3, [r4, #68]
1907 0114 43F00803 orr r3, r3, #8
1908 0118 6364 str r3, [r4, #68]
1351:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1909 .loc 1 1351 7 is_stmt 1 discriminator 1 view .LVU563
1910 .LVL129:
1354:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1911 .loc 1 1354 7 discriminator 1 view .LVU564
1354:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1912 .loc 1 1354 7 discriminator 1 view .LVU565
1913 011a 0023 movs r3, #0
1914 011c 84F84030 strb r3, [r4, #64]
1915 0120 86E7 b .L89
1916 .LVL130:
1917 .L97:
1269:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1918 .loc 1 1269 3 is_stmt 0 view .LVU566
1919 0122 0225 movs r5, #2
1920 0124 84E7 b .L89
1921 .L103:
1922 0126 00BF .align 2
1923 .L102:
1924 0128 00000000 .word QSPI_DMATxCplt
1925 012c 00000000 .word QSPI_DMAError
1926 0130 F3F3FFFF .word -3085
1927 0134 FCFCFFFF .word -772
1928 .cfi_endproc
1929 .LFE152:
1931 .section .text.HAL_QSPI_Receive_DMA,"ax",%progbits
1932 .align 1
1933 .global HAL_QSPI_Receive_DMA
1934 .syntax unified
1935 .thumb
1936 .thumb_func
1937 .fpu fpv5-d16
1939 HAL_QSPI_Receive_DMA:
1940 .LVL131:
1941 .LFB153:
1376:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** HAL_StatusTypeDef status = HAL_OK;
1942 .loc 1 1376 1 is_stmt 1 view -0
1943 .cfi_startproc
1944 @ args = 0, pretend = 0, frame = 0
1945 @ frame_needed = 0, uses_anonymous_args = 0
1376:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** HAL_StatusTypeDef status = HAL_OK;
1946 .loc 1 1376 1 is_stmt 0 view .LVU568
1947 0000 70B5 push {r4, r5, r6, lr}
1948 .LCFI29:
1949 .cfi_def_cfa_offset 16
1950 .cfi_offset 4, -16
1951 .cfi_offset 5, -12
1952 .cfi_offset 6, -8
1953 .cfi_offset 14, -4
ARM GAS /tmp/ccNpZKQO.s page 90
1954 0002 82B0 sub sp, sp, #8
1955 .LCFI30:
1956 .cfi_def_cfa_offset 24
1957 0004 0446 mov r4, r0
1377:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** uint32_t addr_reg = READ_REG(hqspi->Instance->AR);
1958 .loc 1 1377 3 is_stmt 1 view .LVU569
1959 .LVL132:
1378:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** uint32_t data_size = (READ_REG(hqspi->Instance->DLR) + 1U);
1960 .loc 1 1378 3 view .LVU570
1378:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** uint32_t data_size = (READ_REG(hqspi->Instance->DLR) + 1U);
1961 .loc 1 1378 23 is_stmt 0 view .LVU571
1962 0006 0068 ldr r0, [r0]
1963 .LVL133:
1378:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** uint32_t data_size = (READ_REG(hqspi->Instance->DLR) + 1U);
1964 .loc 1 1378 12 view .LVU572
1965 0008 8269 ldr r2, [r0, #24]
1966 .LVL134:
1379:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1967 .loc 1 1379 3 is_stmt 1 view .LVU573
1379:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1968 .loc 1 1379 25 is_stmt 0 view .LVU574
1969 000a 0669 ldr r6, [r0, #16]
1970 .LVL135:
1382:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1971 .loc 1 1382 3 is_stmt 1 view .LVU575
1382:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1972 .loc 1 1382 3 view .LVU576
1973 000c 94F84030 ldrb r3, [r4, #64] @ zero_extendqisi2
1974 0010 DBB2 uxtb r3, r3
1975 0012 012B cmp r3, #1
1976 0014 00F08C80 beq .L113
1977 0018 0136 adds r6, r6, #1
1978 .LVL136:
1382:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1979 .loc 1 1382 3 discriminator 2 view .LVU577
1980 001a 0123 movs r3, #1
1981 001c 84F84030 strb r3, [r4, #64]
1382:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1982 .loc 1 1382 3 discriminator 2 view .LVU578
1384:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1983 .loc 1 1384 3 discriminator 2 view .LVU579
1384:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1984 .loc 1 1384 11 is_stmt 0 discriminator 2 view .LVU580
1985 0020 94F84150 ldrb r5, [r4, #65] @ zero_extendqisi2
1986 0024 EDB2 uxtb r5, r5
1384:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
1987 .loc 1 1384 5 discriminator 2 view .LVU581
1988 0026 9D42 cmp r5, r3
1989 0028 06D0 beq .L115
1473:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1990 .loc 1 1473 5 is_stmt 1 view .LVU582
1991 .LVL137:
1476:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1992 .loc 1 1476 5 view .LVU583
1476:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
1993 .loc 1 1476 5 view .LVU584
1994 002a 0023 movs r3, #0
ARM GAS /tmp/ccNpZKQO.s page 91
1995 002c 84F84030 strb r3, [r4, #64]
1473:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
1996 .loc 1 1473 12 is_stmt 0 view .LVU585
1997 0030 0225 movs r5, #2
1998 .LVL138:
1999 .L105:
1480:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2000 .loc 1 1480 1 view .LVU586
2001 0032 2846 mov r0, r5
2002 0034 02B0 add sp, sp, #8
2003 .LCFI31:
2004 .cfi_remember_state
2005 .cfi_def_cfa_offset 16
2006 @ sp needed
2007 0036 70BD pop {r4, r5, r6, pc}
2008 .LVL139:
2009 .L115:
2010 .LCFI32:
2011 .cfi_restore_state
1387:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2012 .loc 1 1387 5 is_stmt 1 view .LVU587
1387:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2013 .loc 1 1387 22 is_stmt 0 view .LVU588
2014 0038 0023 movs r3, #0
2015 003a 6364 str r3, [r4, #68]
1389:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
2016 .loc 1 1389 5 is_stmt 1 view .LVU589
1389:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
2017 .loc 1 1389 7 is_stmt 0 view .LVU590
2018 003c 0029 cmp r1, #0
2019 003e 6FD0 beq .L107
1392:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Update state */
2020 .loc 1 1392 7 is_stmt 1 view .LVU591
1392:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Update state */
2021 .loc 1 1392 26 is_stmt 0 view .LVU592
2022 0040 A663 str r6, [r4, #56]
1394:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2023 .loc 1 1394 9 is_stmt 1 view .LVU593
1394:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2024 .loc 1 1394 22 is_stmt 0 view .LVU594
2025 0042 2223 movs r3, #34
2026 0044 84F84130 strb r3, [r4, #65]
1397:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2027 .loc 1 1397 9 is_stmt 1 view .LVU595
2028 0048 0323 movs r3, #3
2029 004a C360 str r3, [r0, #12]
1400:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->pRxBuffPtr = pData;
2030 .loc 1 1400 9 view .LVU596
1400:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->pRxBuffPtr = pData;
2031 .loc 1 1400 34 is_stmt 0 view .LVU597
2032 004c A36B ldr r3, [r4, #56]
1400:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->pRxBuffPtr = pData;
2033 .loc 1 1400 27 view .LVU598
2034 004e 6363 str r3, [r4, #52]
1401:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2035 .loc 1 1401 9 is_stmt 1 view .LVU599
1401:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
ARM GAS /tmp/ccNpZKQO.s page 92
2036 .loc 1 1401 27 is_stmt 0 view .LVU600
2037 0050 2163 str r1, [r4, #48]
1404:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2038 .loc 1 1404 9 is_stmt 1 view .LVU601
1404:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2039 .loc 1 1404 14 is_stmt 0 view .LVU602
2040 0052 E36B ldr r3, [r4, #60]
1404:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2041 .loc 1 1404 40 view .LVU603
2042 0054 3748 ldr r0, .L118
2043 0056 5864 str r0, [r3, #68]
1407:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2044 .loc 1 1407 9 is_stmt 1 view .LVU604
1407:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2045 .loc 1 1407 14 is_stmt 0 view .LVU605
2046 0058 E36B ldr r3, [r4, #60]
1407:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2047 .loc 1 1407 41 view .LVU606
2048 005a 3748 ldr r0, .L118+4
2049 005c 5865 str r0, [r3, #84]
1410:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2050 .loc 1 1410 9 is_stmt 1 view .LVU607
1410:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2051 .loc 1 1410 14 is_stmt 0 view .LVU608
2052 005e E36B ldr r3, [r4, #60]
1410:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2053 .loc 1 1410 41 view .LVU609
2054 0060 0020 movs r0, #0
2055 0062 9865 str r0, [r3, #88]
1413:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2056 .loc 1 1413 7 is_stmt 1 view .LVU610
2057 0064 E36B ldr r3, [r4, #60]
2058 0066 1868 ldr r0, [r3]
2059 0068 0669 ldr r6, [r0, #16]
2060 .LVL140:
1413:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2061 .loc 1 1413 7 is_stmt 0 view .LVU611
2062 006a 344B ldr r3, .L118+8
2063 006c 3340 ands r3, r3, r6
2064 006e 0361 str r3, [r0, #16]
1416:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
2065 .loc 1 1416 7 is_stmt 1 view .LVU612
1416:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
2066 .loc 1 1416 16 is_stmt 0 view .LVU613
2067 0070 E06B ldr r0, [r4, #60]
1416:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
2068 .loc 1 1416 29 view .LVU614
2069 0072 036A ldr r3, [r0, #32]
1416:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
2070 .loc 1 1416 10 view .LVU615
2071 0074 5BBB cbnz r3, .L108
1418:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
2072 .loc 1 1418 9 is_stmt 1 view .LVU616
2073 0076 0068 ldr r0, [r0]
2074 0078 0669 ldr r6, [r0, #16]
2075 007a A3F60D43 subw r3, r3, #3085
2076 007e 3340 ands r3, r3, r6
ARM GAS /tmp/ccNpZKQO.s page 93
2077 0080 43F00803 orr r3, r3, #8
2078 0084 0361 str r3, [r0, #16]
1377:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** uint32_t addr_reg = READ_REG(hqspi->Instance->AR);
2079 .loc 1 1377 21 is_stmt 0 view .LVU617
2080 0086 0026 movs r6, #0
2081 .LVL141:
2082 .L109:
1435:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2083 .loc 1 1435 11 is_stmt 1 view .LVU618
2084 0088 2068 ldr r0, [r4]
2085 008a 4369 ldr r3, [r0, #20]
2086 008c 23F04063 bic r3, r3, #201326592
2087 0090 43F08063 orr r3, r3, #67108864
2088 0094 4361 str r3, [r0, #20]
1438:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2089 .loc 1 1438 11 view .LVU619
2090 0096 2368 ldr r3, [r4]
2091 0098 9A61 str r2, [r3, #24]
1441:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
2092 .loc 1 1441 9 view .LVU620
1441:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
2093 .loc 1 1441 61 is_stmt 0 view .LVU621
2094 009a 2068 ldr r0, [r4]
1441:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
2095 .loc 1 1441 13 view .LVU622
2096 009c 636B ldr r3, [r4, #52]
2097 009e 0122 movs r2, #1
2098 .LVL142:
1441:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
2099 .loc 1 1441 13 view .LVU623
2100 00a0 0092 str r2, [sp]
2101 00a2 0A46 mov r2, r1
2102 00a4 00F12001 add r1, r0, #32
2103 .LVL143:
1441:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
2104 .loc 1 1441 13 view .LVU624
2105 00a8 E06B ldr r0, [r4, #60]
2106 00aa FFF7FEFF bl HAL_MDMA_Start_IT
2107 .LVL144:
1441:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
2108 .loc 1 1441 12 view .LVU625
2109 00ae 60BB cbnz r0, .L112
1444:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2110 .loc 1 1444 11 is_stmt 1 view .LVU626
1444:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2111 .loc 1 1444 11 view .LVU627
2112 00b0 0023 movs r3, #0
2113 00b2 84F84030 strb r3, [r4, #64]
1444:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2114 .loc 1 1444 11 view .LVU628
1447:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2115 .loc 1 1447 11 view .LVU629
2116 00b6 2268 ldr r2, [r4]
2117 00b8 1368 ldr r3, [r2]
2118 00ba 43F48033 orr r3, r3, #65536
2119 00be 1360 str r3, [r2]
1450:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
ARM GAS /tmp/ccNpZKQO.s page 94
2120 .loc 1 1450 11 view .LVU630
2121 00c0 2268 ldr r2, [r4]
2122 00c2 1368 ldr r3, [r2]
2123 00c4 43F00403 orr r3, r3, #4
2124 00c8 1360 str r3, [r2]
2125 00ca 3546 mov r5, r6
2126 00cc B1E7 b .L105
2127 .LVL145:
2128 .L108:
1420:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
2129 .loc 1 1420 12 view .LVU631
1420:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
2130 .loc 1 1420 15 is_stmt 0 view .LVU632
2131 00ce 402B cmp r3, #64
2132 00d0 07D0 beq .L116
1424:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
2133 .loc 1 1424 12 is_stmt 1 view .LVU633
1424:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
2134 .loc 1 1424 15 is_stmt 0 view .LVU634
2135 00d2 802B cmp r3, #128
2136 00d4 0FD0 beq .L117
1431:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** status = HAL_ERROR;
2137 .loc 1 1431 9 is_stmt 1 view .LVU635
1431:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** status = HAL_ERROR;
2138 .loc 1 1431 26 is_stmt 0 view .LVU636
2139 00d6 636C ldr r3, [r4, #68]
2140 00d8 43F00403 orr r3, r3, #4
2141 00dc 6364 str r3, [r4, #68]
1432:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
2142 .loc 1 1432 9 is_stmt 1 view .LVU637
2143 .LVL146:
1432:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
2144 .loc 1 1432 16 is_stmt 0 view .LVU638
2145 00de 2E46 mov r6, r5
2146 00e0 D2E7 b .L109
2147 .LVL147:
2148 .L116:
1422:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
2149 .loc 1 1422 9 is_stmt 1 view .LVU639
2150 00e2 0068 ldr r0, [r0]
2151 00e4 0669 ldr r6, [r0, #16]
2152 00e6 A3F64D43 subw r3, r3, #3149
2153 00ea 3340 ands r3, r3, r6
2154 00ec 43F48163 orr r3, r3, #1032
2155 00f0 0361 str r3, [r0, #16]
1377:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** uint32_t addr_reg = READ_REG(hqspi->Instance->AR);
2156 .loc 1 1377 21 is_stmt 0 view .LVU640
2157 00f2 0026 movs r6, #0
2158 00f4 C8E7 b .L109
2159 .L117:
1426:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
2160 .loc 1 1426 9 is_stmt 1 view .LVU641
2161 00f6 0668 ldr r6, [r0]
2162 00f8 3369 ldr r3, [r6, #16]
2163 00fa 1148 ldr r0, .L118+12
2164 00fc 1840 ands r0, r0, r3
2165 00fe 40F60803 movw r3, #2056
ARM GAS /tmp/ccNpZKQO.s page 95
2166 0102 0343 orrs r3, r3, r0
2167 0104 3361 str r3, [r6, #16]
1377:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** uint32_t addr_reg = READ_REG(hqspi->Instance->AR);
2168 .loc 1 1377 21 is_stmt 0 view .LVU642
2169 0106 0026 movs r6, #0
2170 0108 BEE7 b .L109
2171 .LVL148:
2172 .L112:
1454:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->ErrorCode |= HAL_QSPI_ERROR_DMA;
2173 .loc 1 1454 11 is_stmt 1 view .LVU643
1455:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->State = HAL_QSPI_STATE_READY;
2174 .loc 1 1455 11 view .LVU644
1455:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->State = HAL_QSPI_STATE_READY;
2175 .loc 1 1455 28 is_stmt 0 view .LVU645
2176 010a 636C ldr r3, [r4, #68]
2177 010c 43F00403 orr r3, r3, #4
2178 0110 6364 str r3, [r4, #68]
1456:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2179 .loc 1 1456 11 is_stmt 1 view .LVU646
1456:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2180 .loc 1 1456 24 is_stmt 0 view .LVU647
2181 0112 0123 movs r3, #1
2182 0114 84F84130 strb r3, [r4, #65]
1459:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
2183 .loc 1 1459 11 is_stmt 1 view .LVU648
1459:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
2184 .loc 1 1459 11 view .LVU649
2185 0118 0023 movs r3, #0
2186 011a 84F84030 strb r3, [r4, #64]
2187 011e 88E7 b .L105
2188 .LVL149:
2189 .L107:
1464:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** status = HAL_ERROR;
2190 .loc 1 1464 7 discriminator 1 view .LVU650
1464:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** status = HAL_ERROR;
2191 .loc 1 1464 24 is_stmt 0 discriminator 1 view .LVU651
2192 0120 636C ldr r3, [r4, #68]
2193 0122 43F00803 orr r3, r3, #8
2194 0126 6364 str r3, [r4, #68]
1465:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2195 .loc 1 1465 7 is_stmt 1 discriminator 1 view .LVU652
2196 .LVL150:
1468:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
2197 .loc 1 1468 7 discriminator 1 view .LVU653
1468:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
2198 .loc 1 1468 7 discriminator 1 view .LVU654
2199 0128 0023 movs r3, #0
2200 012a 84F84030 strb r3, [r4, #64]
2201 012e 80E7 b .L105
2202 .LVL151:
2203 .L113:
1382:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2204 .loc 1 1382 3 is_stmt 0 view .LVU655
2205 0130 0225 movs r5, #2
2206 0132 7EE7 b .L105
2207 .L119:
2208 .align 2
ARM GAS /tmp/ccNpZKQO.s page 96
2209 .L118:
2210 0134 00000000 .word QSPI_DMARxCplt
2211 0138 00000000 .word QSPI_DMAError
2212 013c FCFCFFFF .word -772
2213 0140 F3F3FFFF .word -3085
2214 .cfi_endproc
2215 .LFE153:
2217 .section .text.HAL_QSPI_AutoPolling,"ax",%progbits
2218 .align 1
2219 .global HAL_QSPI_AutoPolling
2220 .syntax unified
2221 .thumb
2222 .thumb_func
2223 .fpu fpv5-d16
2225 HAL_QSPI_AutoPolling:
2226 .LVL152:
2227 .LFB154:
1492:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** HAL_StatusTypeDef status;
2228 .loc 1 1492 1 is_stmt 1 view -0
2229 .cfi_startproc
2230 @ args = 0, pretend = 0, frame = 0
2231 @ frame_needed = 0, uses_anonymous_args = 0
1492:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** HAL_StatusTypeDef status;
2232 .loc 1 1492 1 is_stmt 0 view .LVU657
2233 0000 2DE9F041 push {r4, r5, r6, r7, r8, lr}
2234 .LCFI33:
2235 .cfi_def_cfa_offset 24
2236 .cfi_offset 4, -24
2237 .cfi_offset 5, -20
2238 .cfi_offset 6, -16
2239 .cfi_offset 7, -12
2240 .cfi_offset 8, -8
2241 .cfi_offset 14, -4
2242 0004 82B0 sub sp, sp, #8
2243 .LCFI34:
2244 .cfi_def_cfa_offset 32
2245 0006 0446 mov r4, r0
2246 0008 8846 mov r8, r1
2247 000a 1546 mov r5, r2
2248 000c 1F46 mov r7, r3
1493:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** uint32_t tickstart = HAL_GetTick();
2249 .loc 1 1493 3 is_stmt 1 view .LVU658
1494:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2250 .loc 1 1494 3 view .LVU659
1494:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2251 .loc 1 1494 24 is_stmt 0 view .LVU660
2252 000e FFF7FEFF bl HAL_GetTick
2253 .LVL153:
1497:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if (cmd->InstructionMode != QSPI_INSTRUCTION_NONE)
2254 .loc 1 1497 3 is_stmt 1 view .LVU661
1498:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
2255 .loc 1 1498 3 view .LVU662
1500:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
2256 .loc 1 1500 5 view .LVU663
1503:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if (cmd->AddressMode != QSPI_ADDRESS_NONE)
2257 .loc 1 1503 3 view .LVU664
1504:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
ARM GAS /tmp/ccNpZKQO.s page 97
2258 .loc 1 1504 3 view .LVU665
1506:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
2259 .loc 1 1506 5 view .LVU666
1509:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if (cmd->AlternateByteMode != QSPI_ALTERNATE_BYTES_NONE)
2260 .loc 1 1509 3 view .LVU667
1510:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
2261 .loc 1 1510 3 view .LVU668
1512:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
2262 .loc 1 1512 5 view .LVU669
1515:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** assert_param(IS_QSPI_DATA_MODE(cmd->DataMode));
2263 .loc 1 1515 3 view .LVU670
1516:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2264 .loc 1 1516 3 view .LVU671
1518:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** assert_param(IS_QSPI_DDR_HHC(cmd->DdrHoldHalfCycle));
2265 .loc 1 1518 3 view .LVU672
1519:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** assert_param(IS_QSPI_SIOO_MODE(cmd->SIOOMode));
2266 .loc 1 1519 3 view .LVU673
1520:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2267 .loc 1 1520 3 view .LVU674
1522:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** assert_param(IS_QSPI_STATUS_BYTES_SIZE(cfg->StatusBytesSize));
2268 .loc 1 1522 3 view .LVU675
1523:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** assert_param(IS_QSPI_MATCH_MODE(cfg->MatchMode));
2269 .loc 1 1523 3 view .LVU676
1524:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2270 .loc 1 1524 3 view .LVU677
1527:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2271 .loc 1 1527 3 view .LVU678
1527:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2272 .loc 1 1527 3 view .LVU679
2273 0012 94F840C0 ldrb ip, [r4, #64] @ zero_extendqisi2
2274 0016 5FFA8CFC uxtb ip, ip
2275 001a BCF1010F cmp ip, #1
2276 001e 48D0 beq .L123
2277 0020 0646 mov r6, r0
1527:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2278 .loc 1 1527 3 discriminator 2 view .LVU680
2279 0022 0123 movs r3, #1
2280 0024 84F84030 strb r3, [r4, #64]
1527:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2281 .loc 1 1527 3 discriminator 2 view .LVU681
1529:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
2282 .loc 1 1529 3 discriminator 2 view .LVU682
1529:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
2283 .loc 1 1529 11 is_stmt 0 discriminator 2 view .LVU683
2284 0028 94F841C0 ldrb ip, [r4, #65] @ zero_extendqisi2
2285 002c 5FFA8CFC uxtb ip, ip
1529:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
2286 .loc 1 1529 5 discriminator 2 view .LVU684
2287 0030 9C45 cmp ip, r3
2288 0032 06D0 beq .L126
1573:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
2289 .loc 1 1573 12 view .LVU685
2290 0034 0220 movs r0, #2
2291 .LVL154:
2292 .L122:
1577:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2293 .loc 1 1577 3 is_stmt 1 view .LVU686
ARM GAS /tmp/ccNpZKQO.s page 98
1577:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2294 .loc 1 1577 3 view .LVU687
2295 0036 0023 movs r3, #0
2296 0038 84F84030 strb r3, [r4, #64]
1577:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2297 .loc 1 1577 3 view .LVU688
1580:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
2298 .loc 1 1580 3 view .LVU689
2299 .LVL155:
2300 .L121:
1581:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2301 .loc 1 1581 1 is_stmt 0 view .LVU690
2302 003c 02B0 add sp, sp, #8
2303 .LCFI35:
2304 .cfi_remember_state
2305 .cfi_def_cfa_offset 24
2306 @ sp needed
2307 003e BDE8F081 pop {r4, r5, r6, r7, r8, pc}
2308 .LVL156:
2309 .L126:
2310 .LCFI36:
2311 .cfi_restore_state
1531:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2312 .loc 1 1531 5 is_stmt 1 view .LVU691
1531:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2313 .loc 1 1531 22 is_stmt 0 view .LVU692
2314 0042 0022 movs r2, #0
2315 0044 6264 str r2, [r4, #68]
1534:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2316 .loc 1 1534 5 is_stmt 1 view .LVU693
1534:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2317 .loc 1 1534 18 is_stmt 0 view .LVU694
2318 0046 4223 movs r3, #66
2319 0048 84F84130 strb r3, [r4, #65]
1537:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2320 .loc 1 1537 5 is_stmt 1 view .LVU695
1537:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2321 .loc 1 1537 14 is_stmt 0 view .LVU696
2322 004c 0097 str r7, [sp]
2323 004e 0346 mov r3, r0
2324 0050 2021 movs r1, #32
2325 0052 2046 mov r0, r4
2326 .LVL157:
1537:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2327 .loc 1 1537 14 view .LVU697
2328 0054 FFF7FEFF bl QSPI_WaitFlagStateUntilTimeout
2329 .LVL158:
1539:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
2330 .loc 1 1539 5 is_stmt 1 view .LVU698
1539:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
2331 .loc 1 1539 8 is_stmt 0 view .LVU699
2332 0058 0028 cmp r0, #0
2333 005a ECD1 bne .L122
1542:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2334 .loc 1 1542 7 is_stmt 1 view .LVU700
2335 005c 2368 ldr r3, [r4]
2336 005e 2A68 ldr r2, [r5]
ARM GAS /tmp/ccNpZKQO.s page 99
2337 0060 9A62 str r2, [r3, #40]
1545:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2338 .loc 1 1545 7 view .LVU701
2339 0062 2368 ldr r3, [r4]
2340 0064 6A68 ldr r2, [r5, #4]
2341 0066 5A62 str r2, [r3, #36]
1548:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2342 .loc 1 1548 7 view .LVU702
2343 0068 2368 ldr r3, [r4]
2344 006a AA68 ldr r2, [r5, #8]
2345 006c DA62 str r2, [r3, #44]
1552:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (cfg->MatchMode | QSPI_AUTOMATIC_STOP_ENABLE));
2346 .loc 1 1552 7 view .LVU703
2347 006e 2268 ldr r2, [r4]
2348 0070 1368 ldr r3, [r2]
2349 0072 23F44003 bic r3, r3, #12582912
2350 0076 2969 ldr r1, [r5, #16]
2351 0078 0B43 orrs r3, r3, r1
2352 007a 43F48003 orr r3, r3, #4194304
2353 007e 1360 str r3, [r2]
1556:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** QSPI_Config(hqspi, cmd, QSPI_FUNCTIONAL_MODE_AUTO_POLLING);
2354 .loc 1 1556 7 view .LVU704
1556:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** QSPI_Config(hqspi, cmd, QSPI_FUNCTIONAL_MODE_AUTO_POLLING);
2355 .loc 1 1556 24 is_stmt 0 view .LVU705
2356 0080 EB68 ldr r3, [r5, #12]
1556:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** QSPI_Config(hqspi, cmd, QSPI_FUNCTIONAL_MODE_AUTO_POLLING);
2357 .loc 1 1556 19 view .LVU706
2358 0082 C8F82830 str r3, [r8, #40]
1557:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2359 .loc 1 1557 7 is_stmt 1 view .LVU707
2360 0086 4FF00062 mov r2, #134217728
2361 008a 4146 mov r1, r8
2362 008c 2046 mov r0, r4
2363 .LVL159:
1557:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2364 .loc 1 1557 7 is_stmt 0 view .LVU708
2365 008e FFF7FEFF bl QSPI_Config
2366 .LVL160:
1560:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2367 .loc 1 1560 7 is_stmt 1 view .LVU709
1560:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2368 .loc 1 1560 16 is_stmt 0 view .LVU710
2369 0092 0097 str r7, [sp]
2370 0094 3346 mov r3, r6
2371 0096 0122 movs r2, #1
2372 0098 0821 movs r1, #8
2373 009a 2046 mov r0, r4
2374 009c FFF7FEFF bl QSPI_WaitFlagStateUntilTimeout
2375 .LVL161:
1562:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
2376 .loc 1 1562 7 is_stmt 1 view .LVU711
1562:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
2377 .loc 1 1562 10 is_stmt 0 view .LVU712
2378 00a0 0028 cmp r0, #0
2379 00a2 C8D1 bne .L122
1564:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2380 .loc 1 1564 9 is_stmt 1 view .LVU713
ARM GAS /tmp/ccNpZKQO.s page 100
2381 00a4 2368 ldr r3, [r4]
2382 00a6 0822 movs r2, #8
2383 00a8 DA60 str r2, [r3, #12]
1567:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
2384 .loc 1 1567 9 view .LVU714
1567:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
2385 .loc 1 1567 22 is_stmt 0 view .LVU715
2386 00aa 0123 movs r3, #1
2387 00ac 84F84130 strb r3, [r4, #65]
2388 00b0 C1E7 b .L122
2389 .LVL162:
2390 .L123:
1527:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2391 .loc 1 1527 3 view .LVU716
2392 00b2 0220 movs r0, #2
2393 .LVL163:
1527:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2394 .loc 1 1527 3 view .LVU717
2395 00b4 C2E7 b .L121
2396 .cfi_endproc
2397 .LFE154:
2399 .section .text.HAL_QSPI_AutoPolling_IT,"ax",%progbits
2400 .align 1
2401 .global HAL_QSPI_AutoPolling_IT
2402 .syntax unified
2403 .thumb
2404 .thumb_func
2405 .fpu fpv5-d16
2407 HAL_QSPI_AutoPolling_IT:
2408 .LVL164:
2409 .LFB155:
1592:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** HAL_StatusTypeDef status;
2410 .loc 1 1592 1 is_stmt 1 view -0
2411 .cfi_startproc
2412 @ args = 0, pretend = 0, frame = 0
2413 @ frame_needed = 0, uses_anonymous_args = 0
1592:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** HAL_StatusTypeDef status;
2414 .loc 1 1592 1 is_stmt 0 view .LVU719
2415 0000 F0B5 push {r4, r5, r6, r7, lr}
2416 .LCFI37:
2417 .cfi_def_cfa_offset 20
2418 .cfi_offset 4, -20
2419 .cfi_offset 5, -16
2420 .cfi_offset 6, -12
2421 .cfi_offset 7, -8
2422 .cfi_offset 14, -4
2423 0002 83B0 sub sp, sp, #12
2424 .LCFI38:
2425 .cfi_def_cfa_offset 32
2426 0004 0446 mov r4, r0
2427 0006 0E46 mov r6, r1
2428 0008 1546 mov r5, r2
1593:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** uint32_t tickstart = HAL_GetTick();
2429 .loc 1 1593 3 is_stmt 1 view .LVU720
1594:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2430 .loc 1 1594 3 view .LVU721
1594:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
ARM GAS /tmp/ccNpZKQO.s page 101
2431 .loc 1 1594 24 is_stmt 0 view .LVU722
2432 000a FFF7FEFF bl HAL_GetTick
2433 .LVL165:
1597:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if (cmd->InstructionMode != QSPI_INSTRUCTION_NONE)
2434 .loc 1 1597 3 is_stmt 1 view .LVU723
1598:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
2435 .loc 1 1598 3 view .LVU724
1600:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
2436 .loc 1 1600 5 view .LVU725
1603:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if (cmd->AddressMode != QSPI_ADDRESS_NONE)
2437 .loc 1 1603 3 view .LVU726
1604:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
2438 .loc 1 1604 3 view .LVU727
1606:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
2439 .loc 1 1606 5 view .LVU728
1609:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if (cmd->AlternateByteMode != QSPI_ALTERNATE_BYTES_NONE)
2440 .loc 1 1609 3 view .LVU729
1610:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
2441 .loc 1 1610 3 view .LVU730
1612:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
2442 .loc 1 1612 5 view .LVU731
1615:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** assert_param(IS_QSPI_DATA_MODE(cmd->DataMode));
2443 .loc 1 1615 3 view .LVU732
1616:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2444 .loc 1 1616 3 view .LVU733
1618:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** assert_param(IS_QSPI_DDR_HHC(cmd->DdrHoldHalfCycle));
2445 .loc 1 1618 3 view .LVU734
1619:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** assert_param(IS_QSPI_SIOO_MODE(cmd->SIOOMode));
2446 .loc 1 1619 3 view .LVU735
1620:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2447 .loc 1 1620 3 view .LVU736
1622:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** assert_param(IS_QSPI_STATUS_BYTES_SIZE(cfg->StatusBytesSize));
2448 .loc 1 1622 3 view .LVU737
1623:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** assert_param(IS_QSPI_MATCH_MODE(cfg->MatchMode));
2449 .loc 1 1623 3 view .LVU738
1624:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** assert_param(IS_QSPI_AUTOMATIC_STOP(cfg->AutomaticStop));
2450 .loc 1 1624 3 view .LVU739
1625:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2451 .loc 1 1625 3 view .LVU740
1628:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2452 .loc 1 1628 3 view .LVU741
1628:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2453 .loc 1 1628 3 view .LVU742
2454 000e 94F840C0 ldrb ip, [r4, #64] @ zero_extendqisi2
2455 0012 5FFA8CFC uxtb ip, ip
2456 0016 BCF1010F cmp ip, #1
2457 001a 46D0 beq .L131
1628:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2458 .loc 1 1628 3 discriminator 2 view .LVU743
2459 001c 0123 movs r3, #1
2460 001e 84F84030 strb r3, [r4, #64]
1628:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2461 .loc 1 1628 3 discriminator 2 view .LVU744
1630:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
2462 .loc 1 1630 3 discriminator 2 view .LVU745
1630:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
2463 .loc 1 1630 11 is_stmt 0 discriminator 2 view .LVU746
ARM GAS /tmp/ccNpZKQO.s page 102
2464 0022 94F84120 ldrb r2, [r4, #65] @ zero_extendqisi2
2465 0026 D2B2 uxtb r2, r2
1630:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
2466 .loc 1 1630 5 discriminator 2 view .LVU747
2467 0028 9A42 cmp r2, r3
2468 002a 06D0 beq .L133
1677:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2469 .loc 1 1677 5 is_stmt 1 view .LVU748
2470 .LVL166:
1680:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
2471 .loc 1 1680 5 view .LVU749
1680:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
2472 .loc 1 1680 5 view .LVU750
2473 002c 0023 movs r3, #0
2474 002e 84F84030 strb r3, [r4, #64]
1677:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2475 .loc 1 1677 12 is_stmt 0 view .LVU751
2476 0032 0227 movs r7, #2
2477 .LVL167:
2478 .L128:
1685:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2479 .loc 1 1685 1 view .LVU752
2480 0034 3846 mov r0, r7
2481 0036 03B0 add sp, sp, #12
2482 .LCFI39:
2483 .cfi_remember_state
2484 .cfi_def_cfa_offset 20
2485 @ sp needed
2486 0038 F0BD pop {r4, r5, r6, r7, pc}
2487 .LVL168:
2488 .L133:
2489 .LCFI40:
2490 .cfi_restore_state
1632:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2491 .loc 1 1632 5 is_stmt 1 view .LVU753
1632:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2492 .loc 1 1632 22 is_stmt 0 view .LVU754
2493 003a 0022 movs r2, #0
2494 003c 6264 str r2, [r4, #68]
1635:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2495 .loc 1 1635 5 is_stmt 1 view .LVU755
1635:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2496 .loc 1 1635 18 is_stmt 0 view .LVU756
2497 003e 4223 movs r3, #66
2498 0040 84F84130 strb r3, [r4, #65]
1638:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2499 .loc 1 1638 5 is_stmt 1 view .LVU757
1638:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2500 .loc 1 1638 14 is_stmt 0 view .LVU758
2501 0044 A36C ldr r3, [r4, #72]
2502 0046 0093 str r3, [sp]
2503 0048 0346 mov r3, r0
2504 004a 2021 movs r1, #32
2505 004c 2046 mov r0, r4
2506 .LVL169:
1638:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2507 .loc 1 1638 14 view .LVU759
ARM GAS /tmp/ccNpZKQO.s page 103
2508 004e FFF7FEFF bl QSPI_WaitFlagStateUntilTimeout
2509 .LVL170:
1640:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
2510 .loc 1 1640 5 is_stmt 1 view .LVU760
1640:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
2511 .loc 1 1640 8 is_stmt 0 view .LVU761
2512 0052 0746 mov r7, r0
2513 0054 18B1 cbz r0, .L134
1672:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
2514 .loc 1 1672 7 is_stmt 1 view .LVU762
1672:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
2515 .loc 1 1672 7 view .LVU763
2516 0056 0023 movs r3, #0
2517 0058 84F84030 strb r3, [r4, #64]
2518 005c EAE7 b .L128
2519 .L134:
1643:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2520 .loc 1 1643 7 view .LVU764
2521 005e 2368 ldr r3, [r4]
2522 0060 2A68 ldr r2, [r5]
2523 0062 9A62 str r2, [r3, #40]
1646:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2524 .loc 1 1646 7 view .LVU765
2525 0064 2368 ldr r3, [r4]
2526 0066 6A68 ldr r2, [r5, #4]
2527 0068 5A62 str r2, [r3, #36]
1649:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2528 .loc 1 1649 7 view .LVU766
2529 006a 2368 ldr r3, [r4]
2530 006c AA68 ldr r2, [r5, #8]
2531 006e DA62 str r2, [r3, #44]
1652:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (cfg->MatchMode | cfg->AutomaticStop));
2532 .loc 1 1652 7 view .LVU767
2533 0070 2168 ldr r1, [r4]
2534 0072 0B68 ldr r3, [r1]
2535 0074 23F44003 bic r3, r3, #12582912
2536 0078 2A69 ldr r2, [r5, #16]
2537 007a 6869 ldr r0, [r5, #20]
2538 .LVL171:
1652:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** (cfg->MatchMode | cfg->AutomaticStop));
2539 .loc 1 1652 7 is_stmt 0 view .LVU768
2540 007c 0243 orrs r2, r2, r0
2541 007e 1343 orrs r3, r3, r2
2542 0080 0B60 str r3, [r1]
1656:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2543 .loc 1 1656 7 is_stmt 1 view .LVU769
2544 0082 2368 ldr r3, [r4]
2545 0084 0922 movs r2, #9
2546 0086 DA60 str r2, [r3, #12]
1659:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** QSPI_Config(hqspi, cmd, QSPI_FUNCTIONAL_MODE_AUTO_POLLING);
2547 .loc 1 1659 7 view .LVU770
1659:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** QSPI_Config(hqspi, cmd, QSPI_FUNCTIONAL_MODE_AUTO_POLLING);
2548 .loc 1 1659 24 is_stmt 0 view .LVU771
2549 0088 EB68 ldr r3, [r5, #12]
1659:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** QSPI_Config(hqspi, cmd, QSPI_FUNCTIONAL_MODE_AUTO_POLLING);
2550 .loc 1 1659 19 view .LVU772
2551 008a B362 str r3, [r6, #40]
ARM GAS /tmp/ccNpZKQO.s page 104
1660:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2552 .loc 1 1660 7 is_stmt 1 view .LVU773
2553 008c 4FF00062 mov r2, #134217728
2554 0090 3146 mov r1, r6
2555 0092 2046 mov r0, r4
2556 0094 FFF7FEFF bl QSPI_Config
2557 .LVL172:
1663:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2558 .loc 1 1663 7 view .LVU774
1663:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2559 .loc 1 1663 7 view .LVU775
2560 0098 0023 movs r3, #0
2561 009a 84F84030 strb r3, [r4, #64]
1663:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2562 .loc 1 1663 7 view .LVU776
1666:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2563 .loc 1 1666 7 view .LVU777
2564 009e 2268 ldr r2, [r4]
2565 00a0 1368 ldr r3, [r2]
2566 00a2 43F41023 orr r3, r3, #589824
2567 00a6 1360 str r3, [r2]
2568 00a8 C4E7 b .L128
2569 .LVL173:
2570 .L131:
1628:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2571 .loc 1 1628 3 is_stmt 0 view .LVU778
2572 00aa 0227 movs r7, #2
2573 00ac C2E7 b .L128
2574 .cfi_endproc
2575 .LFE155:
2577 .section .text.HAL_QSPI_MemoryMapped,"ax",%progbits
2578 .align 1
2579 .global HAL_QSPI_MemoryMapped
2580 .syntax unified
2581 .thumb
2582 .thumb_func
2583 .fpu fpv5-d16
2585 HAL_QSPI_MemoryMapped:
2586 .LVL174:
2587 .LFB156:
1696:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** HAL_StatusTypeDef status;
2588 .loc 1 1696 1 is_stmt 1 view -0
2589 .cfi_startproc
2590 @ args = 0, pretend = 0, frame = 0
2591 @ frame_needed = 0, uses_anonymous_args = 0
1696:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** HAL_StatusTypeDef status;
2592 .loc 1 1696 1 is_stmt 0 view .LVU780
2593 0000 F0B5 push {r4, r5, r6, r7, lr}
2594 .LCFI41:
2595 .cfi_def_cfa_offset 20
2596 .cfi_offset 4, -20
2597 .cfi_offset 5, -16
2598 .cfi_offset 6, -12
2599 .cfi_offset 7, -8
2600 .cfi_offset 14, -4
2601 0002 83B0 sub sp, sp, #12
2602 .LCFI42:
ARM GAS /tmp/ccNpZKQO.s page 105
2603 .cfi_def_cfa_offset 32
2604 0004 0446 mov r4, r0
2605 0006 0E46 mov r6, r1
2606 0008 1546 mov r5, r2
1697:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** uint32_t tickstart = HAL_GetTick();
2607 .loc 1 1697 3 is_stmt 1 view .LVU781
1698:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2608 .loc 1 1698 3 view .LVU782
1698:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2609 .loc 1 1698 24 is_stmt 0 view .LVU783
2610 000a FFF7FEFF bl HAL_GetTick
2611 .LVL175:
1701:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if (cmd->InstructionMode != QSPI_INSTRUCTION_NONE)
2612 .loc 1 1701 3 is_stmt 1 view .LVU784
1702:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
2613 .loc 1 1702 3 view .LVU785
1704:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
2614 .loc 1 1704 3 view .LVU786
1707:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if (cmd->AddressMode != QSPI_ADDRESS_NONE)
2615 .loc 1 1707 3 view .LVU787
1708:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
2616 .loc 1 1708 3 view .LVU788
1710:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
2617 .loc 1 1710 5 view .LVU789
1713:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if (cmd->AlternateByteMode != QSPI_ALTERNATE_BYTES_NONE)
2618 .loc 1 1713 3 view .LVU790
1714:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
2619 .loc 1 1714 3 view .LVU791
1716:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
2620 .loc 1 1716 5 view .LVU792
1719:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** assert_param(IS_QSPI_DATA_MODE(cmd->DataMode));
2621 .loc 1 1719 3 view .LVU793
1720:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2622 .loc 1 1720 3 view .LVU794
1722:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** assert_param(IS_QSPI_DDR_HHC(cmd->DdrHoldHalfCycle));
2623 .loc 1 1722 3 view .LVU795
1723:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** assert_param(IS_QSPI_SIOO_MODE(cmd->SIOOMode));
2624 .loc 1 1723 3 view .LVU796
1724:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2625 .loc 1 1724 3 view .LVU797
1726:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2626 .loc 1 1726 3 view .LVU798
1729:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2627 .loc 1 1729 3 view .LVU799
1729:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2628 .loc 1 1729 3 view .LVU800
2629 000e 94F840C0 ldrb ip, [r4, #64] @ zero_extendqisi2
2630 0012 5FFA8CFC uxtb ip, ip
2631 0016 BCF1010F cmp ip, #1
2632 001a 3BD0 beq .L139
1729:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2633 .loc 1 1729 3 discriminator 2 view .LVU801
2634 001c 0123 movs r3, #1
2635 001e 84F84030 strb r3, [r4, #64]
1729:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2636 .loc 1 1729 3 discriminator 2 view .LVU802
1731:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
ARM GAS /tmp/ccNpZKQO.s page 106
2637 .loc 1 1731 3 discriminator 2 view .LVU803
1731:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
2638 .loc 1 1731 11 is_stmt 0 discriminator 2 view .LVU804
2639 0022 94F841C0 ldrb ip, [r4, #65] @ zero_extendqisi2
2640 0026 5FFA8CFC uxtb ip, ip
1731:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
2641 .loc 1 1731 5 discriminator 2 view .LVU805
2642 002a 9C45 cmp ip, r3
2643 002c 06D0 beq .L142
1766:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
2644 .loc 1 1766 12 view .LVU806
2645 002e 0227 movs r7, #2
2646 .LVL176:
2647 .L137:
1770:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2648 .loc 1 1770 3 is_stmt 1 view .LVU807
1770:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2649 .loc 1 1770 3 view .LVU808
2650 0030 0023 movs r3, #0
2651 0032 84F84030 strb r3, [r4, #64]
1770:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2652 .loc 1 1770 3 view .LVU809
1773:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
2653 .loc 1 1773 3 view .LVU810
2654 .LVL177:
2655 .L136:
1774:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2656 .loc 1 1774 1 is_stmt 0 view .LVU811
2657 0036 3846 mov r0, r7
2658 0038 03B0 add sp, sp, #12
2659 .LCFI43:
2660 .cfi_remember_state
2661 .cfi_def_cfa_offset 20
2662 @ sp needed
2663 003a F0BD pop {r4, r5, r6, r7, pc}
2664 .LVL178:
2665 .L142:
2666 .LCFI44:
2667 .cfi_restore_state
1733:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2668 .loc 1 1733 5 is_stmt 1 view .LVU812
1733:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2669 .loc 1 1733 22 is_stmt 0 view .LVU813
2670 003c 0022 movs r2, #0
2671 003e 6264 str r2, [r4, #68]
1736:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2672 .loc 1 1736 5 is_stmt 1 view .LVU814
1736:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2673 .loc 1 1736 18 is_stmt 0 view .LVU815
2674 0040 8223 movs r3, #130
2675 0042 84F84130 strb r3, [r4, #65]
1739:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2676 .loc 1 1739 5 is_stmt 1 view .LVU816
1739:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2677 .loc 1 1739 14 is_stmt 0 view .LVU817
2678 0046 A36C ldr r3, [r4, #72]
2679 0048 0093 str r3, [sp]
ARM GAS /tmp/ccNpZKQO.s page 107
2680 004a 0346 mov r3, r0
2681 004c 2021 movs r1, #32
2682 004e 2046 mov r0, r4
2683 .LVL179:
1739:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2684 .loc 1 1739 14 view .LVU818
2685 0050 FFF7FEFF bl QSPI_WaitFlagStateUntilTimeout
2686 .LVL180:
1741:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
2687 .loc 1 1741 5 is_stmt 1 view .LVU819
1741:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
2688 .loc 1 1741 8 is_stmt 0 view .LVU820
2689 0054 0746 mov r7, r0
2690 0056 0028 cmp r0, #0
2691 0058 EAD1 bne .L137
1744:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2692 .loc 1 1744 5 is_stmt 1 view .LVU821
2693 005a 2268 ldr r2, [r4]
2694 005c 1368 ldr r3, [r2]
2695 005e 23F00803 bic r3, r3, #8
2696 0062 6968 ldr r1, [r5, #4]
2697 0064 0B43 orrs r3, r3, r1
2698 0066 1360 str r3, [r2]
1746:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
2699 .loc 1 1746 5 view .LVU822
1746:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
2700 .loc 1 1746 12 is_stmt 0 view .LVU823
2701 0068 6B68 ldr r3, [r5, #4]
1746:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
2702 .loc 1 1746 8 view .LVU824
2703 006a 082B cmp r3, #8
2704 006c 06D0 beq .L143
2705 .L138:
1761:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
2706 .loc 1 1761 7 is_stmt 1 view .LVU825
2707 006e 4FF04062 mov r2, #201326592
2708 0072 3146 mov r1, r6
2709 0074 2046 mov r0, r4
2710 .LVL181:
1761:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
2711 .loc 1 1761 7 is_stmt 0 view .LVU826
2712 0076 FFF7FEFF bl QSPI_Config
2713 .LVL182:
2714 007a D9E7 b .L137
2715 .LVL183:
2716 .L143:
1748:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2717 .loc 1 1748 9 is_stmt 1 view .LVU827
1751:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2718 .loc 1 1751 9 view .LVU828
2719 007c 2368 ldr r3, [r4]
2720 007e 2A68 ldr r2, [r5]
2721 0080 1A63 str r2, [r3, #48]
1754:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2722 .loc 1 1754 9 view .LVU829
2723 0082 2368 ldr r3, [r4]
2724 0084 1022 movs r2, #16
ARM GAS /tmp/ccNpZKQO.s page 108
2725 0086 DA60 str r2, [r3, #12]
1757:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
2726 .loc 1 1757 9 view .LVU830
2727 0088 2268 ldr r2, [r4]
2728 008a 1368 ldr r3, [r2]
2729 008c 43F48013 orr r3, r3, #1048576
2730 0090 1360 str r3, [r2]
2731 0092 ECE7 b .L138
2732 .LVL184:
2733 .L139:
1729:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2734 .loc 1 1729 3 is_stmt 0 view .LVU831
2735 0094 0227 movs r7, #2
2736 0096 CEE7 b .L136
2737 .cfi_endproc
2738 .LFE156:
2740 .section .text.HAL_QSPI_ErrorCallback,"ax",%progbits
2741 .align 1
2742 .weak HAL_QSPI_ErrorCallback
2743 .syntax unified
2744 .thumb
2745 .thumb_func
2746 .fpu fpv5-d16
2748 HAL_QSPI_ErrorCallback:
2749 .LVL185:
2750 .LFB157:
1782:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Prevent unused argument(s) compilation warning */
2751 .loc 1 1782 1 is_stmt 1 view -0
2752 .cfi_startproc
2753 @ args = 0, pretend = 0, frame = 0
2754 @ frame_needed = 0, uses_anonymous_args = 0
2755 @ link register save eliminated.
1784:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2756 .loc 1 1784 3 view .LVU833
1789:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2757 .loc 1 1789 1 is_stmt 0 view .LVU834
2758 0000 7047 bx lr
2759 .cfi_endproc
2760 .LFE157:
2762 .section .text.QSPI_DMAAbortCplt,"ax",%progbits
2763 .align 1
2764 .syntax unified
2765 .thumb
2766 .thumb_func
2767 .fpu fpv5-d16
2769 QSPI_DMAAbortCplt:
2770 .LVL186:
2771 .LFB176:
2413:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** QSPI_HandleTypeDef* hqspi = ( QSPI_HandleTypeDef* )(hmdma->Parent);
2772 .loc 1 2413 1 is_stmt 1 view -0
2773 .cfi_startproc
2774 @ args = 0, pretend = 0, frame = 0
2775 @ frame_needed = 0, uses_anonymous_args = 0
2413:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** QSPI_HandleTypeDef* hqspi = ( QSPI_HandleTypeDef* )(hmdma->Parent);
2776 .loc 1 2413 1 is_stmt 0 view .LVU836
2777 0000 08B5 push {r3, lr}
2778 .LCFI45:
ARM GAS /tmp/ccNpZKQO.s page 109
2779 .cfi_def_cfa_offset 8
2780 .cfi_offset 3, -8
2781 .cfi_offset 14, -4
2414:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2782 .loc 1 2414 3 is_stmt 1 view .LVU837
2414:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2783 .loc 1 2414 23 is_stmt 0 view .LVU838
2784 0002 006C ldr r0, [r0, #64]
2785 .LVL187:
2416:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->TxXferCount = 0U;
2786 .loc 1 2416 3 is_stmt 1 view .LVU839
2416:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->TxXferCount = 0U;
2787 .loc 1 2416 22 is_stmt 0 view .LVU840
2788 0004 0023 movs r3, #0
2789 0006 8363 str r3, [r0, #56]
2417:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2790 .loc 1 2417 3 is_stmt 1 view .LVU841
2417:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2791 .loc 1 2417 22 is_stmt 0 view .LVU842
2792 0008 C362 str r3, [r0, #44]
2419:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
2793 .loc 1 2419 3 is_stmt 1 view .LVU843
2419:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
2794 .loc 1 2419 11 is_stmt 0 view .LVU844
2795 000a 90F84130 ldrb r3, [r0, #65] @ zero_extendqisi2
2796 000e DBB2 uxtb r3, r3
2419:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
2797 .loc 1 2419 5 view .LVU845
2798 0010 082B cmp r3, #8
2799 0012 0DD1 bne .L146
2423:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2800 .loc 1 2423 5 is_stmt 1 view .LVU846
2801 0014 0368 ldr r3, [r0]
2802 0016 0222 movs r2, #2
2803 0018 DA60 str r2, [r3, #12]
2426:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2804 .loc 1 2426 5 view .LVU847
2805 001a 0268 ldr r2, [r0]
2806 001c 1368 ldr r3, [r2]
2807 001e 43F40033 orr r3, r3, #131072
2808 0022 1360 str r3, [r2]
2429:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
2809 .loc 1 2429 5 view .LVU848
2810 0024 0268 ldr r2, [r0]
2811 0026 1368 ldr r3, [r2]
2812 0028 43F00203 orr r3, r3, #2
2813 002c 1360 str r3, [r2]
2814 .LVL188:
2815 .L145:
2444:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2816 .loc 1 2444 1 is_stmt 0 view .LVU849
2817 002e 08BD pop {r3, pc}
2818 .LVL189:
2819 .L146:
2435:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2820 .loc 1 2435 5 is_stmt 1 view .LVU850
2435:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
ARM GAS /tmp/ccNpZKQO.s page 110
2821 .loc 1 2435 18 is_stmt 0 view .LVU851
2822 0030 0123 movs r3, #1
2823 0032 80F84130 strb r3, [r0, #65]
2441:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** #endif
2824 .loc 1 2441 5 is_stmt 1 view .LVU852
2825 0036 FFF7FEFF bl HAL_QSPI_ErrorCallback
2826 .LVL190:
2444:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2827 .loc 1 2444 1 is_stmt 0 view .LVU853
2828 003a F8E7 b .L145
2829 .cfi_endproc
2830 .LFE176:
2832 .section .text.HAL_QSPI_AbortCpltCallback,"ax",%progbits
2833 .align 1
2834 .weak HAL_QSPI_AbortCpltCallback
2835 .syntax unified
2836 .thumb
2837 .thumb_func
2838 .fpu fpv5-d16
2840 HAL_QSPI_AbortCpltCallback:
2841 .LVL191:
2842 .LFB158:
1797:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Prevent unused argument(s) compilation warning */
2843 .loc 1 1797 1 is_stmt 1 view -0
2844 .cfi_startproc
2845 @ args = 0, pretend = 0, frame = 0
2846 @ frame_needed = 0, uses_anonymous_args = 0
2847 @ link register save eliminated.
1799:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2848 .loc 1 1799 3 view .LVU855
1804:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2849 .loc 1 1804 1 is_stmt 0 view .LVU856
2850 0000 7047 bx lr
2851 .cfi_endproc
2852 .LFE158:
2854 .section .text.HAL_QSPI_CmdCpltCallback,"ax",%progbits
2855 .align 1
2856 .weak HAL_QSPI_CmdCpltCallback
2857 .syntax unified
2858 .thumb
2859 .thumb_func
2860 .fpu fpv5-d16
2862 HAL_QSPI_CmdCpltCallback:
2863 .LVL192:
2864 .LFB159:
1812:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Prevent unused argument(s) compilation warning */
2865 .loc 1 1812 1 is_stmt 1 view -0
2866 .cfi_startproc
2867 @ args = 0, pretend = 0, frame = 0
2868 @ frame_needed = 0, uses_anonymous_args = 0
2869 @ link register save eliminated.
1814:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2870 .loc 1 1814 3 view .LVU858
1819:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2871 .loc 1 1819 1 is_stmt 0 view .LVU859
2872 0000 7047 bx lr
2873 .cfi_endproc
ARM GAS /tmp/ccNpZKQO.s page 111
2874 .LFE159:
2876 .section .text.HAL_QSPI_RxCpltCallback,"ax",%progbits
2877 .align 1
2878 .weak HAL_QSPI_RxCpltCallback
2879 .syntax unified
2880 .thumb
2881 .thumb_func
2882 .fpu fpv5-d16
2884 HAL_QSPI_RxCpltCallback:
2885 .LVL193:
2886 .LFB160:
1827:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Prevent unused argument(s) compilation warning */
2887 .loc 1 1827 1 is_stmt 1 view -0
2888 .cfi_startproc
2889 @ args = 0, pretend = 0, frame = 0
2890 @ frame_needed = 0, uses_anonymous_args = 0
2891 @ link register save eliminated.
1829:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2892 .loc 1 1829 3 view .LVU861
1834:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2893 .loc 1 1834 1 is_stmt 0 view .LVU862
2894 0000 7047 bx lr
2895 .cfi_endproc
2896 .LFE160:
2898 .section .text.HAL_QSPI_TxCpltCallback,"ax",%progbits
2899 .align 1
2900 .weak HAL_QSPI_TxCpltCallback
2901 .syntax unified
2902 .thumb
2903 .thumb_func
2904 .fpu fpv5-d16
2906 HAL_QSPI_TxCpltCallback:
2907 .LVL194:
2908 .LFB161:
1842:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Prevent unused argument(s) compilation warning */
2909 .loc 1 1842 1 is_stmt 1 view -0
2910 .cfi_startproc
2911 @ args = 0, pretend = 0, frame = 0
2912 @ frame_needed = 0, uses_anonymous_args = 0
2913 @ link register save eliminated.
1844:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2914 .loc 1 1844 3 view .LVU864
1849:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2915 .loc 1 1849 1 is_stmt 0 view .LVU865
2916 0000 7047 bx lr
2917 .cfi_endproc
2918 .LFE161:
2920 .section .text.HAL_QSPI_FifoThresholdCallback,"ax",%progbits
2921 .align 1
2922 .weak HAL_QSPI_FifoThresholdCallback
2923 .syntax unified
2924 .thumb
2925 .thumb_func
2926 .fpu fpv5-d16
2928 HAL_QSPI_FifoThresholdCallback:
2929 .LVL195:
2930 .LFB162:
ARM GAS /tmp/ccNpZKQO.s page 112
1858:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Prevent unused argument(s) compilation warning */
2931 .loc 1 1858 1 is_stmt 1 view -0
2932 .cfi_startproc
2933 @ args = 0, pretend = 0, frame = 0
2934 @ frame_needed = 0, uses_anonymous_args = 0
2935 @ link register save eliminated.
1860:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2936 .loc 1 1860 3 view .LVU867
1865:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2937 .loc 1 1865 1 is_stmt 0 view .LVU868
2938 0000 7047 bx lr
2939 .cfi_endproc
2940 .LFE162:
2942 .section .text.HAL_QSPI_StatusMatchCallback,"ax",%progbits
2943 .align 1
2944 .weak HAL_QSPI_StatusMatchCallback
2945 .syntax unified
2946 .thumb
2947 .thumb_func
2948 .fpu fpv5-d16
2950 HAL_QSPI_StatusMatchCallback:
2951 .LVL196:
2952 .LFB163:
1873:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Prevent unused argument(s) compilation warning */
2953 .loc 1 1873 1 is_stmt 1 view -0
2954 .cfi_startproc
2955 @ args = 0, pretend = 0, frame = 0
2956 @ frame_needed = 0, uses_anonymous_args = 0
2957 @ link register save eliminated.
1875:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2958 .loc 1 1875 3 view .LVU870
1880:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2959 .loc 1 1880 1 is_stmt 0 view .LVU871
2960 0000 7047 bx lr
2961 .cfi_endproc
2962 .LFE163:
2964 .section .text.HAL_QSPI_TimeOutCallback,"ax",%progbits
2965 .align 1
2966 .weak HAL_QSPI_TimeOutCallback
2967 .syntax unified
2968 .thumb
2969 .thumb_func
2970 .fpu fpv5-d16
2972 HAL_QSPI_TimeOutCallback:
2973 .LVL197:
2974 .LFB164:
1888:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Prevent unused argument(s) compilation warning */
2975 .loc 1 1888 1 is_stmt 1 view -0
2976 .cfi_startproc
2977 @ args = 0, pretend = 0, frame = 0
2978 @ frame_needed = 0, uses_anonymous_args = 0
2979 @ link register save eliminated.
1890:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
2980 .loc 1 1890 3 view .LVU873
1895:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** #if (USE_HAL_QSPI_REGISTER_CALLBACKS == 1)
2981 .loc 1 1895 1 is_stmt 0 view .LVU874
2982 0000 7047 bx lr
ARM GAS /tmp/ccNpZKQO.s page 113
2983 .cfi_endproc
2984 .LFE164:
2986 .section .text.HAL_QSPI_IRQHandler,"ax",%progbits
2987 .align 1
2988 .global HAL_QSPI_IRQHandler
2989 .syntax unified
2990 .thumb
2991 .thumb_func
2992 .fpu fpv5-d16
2994 HAL_QSPI_IRQHandler:
2995 .LVL198:
2996 .LFB145:
493:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** __IO uint32_t *data_reg;
2997 .loc 1 493 1 is_stmt 1 view -0
2998 .cfi_startproc
2999 @ args = 0, pretend = 0, frame = 0
3000 @ frame_needed = 0, uses_anonymous_args = 0
493:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** __IO uint32_t *data_reg;
3001 .loc 1 493 1 is_stmt 0 view .LVU876
3002 0000 10B5 push {r4, lr}
3003 .LCFI46:
3004 .cfi_def_cfa_offset 8
3005 .cfi_offset 4, -8
3006 .cfi_offset 14, -4
3007 0002 0446 mov r4, r0
494:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** uint32_t flag = READ_REG(hqspi->Instance->SR);
3008 .loc 1 494 3 is_stmt 1 view .LVU877
495:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** uint32_t itsource = READ_REG(hqspi->Instance->CR);
3009 .loc 1 495 3 view .LVU878
495:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** uint32_t itsource = READ_REG(hqspi->Instance->CR);
3010 .loc 1 495 19 is_stmt 0 view .LVU879
3011 0004 0368 ldr r3, [r0]
495:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** uint32_t itsource = READ_REG(hqspi->Instance->CR);
3012 .loc 1 495 12 view .LVU880
3013 0006 9A68 ldr r2, [r3, #8]
3014 .LVL199:
496:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
3015 .loc 1 496 3 is_stmt 1 view .LVU881
496:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
3016 .loc 1 496 12 is_stmt 0 view .LVU882
3017 0008 1968 ldr r1, [r3]
3018 .LVL200:
499:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3019 .loc 1 499 3 is_stmt 1 view .LVU883
499:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3020 .loc 1 499 5 is_stmt 0 view .LVU884
3021 000a 12F0040F tst r2, #4
3022 000e 3FD0 beq .L157
499:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3023 .loc 1 499 36 discriminator 1 view .LVU885
3024 0010 11F4802F tst r1, #262144
3025 0014 3CD0 beq .L157
501:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
3026 .loc 1 501 5 is_stmt 1 view .LVU886
3027 .LVL201:
503:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3028 .loc 1 503 5 view .LVU887
ARM GAS /tmp/ccNpZKQO.s page 114
503:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3029 .loc 1 503 13 is_stmt 0 view .LVU888
3030 0016 90F84120 ldrb r2, [r0, #65] @ zero_extendqisi2
3031 .LVL202:
503:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3032 .loc 1 503 13 view .LVU889
3033 001a D2B2 uxtb r2, r2
503:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3034 .loc 1 503 7 view .LVU890
3035 001c 122A cmp r2, #18
3036 001e 12D0 beq .L158
524:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3037 .loc 1 524 10 is_stmt 1 view .LVU891
524:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3038 .loc 1 524 18 is_stmt 0 view .LVU892
3039 0020 90F84120 ldrb r2, [r0, #65] @ zero_extendqisi2
3040 0024 D2B2 uxtb r2, r2
524:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3041 .loc 1 524 12 view .LVU893
3042 0026 222A cmp r2, #34
3043 0028 1FD0 beq .L163
3044 .LVL203:
3045 .L161:
548:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
3046 .loc 1 548 5 is_stmt 1 view .LVU894
554:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** #endif
3047 .loc 1 554 5 view .LVU895
3048 002a 2046 mov r0, r4
3049 .LVL204:
554:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** #endif
3050 .loc 1 554 5 is_stmt 0 view .LVU896
3051 002c FFF7FEFF bl HAL_QSPI_FifoThresholdCallback
3052 .LVL205:
3053 .L156:
771:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
3054 .loc 1 771 1 view .LVU897
3055 0030 10BD pop {r4, pc}
3056 .LVL206:
3057 .L182:
511:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->pTxBuffPtr++;
3058 .loc 1 511 11 is_stmt 1 view .LVU898
511:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->pTxBuffPtr++;
3059 .loc 1 511 47 is_stmt 0 view .LVU899
3060 0032 626A ldr r2, [r4, #36]
511:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->pTxBuffPtr++;
3061 .loc 1 511 41 view .LVU900
3062 0034 1278 ldrb r2, [r2] @ zero_extendqisi2
511:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->pTxBuffPtr++;
3063 .loc 1 511 39 view .LVU901
3064 0036 83F82020 strb r2, [r3, #32]
512:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->TxXferCount--;
3065 .loc 1 512 11 is_stmt 1 view .LVU902
512:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->TxXferCount--;
3066 .loc 1 512 16 is_stmt 0 view .LVU903
3067 003a 626A ldr r2, [r4, #36]
512:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->TxXferCount--;
3068 .loc 1 512 28 view .LVU904
ARM GAS /tmp/ccNpZKQO.s page 115
3069 003c 0132 adds r2, r2, #1
3070 003e 6262 str r2, [r4, #36]
513:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
3071 .loc 1 513 11 is_stmt 1 view .LVU905
513:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
3072 .loc 1 513 16 is_stmt 0 view .LVU906
3073 0040 E26A ldr r2, [r4, #44]
513:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
3074 .loc 1 513 29 view .LVU907
3075 0042 013A subs r2, r2, #1
3076 0044 E262 str r2, [r4, #44]
3077 .L158:
506:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3078 .loc 1 506 12 is_stmt 1 view .LVU908
506:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3079 .loc 1 506 13 is_stmt 0 view .LVU909
3080 0046 2268 ldr r2, [r4]
3081 0048 9168 ldr r1, [r2, #8]
506:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3082 .loc 1 506 12 view .LVU910
3083 004a 11F0040F tst r1, #4
3084 004e ECD0 beq .L161
508:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3085 .loc 1 508 9 is_stmt 1 view .LVU911
508:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3086 .loc 1 508 18 is_stmt 0 view .LVU912
3087 0050 E16A ldr r1, [r4, #44]
508:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3088 .loc 1 508 12 view .LVU913
3089 0052 0029 cmp r1, #0
3090 0054 EDD1 bne .L182
519:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** break;
3091 .loc 1 519 11 is_stmt 1 view .LVU914
3092 0056 1368 ldr r3, [r2]
3093 .LVL207:
519:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** break;
3094 .loc 1 519 11 is_stmt 0 view .LVU915
3095 0058 23F48023 bic r3, r3, #262144
3096 005c 1360 str r3, [r2]
520:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
3097 .loc 1 520 11 is_stmt 1 view .LVU916
3098 005e E4E7 b .L161
3099 .LVL208:
3100 .L164:
540:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** break;
3101 .loc 1 540 11 view .LVU917
3102 0060 1368 ldr r3, [r2]
3103 .LVL209:
540:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** break;
3104 .loc 1 540 11 is_stmt 0 view .LVU918
3105 0062 23F48023 bic r3, r3, #262144
3106 0066 1360 str r3, [r2]
541:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
3107 .loc 1 541 11 is_stmt 1 view .LVU919
3108 0068 DFE7 b .L161
3109 .LVL210:
3110 .L163:
ARM GAS /tmp/ccNpZKQO.s page 116
527:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3111 .loc 1 527 12 view .LVU920
527:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3112 .loc 1 527 13 is_stmt 0 view .LVU921
3113 006a 2268 ldr r2, [r4]
3114 006c 9168 ldr r1, [r2, #8]
527:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3115 .loc 1 527 12 view .LVU922
3116 006e 11F0040F tst r1, #4
3117 0072 DAD0 beq .L161
529:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3118 .loc 1 529 9 is_stmt 1 view .LVU923
529:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3119 .loc 1 529 18 is_stmt 0 view .LVU924
3120 0074 A16B ldr r1, [r4, #56]
529:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3121 .loc 1 529 12 view .LVU925
3122 0076 0029 cmp r1, #0
3123 0078 F2D0 beq .L164
532:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->pRxBuffPtr++;
3124 .loc 1 532 11 is_stmt 1 view .LVU926
532:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->pRxBuffPtr++;
3125 .loc 1 532 17 is_stmt 0 view .LVU927
3126 007a 226B ldr r2, [r4, #48]
532:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->pRxBuffPtr++;
3127 .loc 1 532 32 view .LVU928
3128 007c 93F82010 ldrb r1, [r3, #32] @ zero_extendqisi2
532:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->pRxBuffPtr++;
3129 .loc 1 532 30 view .LVU929
3130 0080 1170 strb r1, [r2]
533:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->RxXferCount--;
3131 .loc 1 533 11 is_stmt 1 view .LVU930
533:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->RxXferCount--;
3132 .loc 1 533 16 is_stmt 0 view .LVU931
3133 0082 226B ldr r2, [r4, #48]
533:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->RxXferCount--;
3134 .loc 1 533 28 view .LVU932
3135 0084 0132 adds r2, r2, #1
3136 0086 2263 str r2, [r4, #48]
534:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
3137 .loc 1 534 11 is_stmt 1 view .LVU933
534:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
3138 .loc 1 534 16 is_stmt 0 view .LVU934
3139 0088 A26B ldr r2, [r4, #56]
534:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
3140 .loc 1 534 29 view .LVU935
3141 008a 013A subs r2, r2, #1
3142 008c A263 str r2, [r4, #56]
3143 008e ECE7 b .L163
3144 .LVL211:
3145 .L157:
559:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3146 .loc 1 559 8 is_stmt 1 view .LVU936
559:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3147 .loc 1 559 10 is_stmt 0 view .LVU937
3148 0090 12F0020F tst r2, #2
3149 0094 76D0 beq .L167
ARM GAS /tmp/ccNpZKQO.s page 117
559:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3150 .loc 1 559 41 discriminator 1 view .LVU938
3151 0096 11F4003F tst r1, #131072
3152 009a 73D0 beq .L167
562:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
3153 .loc 1 562 5 is_stmt 1 view .LVU939
3154 009c 0222 movs r2, #2
3155 .LVL212:
562:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
3156 .loc 1 562 5 is_stmt 0 view .LVU940
3157 009e DA60 str r2, [r3, #12]
565:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
3158 .loc 1 565 5 is_stmt 1 view .LVU941
3159 00a0 2268 ldr r2, [r4]
3160 00a2 1368 ldr r3, [r2]
3161 00a4 23F4E023 bic r3, r3, #458752
3162 00a8 1360 str r3, [r2]
568:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3163 .loc 1 568 5 view .LVU942
568:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3164 .loc 1 568 13 is_stmt 0 view .LVU943
3165 00aa 94F84130 ldrb r3, [r4, #65] @ zero_extendqisi2
3166 00ae DBB2 uxtb r3, r3
568:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3167 .loc 1 568 7 view .LVU944
3168 00b0 122B cmp r3, #18
3169 00b2 1DD0 beq .L183
590:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3170 .loc 1 590 10 is_stmt 1 view .LVU945
590:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3171 .loc 1 590 18 is_stmt 0 view .LVU946
3172 00b4 94F84130 ldrb r3, [r4, #65] @ zero_extendqisi2
3173 00b8 DBB2 uxtb r3, r3
590:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3174 .loc 1 590 12 view .LVU947
3175 00ba 222B cmp r3, #34
3176 00bc 2ED0 beq .L184
631:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3177 .loc 1 631 10 is_stmt 1 view .LVU948
631:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3178 .loc 1 631 18 is_stmt 0 view .LVU949
3179 00be 94F84130 ldrb r3, [r4, #65] @ zero_extendqisi2
3180 00c2 DBB2 uxtb r3, r3
631:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3181 .loc 1 631 12 view .LVU950
3182 00c4 022B cmp r3, #2
3183 00c6 52D0 beq .L185
643:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3184 .loc 1 643 10 is_stmt 1 view .LVU951
643:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3185 .loc 1 643 18 is_stmt 0 view .LVU952
3186 00c8 94F84130 ldrb r3, [r4, #65] @ zero_extendqisi2
3187 00cc DBB2 uxtb r3, r3
643:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3188 .loc 1 643 12 view .LVU953
3189 00ce 082B cmp r3, #8
3190 00d0 AED1 bne .L156
ARM GAS /tmp/ccNpZKQO.s page 118
646:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
3191 .loc 1 646 7 is_stmt 1 view .LVU954
3192 00d2 2268 ldr r2, [r4]
3193 00d4 5369 ldr r3, [r2, #20]
3194 00d6 23F04063 bic r3, r3, #201326592
3195 00da 5361 str r3, [r2, #20]
649:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
3196 .loc 1 649 7 view .LVU955
649:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
3197 .loc 1 649 20 is_stmt 0 view .LVU956
3198 00dc 0123 movs r3, #1
3199 00de 84F84130 strb r3, [r4, #65]
651:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3200 .loc 1 651 7 is_stmt 1 view .LVU957
651:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3201 .loc 1 651 16 is_stmt 0 view .LVU958
3202 00e2 636C ldr r3, [r4, #68]
651:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3203 .loc 1 651 10 view .LVU959
3204 00e4 002B cmp r3, #0
3205 00e6 49D1 bne .L175
659:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** #endif
3206 .loc 1 659 9 is_stmt 1 view .LVU960
3207 00e8 2046 mov r0, r4
3208 .LVL213:
659:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** #endif
3209 .loc 1 659 9 is_stmt 0 view .LVU961
3210 00ea FFF7FEFF bl HAL_QSPI_AbortCpltCallback
3211 .LVL214:
659:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** #endif
3212 .loc 1 659 9 view .LVU962
3213 00ee 9FE7 b .L156
3214 .LVL215:
3215 .L183:
570:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3216 .loc 1 570 7 is_stmt 1 view .LVU963
570:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3217 .loc 1 570 17 is_stmt 0 view .LVU964
3218 00f0 2368 ldr r3, [r4]
570:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3219 .loc 1 570 27 view .LVU965
3220 00f2 1A68 ldr r2, [r3]
570:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3221 .loc 1 570 10 view .LVU966
3222 00f4 12F0040F tst r2, #4
3223 00f8 09D0 beq .L169
573:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
3224 .loc 1 573 9 is_stmt 1 view .LVU967
3225 00fa 1A68 ldr r2, [r3]
3226 00fc 22F00402 bic r2, r2, #4
3227 0100 1A60 str r2, [r3]
576:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
3228 .loc 1 576 9 view .LVU968
3229 0102 E36B ldr r3, [r4, #60]
3230 0104 1A68 ldr r2, [r3]
3231 0106 D368 ldr r3, [r2, #12]
3232 0108 23F00103 bic r3, r3, #1
ARM GAS /tmp/ccNpZKQO.s page 119
3233 010c D360 str r3, [r2, #12]
3234 .L169:
581:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
3235 .loc 1 581 7 view .LVU969
581:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
3236 .loc 1 581 20 is_stmt 0 view .LVU970
3237 010e 0123 movs r3, #1
3238 0110 84F84130 strb r3, [r4, #65]
587:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** #endif
3239 .loc 1 587 7 is_stmt 1 view .LVU971
3240 0114 2046 mov r0, r4
3241 .LVL216:
587:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** #endif
3242 .loc 1 587 7 is_stmt 0 view .LVU972
3243 0116 FFF7FEFF bl HAL_QSPI_TxCpltCallback
3244 .LVL217:
587:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** #endif
3245 .loc 1 587 7 view .LVU973
3246 011a 89E7 b .L156
3247 .LVL218:
3248 .L184:
592:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3249 .loc 1 592 7 is_stmt 1 view .LVU974
592:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3250 .loc 1 592 17 is_stmt 0 view .LVU975
3251 011c 2168 ldr r1, [r4]
3252 .LVL219:
592:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3253 .loc 1 592 27 view .LVU976
3254 011e 0B68 ldr r3, [r1]
592:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3255 .loc 1 592 10 view .LVU977
3256 0120 13F0040F tst r3, #4
3257 0124 10D0 beq .L171
595:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
3258 .loc 1 595 9 is_stmt 1 view .LVU978
3259 0126 0B68 ldr r3, [r1]
3260 0128 23F00403 bic r3, r3, #4
3261 012c 0B60 str r3, [r1]
598:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
3262 .loc 1 598 9 view .LVU979
3263 012e E36B ldr r3, [r4, #60]
3264 0130 1A68 ldr r2, [r3]
3265 0132 D368 ldr r3, [r2, #12]
3266 0134 23F00103 bic r3, r3, #1
3267 0138 D360 str r3, [r2, #12]
3268 .L172:
622:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
3269 .loc 1 622 7 view .LVU980
622:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
3270 .loc 1 622 20 is_stmt 0 view .LVU981
3271 013a 0123 movs r3, #1
3272 013c 84F84130 strb r3, [r4, #65]
628:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** #endif
3273 .loc 1 628 7 is_stmt 1 view .LVU982
3274 0140 2046 mov r0, r4
3275 .LVL220:
ARM GAS /tmp/ccNpZKQO.s page 120
628:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** #endif
3276 .loc 1 628 7 is_stmt 0 view .LVU983
3277 0142 FFF7FEFF bl HAL_QSPI_RxCpltCallback
3278 .LVL221:
3279 0146 73E7 b .L156
3280 .LVL222:
3281 .L171:
603:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3282 .loc 1 603 14 is_stmt 1 view .LVU984
603:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3283 .loc 1 603 15 is_stmt 0 view .LVU985
3284 0148 2368 ldr r3, [r4]
3285 014a 9B68 ldr r3, [r3, #8]
603:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3286 .loc 1 603 14 view .LVU986
3287 014c 13F47C5F tst r3, #16128
3288 0150 F3D0 beq .L172
605:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3289 .loc 1 605 11 is_stmt 1 view .LVU987
605:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3290 .loc 1 605 20 is_stmt 0 view .LVU988
3291 0152 A36B ldr r3, [r4, #56]
605:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3292 .loc 1 605 14 view .LVU989
3293 0154 002B cmp r3, #0
3294 0156 F0D0 beq .L172
608:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->pRxBuffPtr++;
3295 .loc 1 608 13 is_stmt 1 view .LVU990
608:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->pRxBuffPtr++;
3296 .loc 1 608 19 is_stmt 0 view .LVU991
3297 0158 236B ldr r3, [r4, #48]
608:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->pRxBuffPtr++;
3298 .loc 1 608 34 view .LVU992
3299 015a 91F82020 ldrb r2, [r1, #32] @ zero_extendqisi2
608:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->pRxBuffPtr++;
3300 .loc 1 608 32 view .LVU993
3301 015e 1A70 strb r2, [r3]
609:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->RxXferCount--;
3302 .loc 1 609 13 is_stmt 1 view .LVU994
609:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->RxXferCount--;
3303 .loc 1 609 18 is_stmt 0 view .LVU995
3304 0160 236B ldr r3, [r4, #48]
609:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->RxXferCount--;
3305 .loc 1 609 30 view .LVU996
3306 0162 0133 adds r3, r3, #1
3307 0164 2363 str r3, [r4, #48]
610:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
3308 .loc 1 610 13 is_stmt 1 view .LVU997
610:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
3309 .loc 1 610 18 is_stmt 0 view .LVU998
3310 0166 A36B ldr r3, [r4, #56]
610:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
3311 .loc 1 610 31 view .LVU999
3312 0168 013B subs r3, r3, #1
3313 016a A363 str r3, [r4, #56]
3314 016c ECE7 b .L171
3315 .LVL223:
ARM GAS /tmp/ccNpZKQO.s page 121
3316 .L185:
634:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
3317 .loc 1 634 7 is_stmt 1 view .LVU1000
634:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
3318 .loc 1 634 20 is_stmt 0 view .LVU1001
3319 016e 0123 movs r3, #1
3320 0170 84F84130 strb r3, [r4, #65]
640:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** #endif
3321 .loc 1 640 7 is_stmt 1 view .LVU1002
3322 0174 2046 mov r0, r4
3323 .LVL224:
640:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** #endif
3324 .loc 1 640 7 is_stmt 0 view .LVU1003
3325 0176 FFF7FEFF bl HAL_QSPI_CmdCpltCallback
3326 .LVL225:
640:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** #endif
3327 .loc 1 640 7 view .LVU1004
3328 017a 59E7 b .L156
3329 .LVL226:
3330 .L175:
670:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** #endif
3331 .loc 1 670 9 is_stmt 1 view .LVU1005
3332 017c 2046 mov r0, r4
3333 .LVL227:
670:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** #endif
3334 .loc 1 670 9 is_stmt 0 view .LVU1006
3335 017e FFF7FEFF bl HAL_QSPI_ErrorCallback
3336 .LVL228:
670:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** #endif
3337 .loc 1 670 9 view .LVU1007
3338 0182 55E7 b .L156
3339 .LVL229:
3340 .L167:
681:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3341 .loc 1 681 8 is_stmt 1 view .LVU1008
681:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3342 .loc 1 681 10 is_stmt 0 view .LVU1009
3343 0184 12F0080F tst r2, #8
3344 0188 14D0 beq .L176
681:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3345 .loc 1 681 41 discriminator 1 view .LVU1010
3346 018a 11F4002F tst r1, #524288
3347 018e 11D0 beq .L176
684:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
3348 .loc 1 684 5 is_stmt 1 view .LVU1011
3349 0190 0822 movs r2, #8
3350 .LVL230:
684:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
3351 .loc 1 684 5 is_stmt 0 view .LVU1012
3352 0192 DA60 str r2, [r3, #12]
687:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3353 .loc 1 687 5 is_stmt 1 view .LVU1013
687:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3354 .loc 1 687 8 is_stmt 0 view .LVU1014
3355 0194 2368 ldr r3, [r4]
3356 0196 1A68 ldr r2, [r3]
687:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
ARM GAS /tmp/ccNpZKQO.s page 122
3357 .loc 1 687 7 view .LVU1015
3358 0198 12F4800F tst r2, #4194304
3359 019c 06D0 beq .L177
690:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
3360 .loc 1 690 7 is_stmt 1 view .LVU1016
3361 019e 1A68 ldr r2, [r3]
3362 01a0 22F41022 bic r2, r2, #589824
3363 01a4 1A60 str r2, [r3]
693:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
3364 .loc 1 693 7 view .LVU1017
693:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
3365 .loc 1 693 20 is_stmt 0 view .LVU1018
3366 01a6 0123 movs r3, #1
3367 01a8 84F84130 strb r3, [r4, #65]
3368 .L177:
700:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** #endif
3369 .loc 1 700 5 is_stmt 1 view .LVU1019
3370 01ac 2046 mov r0, r4
3371 .LVL231:
700:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** #endif
3372 .loc 1 700 5 is_stmt 0 view .LVU1020
3373 01ae FFF7FEFF bl HAL_QSPI_StatusMatchCallback
3374 .LVL232:
700:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** #endif
3375 .loc 1 700 5 view .LVU1021
3376 01b2 3DE7 b .L156
3377 .LVL233:
3378 .L176:
705:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3379 .loc 1 705 8 is_stmt 1 view .LVU1022
705:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3380 .loc 1 705 10 is_stmt 0 view .LVU1023
3381 01b4 12F0010F tst r2, #1
3382 01b8 31D0 beq .L178
705:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3383 .loc 1 705 41 discriminator 1 view .LVU1024
3384 01ba 11F4803F tst r1, #65536
3385 01be 2ED0 beq .L178
708:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
3386 .loc 1 708 5 is_stmt 1 view .LVU1025
3387 01c0 0122 movs r2, #1
3388 .LVL234:
708:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
3389 .loc 1 708 5 is_stmt 0 view .LVU1026
3390 01c2 DA60 str r2, [r3, #12]
711:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
3391 .loc 1 711 5 is_stmt 1 view .LVU1027
3392 01c4 2268 ldr r2, [r4]
3393 01c6 1368 ldr r3, [r2]
3394 01c8 23F47023 bic r3, r3, #983040
3395 01cc 1360 str r3, [r2]
714:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
3396 .loc 1 714 5 view .LVU1028
714:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
3397 .loc 1 714 22 is_stmt 0 view .LVU1029
3398 01ce 636C ldr r3, [r4, #68]
3399 01d0 43F00203 orr r3, r3, #2
ARM GAS /tmp/ccNpZKQO.s page 123
3400 01d4 6364 str r3, [r4, #68]
716:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3401 .loc 1 716 5 is_stmt 1 view .LVU1030
716:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3402 .loc 1 716 15 is_stmt 0 view .LVU1031
3403 01d6 2368 ldr r3, [r4]
716:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3404 .loc 1 716 25 view .LVU1032
3405 01d8 1A68 ldr r2, [r3]
716:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3406 .loc 1 716 8 view .LVU1033
3407 01da 12F0040F tst r2, #4
3408 01de 17D0 beq .L179
719:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
3409 .loc 1 719 7 is_stmt 1 view .LVU1034
3410 01e0 1A68 ldr r2, [r3]
3411 01e2 22F00402 bic r2, r2, #4
3412 01e6 1A60 str r2, [r3]
722:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if (HAL_MDMA_Abort_IT(hqspi->hmdma) != HAL_OK)
3413 .loc 1 722 7 view .LVU1035
722:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if (HAL_MDMA_Abort_IT(hqspi->hmdma) != HAL_OK)
3414 .loc 1 722 12 is_stmt 0 view .LVU1036
3415 01e8 E36B ldr r3, [r4, #60]
722:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if (HAL_MDMA_Abort_IT(hqspi->hmdma) != HAL_OK)
3416 .loc 1 722 39 view .LVU1037
3417 01ea 144A ldr r2, .L186
3418 01ec 9A65 str r2, [r3, #88]
723:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3419 .loc 1 723 7 is_stmt 1 view .LVU1038
723:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3420 .loc 1 723 11 is_stmt 0 view .LVU1039
3421 01ee E06B ldr r0, [r4, #60]
3422 .LVL235:
723:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3423 .loc 1 723 11 view .LVU1040
3424 01f0 FFF7FEFF bl HAL_MDMA_Abort_IT
3425 .LVL236:
723:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3426 .loc 1 723 10 view .LVU1041
3427 01f4 0028 cmp r0, #0
3428 01f6 3FF41BAF beq .L156
726:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
3429 .loc 1 726 9 is_stmt 1 view .LVU1042
726:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
3430 .loc 1 726 26 is_stmt 0 view .LVU1043
3431 01fa 636C ldr r3, [r4, #68]
3432 01fc 43F00403 orr r3, r3, #4
3433 0200 6364 str r3, [r4, #68]
729:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
3434 .loc 1 729 9 is_stmt 1 view .LVU1044
729:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
3435 .loc 1 729 22 is_stmt 0 view .LVU1045
3436 0202 0123 movs r3, #1
3437 0204 84F84130 strb r3, [r4, #65]
735:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** #endif
3438 .loc 1 735 9 is_stmt 1 view .LVU1046
3439 0208 2046 mov r0, r4
ARM GAS /tmp/ccNpZKQO.s page 124
3440 020a FFF7FEFF bl HAL_QSPI_ErrorCallback
3441 .LVL237:
3442 020e 0FE7 b .L156
3443 .LVL238:
3444 .L179:
742:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
3445 .loc 1 742 7 view .LVU1047
742:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
3446 .loc 1 742 20 is_stmt 0 view .LVU1048
3447 0210 0123 movs r3, #1
3448 0212 84F84130 strb r3, [r4, #65]
748:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** #endif
3449 .loc 1 748 7 is_stmt 1 view .LVU1049
3450 0216 2046 mov r0, r4
3451 .LVL239:
748:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** #endif
3452 .loc 1 748 7 is_stmt 0 view .LVU1050
3453 0218 FFF7FEFF bl HAL_QSPI_ErrorCallback
3454 .LVL240:
748:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** #endif
3455 .loc 1 748 7 view .LVU1051
3456 021c 08E7 b .L156
3457 .LVL241:
3458 .L178:
754:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3459 .loc 1 754 8 is_stmt 1 view .LVU1052
754:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3460 .loc 1 754 10 is_stmt 0 view .LVU1053
3461 021e 12F0100F tst r2, #16
3462 0222 3FF405AF beq .L156
754:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3463 .loc 1 754 41 discriminator 1 view .LVU1054
3464 0226 11F4801F tst r1, #1048576
3465 022a 3FF401AF beq .L156
757:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
3466 .loc 1 757 5 is_stmt 1 view .LVU1055
3467 022e 1022 movs r2, #16
3468 .LVL242:
757:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
3469 .loc 1 757 5 is_stmt 0 view .LVU1056
3470 0230 DA60 str r2, [r3, #12]
763:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** #endif
3471 .loc 1 763 5 is_stmt 1 view .LVU1057
3472 0232 2046 mov r0, r4
3473 .LVL243:
763:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** #endif
3474 .loc 1 763 5 is_stmt 0 view .LVU1058
3475 0234 FFF7FEFF bl HAL_QSPI_TimeOutCallback
3476 .LVL244:
770:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
3477 .loc 1 770 3 is_stmt 1 view .LVU1059
771:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
3478 .loc 1 771 1 is_stmt 0 view .LVU1060
3479 0238 FAE6 b .L156
3480 .L187:
3481 023a 00BF .align 2
3482 .L186:
ARM GAS /tmp/ccNpZKQO.s page 125
3483 023c 00000000 .word QSPI_DMAAbortCplt
3484 .cfi_endproc
3485 .LFE145:
3487 .section .text.HAL_QSPI_GetState,"ax",%progbits
3488 .align 1
3489 .global HAL_QSPI_GetState
3490 .syntax unified
3491 .thumb
3492 .thumb_func
3493 .fpu fpv5-d16
3495 HAL_QSPI_GetState:
3496 .LVL245:
3497 .LFB165:
2130:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** /* Return QSPI handle state */
3498 .loc 1 2130 1 is_stmt 1 view -0
3499 .cfi_startproc
3500 @ args = 0, pretend = 0, frame = 0
3501 @ frame_needed = 0, uses_anonymous_args = 0
3502 @ link register save eliminated.
2132:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
3503 .loc 1 2132 3 view .LVU1062
2132:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
3504 .loc 1 2132 15 is_stmt 0 view .LVU1063
3505 0000 90F84100 ldrb r0, [r0, #65] @ zero_extendqisi2
3506 .LVL246:
2133:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
3507 .loc 1 2133 1 view .LVU1064
3508 0004 7047 bx lr
3509 .cfi_endproc
3510 .LFE165:
3512 .section .text.HAL_QSPI_GetError,"ax",%progbits
3513 .align 1
3514 .global HAL_QSPI_GetError
3515 .syntax unified
3516 .thumb
3517 .thumb_func
3518 .fpu fpv5-d16
3520 HAL_QSPI_GetError:
3521 .LVL247:
3522 .LFB166:
2141:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** return hqspi->ErrorCode;
3523 .loc 1 2141 1 is_stmt 1 view -0
3524 .cfi_startproc
3525 @ args = 0, pretend = 0, frame = 0
3526 @ frame_needed = 0, uses_anonymous_args = 0
3527 @ link register save eliminated.
2142:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
3528 .loc 1 2142 3 view .LVU1066
2142:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
3529 .loc 1 2142 15 is_stmt 0 view .LVU1067
3530 0000 406C ldr r0, [r0, #68]
3531 .LVL248:
2143:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
3532 .loc 1 2143 1 view .LVU1068
3533 0002 7047 bx lr
3534 .cfi_endproc
3535 .LFE166:
ARM GAS /tmp/ccNpZKQO.s page 126
3537 .section .text.HAL_QSPI_Abort,"ax",%progbits
3538 .align 1
3539 .global HAL_QSPI_Abort
3540 .syntax unified
3541 .thumb
3542 .thumb_func
3543 .fpu fpv5-d16
3545 HAL_QSPI_Abort:
3546 .LVL249:
3547 .LFB167:
2151:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** HAL_StatusTypeDef status = HAL_OK;
3548 .loc 1 2151 1 is_stmt 1 view -0
3549 .cfi_startproc
3550 @ args = 0, pretend = 0, frame = 0
3551 @ frame_needed = 0, uses_anonymous_args = 0
2151:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** HAL_StatusTypeDef status = HAL_OK;
3552 .loc 1 2151 1 is_stmt 0 view .LVU1070
3553 0000 30B5 push {r4, r5, lr}
3554 .LCFI47:
3555 .cfi_def_cfa_offset 12
3556 .cfi_offset 4, -12
3557 .cfi_offset 5, -8
3558 .cfi_offset 14, -4
3559 0002 83B0 sub sp, sp, #12
3560 .LCFI48:
3561 .cfi_def_cfa_offset 24
3562 0004 0446 mov r4, r0
2152:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** uint32_t tickstart = HAL_GetTick();
3563 .loc 1 2152 3 is_stmt 1 view .LVU1071
3564 .LVL250:
2153:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
3565 .loc 1 2153 3 view .LVU1072
2153:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
3566 .loc 1 2153 24 is_stmt 0 view .LVU1073
3567 0006 FFF7FEFF bl HAL_GetTick
3568 .LVL251:
2153:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
3569 .loc 1 2153 24 view .LVU1074
3570 000a 0546 mov r5, r0
3571 .LVL252:
2156:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3572 .loc 1 2156 3 is_stmt 1 view .LVU1075
2156:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3573 .loc 1 2156 23 is_stmt 0 view .LVU1076
3574 000c 94F84120 ldrb r2, [r4, #65] @ zero_extendqisi2
2156:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3575 .loc 1 2156 6 view .LVU1077
3576 0010 12F00200 ands r0, r2, #2
3577 .LVL253:
2156:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3578 .loc 1 2156 6 view .LVU1078
3579 0014 1ED0 beq .L191
2159:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
3580 .loc 1 2159 5 is_stmt 1 view .LVU1079
2159:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
3581 .loc 1 2159 5 view .LVU1080
3582 0016 0023 movs r3, #0
ARM GAS /tmp/ccNpZKQO.s page 127
3583 0018 84F84030 strb r3, [r4, #64]
2159:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
3584 .loc 1 2159 5 view .LVU1081
2161:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3585 .loc 1 2161 5 view .LVU1082
2161:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3586 .loc 1 2161 15 is_stmt 0 view .LVU1083
3587 001c 2368 ldr r3, [r4]
2161:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3588 .loc 1 2161 25 view .LVU1084
3589 001e 1A68 ldr r2, [r3]
2161:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3590 .loc 1 2161 8 view .LVU1085
3591 0020 12F0040F tst r2, #4
3592 0024 18D1 bne .L195
3593 .LVL254:
3594 .L192:
2175:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
3595 .loc 1 2175 5 is_stmt 1 view .LVU1086
3596 0026 2368 ldr r3, [r4]
3597 0028 1A68 ldr r2, [r3]
3598 002a 42F00202 orr r2, r2, #2
3599 002e 1A60 str r2, [r3]
2178:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
3600 .loc 1 2178 5 view .LVU1087
2178:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
3601 .loc 1 2178 14 is_stmt 0 view .LVU1088
3602 0030 A36C ldr r3, [r4, #72]
3603 0032 0093 str r3, [sp]
3604 0034 2B46 mov r3, r5
3605 0036 0122 movs r2, #1
3606 0038 0221 movs r1, #2
3607 003a 2046 mov r0, r4
3608 003c FFF7FEFF bl QSPI_WaitFlagStateUntilTimeout
3609 .LVL255:
2180:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3610 .loc 1 2180 5 is_stmt 1 view .LVU1089
2180:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3611 .loc 1 2180 8 is_stmt 0 view .LVU1090
3612 0040 C0B1 cbz r0, .L196
3613 .L193:
2188:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3614 .loc 1 2188 5 is_stmt 1 view .LVU1091
2188:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3615 .loc 1 2188 8 is_stmt 0 view .LVU1092
3616 0042 38B9 cbnz r0, .L191
2191:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
3617 .loc 1 2191 7 is_stmt 1 view .LVU1093
3618 0044 2268 ldr r2, [r4]
3619 0046 5369 ldr r3, [r2, #20]
3620 0048 23F04063 bic r3, r3, #201326592
3621 004c 5361 str r3, [r2, #20]
2194:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
3622 .loc 1 2194 7 view .LVU1094
2194:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
3623 .loc 1 2194 20 is_stmt 0 view .LVU1095
3624 004e 0123 movs r3, #1
ARM GAS /tmp/ccNpZKQO.s page 128
3625 0050 84F84130 strb r3, [r4, #65]
3626 .LVL256:
3627 .L191:
2198:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
3628 .loc 1 2198 3 is_stmt 1 view .LVU1096
2199:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
3629 .loc 1 2199 1 is_stmt 0 view .LVU1097
3630 0054 03B0 add sp, sp, #12
3631 .LCFI49:
3632 .cfi_remember_state
3633 .cfi_def_cfa_offset 12
3634 @ sp needed
3635 0056 30BD pop {r4, r5, pc}
3636 .LVL257:
3637 .L195:
3638 .LCFI50:
3639 .cfi_restore_state
2164:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
3640 .loc 1 2164 7 is_stmt 1 view .LVU1098
3641 0058 1A68 ldr r2, [r3]
3642 005a 22F00402 bic r2, r2, #4
3643 005e 1A60 str r2, [r3]
2167:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if(status != HAL_OK)
3644 .loc 1 2167 7 view .LVU1099
2167:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if(status != HAL_OK)
3645 .loc 1 2167 16 is_stmt 0 view .LVU1100
3646 0060 E06B ldr r0, [r4, #60]
3647 0062 FFF7FEFF bl HAL_MDMA_Abort
3648 .LVL258:
2168:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3649 .loc 1 2168 7 is_stmt 1 view .LVU1101
2168:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3650 .loc 1 2168 9 is_stmt 0 view .LVU1102
3651 0066 0028 cmp r0, #0
3652 0068 DDD0 beq .L192
2170:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
3653 .loc 1 2170 9 is_stmt 1 view .LVU1103
2170:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
3654 .loc 1 2170 26 is_stmt 0 view .LVU1104
3655 006a 636C ldr r3, [r4, #68]
3656 006c 43F00403 orr r3, r3, #4
3657 0070 6364 str r3, [r4, #68]
3658 0072 D8E7 b .L192
3659 .L196:
2182:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
3660 .loc 1 2182 7 is_stmt 1 view .LVU1105
3661 0074 2368 ldr r3, [r4]
3662 0076 0222 movs r2, #2
3663 0078 DA60 str r2, [r3, #12]
2185:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
3664 .loc 1 2185 7 view .LVU1106
2185:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
3665 .loc 1 2185 16 is_stmt 0 view .LVU1107
3666 007a A36C ldr r3, [r4, #72]
3667 007c 0093 str r3, [sp]
3668 007e 2B46 mov r3, r5
3669 0080 0022 movs r2, #0
ARM GAS /tmp/ccNpZKQO.s page 129
3670 0082 2021 movs r1, #32
3671 0084 2046 mov r0, r4
3672 .LVL259:
2185:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
3673 .loc 1 2185 16 view .LVU1108
3674 0086 FFF7FEFF bl QSPI_WaitFlagStateUntilTimeout
3675 .LVL260:
2185:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
3676 .loc 1 2185 16 view .LVU1109
3677 008a DAE7 b .L193
3678 .cfi_endproc
3679 .LFE167:
3681 .section .text.HAL_QSPI_Abort_IT,"ax",%progbits
3682 .align 1
3683 .global HAL_QSPI_Abort_IT
3684 .syntax unified
3685 .thumb
3686 .thumb_func
3687 .fpu fpv5-d16
3689 HAL_QSPI_Abort_IT:
3690 .LVL261:
3691 .LFB168:
2207:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** HAL_StatusTypeDef status = HAL_OK;
3692 .loc 1 2207 1 is_stmt 1 view -0
3693 .cfi_startproc
3694 @ args = 0, pretend = 0, frame = 0
3695 @ frame_needed = 0, uses_anonymous_args = 0
2208:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
3696 .loc 1 2208 3 view .LVU1111
2211:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3697 .loc 1 2211 3 view .LVU1112
2211:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3698 .loc 1 2211 23 is_stmt 0 view .LVU1113
3699 0000 90F84130 ldrb r3, [r0, #65] @ zero_extendqisi2
2211:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3700 .loc 1 2211 6 view .LVU1114
3701 0004 13F0020F tst r3, #2
3702 0008 32D0 beq .L201
2207:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** HAL_StatusTypeDef status = HAL_OK;
3703 .loc 1 2207 1 view .LVU1115
3704 000a 10B5 push {r4, lr}
3705 .LCFI51:
3706 .cfi_def_cfa_offset 8
3707 .cfi_offset 4, -8
3708 .cfi_offset 14, -4
3709 000c 0446 mov r4, r0
2214:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
3710 .loc 1 2214 5 is_stmt 1 view .LVU1116
2214:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
3711 .loc 1 2214 5 view .LVU1117
3712 000e 0023 movs r3, #0
3713 0010 80F84030 strb r3, [r0, #64]
2214:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
3714 .loc 1 2214 5 view .LVU1118
2217:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
3715 .loc 1 2217 5 view .LVU1119
2217:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
ARM GAS /tmp/ccNpZKQO.s page 130
3716 .loc 1 2217 18 is_stmt 0 view .LVU1120
3717 0014 0823 movs r3, #8
3718 0016 80F84130 strb r3, [r0, #65]
2220:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
3719 .loc 1 2220 5 is_stmt 1 view .LVU1121
3720 001a 0268 ldr r2, [r0]
3721 001c 1368 ldr r3, [r2]
3722 001e 23F4F813 bic r3, r3, #2031616
3723 0022 1360 str r3, [r2]
2222:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3724 .loc 1 2222 5 view .LVU1122
2222:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3725 .loc 1 2222 15 is_stmt 0 view .LVU1123
3726 0024 0368 ldr r3, [r0]
2222:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3727 .loc 1 2222 25 view .LVU1124
3728 0026 1A68 ldr r2, [r3]
2222:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3729 .loc 1 2222 8 view .LVU1125
3730 0028 12F0040F tst r2, #4
3731 002c 0DD1 bne .L204
2245:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
3732 .loc 1 2245 7 is_stmt 1 view .LVU1126
3733 002e 0222 movs r2, #2
3734 0030 DA60 str r2, [r3, #12]
2248:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
3735 .loc 1 2248 7 view .LVU1127
3736 0032 0268 ldr r2, [r0]
3737 0034 1368 ldr r3, [r2]
3738 0036 43F40033 orr r3, r3, #131072
3739 003a 1360 str r3, [r2]
2251:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
3740 .loc 1 2251 7 view .LVU1128
3741 003c 0268 ldr r2, [r0]
3742 003e 1368 ldr r3, [r2]
3743 0040 43F00203 orr r3, r3, #2
3744 0044 1360 str r3, [r2]
3745 .LVL262:
3746 .L198:
2254:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
3747 .loc 1 2254 3 view .LVU1129
2255:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
3748 .loc 1 2255 1 is_stmt 0 view .LVU1130
3749 0046 0020 movs r0, #0
3750 0048 10BD pop {r4, pc}
3751 .LVL263:
3752 .L204:
2225:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
3753 .loc 1 2225 7 is_stmt 1 view .LVU1131
3754 004a 1A68 ldr r2, [r3]
3755 004c 22F00402 bic r2, r2, #4
3756 0050 1A60 str r2, [r3]
2228:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if (HAL_MDMA_Abort_IT(hqspi->hmdma) != HAL_OK)
3757 .loc 1 2228 7 view .LVU1132
2228:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if (HAL_MDMA_Abort_IT(hqspi->hmdma) != HAL_OK)
3758 .loc 1 2228 12 is_stmt 0 view .LVU1133
3759 0052 C36B ldr r3, [r0, #60]
ARM GAS /tmp/ccNpZKQO.s page 131
2228:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** if (HAL_MDMA_Abort_IT(hqspi->hmdma) != HAL_OK)
3760 .loc 1 2228 39 view .LVU1134
3761 0054 074A ldr r2, .L205
3762 0056 9A65 str r2, [r3, #88]
2229:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3763 .loc 1 2229 7 is_stmt 1 view .LVU1135
2229:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3764 .loc 1 2229 11 is_stmt 0 view .LVU1136
3765 0058 C06B ldr r0, [r0, #60]
3766 .LVL264:
2229:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3767 .loc 1 2229 11 view .LVU1137
3768 005a FFF7FEFF bl HAL_MDMA_Abort_IT
3769 .LVL265:
2229:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3770 .loc 1 2229 10 view .LVU1138
3771 005e 0028 cmp r0, #0
3772 0060 F1D0 beq .L198
2232:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
3773 .loc 1 2232 9 is_stmt 1 view .LVU1139
2232:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
3774 .loc 1 2232 22 is_stmt 0 view .LVU1140
3775 0062 0123 movs r3, #1
3776 0064 84F84130 strb r3, [r4, #65]
2238:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** #endif
3777 .loc 1 2238 9 is_stmt 1 view .LVU1141
3778 0068 2046 mov r0, r4
3779 006a FFF7FEFF bl HAL_QSPI_AbortCpltCallback
3780 .LVL266:
3781 006e EAE7 b .L198
3782 .LVL267:
3783 .L201:
3784 .LCFI52:
3785 .cfi_def_cfa_offset 0
3786 .cfi_restore 4
3787 .cfi_restore 14
2254:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
3788 .loc 1 2254 3 view .LVU1142
2255:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
3789 .loc 1 2255 1 is_stmt 0 view .LVU1143
3790 0070 0020 movs r0, #0
3791 .LVL268:
2255:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
3792 .loc 1 2255 1 view .LVU1144
3793 0072 7047 bx lr
3794 .L206:
3795 .align 2
3796 .L205:
3797 0074 00000000 .word QSPI_DMAAbortCplt
3798 .cfi_endproc
3799 .LFE168:
3801 .section .text.QSPI_DMAError,"ax",%progbits
3802 .align 1
3803 .syntax unified
3804 .thumb
3805 .thumb_func
3806 .fpu fpv5-d16
ARM GAS /tmp/ccNpZKQO.s page 132
3808 QSPI_DMAError:
3809 .LVL269:
3810 .LFB175:
2392:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** QSPI_HandleTypeDef* hqspi = ( QSPI_HandleTypeDef* )(hmdma->Parent);
3811 .loc 1 2392 1 is_stmt 1 view -0
3812 .cfi_startproc
3813 @ args = 0, pretend = 0, frame = 0
3814 @ frame_needed = 0, uses_anonymous_args = 0
2392:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** QSPI_HandleTypeDef* hqspi = ( QSPI_HandleTypeDef* )(hmdma->Parent);
3815 .loc 1 2392 1 is_stmt 0 view .LVU1146
3816 0000 08B5 push {r3, lr}
3817 .LCFI53:
3818 .cfi_def_cfa_offset 8
3819 .cfi_offset 3, -8
3820 .cfi_offset 14, -4
2393:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
3821 .loc 1 2393 3 is_stmt 1 view .LVU1147
2393:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
3822 .loc 1 2393 23 is_stmt 0 view .LVU1148
3823 0002 006C ldr r0, [r0, #64]
3824 .LVL270:
2395:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->TxXferCount = 0U;
3825 .loc 1 2395 3 is_stmt 1 view .LVU1149
2395:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->TxXferCount = 0U;
3826 .loc 1 2395 22 is_stmt 0 view .LVU1150
3827 0004 0023 movs r3, #0
3828 0006 8363 str r3, [r0, #56]
2396:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->ErrorCode |= HAL_QSPI_ERROR_DMA;
3829 .loc 1 2396 3 is_stmt 1 view .LVU1151
2396:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->ErrorCode |= HAL_QSPI_ERROR_DMA;
3830 .loc 1 2396 22 is_stmt 0 view .LVU1152
3831 0008 C362 str r3, [r0, #44]
2397:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
3832 .loc 1 2397 3 is_stmt 1 view .LVU1153
2397:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
3833 .loc 1 2397 22 is_stmt 0 view .LVU1154
3834 000a 436C ldr r3, [r0, #68]
3835 000c 43F00403 orr r3, r3, #4
3836 0010 4364 str r3, [r0, #68]
2400:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
3837 .loc 1 2400 3 is_stmt 1 view .LVU1155
3838 0012 0268 ldr r2, [r0]
3839 0014 1368 ldr r3, [r2]
3840 0016 23F00403 bic r3, r3, #4
3841 001a 1360 str r3, [r2]
2403:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
3842 .loc 1 2403 3 view .LVU1156
2403:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
3843 .loc 1 2403 9 is_stmt 0 view .LVU1157
3844 001c FFF7FEFF bl HAL_QSPI_Abort_IT
3845 .LVL271:
2405:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
3846 .loc 1 2405 1 view .LVU1158
3847 0020 08BD pop {r3, pc}
3848 .cfi_endproc
3849 .LFE175:
3851 .section .text.HAL_QSPI_SetTimeout,"ax",%progbits
ARM GAS /tmp/ccNpZKQO.s page 133
3852 .align 1
3853 .global HAL_QSPI_SetTimeout
3854 .syntax unified
3855 .thumb
3856 .thumb_func
3857 .fpu fpv5-d16
3859 HAL_QSPI_SetTimeout:
3860 .LVL272:
3861 .LFB169:
2263:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** hqspi->Timeout = Timeout;
3862 .loc 1 2263 1 is_stmt 1 view -0
3863 .cfi_startproc
3864 @ args = 0, pretend = 0, frame = 0
3865 @ frame_needed = 0, uses_anonymous_args = 0
3866 @ link register save eliminated.
2264:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
3867 .loc 1 2264 3 view .LVU1160
2264:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
3868 .loc 1 2264 18 is_stmt 0 view .LVU1161
3869 0000 8164 str r1, [r0, #72]
2265:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
3870 .loc 1 2265 1 view .LVU1162
3871 0002 7047 bx lr
3872 .cfi_endproc
3873 .LFE169:
3875 .section .text.HAL_QSPI_Init,"ax",%progbits
3876 .align 1
3877 .global HAL_QSPI_Init
3878 .syntax unified
3879 .thumb
3880 .thumb_func
3881 .fpu fpv5-d16
3883 HAL_QSPI_Init:
3884 .LVL273:
3885 .LFB141:
307:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** HAL_StatusTypeDef status;
3886 .loc 1 307 1 is_stmt 1 view -0
3887 .cfi_startproc
3888 @ args = 0, pretend = 0, frame = 0
3889 @ frame_needed = 0, uses_anonymous_args = 0
307:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** HAL_StatusTypeDef status;
3890 .loc 1 307 1 is_stmt 0 view .LVU1164
3891 0000 70B5 push {r4, r5, r6, lr}
3892 .LCFI54:
3893 .cfi_def_cfa_offset 16
3894 .cfi_offset 4, -16
3895 .cfi_offset 5, -12
3896 .cfi_offset 6, -8
3897 .cfi_offset 14, -4
3898 0002 82B0 sub sp, sp, #8
3899 .LCFI55:
3900 .cfi_def_cfa_offset 24
3901 0004 0446 mov r4, r0
308:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** uint32_t tickstart = HAL_GetTick();
3902 .loc 1 308 3 is_stmt 1 view .LVU1165
309:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
3903 .loc 1 309 3 view .LVU1166
ARM GAS /tmp/ccNpZKQO.s page 134
309:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
3904 .loc 1 309 24 is_stmt 0 view .LVU1167
3905 0006 FFF7FEFF bl HAL_GetTick
3906 .LVL274:
312:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3907 .loc 1 312 3 is_stmt 1 view .LVU1168
312:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3908 .loc 1 312 5 is_stmt 0 view .LVU1169
3909 000a 002C cmp r4, #0
3910 000c 45D0 beq .L213
3911 000e 0646 mov r6, r0
318:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** assert_param(IS_QSPI_CLOCK_PRESCALER(hqspi->Init.ClockPrescaler));
3912 .loc 1 318 3 is_stmt 1 view .LVU1170
319:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** assert_param(IS_QSPI_FIFO_THRESHOLD(hqspi->Init.FifoThreshold));
3913 .loc 1 319 3 view .LVU1171
320:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** assert_param(IS_QSPI_SSHIFT(hqspi->Init.SampleShifting));
3914 .loc 1 320 3 view .LVU1172
321:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** assert_param(IS_QSPI_FLASH_SIZE(hqspi->Init.FlashSize));
3915 .loc 1 321 3 view .LVU1173
322:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** assert_param(IS_QSPI_CS_HIGH_TIME(hqspi->Init.ChipSelectHighTime));
3916 .loc 1 322 3 view .LVU1174
323:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** assert_param(IS_QSPI_CLOCK_MODE(hqspi->Init.ClockMode));
3917 .loc 1 323 3 view .LVU1175
324:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** assert_param(IS_QSPI_DUAL_FLASH_MODE(hqspi->Init.DualFlash));
3918 .loc 1 324 3 view .LVU1176
325:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
3919 .loc 1 325 3 view .LVU1177
327:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3920 .loc 1 327 3 view .LVU1178
329:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
3921 .loc 1 329 5 view .LVU1179
332:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3922 .loc 1 332 3 view .LVU1180
332:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3923 .loc 1 332 11 is_stmt 0 view .LVU1181
3924 0010 94F84130 ldrb r3, [r4, #65] @ zero_extendqisi2
332:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3925 .loc 1 332 5 view .LVU1182
3926 0014 002B cmp r3, #0
3927 0016 37D0 beq .L215
3928 .LVL275:
3929 .L212:
363:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** ((hqspi->Init.FifoThreshold - 1U) << QUADSPI_CR_FTHRES_Pos));
3930 .loc 1 363 3 is_stmt 1 view .LVU1183
3931 0018 2568 ldr r5, [r4]
3932 001a 2A68 ldr r2, [r5]
3933 001c 22F47062 bic r2, r2, #3840
3934 0020 A168 ldr r1, [r4, #8]
3935 0022 0139 subs r1, r1, #1
3936 0024 42EA0122 orr r2, r2, r1, lsl #8
3937 0028 2A60 str r2, [r5]
367:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
3938 .loc 1 367 3 view .LVU1184
367:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
3939 .loc 1 367 12 is_stmt 0 view .LVU1185
3940 002a A36C ldr r3, [r4, #72]
3941 002c 0093 str r3, [sp]
ARM GAS /tmp/ccNpZKQO.s page 135
3942 002e 3346 mov r3, r6
3943 0030 0022 movs r2, #0
3944 0032 2021 movs r1, #32
3945 0034 2046 mov r0, r4
3946 0036 FFF7FEFF bl QSPI_WaitFlagStateUntilTimeout
3947 .LVL276:
369:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3948 .loc 1 369 3 is_stmt 1 view .LVU1186
369:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
3949 .loc 1 369 5 is_stmt 0 view .LVU1187
3950 003a 18BB cbnz r0, .L211
372:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** ((hqspi->Init.ClockPrescaler << QUADSPI_CR_PRESCALER_Pos) |
3951 .loc 1 372 5 is_stmt 1 view .LVU1188
3952 003c 2168 ldr r1, [r4]
3953 003e 0B68 ldr r3, [r1]
3954 0040 174A ldr r2, .L216
3955 0042 1A40 ands r2, r2, r3
3956 0044 6568 ldr r5, [r4, #4]
3957 0046 E368 ldr r3, [r4, #12]
3958 0048 43EA0563 orr r3, r3, r5, lsl #24
3959 004c E569 ldr r5, [r4, #28]
3960 004e 2B43 orrs r3, r3, r5
3961 0050 256A ldr r5, [r4, #32]
3962 0052 2B43 orrs r3, r3, r5
3963 0054 1343 orrs r3, r3, r2
3964 0056 0B60 str r3, [r1]
377:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** ((hqspi->Init.FlashSize << QUADSPI_DCR_FSIZE_Pos) |
3965 .loc 1 377 5 view .LVU1189
3966 0058 2168 ldr r1, [r4]
3967 005a 4A68 ldr r2, [r1, #4]
3968 005c 114B ldr r3, .L216+4
3969 005e 1340 ands r3, r3, r2
3970 0060 2569 ldr r5, [r4, #16]
3971 0062 6269 ldr r2, [r4, #20]
3972 0064 42EA0542 orr r2, r2, r5, lsl #16
3973 0068 A569 ldr r5, [r4, #24]
3974 006a 2A43 orrs r2, r2, r5
3975 006c 1343 orrs r3, r3, r2
3976 006e 4B60 str r3, [r1, #4]
382:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
3977 .loc 1 382 5 view .LVU1190
3978 0070 2268 ldr r2, [r4]
3979 0072 1368 ldr r3, [r2]
3980 0074 43F00103 orr r3, r3, #1
3981 0078 1360 str r3, [r2]
385:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
3982 .loc 1 385 5 view .LVU1191
385:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
3983 .loc 1 385 22 is_stmt 0 view .LVU1192
3984 007a 0023 movs r3, #0
3985 007c 6364 str r3, [r4, #68]
388:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
3986 .loc 1 388 5 is_stmt 1 view .LVU1193
388:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
3987 .loc 1 388 18 is_stmt 0 view .LVU1194
3988 007e 0123 movs r3, #1
3989 0080 84F84130 strb r3, [r4, #65]
ARM GAS /tmp/ccNpZKQO.s page 136
3990 .LVL277:
3991 .L211:
393:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
3992 .loc 1 393 1 view .LVU1195
3993 0084 02B0 add sp, sp, #8
3994 .LCFI56:
3995 .cfi_remember_state
3996 .cfi_def_cfa_offset 16
3997 @ sp needed
3998 0086 70BD pop {r4, r5, r6, pc}
3999 .LVL278:
4000 .L215:
4001 .LCFI57:
4002 .cfi_restore_state
355:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** #endif
4003 .loc 1 355 5 is_stmt 1 view .LVU1196
4004 0088 2046 mov r0, r4
4005 .LVL279:
355:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** #endif
4006 .loc 1 355 5 is_stmt 0 view .LVU1197
4007 008a FFF7FEFF bl HAL_QSPI_MspInit
4008 .LVL280:
359:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
4009 .loc 1 359 5 is_stmt 1 view .LVU1198
4010 008e 41F28831 movw r1, #5000
4011 0092 2046 mov r0, r4
4012 0094 FFF7FEFF bl HAL_QSPI_SetTimeout
4013 .LVL281:
4014 0098 BEE7 b .L212
4015 .LVL282:
4016 .L213:
314:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
4017 .loc 1 314 12 is_stmt 0 view .LVU1199
4018 009a 0120 movs r0, #1
4019 .LVL283:
314:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
4020 .loc 1 314 12 view .LVU1200
4021 009c F2E7 b .L211
4022 .L217:
4023 009e 00BF .align 2
4024 .L216:
4025 00a0 2FFFFF00 .word 16777007
4026 00a4 FEF8E0FF .word -2033410
4027 .cfi_endproc
4028 .LFE141:
4030 .section .text.HAL_QSPI_SetFifoThreshold,"ax",%progbits
4031 .align 1
4032 .global HAL_QSPI_SetFifoThreshold
4033 .syntax unified
4034 .thumb
4035 .thumb_func
4036 .fpu fpv5-d16
4038 HAL_QSPI_SetFifoThreshold:
4039 .LVL284:
4040 .LFB170:
2273:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** HAL_StatusTypeDef status = HAL_OK;
4041 .loc 1 2273 1 is_stmt 1 view -0
ARM GAS /tmp/ccNpZKQO.s page 137
4042 .cfi_startproc
4043 @ args = 0, pretend = 0, frame = 0
4044 @ frame_needed = 0, uses_anonymous_args = 0
4045 @ link register save eliminated.
2273:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** HAL_StatusTypeDef status = HAL_OK;
4046 .loc 1 2273 1 is_stmt 0 view .LVU1202
4047 0000 0346 mov r3, r0
2274:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
4048 .loc 1 2274 3 is_stmt 1 view .LVU1203
4049 .LVL285:
2277:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
4050 .loc 1 2277 3 view .LVU1204
2277:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
4051 .loc 1 2277 3 view .LVU1205
4052 0002 90F84020 ldrb r2, [r0, #64] @ zero_extendqisi2
4053 0006 D2B2 uxtb r2, r2
4054 0008 012A cmp r2, #1
4055 000a 17D0 beq .L221
2277:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
4056 .loc 1 2277 3 discriminator 2 view .LVU1206
4057 000c 0122 movs r2, #1
4058 000e 80F84020 strb r2, [r0, #64]
2277:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
4059 .loc 1 2277 3 discriminator 2 view .LVU1207
2279:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
4060 .loc 1 2279 3 discriminator 2 view .LVU1208
2279:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
4061 .loc 1 2279 11 is_stmt 0 discriminator 2 view .LVU1209
4062 0012 90F84120 ldrb r2, [r0, #65] @ zero_extendqisi2
4063 0016 D2B2 uxtb r2, r2
2279:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
4064 .loc 1 2279 5 discriminator 2 view .LVU1210
4065 0018 012A cmp r2, #1
4066 001a 04D0 beq .L223
2290:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
4067 .loc 1 2290 12 view .LVU1211
4068 001c 0220 movs r0, #2
4069 .LVL286:
4070 .L220:
2294:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
4071 .loc 1 2294 3 is_stmt 1 view .LVU1212
2294:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
4072 .loc 1 2294 3 view .LVU1213
4073 001e 0022 movs r2, #0
4074 0020 83F84020 strb r2, [r3, #64]
2294:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
4075 .loc 1 2294 3 view .LVU1214
2297:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
4076 .loc 1 2297 3 view .LVU1215
2297:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
4077 .loc 1 2297 10 is_stmt 0 view .LVU1216
4078 0024 7047 bx lr
4079 .LVL287:
4080 .L223:
2282:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
4081 .loc 1 2282 5 is_stmt 1 view .LVU1217
2282:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
ARM GAS /tmp/ccNpZKQO.s page 138
4082 .loc 1 2282 31 is_stmt 0 view .LVU1218
4083 0026 8160 str r1, [r0, #8]
2285:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** ((hqspi->Init.FifoThreshold - 1U) << QUADSPI_CR_FTHRES_Pos));
4084 .loc 1 2285 5 is_stmt 1 view .LVU1219
4085 0028 0068 ldr r0, [r0]
4086 .LVL288:
2285:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** ((hqspi->Init.FifoThreshold - 1U) << QUADSPI_CR_FTHRES_Pos));
4087 .loc 1 2285 5 is_stmt 0 view .LVU1220
4088 002a 0268 ldr r2, [r0]
4089 002c 22F47062 bic r2, r2, #3840
4090 0030 0139 subs r1, r1, #1
4091 .LVL289:
2285:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** ((hqspi->Init.FifoThreshold - 1U) << QUADSPI_CR_FTHRES_Pos));
4092 .loc 1 2285 5 view .LVU1221
4093 0032 42EA0121 orr r1, r2, r1, lsl #8
4094 0036 0160 str r1, [r0]
4095 .LVL290:
2274:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
4096 .loc 1 2274 21 view .LVU1222
4097 0038 0020 movs r0, #0
4098 003a F0E7 b .L220
4099 .LVL291:
4100 .L221:
2277:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
4101 .loc 1 2277 3 view .LVU1223
4102 003c 0220 movs r0, #2
4103 .LVL292:
2298:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
4104 .loc 1 2298 1 view .LVU1224
4105 003e 7047 bx lr
4106 .cfi_endproc
4107 .LFE170:
4109 .section .text.HAL_QSPI_GetFifoThreshold,"ax",%progbits
4110 .align 1
4111 .global HAL_QSPI_GetFifoThreshold
4112 .syntax unified
4113 .thumb
4114 .thumb_func
4115 .fpu fpv5-d16
4117 HAL_QSPI_GetFifoThreshold:
4118 .LVL293:
4119 .LFB171:
2305:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** return ((READ_BIT(hqspi->Instance->CR, QUADSPI_CR_FTHRES) >> QUADSPI_CR_FTHRES_Pos) + 1U);
4120 .loc 1 2305 1 is_stmt 1 view -0
4121 .cfi_startproc
4122 @ args = 0, pretend = 0, frame = 0
4123 @ frame_needed = 0, uses_anonymous_args = 0
4124 @ link register save eliminated.
2306:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
4125 .loc 1 2306 3 view .LVU1226
2306:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
4126 .loc 1 2306 12 is_stmt 0 view .LVU1227
4127 0000 0368 ldr r3, [r0]
4128 0002 1868 ldr r0, [r3]
4129 .LVL294:
2306:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
4130 .loc 1 2306 61 view .LVU1228
ARM GAS /tmp/ccNpZKQO.s page 139
4131 0004 C0F30320 ubfx r0, r0, #8, #4
2307:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
4132 .loc 1 2307 1 view .LVU1229
4133 0008 0130 adds r0, r0, #1
4134 000a 7047 bx lr
4135 .cfi_endproc
4136 .LFE171:
4138 .section .text.HAL_QSPI_SetFlashID,"ax",%progbits
4139 .align 1
4140 .global HAL_QSPI_SetFlashID
4141 .syntax unified
4142 .thumb
4143 .thumb_func
4144 .fpu fpv5-d16
4146 HAL_QSPI_SetFlashID:
4147 .LVL295:
4148 .LFB172:
2317:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** HAL_StatusTypeDef status = HAL_OK;
4149 .loc 1 2317 1 is_stmt 1 view -0
4150 .cfi_startproc
4151 @ args = 0, pretend = 0, frame = 0
4152 @ frame_needed = 0, uses_anonymous_args = 0
4153 @ link register save eliminated.
2317:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** HAL_StatusTypeDef status = HAL_OK;
4154 .loc 1 2317 1 is_stmt 0 view .LVU1231
4155 0000 0346 mov r3, r0
2318:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
4156 .loc 1 2318 3 is_stmt 1 view .LVU1232
4157 .LVL296:
2321:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
4158 .loc 1 2321 3 view .LVU1233
2324:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
4159 .loc 1 2324 3 view .LVU1234
2324:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
4160 .loc 1 2324 3 view .LVU1235
4161 0002 90F84020 ldrb r2, [r0, #64] @ zero_extendqisi2
4162 0006 D2B2 uxtb r2, r2
4163 0008 012A cmp r2, #1
4164 000a 15D0 beq .L228
2324:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
4165 .loc 1 2324 3 discriminator 2 view .LVU1236
4166 000c 0122 movs r2, #1
4167 000e 80F84020 strb r2, [r0, #64]
2324:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
4168 .loc 1 2324 3 discriminator 2 view .LVU1237
2326:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
4169 .loc 1 2326 3 discriminator 2 view .LVU1238
2326:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
4170 .loc 1 2326 11 is_stmt 0 discriminator 2 view .LVU1239
4171 0012 90F84120 ldrb r2, [r0, #65] @ zero_extendqisi2
4172 0016 D2B2 uxtb r2, r2
2326:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** {
4173 .loc 1 2326 5 discriminator 2 view .LVU1240
4174 0018 012A cmp r2, #1
4175 001a 04D0 beq .L230
2336:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
4176 .loc 1 2336 12 view .LVU1241
ARM GAS /tmp/ccNpZKQO.s page 140
4177 001c 0220 movs r0, #2
4178 .LVL297:
4179 .L227:
2340:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
4180 .loc 1 2340 3 is_stmt 1 view .LVU1242
2340:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
4181 .loc 1 2340 3 view .LVU1243
4182 001e 0022 movs r2, #0
4183 0020 83F84020 strb r2, [r3, #64]
2340:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
4184 .loc 1 2340 3 view .LVU1244
2343:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
4185 .loc 1 2343 3 view .LVU1245
2343:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
4186 .loc 1 2343 10 is_stmt 0 view .LVU1246
4187 0024 7047 bx lr
4188 .LVL298:
4189 .L230:
2329:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
4190 .loc 1 2329 5 is_stmt 1 view .LVU1247
2329:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
4191 .loc 1 2329 25 is_stmt 0 view .LVU1248
4192 0026 C161 str r1, [r0, #28]
2332:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
4193 .loc 1 2332 5 is_stmt 1 view .LVU1249
4194 0028 0068 ldr r0, [r0]
4195 .LVL299:
2332:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
4196 .loc 1 2332 5 is_stmt 0 view .LVU1250
4197 002a 0268 ldr r2, [r0]
4198 002c 22F08002 bic r2, r2, #128
4199 0030 1143 orrs r1, r1, r2
4200 .LVL300:
2332:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c **** }
4201 .loc 1 2332 5 view .LVU1251
4202 0032 0160 str r1, [r0]
4203 .LVL301:
2318:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
4204 .loc 1 2318 21 view .LVU1252
4205 0034 0020 movs r0, #0
4206 0036 F2E7 b .L227
4207 .LVL302:
4208 .L228:
2324:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
4209 .loc 1 2324 3 view .LVU1253
4210 0038 0220 movs r0, #2
4211 .LVL303:
2344:Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_qspi.c ****
4212 .loc 1 2344 1 view .LVU1254
4213 003a 7047 bx lr
4214 .cfi_endproc
4215 .LFE172:
4217 .text
4218 .Letext0:
4219 .file 2 "/usr/arm-none-eabi/include/machine/_default_types.h"
4220 .file 3 "/usr/arm-none-eabi/include/sys/_stdint.h"
4221 .file 4 "Drivers/CMSIS/Device/ST/STM32H7xx/Include/stm32h750xx.h"
ARM GAS /tmp/ccNpZKQO.s page 141
4222 .file 5 "Drivers/CMSIS/Device/ST/STM32H7xx/Include/stm32h7xx.h"
4223 .file 6 "Drivers/STM32H7xx_HAL_Driver/Inc/stm32h7xx_hal_def.h"
4224 .file 7 "Drivers/STM32H7xx_HAL_Driver/Inc/stm32h7xx_hal_mdma.h"
4225 .file 8 "Drivers/STM32H7xx_HAL_Driver/Inc/stm32h7xx_hal_qspi.h"
4226 .file 9 "Drivers/STM32H7xx_HAL_Driver/Inc/stm32h7xx_hal.h"
ARM GAS /tmp/ccNpZKQO.s page 142
DEFINED SYMBOLS
*ABS*:0000000000000000 stm32h7xx_hal_qspi.c
/tmp/ccNpZKQO.s:17 .text.QSPI_DMARxCplt:0000000000000000 $t
/tmp/ccNpZKQO.s:24 .text.QSPI_DMARxCplt:0000000000000000 QSPI_DMARxCplt
/tmp/ccNpZKQO.s:54 .text.QSPI_DMATxCplt:0000000000000000 $t
/tmp/ccNpZKQO.s:60 .text.QSPI_DMATxCplt:0000000000000000 QSPI_DMATxCplt
/tmp/ccNpZKQO.s:89 .text.QSPI_Config:0000000000000000 $t
/tmp/ccNpZKQO.s:95 .text.QSPI_Config:0000000000000000 QSPI_Config
/tmp/ccNpZKQO.s:432 .text.QSPI_WaitFlagStateUntilTimeout:0000000000000000 $t
/tmp/ccNpZKQO.s:438 .text.QSPI_WaitFlagStateUntilTimeout:0000000000000000 QSPI_WaitFlagStateUntilTimeout
/tmp/ccNpZKQO.s:517 .text.HAL_QSPI_MspInit:0000000000000000 $t
/tmp/ccNpZKQO.s:524 .text.HAL_QSPI_MspInit:0000000000000000 HAL_QSPI_MspInit
/tmp/ccNpZKQO.s:539 .text.HAL_QSPI_MspDeInit:0000000000000000 $t
/tmp/ccNpZKQO.s:546 .text.HAL_QSPI_MspDeInit:0000000000000000 HAL_QSPI_MspDeInit
/tmp/ccNpZKQO.s:561 .text.HAL_QSPI_DeInit:0000000000000000 $t
/tmp/ccNpZKQO.s:568 .text.HAL_QSPI_DeInit:0000000000000000 HAL_QSPI_DeInit
/tmp/ccNpZKQO.s:618 .text.HAL_QSPI_Command:0000000000000000 $t
/tmp/ccNpZKQO.s:625 .text.HAL_QSPI_Command:0000000000000000 HAL_QSPI_Command
/tmp/ccNpZKQO.s:783 .text.HAL_QSPI_Command_IT:0000000000000000 $t
/tmp/ccNpZKQO.s:790 .text.HAL_QSPI_Command_IT:0000000000000000 HAL_QSPI_Command_IT
/tmp/ccNpZKQO.s:950 .text.HAL_QSPI_Transmit:0000000000000000 $t
/tmp/ccNpZKQO.s:957 .text.HAL_QSPI_Transmit:0000000000000000 HAL_QSPI_Transmit
/tmp/ccNpZKQO.s:1161 .text.HAL_QSPI_Receive:0000000000000000 $t
/tmp/ccNpZKQO.s:1168 .text.HAL_QSPI_Receive:0000000000000000 HAL_QSPI_Receive
/tmp/ccNpZKQO.s:1379 .text.HAL_QSPI_Transmit_IT:0000000000000000 $t
/tmp/ccNpZKQO.s:1386 .text.HAL_QSPI_Transmit_IT:0000000000000000 HAL_QSPI_Transmit_IT
/tmp/ccNpZKQO.s:1506 .text.HAL_QSPI_Receive_IT:0000000000000000 $t
/tmp/ccNpZKQO.s:1513 .text.HAL_QSPI_Receive_IT:0000000000000000 HAL_QSPI_Receive_IT
/tmp/ccNpZKQO.s:1659 .text.HAL_QSPI_Transmit_DMA:0000000000000000 $t
/tmp/ccNpZKQO.s:1666 .text.HAL_QSPI_Transmit_DMA:0000000000000000 HAL_QSPI_Transmit_DMA
/tmp/ccNpZKQO.s:1924 .text.HAL_QSPI_Transmit_DMA:0000000000000128 $d
/tmp/ccNpZKQO.s:3808 .text.QSPI_DMAError:0000000000000000 QSPI_DMAError
/tmp/ccNpZKQO.s:1932 .text.HAL_QSPI_Receive_DMA:0000000000000000 $t
/tmp/ccNpZKQO.s:1939 .text.HAL_QSPI_Receive_DMA:0000000000000000 HAL_QSPI_Receive_DMA
/tmp/ccNpZKQO.s:2210 .text.HAL_QSPI_Receive_DMA:0000000000000134 $d
/tmp/ccNpZKQO.s:2218 .text.HAL_QSPI_AutoPolling:0000000000000000 $t
/tmp/ccNpZKQO.s:2225 .text.HAL_QSPI_AutoPolling:0000000000000000 HAL_QSPI_AutoPolling
/tmp/ccNpZKQO.s:2400 .text.HAL_QSPI_AutoPolling_IT:0000000000000000 $t
/tmp/ccNpZKQO.s:2407 .text.HAL_QSPI_AutoPolling_IT:0000000000000000 HAL_QSPI_AutoPolling_IT
/tmp/ccNpZKQO.s:2578 .text.HAL_QSPI_MemoryMapped:0000000000000000 $t
/tmp/ccNpZKQO.s:2585 .text.HAL_QSPI_MemoryMapped:0000000000000000 HAL_QSPI_MemoryMapped
/tmp/ccNpZKQO.s:2741 .text.HAL_QSPI_ErrorCallback:0000000000000000 $t
/tmp/ccNpZKQO.s:2748 .text.HAL_QSPI_ErrorCallback:0000000000000000 HAL_QSPI_ErrorCallback
/tmp/ccNpZKQO.s:2763 .text.QSPI_DMAAbortCplt:0000000000000000 $t
/tmp/ccNpZKQO.s:2769 .text.QSPI_DMAAbortCplt:0000000000000000 QSPI_DMAAbortCplt
/tmp/ccNpZKQO.s:2833 .text.HAL_QSPI_AbortCpltCallback:0000000000000000 $t
/tmp/ccNpZKQO.s:2840 .text.HAL_QSPI_AbortCpltCallback:0000000000000000 HAL_QSPI_AbortCpltCallback
/tmp/ccNpZKQO.s:2855 .text.HAL_QSPI_CmdCpltCallback:0000000000000000 $t
/tmp/ccNpZKQO.s:2862 .text.HAL_QSPI_CmdCpltCallback:0000000000000000 HAL_QSPI_CmdCpltCallback
/tmp/ccNpZKQO.s:2877 .text.HAL_QSPI_RxCpltCallback:0000000000000000 $t
/tmp/ccNpZKQO.s:2884 .text.HAL_QSPI_RxCpltCallback:0000000000000000 HAL_QSPI_RxCpltCallback
/tmp/ccNpZKQO.s:2899 .text.HAL_QSPI_TxCpltCallback:0000000000000000 $t
/tmp/ccNpZKQO.s:2906 .text.HAL_QSPI_TxCpltCallback:0000000000000000 HAL_QSPI_TxCpltCallback
/tmp/ccNpZKQO.s:2921 .text.HAL_QSPI_FifoThresholdCallback:0000000000000000 $t
/tmp/ccNpZKQO.s:2928 .text.HAL_QSPI_FifoThresholdCallback:0000000000000000 HAL_QSPI_FifoThresholdCallback
/tmp/ccNpZKQO.s:2943 .text.HAL_QSPI_StatusMatchCallback:0000000000000000 $t
/tmp/ccNpZKQO.s:2950 .text.HAL_QSPI_StatusMatchCallback:0000000000000000 HAL_QSPI_StatusMatchCallback
ARM GAS /tmp/ccNpZKQO.s page 143
/tmp/ccNpZKQO.s:2965 .text.HAL_QSPI_TimeOutCallback:0000000000000000 $t
/tmp/ccNpZKQO.s:2972 .text.HAL_QSPI_TimeOutCallback:0000000000000000 HAL_QSPI_TimeOutCallback
/tmp/ccNpZKQO.s:2987 .text.HAL_QSPI_IRQHandler:0000000000000000 $t
/tmp/ccNpZKQO.s:2994 .text.HAL_QSPI_IRQHandler:0000000000000000 HAL_QSPI_IRQHandler
/tmp/ccNpZKQO.s:3483 .text.HAL_QSPI_IRQHandler:000000000000023c $d
/tmp/ccNpZKQO.s:3488 .text.HAL_QSPI_GetState:0000000000000000 $t
/tmp/ccNpZKQO.s:3495 .text.HAL_QSPI_GetState:0000000000000000 HAL_QSPI_GetState
/tmp/ccNpZKQO.s:3513 .text.HAL_QSPI_GetError:0000000000000000 $t
/tmp/ccNpZKQO.s:3520 .text.HAL_QSPI_GetError:0000000000000000 HAL_QSPI_GetError
/tmp/ccNpZKQO.s:3538 .text.HAL_QSPI_Abort:0000000000000000 $t
/tmp/ccNpZKQO.s:3545 .text.HAL_QSPI_Abort:0000000000000000 HAL_QSPI_Abort
/tmp/ccNpZKQO.s:3682 .text.HAL_QSPI_Abort_IT:0000000000000000 $t
/tmp/ccNpZKQO.s:3689 .text.HAL_QSPI_Abort_IT:0000000000000000 HAL_QSPI_Abort_IT
/tmp/ccNpZKQO.s:3797 .text.HAL_QSPI_Abort_IT:0000000000000074 $d
/tmp/ccNpZKQO.s:3802 .text.QSPI_DMAError:0000000000000000 $t
/tmp/ccNpZKQO.s:3852 .text.HAL_QSPI_SetTimeout:0000000000000000 $t
/tmp/ccNpZKQO.s:3859 .text.HAL_QSPI_SetTimeout:0000000000000000 HAL_QSPI_SetTimeout
/tmp/ccNpZKQO.s:3876 .text.HAL_QSPI_Init:0000000000000000 $t
/tmp/ccNpZKQO.s:3883 .text.HAL_QSPI_Init:0000000000000000 HAL_QSPI_Init
/tmp/ccNpZKQO.s:4025 .text.HAL_QSPI_Init:00000000000000a0 $d
/tmp/ccNpZKQO.s:4031 .text.HAL_QSPI_SetFifoThreshold:0000000000000000 $t
/tmp/ccNpZKQO.s:4038 .text.HAL_QSPI_SetFifoThreshold:0000000000000000 HAL_QSPI_SetFifoThreshold
/tmp/ccNpZKQO.s:4110 .text.HAL_QSPI_GetFifoThreshold:0000000000000000 $t
/tmp/ccNpZKQO.s:4117 .text.HAL_QSPI_GetFifoThreshold:0000000000000000 HAL_QSPI_GetFifoThreshold
/tmp/ccNpZKQO.s:4139 .text.HAL_QSPI_SetFlashID:0000000000000000 $t
/tmp/ccNpZKQO.s:4146 .text.HAL_QSPI_SetFlashID:0000000000000000 HAL_QSPI_SetFlashID
UNDEFINED SYMBOLS
HAL_GetTick
HAL_MDMA_Start_IT
HAL_MDMA_Abort_IT
HAL_MDMA_Abort