Files
RadioPhotonic_PCB_software/build/stm32f7xx_hal_sd.lst
2025-03-03 16:03:02 +03:00

12878 lines
769 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/cc2oBAwl.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 "stm32f7xx_hal_sd.c"
13 .text
14 .Ltext0:
15 .cfi_sections .debug_frame
16 .section .text.SD_DMATransmitCplt,"ax",%progbits
17 .align 1
18 .arch armv7e-m
19 .syntax unified
20 .thumb
21 .thumb_func
22 .fpu fpv5-d16
24 SD_DMATransmitCplt:
25 .LVL0:
26 .LFB168:
27 .file 1 "Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c"
1:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /**
2:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** ******************************************************************************
3:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @file stm32f7xx_hal_sd.c
4:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @author MCD Application Team
5:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @brief SD card HAL module driver.
6:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * This file provides firmware functions to manage the following
7:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * functionalities of the Secure Digital (SD) peripheral:
8:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * + Initialization and de-initialization functions
9:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * + IO operation functions
10:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * + Peripheral Control functions
11:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * + Peripheral State functions
12:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** *
13:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** ******************************************************************************
14:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @attention
15:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** *
16:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * Copyright (c) 2017 STMicroelectronics.
17:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * All rights reserved.
18:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** *
19:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * This software is licensed under terms that can be found in the LICENSE file
20:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * in the root directory of this software component.
21:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * If no LICENSE file comes with this software, it is provided AS-IS.
22:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** *
23:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** ******************************************************************************
24:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** @verbatim
25:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** ==============================================================================
26:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** ##### How to use this driver #####
27:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** ==============================================================================
28:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** [..]
29:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** This driver implements a high level communication layer for read and write from/to
30:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** this memory. The needed STM32 hardware resources (SDMMC and GPIO) are performed by
31:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** the user in HAL_SD_MspInit() function (MSP layer).
ARM GAS /tmp/cc2oBAwl.s page 2
32:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** Basically, the MSP layer configuration should be the same as we provide in the
33:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** examples.
34:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** You can easily tailor this configuration according to hardware resources.
35:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
36:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** [..]
37:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** This driver is a generic layered driver for SDMMC memories which uses the HAL
38:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** SDMMC driver functions to interface with SD and uSD cards devices.
39:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** It is used as follows:
40:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
41:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** (#)Initialize the SDMMC low level resources by implementing the HAL_SD_MspInit() API:
42:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** (##) Enable the SDMMC interface clock using __HAL_RCC_SDMMC_CLK_ENABLE();
43:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** (##) SDMMC pins configuration for SD card
44:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** (+++) Enable the clock for the SDMMC GPIOs using the functions __HAL_RCC_GPIOx_CLK_ENAB
45:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** (+++) Configure these SDMMC pins as alternate function pull-up using HAL_GPIO_Init()
46:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** and according to your pin assignment;
47:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** (##) DMA configuration if you need to use DMA process (HAL_SD_ReadBlocks_DMA()
48:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** and HAL_SD_WriteBlocks_DMA() APIs).
49:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** (+++) Enable the DMAx interface clock using __HAL_RCC_DMAx_CLK_ENABLE();
50:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** (+++) Configure the DMA using the function HAL_DMA_Init() with predeclared and filled.
51:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** (##) NVIC configuration if you need to use interrupt process when using DMA transfer.
52:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** (+++) Configure the SDMMC and DMA interrupt priorities using functions
53:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** HAL_NVIC_SetPriority(); DMA priority is superior to SDMMC's priority
54:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** (+++) Enable the NVIC DMA and SDMMC IRQs using function HAL_NVIC_EnableIRQ()
55:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** (+++) SDMMC interrupts are managed using the macros __HAL_SD_ENABLE_IT()
56:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** and __HAL_SD_DISABLE_IT() inside the communication process.
57:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** (+++) SDMMC interrupts pending bits are managed using the macros __HAL_SD_GET_IT()
58:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** and __HAL_SD_CLEAR_IT()
59:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** (##) NVIC configuration if you need to use interrupt process (HAL_SD_ReadBlocks_IT()
60:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** and HAL_SD_WriteBlocks_IT() APIs).
61:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** (+++) Configure the SDMMC interrupt priorities using function HAL_NVIC_SetPriority();
62:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** (+++) Enable the NVIC SDMMC IRQs using function HAL_NVIC_EnableIRQ()
63:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** (+++) SDMMC interrupts are managed using the macros __HAL_SD_ENABLE_IT()
64:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** and __HAL_SD_DISABLE_IT() inside the communication process.
65:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** (+++) SDMMC interrupts pending bits are managed using the macros __HAL_SD_GET_IT()
66:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** and __HAL_SD_CLEAR_IT()
67:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** (#) At this stage, you can perform SD read/write/erase operations after SD card initialization
68:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
69:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
70:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** *** SD Card Initialization and configuration ***
71:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** ================================================
72:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** [..]
73:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** To initialize the SD Card, use the HAL_SD_Init() function. It Initializes
74:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** SDMMC Peripheral(STM32 side) and the SD Card, and put it into StandBy State (Ready for data tra
75:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** This function provide the following operations:
76:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
77:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** (#) Apply the SD Card initialization process at 400KHz and check the SD Card
78:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** type (Standard Capacity or High Capacity). You can change or adapt this
79:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** frequency by adjusting the "ClockDiv" field.
80:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** The SD Card frequency (SDMMC_CK) is computed as follows:
81:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
82:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** SDMMC_CK = SDMMCCLK / (ClockDiv + 2)
83:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
84:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** In initialization mode and according to the SD Card standard,
85:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** make sure that the SDMMC_CK frequency doesn't exceed 400KHz.
86:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
87:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** This phase of initialization is done through SDMMC_Init() and
88:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** SDMMC_PowerState_ON() SDMMC low level APIs.
ARM GAS /tmp/cc2oBAwl.s page 3
89:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
90:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** (#) Initialize the SD card. The API used is HAL_SD_InitCard().
91:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** This phase allows the card initialization and identification
92:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** and check the SD Card type (Standard Capacity or High Capacity)
93:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** The initialization flow is compatible with SD standard.
94:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
95:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** This API (HAL_SD_InitCard()) could be used also to reinitialize the card in case
96:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** of plug-off plug-in.
97:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
98:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** (#) Configure the SD Card Data transfer frequency. You can change or adapt this
99:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** frequency by adjusting the "ClockDiv" field.
100:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** In transfer mode and according to the SD Card standard, make sure that the
101:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** SDMMC_CK frequency doesn't exceed 25MHz and 50MHz in High-speed mode switch.
102:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** To be able to use a frequency higher than 24MHz, you should use the SDMMC
103:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** peripheral in bypass mode. Refer to the corresponding reference manual
104:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** for more details.
105:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
106:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** (#) Select the corresponding SD Card according to the address read with the step 2.
107:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
108:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** (#) Configure the SD Card in wide bus mode: 4-bits data.
109:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
110:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** *** SD Card Read operation ***
111:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** ==============================
112:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** [..]
113:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** (+) You can read from SD card in polling mode by using function HAL_SD_ReadBlocks().
114:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** This function support only 512-bytes block length (the block size should be
115:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** chosen as 512 bytes).
116:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** You can choose either one block read operation or multiple block read operation
117:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** by adjusting the "NumberOfBlocks" parameter.
118:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** After this, you have to ensure that the transfer is done correctly. The check is done
119:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** through HAL_SD_GetCardState() function for SD card state.
120:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
121:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** (+) You can read from SD card in DMA mode by using function HAL_SD_ReadBlocks_DMA().
122:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** This function support only 512-bytes block length (the block size should be
123:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** chosen as 512 bytes).
124:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** You can choose either one block read operation or multiple block read operation
125:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** by adjusting the "NumberOfBlocks" parameter.
126:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** After this, you have to ensure that the transfer is done correctly. The check is done
127:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** through HAL_SD_GetCardState() function for SD card state.
128:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** You could also check the DMA transfer process through the SD Rx interrupt event.
129:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
130:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** (+) You can read from SD card in Interrupt mode by using function HAL_SD_ReadBlocks_IT().
131:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** This function support only 512-bytes block length (the block size should be
132:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** chosen as 512 bytes).
133:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** You can choose either one block read operation or multiple block read operation
134:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** by adjusting the "NumberOfBlocks" parameter.
135:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** After this, you have to ensure that the transfer is done correctly. The check is done
136:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** through HAL_SD_GetCardState() function for SD card state.
137:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** You could also check the IT transfer process through the SD Rx interrupt event.
138:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
139:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** *** SD Card Write operation ***
140:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** ===============================
141:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** [..]
142:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** (+) You can write to SD card in polling mode by using function HAL_SD_WriteBlocks().
143:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** This function support only 512-bytes block length (the block size should be
144:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** chosen as 512 bytes).
145:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** You can choose either one block read operation or multiple block read operation
ARM GAS /tmp/cc2oBAwl.s page 4
146:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** by adjusting the "NumberOfBlocks" parameter.
147:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** After this, you have to ensure that the transfer is done correctly. The check is done
148:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** through HAL_SD_GetCardState() function for SD card state.
149:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
150:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** (+) You can write to SD card in DMA mode by using function HAL_SD_WriteBlocks_DMA().
151:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** This function support only 512-bytes block length (the block size should be
152:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** chosen as 512 bytes).
153:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** You can choose either one block read operation or multiple block read operation
154:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** by adjusting the "NumberOfBlocks" parameter.
155:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** After this, you have to ensure that the transfer is done correctly. The check is done
156:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** through HAL_SD_GetCardState() function for SD card state.
157:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** You could also check the DMA transfer process through the SD Tx interrupt event.
158:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
159:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** (+) You can write to SD card in Interrupt mode by using function HAL_SD_WriteBlocks_IT().
160:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** This function support only 512-bytes block length (the block size should be
161:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** chosen as 512 bytes).
162:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** You can choose either one block read operation or multiple block read operation
163:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** by adjusting the "NumberOfBlocks" parameter.
164:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** After this, you have to ensure that the transfer is done correctly. The check is done
165:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** through HAL_SD_GetCardState() function for SD card state.
166:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** You could also check the IT transfer process through the SD Tx interrupt event.
167:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
168:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** *** SD card status ***
169:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** ======================
170:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** [..]
171:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** (+) The SD Status contains status bits that are related to the SD Memory
172:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** Card proprietary features. To get SD card status use the HAL_SD_GetCardStatus().
173:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
174:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** *** SD card information ***
175:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** ===========================
176:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** [..]
177:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** (+) To get SD card information, you can use the function HAL_SD_GetCardInfo().
178:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** It returns useful information about the SD card such as block size, card type,
179:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** block number ...
180:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
181:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** *** SD card CSD register ***
182:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** ============================
183:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** (+) The HAL_SD_GetCardCSD() API allows to get the parameters of the CSD register.
184:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** Some of the CSD parameters are useful for card initialization and identification.
185:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
186:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** *** SD card CID register ***
187:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** ============================
188:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** (+) The HAL_SD_GetCardCID() API allows to get the parameters of the CID register.
189:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** Some of the CSD parameters are useful for card initialization and identification.
190:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
191:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** *** SD HAL driver macros list ***
192:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** ==================================
193:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** [..]
194:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** Below the list of most used macros in SD HAL driver.
195:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
196:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** (+) __HAL_SD_ENABLE : Enable the SD device
197:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** (+) __HAL_SD_DISABLE : Disable the SD device
198:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** (+) __HAL_SD_DMA_ENABLE: Enable the SDMMC DMA transfer
199:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** (+) __HAL_SD_DMA_DISABLE: Disable the SDMMC DMA transfer
200:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** (+) __HAL_SD_ENABLE_IT: Enable the SD device interrupt
201:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** (+) __HAL_SD_DISABLE_IT: Disable the SD device interrupt
202:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** (+) __HAL_SD_GET_FLAG:Check whether the specified SD flag is set or not
ARM GAS /tmp/cc2oBAwl.s page 5
203:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** (+) __HAL_SD_CLEAR_FLAG: Clear the SD's pending flags
204:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
205:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** (@) You can refer to the SD HAL driver header file for more useful macros
206:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
207:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** *** Callback registration ***
208:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** =============================================
209:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** [..]
210:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** The compilation define USE_HAL_SD_REGISTER_CALLBACKS when set to 1
211:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** allows the user to configure dynamically the driver callbacks.
212:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
213:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** Use Functions HAL_SD_RegisterCallback() to register a user callback,
214:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** it allows to register following callbacks:
215:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** (+) TxCpltCallback : callback when a transmission transfer is completed.
216:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** (+) RxCpltCallback : callback when a reception transfer is completed.
217:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** (+) ErrorCallback : callback when error occurs.
218:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** (+) AbortCpltCallback : callback when abort is completed.
219:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** (+) MspInitCallback : SD MspInit.
220:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** (+) MspDeInitCallback : SD MspDeInit.
221:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** This function takes as parameters the HAL peripheral handle, the Callback ID
222:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** and a pointer to the user callback function.
223:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
224:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** Use function HAL_SD_UnRegisterCallback() to reset a callback to the default
225:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** weak (surcharged) function. It allows to reset following callbacks:
226:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** (+) TxCpltCallback : callback when a transmission transfer is completed.
227:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** (+) RxCpltCallback : callback when a reception transfer is completed.
228:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** (+) ErrorCallback : callback when error occurs.
229:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** (+) AbortCpltCallback : callback when abort is completed.
230:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** (+) MspInitCallback : SD MspInit.
231:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** (+) MspDeInitCallback : SD MspDeInit.
232:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** This function) takes as parameters the HAL peripheral handle and the Callback ID.
233:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
234:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** By default, after the HAL_SD_Init and if the state is HAL_SD_STATE_RESET
235:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** all callbacks are reset to the corresponding legacy weak (surcharged) functions.
236:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** Exception done for MspInit and MspDeInit callbacks that are respectively
237:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** reset to the legacy weak (surcharged) functions in the HAL_SD_Init
238:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** and HAL_SD_DeInit only when these callbacks are null (not registered beforehand).
239:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** If not, MspInit or MspDeInit are not null, the HAL_SD_Init and HAL_SD_DeInit
240:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** keep and use the user MspInit/MspDeInit callbacks (registered beforehand)
241:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
242:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** Callbacks can be registered/unregistered in READY state only.
243:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** Exception done for MspInit/MspDeInit callbacks that can be registered/unregistered
244:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** in READY or RESET state, thus registered (user) MspInit/DeInit callbacks can be used
245:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** during the Init/DeInit.
246:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** In that case first register the MspInit/MspDeInit user callbacks
247:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** using HAL_SD_RegisterCallback before calling HAL_SD_DeInit
248:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** or HAL_SD_Init function.
249:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
250:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** When The compilation define USE_HAL_SD_REGISTER_CALLBACKS is set to 0 or
251:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** not defined, the callback registering feature is not available
252:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** and weak (surcharged) callbacks are used.
253:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
254:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** @endverbatim
255:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** ******************************************************************************
256:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** */
257:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
258:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Includes ------------------------------------------------------------------*/
259:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** #include "stm32f7xx_hal.h"
ARM GAS /tmp/cc2oBAwl.s page 6
260:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
261:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** #if defined(SDMMC1)
262:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
263:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /** @addtogroup STM32F7xx_HAL_Driver
264:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @{
265:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** */
266:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
267:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /** @addtogroup SD
268:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @{
269:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** */
270:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
271:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** #ifdef HAL_SD_MODULE_ENABLED
272:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
273:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Private typedef -----------------------------------------------------------*/
274:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Private define ------------------------------------------------------------*/
275:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /** @addtogroup SD_Private_Defines
276:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @{
277:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** */
278:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
279:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /**
280:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @}
281:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** */
282:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
283:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Private macro -------------------------------------------------------------*/
284:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Private variables ---------------------------------------------------------*/
285:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Private function prototypes -----------------------------------------------*/
286:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Private functions ---------------------------------------------------------*/
287:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /** @defgroup SD_Private_Functions SD Private Functions
288:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @{
289:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** */
290:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** static uint32_t SD_InitCard(SD_HandleTypeDef *hsd);
291:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** static uint32_t SD_PowerON(SD_HandleTypeDef *hsd);
292:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** static uint32_t SD_SendSDStatus(SD_HandleTypeDef *hsd, uint32_t *pSDstatus);
293:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** static uint32_t SD_SendStatus(SD_HandleTypeDef *hsd, uint32_t *pCardStatus);
294:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** static uint32_t SD_WideBus_Enable(SD_HandleTypeDef *hsd);
295:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** static uint32_t SD_WideBus_Disable(SD_HandleTypeDef *hsd);
296:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** static uint32_t SD_FindSCR(SD_HandleTypeDef *hsd, uint32_t *pSCR);
297:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** static void SD_PowerOFF(SD_HandleTypeDef *hsd);
298:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** static void SD_Write_IT(SD_HandleTypeDef *hsd);
299:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** static void SD_Read_IT(SD_HandleTypeDef *hsd);
300:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** static void SD_DMATransmitCplt(DMA_HandleTypeDef *hdma);
301:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** static void SD_DMAReceiveCplt(DMA_HandleTypeDef *hdma);
302:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** static void SD_DMAError(DMA_HandleTypeDef *hdma);
303:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** static void SD_DMATxAbort(DMA_HandleTypeDef *hdma);
304:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** static void SD_DMARxAbort(DMA_HandleTypeDef *hdma);
305:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /**
306:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @}
307:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** */
308:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
309:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Exported functions --------------------------------------------------------*/
310:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /** @addtogroup SD_Exported_Functions
311:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @{
312:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** */
313:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
314:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /** @addtogroup SD_Exported_Functions_Group1
315:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @brief Initialization and de-initialization functions
316:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** *
ARM GAS /tmp/cc2oBAwl.s page 7
317:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** @verbatim
318:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** ==============================================================================
319:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** ##### Initialization and de-initialization functions #####
320:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** ==============================================================================
321:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** [..]
322:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** This section provides functions allowing to initialize/de-initialize the SD
323:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** card device to be ready for use.
324:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
325:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** @endverbatim
326:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @{
327:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** */
328:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
329:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /**
330:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @brief Initializes the SD according to the specified parameters in the
331:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** SD_HandleTypeDef and create the associated handle.
332:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @param hsd: Pointer to the SD handle
333:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @retval HAL status
334:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** */
335:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** HAL_StatusTypeDef HAL_SD_Init(SD_HandleTypeDef *hsd)
336:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
337:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Check the SD handle allocation */
338:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(hsd == NULL)
339:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
340:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
341:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
342:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
343:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Check the parameters */
344:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** assert_param(IS_SDMMC_ALL_INSTANCE(hsd->Instance));
345:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** assert_param(IS_SDMMC_CLOCK_EDGE(hsd->Init.ClockEdge));
346:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** assert_param(IS_SDMMC_CLOCK_BYPASS(hsd->Init.ClockBypass));
347:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** assert_param(IS_SDMMC_CLOCK_POWER_SAVE(hsd->Init.ClockPowerSave));
348:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** assert_param(IS_SDMMC_BUS_WIDE(hsd->Init.BusWide));
349:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** assert_param(IS_SDMMC_HARDWARE_FLOW_CONTROL(hsd->Init.HardwareFlowControl));
350:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** assert_param(IS_SDMMC_CLKDIV(hsd->Init.ClockDiv));
351:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
352:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(hsd->State == HAL_SD_STATE_RESET)
353:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
354:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Allocate lock resource and initialize it */
355:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Lock = HAL_UNLOCKED;
356:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** #if defined (USE_HAL_SD_REGISTER_CALLBACKS) && (USE_HAL_SD_REGISTER_CALLBACKS == 1U)
357:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Reset Callback pointers in HAL_SD_STATE_RESET only */
358:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->TxCpltCallback = HAL_SD_TxCpltCallback;
359:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->RxCpltCallback = HAL_SD_RxCpltCallback;
360:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCallback = HAL_SD_ErrorCallback;
361:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->AbortCpltCallback = HAL_SD_AbortCallback;
362:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
363:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(hsd->MspInitCallback == NULL)
364:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
365:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->MspInitCallback = HAL_SD_MspInit;
366:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
367:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
368:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Init the low level hardware */
369:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->MspInitCallback(hsd);
370:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** #else
371:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Init the low level hardware : GPIO, CLOCK, CORTEX...etc */
372:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** HAL_SD_MspInit(hsd);
373:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** #endif /* USE_HAL_SD_REGISTER_CALLBACKS */
ARM GAS /tmp/cc2oBAwl.s page 8
374:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
375:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
376:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_BUSY;
377:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
378:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Initialize the Card parameters */
379:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if (HAL_SD_InitCard(hsd) != HAL_OK)
380:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
381:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
382:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
383:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
384:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Initialize the error code */
385:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode = HAL_SD_ERROR_NONE;
386:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
387:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Initialize the SD operation */
388:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Context = SD_CONTEXT_NONE;
389:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
390:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Initialize the SD state */
391:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
392:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
393:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_OK;
394:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
395:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
396:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /**
397:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @brief Initializes the SD Card.
398:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @param hsd: Pointer to SD handle
399:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @note This function initializes the SD card. It could be used when a card
400:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** re-initialization is needed.
401:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @retval HAL status
402:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** */
403:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** HAL_StatusTypeDef HAL_SD_InitCard(SD_HandleTypeDef *hsd)
404:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
405:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t errorstate;
406:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** HAL_StatusTypeDef status;
407:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** SD_InitTypeDef Init;
408:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
409:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Default SDMMC peripheral configuration for SD card initialization */
410:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** Init.ClockEdge = SDMMC_CLOCK_EDGE_RISING;
411:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** Init.ClockBypass = SDMMC_CLOCK_BYPASS_DISABLE;
412:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** Init.ClockPowerSave = SDMMC_CLOCK_POWER_SAVE_DISABLE;
413:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** Init.BusWide = SDMMC_BUS_WIDE_1B;
414:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** Init.HardwareFlowControl = SDMMC_HARDWARE_FLOW_CONTROL_DISABLE;
415:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** Init.ClockDiv = SDMMC_INIT_CLK_DIV;
416:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
417:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Initialize SDMMC peripheral interface with default configuration */
418:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** status = SDMMC_Init(hsd->Instance, Init);
419:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(status != HAL_OK)
420:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
421:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
422:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
423:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
424:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Disable SDMMC Clock */
425:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** __HAL_SD_DISABLE(hsd);
426:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
427:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Set Power State to ON */
428:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** (void)SDMMC_PowerState_ON(hsd->Instance);
429:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
430:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Enable SDMMC Clock */
ARM GAS /tmp/cc2oBAwl.s page 9
431:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** __HAL_SD_ENABLE(hsd);
432:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
433:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Required power up waiting time before starting the SD initialization sequence */
434:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** HAL_Delay(2);
435:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
436:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Identify card operating voltage */
437:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** errorstate = SD_PowerON(hsd);
438:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
439:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
440:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
441:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= errorstate;
442:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
443:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
444:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
445:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Card initialization */
446:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** errorstate = SD_InitCard(hsd);
447:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
448:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
449:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
450:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= errorstate;
451:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
452:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
453:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
454:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Set Block Size for Card */
455:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** errorstate = SDMMC_CmdBlockLength(hsd->Instance, BLOCKSIZE);
456:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
457:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
458:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Clear all the static flags */
459:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** __HAL_SD_CLEAR_FLAG(hsd, SDMMC_STATIC_FLAGS);
460:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= errorstate;
461:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
462:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
463:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
464:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
465:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_OK;
466:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
467:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
468:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /**
469:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @brief De-Initializes the SD card.
470:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @param hsd: Pointer to SD handle
471:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @retval HAL status
472:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** */
473:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** HAL_StatusTypeDef HAL_SD_DeInit(SD_HandleTypeDef *hsd)
474:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
475:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Check the SD handle allocation */
476:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(hsd == NULL)
477:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
478:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
479:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
480:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
481:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Check the parameters */
482:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** assert_param(IS_SDMMC_ALL_INSTANCE(hsd->Instance));
483:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
484:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_BUSY;
485:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
486:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Set SD power state to off */
487:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** SD_PowerOFF(hsd);
ARM GAS /tmp/cc2oBAwl.s page 10
488:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
489:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** #if defined (USE_HAL_SD_REGISTER_CALLBACKS) && (USE_HAL_SD_REGISTER_CALLBACKS == 1U)
490:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(hsd->MspDeInitCallback == NULL)
491:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
492:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->MspDeInitCallback = HAL_SD_MspDeInit;
493:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
494:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
495:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* DeInit the low level hardware */
496:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->MspDeInitCallback(hsd);
497:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** #else
498:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* De-Initialize the MSP layer */
499:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** HAL_SD_MspDeInit(hsd);
500:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** #endif /* USE_HAL_SD_REGISTER_CALLBACKS */
501:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
502:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode = HAL_SD_ERROR_NONE;
503:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_RESET;
504:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
505:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_OK;
506:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
507:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
508:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
509:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /**
510:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @brief Initializes the SD MSP.
511:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @param hsd: Pointer to SD handle
512:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @retval None
513:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** */
514:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** __weak void HAL_SD_MspInit(SD_HandleTypeDef *hsd)
515:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
516:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Prevent unused argument(s) compilation warning */
517:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** UNUSED(hsd);
518:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
519:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* NOTE : This function should not be modified, when the callback is needed,
520:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** the HAL_SD_MspInit could be implemented in the user file
521:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** */
522:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
523:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
524:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /**
525:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @brief De-Initialize SD MSP.
526:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @param hsd: Pointer to SD handle
527:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @retval None
528:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** */
529:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** __weak void HAL_SD_MspDeInit(SD_HandleTypeDef *hsd)
530:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
531:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Prevent unused argument(s) compilation warning */
532:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** UNUSED(hsd);
533:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
534:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* NOTE : This function should not be modified, when the callback is needed,
535:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** the HAL_SD_MspDeInit could be implemented in the user file
536:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** */
537:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
538:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
539:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /**
540:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @}
541:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** */
542:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
543:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /** @addtogroup SD_Exported_Functions_Group2
544:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @brief Data transfer functions
ARM GAS /tmp/cc2oBAwl.s page 11
545:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** *
546:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** @verbatim
547:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** ==============================================================================
548:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** ##### IO operation functions #####
549:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** ==============================================================================
550:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** [..]
551:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** This subsection provides a set of functions allowing to manage the data
552:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** transfer from/to SD card.
553:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
554:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** @endverbatim
555:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @{
556:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** */
557:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
558:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /**
559:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @brief Reads block(s) from a specified address in a card. The Data transfer
560:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * is managed by polling mode.
561:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @note This API should be followed by a check on the card state through
562:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * HAL_SD_GetCardState().
563:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @param hsd: Pointer to SD handle
564:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @param pData: pointer to the buffer that will contain the received data
565:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @param BlockAdd: Block Address from where data is to be read
566:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @param NumberOfBlocks: Number of SD blocks to read
567:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @param Timeout: Specify timeout value
568:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @retval HAL status
569:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** */
570:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** HAL_StatusTypeDef HAL_SD_ReadBlocks(SD_HandleTypeDef *hsd, uint8_t *pData, uint32_t BlockAdd, uint3
571:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
572:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** SDMMC_DataInitTypeDef config;
573:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t errorstate;
574:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t tickstart = HAL_GetTick();
575:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t count, data, dataremaining;
576:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t add = BlockAdd;
577:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint8_t *tempbuff = pData;
578:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
579:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(NULL == pData)
580:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
581:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= HAL_SD_ERROR_PARAM;
582:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
583:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
584:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
585:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(hsd->State == HAL_SD_STATE_READY)
586:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
587:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode = HAL_SD_ERROR_NONE;
588:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
589:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if((add + NumberOfBlocks) > (hsd->SdCard.LogBlockNbr))
590:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
591:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= HAL_SD_ERROR_ADDR_OUT_OF_RANGE;
592:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
593:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
594:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
595:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_BUSY;
596:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
597:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Initialize data control register */
598:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Instance->DCTRL = 0U;
599:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
600:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(hsd->SdCard.CardType != CARD_SDHC_SDXC)
601:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
ARM GAS /tmp/cc2oBAwl.s page 12
602:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** add *= 512U;
603:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
604:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
605:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Configure the SD DPSM (Data Path State Machine) */
606:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.DataTimeOut = SDMMC_DATATIMEOUT;
607:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.DataLength = NumberOfBlocks * BLOCKSIZE;
608:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.DataBlockSize = SDMMC_DATABLOCK_SIZE_512B;
609:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.TransferDir = SDMMC_TRANSFER_DIR_TO_SDMMC;
610:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.TransferMode = SDMMC_TRANSFER_MODE_BLOCK;
611:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.DPSM = SDMMC_DPSM_ENABLE;
612:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** (void)SDMMC_ConfigData(hsd->Instance, &config);
613:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
614:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Read block(s) in polling mode */
615:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(NumberOfBlocks > 1U)
616:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
617:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Context = SD_CONTEXT_READ_MULTIPLE_BLOCK;
618:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
619:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Read Multi Block command */
620:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** errorstate = SDMMC_CmdReadMultiBlock(hsd->Instance, add);
621:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
622:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** else
623:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
624:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Context = SD_CONTEXT_READ_SINGLE_BLOCK;
625:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
626:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Read Single Block command */
627:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** errorstate = SDMMC_CmdReadSingleBlock(hsd->Instance, add);
628:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
629:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
630:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
631:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Clear all the static flags */
632:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** __HAL_SD_CLEAR_FLAG(hsd, SDMMC_STATIC_FLAGS);
633:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= errorstate;
634:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
635:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Context = SD_CONTEXT_NONE;
636:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
637:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
638:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
639:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Poll on SDMMC flags */
640:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** dataremaining = config.DataLength;
641:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** while(!__HAL_SD_GET_FLAG(hsd, SDMMC_FLAG_RXOVERR | SDMMC_FLAG_DCRCFAIL | SDMMC_FLAG_DTIMEOUT |
642:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
643:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(__HAL_SD_GET_FLAG(hsd, SDMMC_FLAG_RXFIFOHF) && (dataremaining > 0U))
644:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
645:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Read data from SDMMC Rx FIFO */
646:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** for(count = 0U; count < 8U; count++)
647:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
648:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** data = SDMMC_ReadFIFO(hsd->Instance);
649:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** *tempbuff = (uint8_t)(data & 0xFFU);
650:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** tempbuff++;
651:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** dataremaining--;
652:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** *tempbuff = (uint8_t)((data >> 8U) & 0xFFU);
653:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** tempbuff++;
654:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** dataremaining--;
655:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** *tempbuff = (uint8_t)((data >> 16U) & 0xFFU);
656:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** tempbuff++;
657:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** dataremaining--;
658:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** *tempbuff = (uint8_t)((data >> 24U) & 0xFFU);
ARM GAS /tmp/cc2oBAwl.s page 13
659:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** tempbuff++;
660:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** dataremaining--;
661:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
662:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
663:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
664:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(((HAL_GetTick()-tickstart) >= Timeout) || (Timeout == 0U))
665:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
666:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Clear all the static flags */
667:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** __HAL_SD_CLEAR_FLAG(hsd, SDMMC_STATIC_FLAGS);
668:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= HAL_SD_ERROR_TIMEOUT;
669:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State= HAL_SD_STATE_READY;
670:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Context = SD_CONTEXT_NONE;
671:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_TIMEOUT;
672:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
673:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
674:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
675:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Send stop transmission command in case of multiblock read */
676:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(__HAL_SD_GET_FLAG(hsd, SDMMC_FLAG_DATAEND) && (NumberOfBlocks > 1U))
677:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
678:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(hsd->SdCard.CardType != CARD_SECURED)
679:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
680:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Send stop transmission command */
681:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** errorstate = SDMMC_CmdStopTransfer(hsd->Instance);
682:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
683:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
684:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Clear all the static flags */
685:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** __HAL_SD_CLEAR_FLAG(hsd, SDMMC_STATIC_FLAGS);
686:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= errorstate;
687:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
688:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Context = SD_CONTEXT_NONE;
689:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
690:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
691:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
692:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
693:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
694:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Get error state */
695:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(__HAL_SD_GET_FLAG(hsd, SDMMC_FLAG_DTIMEOUT))
696:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
697:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Clear all the static flags */
698:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** __HAL_SD_CLEAR_FLAG(hsd, SDMMC_STATIC_FLAGS);
699:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= HAL_SD_ERROR_DATA_TIMEOUT;
700:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
701:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Context = SD_CONTEXT_NONE;
702:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
703:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
704:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** else if(__HAL_SD_GET_FLAG(hsd, SDMMC_FLAG_DCRCFAIL))
705:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
706:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Clear all the static flags */
707:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** __HAL_SD_CLEAR_FLAG(hsd, SDMMC_STATIC_FLAGS);
708:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= HAL_SD_ERROR_DATA_CRC_FAIL;
709:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
710:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Context = SD_CONTEXT_NONE;
711:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
712:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
713:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** else if(__HAL_SD_GET_FLAG(hsd, SDMMC_FLAG_RXOVERR))
714:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
715:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Clear all the static flags */
ARM GAS /tmp/cc2oBAwl.s page 14
716:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** __HAL_SD_CLEAR_FLAG(hsd, SDMMC_STATIC_FLAGS);
717:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= HAL_SD_ERROR_RX_OVERRUN;
718:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
719:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Context = SD_CONTEXT_NONE;
720:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
721:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
722:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** else
723:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
724:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Nothing to do */
725:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
726:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
727:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Empty FIFO if there is still any data */
728:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** while ((__HAL_SD_GET_FLAG(hsd, SDMMC_FLAG_RXDAVL)) && (dataremaining > 0U))
729:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
730:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** data = SDMMC_ReadFIFO(hsd->Instance);
731:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** *tempbuff = (uint8_t)(data & 0xFFU);
732:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** tempbuff++;
733:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** dataremaining--;
734:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** *tempbuff = (uint8_t)((data >> 8U) & 0xFFU);
735:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** tempbuff++;
736:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** dataremaining--;
737:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** *tempbuff = (uint8_t)((data >> 16U) & 0xFFU);
738:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** tempbuff++;
739:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** dataremaining--;
740:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** *tempbuff = (uint8_t)((data >> 24U) & 0xFFU);
741:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** tempbuff++;
742:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** dataremaining--;
743:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
744:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(((HAL_GetTick()-tickstart) >= Timeout) || (Timeout == 0U))
745:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
746:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Clear all the static flags */
747:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** __HAL_SD_CLEAR_FLAG(hsd, SDMMC_STATIC_FLAGS);
748:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= HAL_SD_ERROR_TIMEOUT;
749:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State= HAL_SD_STATE_READY;
750:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Context = SD_CONTEXT_NONE;
751:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
752:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
753:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
754:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
755:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Clear all the static flags */
756:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** __HAL_SD_CLEAR_FLAG(hsd, SDMMC_STATIC_DATA_FLAGS);
757:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
758:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
759:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
760:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_OK;
761:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
762:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** else
763:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
764:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= HAL_SD_ERROR_BUSY;
765:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
766:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
767:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
768:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
769:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /**
770:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @brief Allows to write block(s) to a specified address in a card. The Data
771:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * transfer is managed by polling mode.
772:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @note This API should be followed by a check on the card state through
ARM GAS /tmp/cc2oBAwl.s page 15
773:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * HAL_SD_GetCardState().
774:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @param hsd: Pointer to SD handle
775:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @param pData: pointer to the buffer that will contain the data to transmit
776:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @param BlockAdd: Block Address where data will be written
777:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @param NumberOfBlocks: Number of SD blocks to write
778:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @param Timeout: Specify timeout value
779:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @retval HAL status
780:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** */
781:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** HAL_StatusTypeDef HAL_SD_WriteBlocks(SD_HandleTypeDef *hsd, uint8_t *pData, uint32_t BlockAdd, uint
782:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
783:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** SDMMC_DataInitTypeDef config;
784:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t errorstate;
785:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t tickstart = HAL_GetTick();
786:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t count, data, dataremaining;
787:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t add = BlockAdd;
788:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint8_t *tempbuff = pData;
789:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
790:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(NULL == pData)
791:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
792:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= HAL_SD_ERROR_PARAM;
793:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
794:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
795:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
796:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(hsd->State == HAL_SD_STATE_READY)
797:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
798:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode = HAL_SD_ERROR_NONE;
799:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
800:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if((add + NumberOfBlocks) > (hsd->SdCard.LogBlockNbr))
801:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
802:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= HAL_SD_ERROR_ADDR_OUT_OF_RANGE;
803:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
804:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
805:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
806:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_BUSY;
807:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
808:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Initialize data control register */
809:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Instance->DCTRL = 0U;
810:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
811:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(hsd->SdCard.CardType != CARD_SDHC_SDXC)
812:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
813:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** add *= 512U;
814:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
815:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
816:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Configure the SD DPSM (Data Path State Machine) */
817:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.DataTimeOut = SDMMC_DATATIMEOUT;
818:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.DataLength = NumberOfBlocks * BLOCKSIZE;
819:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.DataBlockSize = SDMMC_DATABLOCK_SIZE_512B;
820:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.TransferDir = SDMMC_TRANSFER_DIR_TO_CARD;
821:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.TransferMode = SDMMC_TRANSFER_MODE_BLOCK;
822:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.DPSM = SDMMC_DPSM_ENABLE;
823:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** (void)SDMMC_ConfigData(hsd->Instance, &config);
824:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
825:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Write Blocks in Polling mode */
826:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(NumberOfBlocks > 1U)
827:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
828:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Context = SD_CONTEXT_WRITE_MULTIPLE_BLOCK;
829:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
ARM GAS /tmp/cc2oBAwl.s page 16
830:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Write Multi Block command */
831:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** errorstate = SDMMC_CmdWriteMultiBlock(hsd->Instance, add);
832:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
833:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** else
834:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
835:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Context = SD_CONTEXT_WRITE_SINGLE_BLOCK;
836:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
837:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Write Single Block command */
838:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** errorstate = SDMMC_CmdWriteSingleBlock(hsd->Instance, add);
839:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
840:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
841:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
842:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Clear all the static flags */
843:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** __HAL_SD_CLEAR_FLAG(hsd, SDMMC_STATIC_FLAGS);
844:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= errorstate;
845:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
846:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Context = SD_CONTEXT_NONE;
847:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
848:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
849:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
850:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Write block(s) in polling mode */
851:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** dataremaining = config.DataLength;
852:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** while(!__HAL_SD_GET_FLAG(hsd, SDMMC_FLAG_TXUNDERR | SDMMC_FLAG_DCRCFAIL | SDMMC_FLAG_DTIMEOUT |
853:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
854:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(__HAL_SD_GET_FLAG(hsd, SDMMC_FLAG_TXFIFOHE) && (dataremaining > 0U))
855:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
856:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Write data to SDMMC Tx FIFO */
857:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** for(count = 0U; count < 8U; count++)
858:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
859:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** data = (uint32_t)(*tempbuff);
860:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** tempbuff++;
861:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** dataremaining--;
862:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** data |= ((uint32_t)(*tempbuff) << 8U);
863:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** tempbuff++;
864:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** dataremaining--;
865:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** data |= ((uint32_t)(*tempbuff) << 16U);
866:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** tempbuff++;
867:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** dataremaining--;
868:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** data |= ((uint32_t)(*tempbuff) << 24U);
869:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** tempbuff++;
870:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** dataremaining--;
871:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** (void)SDMMC_WriteFIFO(hsd->Instance, &data);
872:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
873:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
874:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
875:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(((HAL_GetTick()-tickstart) >= Timeout) || (Timeout == 0U))
876:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
877:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Clear all the static flags */
878:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** __HAL_SD_CLEAR_FLAG(hsd, SDMMC_STATIC_FLAGS);
879:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= errorstate;
880:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
881:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Context = SD_CONTEXT_NONE;
882:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_TIMEOUT;
883:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
884:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
885:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
886:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Send stop transmission command in case of multiblock write */
ARM GAS /tmp/cc2oBAwl.s page 17
887:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(__HAL_SD_GET_FLAG(hsd, SDMMC_FLAG_DATAEND) && (NumberOfBlocks > 1U))
888:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
889:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(hsd->SdCard.CardType != CARD_SECURED)
890:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
891:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Send stop transmission command */
892:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** errorstate = SDMMC_CmdStopTransfer(hsd->Instance);
893:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
894:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
895:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Clear all the static flags */
896:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** __HAL_SD_CLEAR_FLAG(hsd, SDMMC_STATIC_FLAGS);
897:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= errorstate;
898:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
899:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Context = SD_CONTEXT_NONE;
900:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
901:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
902:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
903:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
904:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
905:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Get error state */
906:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(__HAL_SD_GET_FLAG(hsd, SDMMC_FLAG_DTIMEOUT))
907:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
908:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Clear all the static flags */
909:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** __HAL_SD_CLEAR_FLAG(hsd, SDMMC_STATIC_FLAGS);
910:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= HAL_SD_ERROR_DATA_TIMEOUT;
911:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
912:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Context = SD_CONTEXT_NONE;
913:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
914:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
915:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** else if(__HAL_SD_GET_FLAG(hsd, SDMMC_FLAG_DCRCFAIL))
916:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
917:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Clear all the static flags */
918:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** __HAL_SD_CLEAR_FLAG(hsd, SDMMC_STATIC_FLAGS);
919:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= HAL_SD_ERROR_DATA_CRC_FAIL;
920:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
921:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Context = SD_CONTEXT_NONE;
922:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
923:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
924:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** else if(__HAL_SD_GET_FLAG(hsd, SDMMC_FLAG_TXUNDERR))
925:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
926:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Clear all the static flags */
927:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** __HAL_SD_CLEAR_FLAG(hsd, SDMMC_STATIC_FLAGS);
928:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= HAL_SD_ERROR_TX_UNDERRUN;
929:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
930:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Context = SD_CONTEXT_NONE;
931:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
932:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
933:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** else
934:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
935:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Nothing to do */
936:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
937:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
938:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Clear all the static flags */
939:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** __HAL_SD_CLEAR_FLAG(hsd, SDMMC_STATIC_DATA_FLAGS);
940:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
941:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
942:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
943:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_OK;
ARM GAS /tmp/cc2oBAwl.s page 18
944:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
945:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** else
946:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
947:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= HAL_SD_ERROR_BUSY;
948:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
949:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
950:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
951:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
952:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /**
953:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @brief Reads block(s) from a specified address in a card. The Data transfer
954:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * is managed in interrupt mode.
955:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @note This API should be followed by a check on the card state through
956:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * HAL_SD_GetCardState().
957:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @note You could also check the IT transfer process through the SD Rx
958:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * interrupt event.
959:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @param hsd: Pointer to SD handle
960:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @param pData: Pointer to the buffer that will contain the received data
961:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @param BlockAdd: Block Address from where data is to be read
962:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @param NumberOfBlocks: Number of blocks to read.
963:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @retval HAL status
964:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** */
965:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** HAL_StatusTypeDef HAL_SD_ReadBlocks_IT(SD_HandleTypeDef *hsd, uint8_t *pData, uint32_t BlockAdd, ui
966:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
967:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** SDMMC_DataInitTypeDef config;
968:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t errorstate;
969:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t add = BlockAdd;
970:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
971:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(NULL == pData)
972:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
973:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= HAL_SD_ERROR_PARAM;
974:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
975:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
976:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
977:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(hsd->State == HAL_SD_STATE_READY)
978:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
979:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode = HAL_SD_ERROR_NONE;
980:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
981:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if((add + NumberOfBlocks) > (hsd->SdCard.LogBlockNbr))
982:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
983:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= HAL_SD_ERROR_ADDR_OUT_OF_RANGE;
984:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
985:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
986:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
987:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_BUSY;
988:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
989:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Initialize data control register */
990:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Instance->DCTRL = 0U;
991:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
992:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->pRxBuffPtr = pData;
993:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->RxXferSize = BLOCKSIZE * NumberOfBlocks;
994:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
995:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** __HAL_SD_ENABLE_IT(hsd, (SDMMC_IT_DCRCFAIL | SDMMC_IT_DTIMEOUT | SDMMC_IT_RXOVERR | SDMMC_IT_DA
996:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
997:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(hsd->SdCard.CardType != CARD_SDHC_SDXC)
998:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
999:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** add *= 512U;
1000:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
ARM GAS /tmp/cc2oBAwl.s page 19
1001:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1002:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Configure the SD DPSM (Data Path State Machine) */
1003:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.DataTimeOut = SDMMC_DATATIMEOUT;
1004:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.DataLength = BLOCKSIZE * NumberOfBlocks;
1005:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.DataBlockSize = SDMMC_DATABLOCK_SIZE_512B;
1006:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.TransferDir = SDMMC_TRANSFER_DIR_TO_SDMMC;
1007:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.TransferMode = SDMMC_TRANSFER_MODE_BLOCK;
1008:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.DPSM = SDMMC_DPSM_ENABLE;
1009:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** (void)SDMMC_ConfigData(hsd->Instance, &config);
1010:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1011:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Read Blocks in IT mode */
1012:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(NumberOfBlocks > 1U)
1013:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1014:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Context = (SD_CONTEXT_READ_MULTIPLE_BLOCK | SD_CONTEXT_IT);
1015:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1016:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Read Multi Block command */
1017:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** errorstate = SDMMC_CmdReadMultiBlock(hsd->Instance, add);
1018:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1019:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** else
1020:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1021:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Context = (SD_CONTEXT_READ_SINGLE_BLOCK | SD_CONTEXT_IT);
1022:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1023:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Read Single Block command */
1024:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** errorstate = SDMMC_CmdReadSingleBlock(hsd->Instance, add);
1025:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1026:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
1027:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1028:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Clear all the static flags */
1029:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** __HAL_SD_CLEAR_FLAG(hsd, SDMMC_STATIC_FLAGS);
1030:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= errorstate;
1031:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
1032:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Context = SD_CONTEXT_NONE;
1033:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
1034:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1035:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1036:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_OK;
1037:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1038:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** else
1039:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1040:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_BUSY;
1041:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1042:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1043:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1044:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /**
1045:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @brief Writes block(s) to a specified address in a card. The Data transfer
1046:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * is managed in interrupt mode.
1047:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @note This API should be followed by a check on the card state through
1048:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * HAL_SD_GetCardState().
1049:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @note You could also check the IT transfer process through the SD Tx
1050:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * interrupt event.
1051:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @param hsd: Pointer to SD handle
1052:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @param pData: Pointer to the buffer that will contain the data to transmit
1053:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @param BlockAdd: Block Address where data will be written
1054:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @param NumberOfBlocks: Number of blocks to write
1055:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @retval HAL status
1056:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** */
1057:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** HAL_StatusTypeDef HAL_SD_WriteBlocks_IT(SD_HandleTypeDef *hsd, uint8_t *pData, uint32_t BlockAdd, u
ARM GAS /tmp/cc2oBAwl.s page 20
1058:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1059:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** SDMMC_DataInitTypeDef config;
1060:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t errorstate;
1061:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t add = BlockAdd;
1062:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1063:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(NULL == pData)
1064:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1065:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= HAL_SD_ERROR_PARAM;
1066:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
1067:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1068:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1069:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(hsd->State == HAL_SD_STATE_READY)
1070:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1071:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode = HAL_SD_ERROR_NONE;
1072:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1073:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if((add + NumberOfBlocks) > (hsd->SdCard.LogBlockNbr))
1074:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1075:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= HAL_SD_ERROR_ADDR_OUT_OF_RANGE;
1076:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
1077:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1078:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1079:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_BUSY;
1080:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1081:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Initialize data control register */
1082:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Instance->DCTRL = 0U;
1083:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1084:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->pTxBuffPtr = pData;
1085:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->TxXferSize = BLOCKSIZE * NumberOfBlocks;
1086:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1087:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Enable transfer interrupts */
1088:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** __HAL_SD_ENABLE_IT(hsd, (SDMMC_IT_DCRCFAIL | SDMMC_IT_DTIMEOUT | SDMMC_IT_TXUNDERR | SDMMC_IT_D
1089:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1090:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(hsd->SdCard.CardType != CARD_SDHC_SDXC)
1091:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1092:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** add *= 512U;
1093:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1094:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1095:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Write Blocks in Polling mode */
1096:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(NumberOfBlocks > 1U)
1097:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1098:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Context = (SD_CONTEXT_WRITE_MULTIPLE_BLOCK| SD_CONTEXT_IT);
1099:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1100:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Write Multi Block command */
1101:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** errorstate = SDMMC_CmdWriteMultiBlock(hsd->Instance, add);
1102:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1103:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** else
1104:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1105:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Context = (SD_CONTEXT_WRITE_SINGLE_BLOCK | SD_CONTEXT_IT);
1106:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1107:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Write Single Block command */
1108:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** errorstate = SDMMC_CmdWriteSingleBlock(hsd->Instance, add);
1109:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1110:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
1111:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1112:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Clear all the static flags */
1113:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** __HAL_SD_CLEAR_FLAG(hsd, SDMMC_STATIC_FLAGS);
1114:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= errorstate;
ARM GAS /tmp/cc2oBAwl.s page 21
1115:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
1116:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Context = SD_CONTEXT_NONE;
1117:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
1118:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1119:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1120:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Configure the SD DPSM (Data Path State Machine) */
1121:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.DataTimeOut = SDMMC_DATATIMEOUT;
1122:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.DataLength = BLOCKSIZE * NumberOfBlocks;
1123:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.DataBlockSize = SDMMC_DATABLOCK_SIZE_512B;
1124:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.TransferDir = SDMMC_TRANSFER_DIR_TO_CARD;
1125:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.TransferMode = SDMMC_TRANSFER_MODE_BLOCK;
1126:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.DPSM = SDMMC_DPSM_ENABLE;
1127:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** (void)SDMMC_ConfigData(hsd->Instance, &config);
1128:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1129:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_OK;
1130:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1131:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** else
1132:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1133:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_BUSY;
1134:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1135:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1136:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1137:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /**
1138:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @brief Reads block(s) from a specified address in a card. The Data transfer
1139:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * is managed by DMA mode.
1140:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @note This API should be followed by a check on the card state through
1141:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * HAL_SD_GetCardState().
1142:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @note You could also check the DMA transfer process through the SD Rx
1143:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * interrupt event.
1144:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @param hsd: Pointer SD handle
1145:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @param pData: Pointer to the buffer that will contain the received data
1146:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @param BlockAdd: Block Address from where data is to be read
1147:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @param NumberOfBlocks: Number of blocks to read.
1148:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @retval HAL status
1149:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** */
1150:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** HAL_StatusTypeDef HAL_SD_ReadBlocks_DMA(SD_HandleTypeDef *hsd, uint8_t *pData, uint32_t BlockAdd, u
1151:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1152:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** SDMMC_DataInitTypeDef config;
1153:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t errorstate;
1154:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t add = BlockAdd;
1155:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1156:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(NULL == pData)
1157:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1158:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= HAL_SD_ERROR_PARAM;
1159:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
1160:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1161:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1162:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(hsd->State == HAL_SD_STATE_READY)
1163:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1164:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode = HAL_SD_ERROR_NONE;
1165:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1166:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if((add + NumberOfBlocks) > (hsd->SdCard.LogBlockNbr))
1167:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1168:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= HAL_SD_ERROR_ADDR_OUT_OF_RANGE;
1169:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
1170:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1171:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
ARM GAS /tmp/cc2oBAwl.s page 22
1172:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_BUSY;
1173:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1174:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Initialize data control register */
1175:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Instance->DCTRL = 0U;
1176:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1177:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** __HAL_SD_ENABLE_IT(hsd, (SDMMC_IT_DCRCFAIL | SDMMC_IT_DTIMEOUT | SDMMC_IT_RXOVERR | SDMMC_IT_DA
1178:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1179:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Set the DMA transfer complete callback */
1180:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->hdmarx->XferCpltCallback = SD_DMAReceiveCplt;
1181:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1182:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Set the DMA error callback */
1183:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->hdmarx->XferErrorCallback = SD_DMAError;
1184:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1185:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Set the DMA Abort callback */
1186:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->hdmarx->XferAbortCallback = NULL;
1187:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1188:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Force DMA Direction */
1189:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->hdmarx->Init.Direction = DMA_PERIPH_TO_MEMORY;
1190:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** MODIFY_REG(hsd->hdmarx->Instance->CR, DMA_SxCR_DIR, hsd->hdmarx->Init.Direction);
1191:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1192:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Enable the DMA Channel */
1193:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(HAL_DMA_Start_IT(hsd->hdmarx, (uint32_t)&hsd->Instance->FIFO, (uint32_t)pData, (uint32_t)(BL
1194:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1195:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** __HAL_SD_DISABLE_IT(hsd, (SDMMC_IT_DCRCFAIL | SDMMC_IT_DTIMEOUT | SDMMC_IT_RXOVERR | SDMMC_IT
1196:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** __HAL_SD_CLEAR_FLAG(hsd, SDMMC_STATIC_FLAGS);
1197:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= HAL_SD_ERROR_DMA;
1198:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
1199:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
1200:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1201:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** else
1202:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1203:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Enable SD DMA transfer */
1204:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** __HAL_SD_DMA_ENABLE(hsd);
1205:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1206:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(hsd->SdCard.CardType != CARD_SDHC_SDXC)
1207:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1208:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** add *= 512U;
1209:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1210:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1211:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Configure the SD DPSM (Data Path State Machine) */
1212:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.DataTimeOut = SDMMC_DATATIMEOUT;
1213:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.DataLength = BLOCKSIZE * NumberOfBlocks;
1214:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.DataBlockSize = SDMMC_DATABLOCK_SIZE_512B;
1215:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.TransferDir = SDMMC_TRANSFER_DIR_TO_SDMMC;
1216:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.TransferMode = SDMMC_TRANSFER_MODE_BLOCK;
1217:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.DPSM = SDMMC_DPSM_ENABLE;
1218:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** (void)SDMMC_ConfigData(hsd->Instance, &config);
1219:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1220:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Read Blocks in DMA mode */
1221:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(NumberOfBlocks > 1U)
1222:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1223:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Context = (SD_CONTEXT_READ_MULTIPLE_BLOCK | SD_CONTEXT_DMA);
1224:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1225:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Read Multi Block command */
1226:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** errorstate = SDMMC_CmdReadMultiBlock(hsd->Instance, add);
1227:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1228:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** else
ARM GAS /tmp/cc2oBAwl.s page 23
1229:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1230:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Context = (SD_CONTEXT_READ_SINGLE_BLOCK | SD_CONTEXT_DMA);
1231:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1232:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Read Single Block command */
1233:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** errorstate = SDMMC_CmdReadSingleBlock(hsd->Instance, add);
1234:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1235:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
1236:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1237:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Clear all the static flags */
1238:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** __HAL_SD_CLEAR_FLAG(hsd, SDMMC_STATIC_FLAGS);
1239:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= errorstate;
1240:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
1241:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Context = SD_CONTEXT_NONE;
1242:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
1243:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1244:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1245:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_OK;
1246:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1247:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1248:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** else
1249:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1250:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_BUSY;
1251:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1252:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1253:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1254:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /**
1255:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @brief Writes block(s) to a specified address in a card. The Data transfer
1256:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * is managed by DMA mode.
1257:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @note This API should be followed by a check on the card state through
1258:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * HAL_SD_GetCardState().
1259:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @note You could also check the DMA transfer process through the SD Tx
1260:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * interrupt event.
1261:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @param hsd: Pointer to SD handle
1262:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @param pData: Pointer to the buffer that will contain the data to transmit
1263:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @param BlockAdd: Block Address where data will be written
1264:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @param NumberOfBlocks: Number of blocks to write
1265:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @retval HAL status
1266:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** */
1267:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** HAL_StatusTypeDef HAL_SD_WriteBlocks_DMA(SD_HandleTypeDef *hsd, uint8_t *pData, uint32_t BlockAdd,
1268:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1269:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** SDMMC_DataInitTypeDef config;
1270:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t errorstate;
1271:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t add = BlockAdd;
1272:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1273:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(NULL == pData)
1274:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1275:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= HAL_SD_ERROR_PARAM;
1276:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
1277:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1278:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1279:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(hsd->State == HAL_SD_STATE_READY)
1280:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1281:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode = HAL_SD_ERROR_NONE;
1282:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1283:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if((add + NumberOfBlocks) > (hsd->SdCard.LogBlockNbr))
1284:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1285:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= HAL_SD_ERROR_ADDR_OUT_OF_RANGE;
ARM GAS /tmp/cc2oBAwl.s page 24
1286:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
1287:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1288:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1289:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_BUSY;
1290:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1291:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Initialize data control register */
1292:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Instance->DCTRL = 0U;
1293:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1294:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Enable SD Error interrupts */
1295:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** __HAL_SD_ENABLE_IT(hsd, (SDMMC_IT_DCRCFAIL | SDMMC_IT_DTIMEOUT | SDMMC_IT_TXUNDERR));
1296:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1297:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Set the DMA transfer complete callback */
1298:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->hdmatx->XferCpltCallback = SD_DMATransmitCplt;
1299:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1300:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Set the DMA error callback */
1301:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->hdmatx->XferErrorCallback = SD_DMAError;
1302:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1303:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Set the DMA Abort callback */
1304:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->hdmatx->XferAbortCallback = NULL;
1305:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1306:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(hsd->SdCard.CardType != CARD_SDHC_SDXC)
1307:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1308:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** add *= 512U;
1309:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1310:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1311:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Write Blocks in Polling mode */
1312:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(NumberOfBlocks > 1U)
1313:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1314:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Context = (SD_CONTEXT_WRITE_MULTIPLE_BLOCK | SD_CONTEXT_DMA);
1315:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1316:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Write Multi Block command */
1317:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** errorstate = SDMMC_CmdWriteMultiBlock(hsd->Instance, add);
1318:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1319:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** else
1320:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1321:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Context = (SD_CONTEXT_WRITE_SINGLE_BLOCK | SD_CONTEXT_DMA);
1322:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1323:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Write Single Block command */
1324:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** errorstate = SDMMC_CmdWriteSingleBlock(hsd->Instance, add);
1325:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1326:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
1327:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1328:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Clear all the static flags */
1329:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** __HAL_SD_CLEAR_FLAG(hsd, SDMMC_STATIC_FLAGS);
1330:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= errorstate;
1331:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
1332:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Context = SD_CONTEXT_NONE;
1333:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
1334:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1335:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1336:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Enable SDMMC DMA transfer */
1337:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** __HAL_SD_DMA_ENABLE(hsd);
1338:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1339:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Force DMA Direction */
1340:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->hdmatx->Init.Direction = DMA_MEMORY_TO_PERIPH;
1341:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** MODIFY_REG(hsd->hdmatx->Instance->CR, DMA_SxCR_DIR, hsd->hdmatx->Init.Direction);
1342:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
ARM GAS /tmp/cc2oBAwl.s page 25
1343:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Enable the DMA Channel */
1344:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(HAL_DMA_Start_IT(hsd->hdmatx, (uint32_t)pData, (uint32_t)&hsd->Instance->FIFO, (uint32_t)(BL
1345:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1346:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** __HAL_SD_DISABLE_IT(hsd, (SDMMC_IT_DCRCFAIL | SDMMC_IT_DTIMEOUT | SDMMC_IT_TXUNDERR));
1347:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** __HAL_SD_CLEAR_FLAG(hsd, SDMMC_STATIC_FLAGS);
1348:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= HAL_SD_ERROR_DMA;
1349:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
1350:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Context = SD_CONTEXT_NONE;
1351:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
1352:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1353:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** else
1354:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1355:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Configure the SD DPSM (Data Path State Machine) */
1356:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.DataTimeOut = SDMMC_DATATIMEOUT;
1357:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.DataLength = BLOCKSIZE * NumberOfBlocks;
1358:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.DataBlockSize = SDMMC_DATABLOCK_SIZE_512B;
1359:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.TransferDir = SDMMC_TRANSFER_DIR_TO_CARD;
1360:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.TransferMode = SDMMC_TRANSFER_MODE_BLOCK;
1361:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.DPSM = SDMMC_DPSM_ENABLE;
1362:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** (void)SDMMC_ConfigData(hsd->Instance, &config);
1363:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1364:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_OK;
1365:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1366:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1367:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** else
1368:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1369:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_BUSY;
1370:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1371:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1372:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1373:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /**
1374:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @brief Erases the specified memory area of the given SD card.
1375:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @note This API should be followed by a check on the card state through
1376:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * HAL_SD_GetCardState().
1377:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @param hsd: Pointer to SD handle
1378:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @param BlockStartAdd: Start Block address
1379:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @param BlockEndAdd: End Block address
1380:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @retval HAL status
1381:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** */
1382:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** HAL_StatusTypeDef HAL_SD_Erase(SD_HandleTypeDef *hsd, uint32_t BlockStartAdd, uint32_t BlockEndAdd)
1383:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1384:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t errorstate;
1385:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t start_add = BlockStartAdd;
1386:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t end_add = BlockEndAdd;
1387:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1388:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(hsd->State == HAL_SD_STATE_READY)
1389:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1390:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode = HAL_SD_ERROR_NONE;
1391:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1392:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(end_add < start_add)
1393:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1394:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= HAL_SD_ERROR_PARAM;
1395:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
1396:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1397:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1398:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(end_add > (hsd->SdCard.LogBlockNbr))
1399:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
ARM GAS /tmp/cc2oBAwl.s page 26
1400:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= HAL_SD_ERROR_ADDR_OUT_OF_RANGE;
1401:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
1402:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1403:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1404:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_BUSY;
1405:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1406:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Check if the card command class supports erase command */
1407:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(((hsd->SdCard.Class) & SDMMC_CCCC_ERASE) == 0U)
1408:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1409:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Clear all the static flags */
1410:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** __HAL_SD_CLEAR_FLAG(hsd, SDMMC_STATIC_FLAGS);
1411:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= HAL_SD_ERROR_REQUEST_NOT_APPLICABLE;
1412:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
1413:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
1414:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1415:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1416:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if((SDMMC_GetResponse(hsd->Instance, SDMMC_RESP1) & SDMMC_CARD_LOCKED) == SDMMC_CARD_LOCKED)
1417:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1418:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Clear all the static flags */
1419:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** __HAL_SD_CLEAR_FLAG(hsd, SDMMC_STATIC_FLAGS);
1420:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= HAL_SD_ERROR_LOCK_UNLOCK_FAILED;
1421:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
1422:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
1423:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1424:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1425:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Get start and end block for high capacity cards */
1426:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(hsd->SdCard.CardType != CARD_SDHC_SDXC)
1427:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1428:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** start_add *= 512U;
1429:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** end_add *= 512U;
1430:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1431:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1432:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* According to sd-card spec 1.0 ERASE_GROUP_START (CMD32) and erase_group_end(CMD33) */
1433:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(hsd->SdCard.CardType != CARD_SECURED)
1434:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1435:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Send CMD32 SD_ERASE_GRP_START with argument as addr */
1436:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** errorstate = SDMMC_CmdSDEraseStartAdd(hsd->Instance, start_add);
1437:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
1438:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1439:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Clear all the static flags */
1440:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** __HAL_SD_CLEAR_FLAG(hsd, SDMMC_STATIC_FLAGS);
1441:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= errorstate;
1442:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
1443:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
1444:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1445:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1446:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Send CMD33 SD_ERASE_GRP_END with argument as addr */
1447:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** errorstate = SDMMC_CmdSDEraseEndAdd(hsd->Instance, end_add);
1448:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
1449:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1450:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Clear all the static flags */
1451:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** __HAL_SD_CLEAR_FLAG(hsd, SDMMC_STATIC_FLAGS);
1452:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= errorstate;
1453:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
1454:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
1455:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1456:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
ARM GAS /tmp/cc2oBAwl.s page 27
1457:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1458:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Send CMD38 ERASE */
1459:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** errorstate = SDMMC_CmdErase(hsd->Instance);
1460:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
1461:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1462:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Clear all the static flags */
1463:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** __HAL_SD_CLEAR_FLAG(hsd, SDMMC_STATIC_FLAGS);
1464:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= errorstate;
1465:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
1466:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
1467:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1468:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1469:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
1470:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1471:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_OK;
1472:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1473:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** else
1474:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1475:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_BUSY;
1476:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1477:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1478:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1479:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /**
1480:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @brief This function handles SD card interrupt request.
1481:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @param hsd: Pointer to SD handle
1482:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @retval None
1483:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** */
1484:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** void HAL_SD_IRQHandler(SD_HandleTypeDef *hsd)
1485:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1486:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t errorstate;
1487:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t context = hsd->Context;
1488:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1489:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Check for SDMMC interrupt flags */
1490:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if((__HAL_SD_GET_FLAG(hsd, SDMMC_FLAG_RXFIFOHF) != RESET) && ((context & SD_CONTEXT_IT) != 0U))
1491:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1492:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** SD_Read_IT(hsd);
1493:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1494:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1495:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** else if(__HAL_SD_GET_FLAG(hsd, SDMMC_FLAG_DATAEND) != RESET)
1496:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1497:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** __HAL_SD_CLEAR_FLAG(hsd, SDMMC_FLAG_DATAEND);
1498:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1499:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** __HAL_SD_DISABLE_IT(hsd, SDMMC_IT_DATAEND | SDMMC_IT_DCRCFAIL | SDMMC_IT_DTIMEOUT|\
1500:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** SDMMC_IT_TXUNDERR | SDMMC_IT_RXOVERR | SDMMC_IT_TXFIFOHE |\
1501:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** SDMMC_IT_RXFIFOHF);
1502:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1503:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Instance->DCTRL &= ~(SDMMC_DCTRL_DTEN);
1504:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1505:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if((context & SD_CONTEXT_IT) != 0U)
1506:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1507:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(((context & SD_CONTEXT_READ_MULTIPLE_BLOCK) != 0U) || ((context & SD_CONTEXT_WRITE_MULTIPL
1508:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1509:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** errorstate = SDMMC_CmdStopTransfer(hsd->Instance);
1510:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
1511:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1512:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= errorstate;
1513:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** #if defined (USE_HAL_SD_REGISTER_CALLBACKS) && (USE_HAL_SD_REGISTER_CALLBACKS == 1U)
ARM GAS /tmp/cc2oBAwl.s page 28
1514:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCallback(hsd);
1515:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** #else
1516:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** HAL_SD_ErrorCallback(hsd);
1517:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** #endif /* USE_HAL_SD_REGISTER_CALLBACKS */
1518:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1519:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1520:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1521:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Clear all the static flags */
1522:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** __HAL_SD_CLEAR_FLAG(hsd, SDMMC_STATIC_DATA_FLAGS);
1523:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1524:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
1525:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Context = SD_CONTEXT_NONE;
1526:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(((context & SD_CONTEXT_READ_SINGLE_BLOCK) != 0U) || ((context & SD_CONTEXT_READ_MULTIPLE_B
1527:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1528:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** #if defined (USE_HAL_SD_REGISTER_CALLBACKS) && (USE_HAL_SD_REGISTER_CALLBACKS == 1U)
1529:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->RxCpltCallback(hsd);
1530:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** #else
1531:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** HAL_SD_RxCpltCallback(hsd);
1532:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** #endif /* USE_HAL_SD_REGISTER_CALLBACKS */
1533:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1534:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** else
1535:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1536:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** #if defined (USE_HAL_SD_REGISTER_CALLBACKS) && (USE_HAL_SD_REGISTER_CALLBACKS == 1U)
1537:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->TxCpltCallback(hsd);
1538:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** #else
1539:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** HAL_SD_TxCpltCallback(hsd);
1540:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** #endif /* USE_HAL_SD_REGISTER_CALLBACKS */
1541:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1542:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1543:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** else if((context & SD_CONTEXT_DMA) != 0U)
1544:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1545:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if((context & SD_CONTEXT_WRITE_MULTIPLE_BLOCK) != 0U)
1546:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1547:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** errorstate = SDMMC_CmdStopTransfer(hsd->Instance);
1548:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
1549:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1550:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= errorstate;
1551:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** #if defined (USE_HAL_SD_REGISTER_CALLBACKS) && (USE_HAL_SD_REGISTER_CALLBACKS == 1U)
1552:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCallback(hsd);
1553:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** #else
1554:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** HAL_SD_ErrorCallback(hsd);
1555:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** #endif /* USE_HAL_SD_REGISTER_CALLBACKS */
1556:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1557:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1558:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(((context & SD_CONTEXT_READ_SINGLE_BLOCK) == 0U) && ((context & SD_CONTEXT_READ_MULTIPLE_B
1559:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1560:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Disable the DMA transfer for transmit request by setting the DMAEN bit
1561:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** in the SD DCTRL register */
1562:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Instance->DCTRL &= (uint32_t)~((uint32_t)SDMMC_DCTRL_DMAEN);
1563:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1564:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
1565:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1566:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** #if defined (USE_HAL_SD_REGISTER_CALLBACKS) && (USE_HAL_SD_REGISTER_CALLBACKS == 1U)
1567:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->TxCpltCallback(hsd);
1568:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** #else
1569:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** HAL_SD_TxCpltCallback(hsd);
1570:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** #endif /* USE_HAL_SD_REGISTER_CALLBACKS */
ARM GAS /tmp/cc2oBAwl.s page 29
1571:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1572:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1573:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** else
1574:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1575:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Nothing to do */
1576:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1577:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1578:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1579:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** else if((__HAL_SD_GET_FLAG(hsd, SDMMC_FLAG_TXFIFOHE) != RESET) && ((context & SD_CONTEXT_IT) != 0
1580:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1581:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** SD_Write_IT(hsd);
1582:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1583:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1584:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** else if(__HAL_SD_GET_FLAG(hsd, SDMMC_FLAG_DCRCFAIL | SDMMC_FLAG_DTIMEOUT | SDMMC_FLAG_RXOVERR | S
1585:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1586:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Set Error code */
1587:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(__HAL_SD_GET_FLAG(hsd, SDMMC_FLAG_DCRCFAIL) != RESET)
1588:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1589:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= HAL_SD_ERROR_DATA_CRC_FAIL;
1590:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1591:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(__HAL_SD_GET_FLAG(hsd, SDMMC_FLAG_DTIMEOUT) != RESET)
1592:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1593:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= HAL_SD_ERROR_DATA_TIMEOUT;
1594:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1595:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(__HAL_SD_GET_FLAG(hsd, SDMMC_FLAG_RXOVERR) != RESET)
1596:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1597:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= HAL_SD_ERROR_RX_OVERRUN;
1598:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1599:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(__HAL_SD_GET_FLAG(hsd, SDMMC_FLAG_TXUNDERR) != RESET)
1600:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1601:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= HAL_SD_ERROR_TX_UNDERRUN;
1602:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1603:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1604:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Clear All flags */
1605:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** __HAL_SD_CLEAR_FLAG(hsd, SDMMC_STATIC_DATA_FLAGS);
1606:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1607:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Disable all interrupts */
1608:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** __HAL_SD_DISABLE_IT(hsd, SDMMC_IT_DATAEND | SDMMC_IT_DCRCFAIL | SDMMC_IT_DTIMEOUT|\
1609:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** SDMMC_IT_TXUNDERR| SDMMC_IT_RXOVERR);
1610:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1611:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= SDMMC_CmdStopTransfer(hsd->Instance);
1612:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1613:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if((context & SD_CONTEXT_IT) != 0U)
1614:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1615:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Set the SD state to ready to be able to start again the process */
1616:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
1617:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Context = SD_CONTEXT_NONE;
1618:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** #if defined (USE_HAL_SD_REGISTER_CALLBACKS) && (USE_HAL_SD_REGISTER_CALLBACKS == 1U)
1619:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCallback(hsd);
1620:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** #else
1621:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** HAL_SD_ErrorCallback(hsd);
1622:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** #endif /* USE_HAL_SD_REGISTER_CALLBACKS */
1623:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1624:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** else if((context & SD_CONTEXT_DMA) != 0U)
1625:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1626:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Abort the SD DMA channel */
1627:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(((context & SD_CONTEXT_WRITE_SINGLE_BLOCK) != 0U) || ((context & SD_CONTEXT_WRITE_MULTIPLE
ARM GAS /tmp/cc2oBAwl.s page 30
1628:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1629:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Set the DMA Tx abort callback */
1630:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->hdmatx->XferAbortCallback = SD_DMATxAbort;
1631:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Abort DMA in IT mode */
1632:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(HAL_DMA_Abort_IT(hsd->hdmatx) != HAL_OK)
1633:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1634:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** SD_DMATxAbort(hsd->hdmatx);
1635:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1636:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1637:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** else if(((context & SD_CONTEXT_READ_SINGLE_BLOCK) != 0U) || ((context & SD_CONTEXT_READ_MULTI
1638:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1639:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Set the DMA Rx abort callback */
1640:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->hdmarx->XferAbortCallback = SD_DMARxAbort;
1641:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Abort DMA in IT mode */
1642:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(HAL_DMA_Abort_IT(hsd->hdmarx) != HAL_OK)
1643:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1644:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** SD_DMARxAbort(hsd->hdmarx);
1645:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1646:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1647:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** else
1648:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1649:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode = HAL_SD_ERROR_NONE;
1650:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
1651:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Context = SD_CONTEXT_NONE;
1652:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** #if defined (USE_HAL_SD_REGISTER_CALLBACKS) && (USE_HAL_SD_REGISTER_CALLBACKS == 1U)
1653:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->AbortCpltCallback(hsd);
1654:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** #else
1655:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** HAL_SD_AbortCallback(hsd);
1656:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** #endif /* USE_HAL_SD_REGISTER_CALLBACKS */
1657:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1658:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1659:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** else
1660:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1661:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Nothing to do */
1662:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1663:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1664:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** else
1665:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1666:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Nothing to do */
1667:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1668:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1669:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1670:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /**
1671:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @brief return the SD state
1672:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @param hsd: Pointer to sd handle
1673:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @retval HAL state
1674:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** */
1675:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** HAL_SD_StateTypeDef HAL_SD_GetState(SD_HandleTypeDef *hsd)
1676:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1677:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return hsd->State;
1678:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1679:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1680:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /**
1681:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @brief Return the SD error code
1682:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @param hsd : Pointer to a SD_HandleTypeDef structure that contains
1683:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * the configuration information.
1684:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @retval SD Error Code
ARM GAS /tmp/cc2oBAwl.s page 31
1685:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** */
1686:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t HAL_SD_GetError(SD_HandleTypeDef *hsd)
1687:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1688:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return hsd->ErrorCode;
1689:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1690:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1691:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /**
1692:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @brief Tx Transfer completed callbacks
1693:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @param hsd: Pointer to SD handle
1694:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @retval None
1695:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** */
1696:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** __weak void HAL_SD_TxCpltCallback(SD_HandleTypeDef *hsd)
1697:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1698:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Prevent unused argument(s) compilation warning */
1699:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** UNUSED(hsd);
1700:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1701:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* NOTE : This function should not be modified, when the callback is needed,
1702:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** the HAL_SD_TxCpltCallback can be implemented in the user file
1703:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** */
1704:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1705:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1706:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /**
1707:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @brief Rx Transfer completed callbacks
1708:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @param hsd: Pointer SD handle
1709:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @retval None
1710:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** */
1711:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** __weak void HAL_SD_RxCpltCallback(SD_HandleTypeDef *hsd)
1712:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1713:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Prevent unused argument(s) compilation warning */
1714:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** UNUSED(hsd);
1715:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1716:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* NOTE : This function should not be modified, when the callback is needed,
1717:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** the HAL_SD_RxCpltCallback can be implemented in the user file
1718:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** */
1719:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1720:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1721:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /**
1722:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @brief SD error callbacks
1723:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @param hsd: Pointer SD handle
1724:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @retval None
1725:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** */
1726:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** __weak void HAL_SD_ErrorCallback(SD_HandleTypeDef *hsd)
1727:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1728:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Prevent unused argument(s) compilation warning */
1729:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** UNUSED(hsd);
1730:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1731:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* NOTE : This function should not be modified, when the callback is needed,
1732:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** the HAL_SD_ErrorCallback can be implemented in the user file
1733:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** */
1734:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1735:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1736:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /**
1737:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @brief SD Abort callbacks
1738:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @param hsd: Pointer SD handle
1739:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @retval None
1740:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** */
1741:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** __weak void HAL_SD_AbortCallback(SD_HandleTypeDef *hsd)
ARM GAS /tmp/cc2oBAwl.s page 32
1742:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1743:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Prevent unused argument(s) compilation warning */
1744:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** UNUSED(hsd);
1745:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1746:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* NOTE : This function should not be modified, when the callback is needed,
1747:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** the HAL_SD_AbortCallback can be implemented in the user file
1748:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** */
1749:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1750:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1751:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** #if defined (USE_HAL_SD_REGISTER_CALLBACKS) && (USE_HAL_SD_REGISTER_CALLBACKS == 1U)
1752:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /**
1753:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @brief Register a User SD Callback
1754:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * To be used instead of the weak (surcharged) predefined callback
1755:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @param hsd : SD handle
1756:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @param CallbackID : ID of the callback to be registered
1757:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * This parameter can be one of the following values:
1758:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @arg @ref HAL_SD_TX_CPLT_CB_ID SD Tx Complete Callback ID
1759:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @arg @ref HAL_SD_RX_CPLT_CB_ID SD Rx Complete Callback ID
1760:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @arg @ref HAL_SD_ERROR_CB_ID SD Error Callback ID
1761:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @arg @ref HAL_SD_ABORT_CB_ID SD Abort Callback ID
1762:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @arg @ref HAL_SD_MSP_INIT_CB_ID SD MspInit Callback ID
1763:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @arg @ref HAL_SD_MSP_DEINIT_CB_ID SD MspDeInit Callback ID
1764:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @param pCallback : pointer to the Callback function
1765:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @retval status
1766:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** */
1767:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** HAL_StatusTypeDef HAL_SD_RegisterCallback(SD_HandleTypeDef *hsd, HAL_SD_CallbackIDTypeDef CallbackI
1768:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1769:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** HAL_StatusTypeDef status = HAL_OK;
1770:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1771:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(pCallback == NULL)
1772:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1773:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Update the error code */
1774:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= HAL_SD_ERROR_INVALID_CALLBACK;
1775:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
1776:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1777:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1778:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Process locked */
1779:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** __HAL_LOCK(hsd);
1780:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1781:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(hsd->State == HAL_SD_STATE_READY)
1782:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1783:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** switch (CallbackID)
1784:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1785:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** case HAL_SD_TX_CPLT_CB_ID :
1786:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->TxCpltCallback = pCallback;
1787:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** break;
1788:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** case HAL_SD_RX_CPLT_CB_ID :
1789:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->RxCpltCallback = pCallback;
1790:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** break;
1791:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** case HAL_SD_ERROR_CB_ID :
1792:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCallback = pCallback;
1793:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** break;
1794:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** case HAL_SD_ABORT_CB_ID :
1795:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->AbortCpltCallback = pCallback;
1796:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** break;
1797:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** case HAL_SD_MSP_INIT_CB_ID :
1798:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->MspInitCallback = pCallback;
ARM GAS /tmp/cc2oBAwl.s page 33
1799:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** break;
1800:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** case HAL_SD_MSP_DEINIT_CB_ID :
1801:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->MspDeInitCallback = pCallback;
1802:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** break;
1803:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** default :
1804:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Update the error code */
1805:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= HAL_SD_ERROR_INVALID_CALLBACK;
1806:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* update return status */
1807:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** status = HAL_ERROR;
1808:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** break;
1809:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1810:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1811:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** else if (hsd->State == HAL_SD_STATE_RESET)
1812:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1813:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** switch (CallbackID)
1814:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1815:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** case HAL_SD_MSP_INIT_CB_ID :
1816:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->MspInitCallback = pCallback;
1817:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** break;
1818:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** case HAL_SD_MSP_DEINIT_CB_ID :
1819:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->MspDeInitCallback = pCallback;
1820:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** break;
1821:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** default :
1822:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Update the error code */
1823:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= HAL_SD_ERROR_INVALID_CALLBACK;
1824:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* update return status */
1825:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** status = HAL_ERROR;
1826:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** break;
1827:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1828:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1829:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** else
1830:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1831:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Update the error code */
1832:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= HAL_SD_ERROR_INVALID_CALLBACK;
1833:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* update return status */
1834:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** status = HAL_ERROR;
1835:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1836:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1837:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Release Lock */
1838:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** __HAL_UNLOCK(hsd);
1839:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return status;
1840:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1841:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1842:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /**
1843:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @brief Unregister a User SD Callback
1844:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * SD Callback is redirected to the weak (surcharged) predefined callback
1845:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @param hsd : SD handle
1846:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @param CallbackID : ID of the callback to be unregistered
1847:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * This parameter can be one of the following values:
1848:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @arg @ref HAL_SD_TX_CPLT_CB_ID SD Tx Complete Callback ID
1849:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @arg @ref HAL_SD_RX_CPLT_CB_ID SD Rx Complete Callback ID
1850:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @arg @ref HAL_SD_ERROR_CB_ID SD Error Callback ID
1851:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @arg @ref HAL_SD_ABORT_CB_ID SD Abort Callback ID
1852:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @arg @ref HAL_SD_MSP_INIT_CB_ID SD MspInit Callback ID
1853:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @arg @ref HAL_SD_MSP_DEINIT_CB_ID SD MspDeInit Callback ID
1854:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @retval status
1855:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** */
ARM GAS /tmp/cc2oBAwl.s page 34
1856:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** HAL_StatusTypeDef HAL_SD_UnRegisterCallback(SD_HandleTypeDef *hsd, HAL_SD_CallbackIDTypeDef Callbac
1857:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1858:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** HAL_StatusTypeDef status = HAL_OK;
1859:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1860:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Process locked */
1861:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** __HAL_LOCK(hsd);
1862:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1863:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(hsd->State == HAL_SD_STATE_READY)
1864:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1865:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** switch (CallbackID)
1866:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1867:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** case HAL_SD_TX_CPLT_CB_ID :
1868:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->TxCpltCallback = HAL_SD_TxCpltCallback;
1869:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** break;
1870:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** case HAL_SD_RX_CPLT_CB_ID :
1871:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->RxCpltCallback = HAL_SD_RxCpltCallback;
1872:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** break;
1873:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** case HAL_SD_ERROR_CB_ID :
1874:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCallback = HAL_SD_ErrorCallback;
1875:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** break;
1876:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** case HAL_SD_ABORT_CB_ID :
1877:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->AbortCpltCallback = HAL_SD_AbortCallback;
1878:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** break;
1879:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** case HAL_SD_MSP_INIT_CB_ID :
1880:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->MspInitCallback = HAL_SD_MspInit;
1881:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** break;
1882:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** case HAL_SD_MSP_DEINIT_CB_ID :
1883:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->MspDeInitCallback = HAL_SD_MspDeInit;
1884:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** break;
1885:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** default :
1886:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Update the error code */
1887:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= HAL_SD_ERROR_INVALID_CALLBACK;
1888:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* update return status */
1889:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** status = HAL_ERROR;
1890:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** break;
1891:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1892:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1893:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** else if (hsd->State == HAL_SD_STATE_RESET)
1894:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1895:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** switch (CallbackID)
1896:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1897:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** case HAL_SD_MSP_INIT_CB_ID :
1898:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->MspInitCallback = HAL_SD_MspInit;
1899:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** break;
1900:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** case HAL_SD_MSP_DEINIT_CB_ID :
1901:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->MspDeInitCallback = HAL_SD_MspDeInit;
1902:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** break;
1903:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** default :
1904:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Update the error code */
1905:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= HAL_SD_ERROR_INVALID_CALLBACK;
1906:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* update return status */
1907:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** status = HAL_ERROR;
1908:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** break;
1909:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1910:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1911:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** else
1912:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
ARM GAS /tmp/cc2oBAwl.s page 35
1913:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Update the error code */
1914:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= HAL_SD_ERROR_INVALID_CALLBACK;
1915:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* update return status */
1916:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** status = HAL_ERROR;
1917:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1918:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1919:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Release Lock */
1920:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** __HAL_UNLOCK(hsd);
1921:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return status;
1922:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1923:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** #endif /* USE_HAL_SD_REGISTER_CALLBACKS */
1924:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1925:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /**
1926:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @}
1927:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** */
1928:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1929:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /** @addtogroup SD_Exported_Functions_Group3
1930:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @brief management functions
1931:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** *
1932:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** @verbatim
1933:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** ==============================================================================
1934:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** ##### Peripheral Control functions #####
1935:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** ==============================================================================
1936:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** [..]
1937:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** This subsection provides a set of functions allowing to control the SD card
1938:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** operations and get the related information
1939:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1940:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** @endverbatim
1941:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @{
1942:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** */
1943:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1944:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /**
1945:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @brief Returns information the information of the card which are stored on
1946:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * the CID register.
1947:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @param hsd: Pointer to SD handle
1948:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @param pCID: Pointer to a HAL_SD_CardCIDTypeDef structure that
1949:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * contains all CID register parameters
1950:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @retval HAL status
1951:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** */
1952:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** HAL_StatusTypeDef HAL_SD_GetCardCID(SD_HandleTypeDef *hsd, HAL_SD_CardCIDTypeDef *pCID)
1953:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1954:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** pCID->ManufacturerID = (uint8_t)((hsd->CID[0] & 0xFF000000U) >> 24U);
1955:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1956:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** pCID->OEM_AppliID = (uint16_t)((hsd->CID[0] & 0x00FFFF00U) >> 8U);
1957:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1958:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** pCID->ProdName1 = (((hsd->CID[0] & 0x000000FFU) << 24U) | ((hsd->CID[1] & 0xFFFFFF00U) >> 8U));
1959:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1960:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** pCID->ProdName2 = (uint8_t)(hsd->CID[1] & 0x000000FFU);
1961:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1962:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** pCID->ProdRev = (uint8_t)((hsd->CID[2] & 0xFF000000U) >> 24U);
1963:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1964:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** pCID->ProdSN = (((hsd->CID[2] & 0x00FFFFFFU) << 8U) | ((hsd->CID[3] & 0xFF000000U) >> 24U));
1965:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1966:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** pCID->Reserved1 = (uint8_t)((hsd->CID[3] & 0x00F00000U) >> 20U);
1967:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1968:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** pCID->ManufactDate = (uint16_t)((hsd->CID[3] & 0x000FFF00U) >> 8U);
1969:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
ARM GAS /tmp/cc2oBAwl.s page 36
1970:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** pCID->CID_CRC = (uint8_t)((hsd->CID[3] & 0x000000FEU) >> 1U);
1971:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1972:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** pCID->Reserved2 = 1U;
1973:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1974:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_OK;
1975:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1976:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1977:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /**
1978:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @brief Returns information the information of the card which are stored on
1979:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * the CSD register.
1980:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @param hsd: Pointer to SD handle
1981:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @param pCSD: Pointer to a HAL_SD_CardCSDTypeDef structure that
1982:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * contains all CSD register parameters
1983:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @retval HAL status
1984:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** */
1985:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** HAL_StatusTypeDef HAL_SD_GetCardCSD(SD_HandleTypeDef *hsd, HAL_SD_CardCSDTypeDef *pCSD)
1986:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1987:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** pCSD->CSDStruct = (uint8_t)((hsd->CSD[0] & 0xC0000000U) >> 30U);
1988:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1989:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** pCSD->SysSpecVersion = (uint8_t)((hsd->CSD[0] & 0x3C000000U) >> 26U);
1990:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1991:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** pCSD->Reserved1 = (uint8_t)((hsd->CSD[0] & 0x03000000U) >> 24U);
1992:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1993:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** pCSD->TAAC = (uint8_t)((hsd->CSD[0] & 0x00FF0000U) >> 16U);
1994:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1995:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** pCSD->NSAC = (uint8_t)((hsd->CSD[0] & 0x0000FF00U) >> 8U);
1996:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1997:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** pCSD->MaxBusClkFrec = (uint8_t)(hsd->CSD[0] & 0x000000FFU);
1998:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1999:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** pCSD->CardComdClasses = (uint16_t)((hsd->CSD[1] & 0xFFF00000U) >> 20U);
2000:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2001:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** pCSD->RdBlockLen = (uint8_t)((hsd->CSD[1] & 0x000F0000U) >> 16U);
2002:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2003:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** pCSD->PartBlockRead = (uint8_t)((hsd->CSD[1] & 0x00008000U) >> 15U);
2004:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2005:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** pCSD->WrBlockMisalign = (uint8_t)((hsd->CSD[1] & 0x00004000U) >> 14U);
2006:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2007:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** pCSD->RdBlockMisalign = (uint8_t)((hsd->CSD[1] & 0x00002000U) >> 13U);
2008:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2009:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** pCSD->DSRImpl = (uint8_t)((hsd->CSD[1] & 0x00001000U) >> 12U);
2010:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2011:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** pCSD->Reserved2 = 0U; /*!< Reserved */
2012:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2013:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(hsd->SdCard.CardType == CARD_SDSC)
2014:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2015:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** pCSD->DeviceSize = (((hsd->CSD[1] & 0x000003FFU) << 2U) | ((hsd->CSD[2] & 0xC0000000U) >> 30U))
2016:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2017:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** pCSD->MaxRdCurrentVDDMin = (uint8_t)((hsd->CSD[2] & 0x38000000U) >> 27U);
2018:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2019:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** pCSD->MaxRdCurrentVDDMax = (uint8_t)((hsd->CSD[2] & 0x07000000U) >> 24U);
2020:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2021:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** pCSD->MaxWrCurrentVDDMin = (uint8_t)((hsd->CSD[2] & 0x00E00000U) >> 21U);
2022:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2023:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** pCSD->MaxWrCurrentVDDMax = (uint8_t)((hsd->CSD[2] & 0x001C0000U) >> 18U);
2024:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2025:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** pCSD->DeviceSizeMul = (uint8_t)((hsd->CSD[2] & 0x00038000U) >> 15U);
2026:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
ARM GAS /tmp/cc2oBAwl.s page 37
2027:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->SdCard.BlockNbr = (pCSD->DeviceSize + 1U) ;
2028:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->SdCard.BlockNbr *= (1UL << ((pCSD->DeviceSizeMul & 0x07U) + 2U));
2029:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->SdCard.BlockSize = (1UL << (pCSD->RdBlockLen & 0x0FU));
2030:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2031:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->SdCard.LogBlockNbr = (hsd->SdCard.BlockNbr) * ((hsd->SdCard.BlockSize) / 512U);
2032:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->SdCard.LogBlockSize = 512U;
2033:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2034:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** else if(hsd->SdCard.CardType == CARD_SDHC_SDXC)
2035:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2036:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Byte 7 */
2037:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** pCSD->DeviceSize = (((hsd->CSD[1] & 0x0000003FU) << 16U) | ((hsd->CSD[2] & 0xFFFF0000U) >> 16U)
2038:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2039:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->SdCard.BlockNbr = ((pCSD->DeviceSize + 1U) * 1024U);
2040:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->SdCard.LogBlockNbr = hsd->SdCard.BlockNbr;
2041:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->SdCard.BlockSize = 512U;
2042:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->SdCard.LogBlockSize = hsd->SdCard.BlockSize;
2043:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2044:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** else
2045:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2046:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Clear all the static flags */
2047:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** __HAL_SD_CLEAR_FLAG(hsd, SDMMC_STATIC_FLAGS);
2048:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= HAL_SD_ERROR_UNSUPPORTED_FEATURE;
2049:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
2050:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
2051:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2052:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2053:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** pCSD->EraseGrSize = (uint8_t)((hsd->CSD[2] & 0x00004000U) >> 14U);
2054:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2055:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** pCSD->EraseGrMul = (uint8_t)((hsd->CSD[2] & 0x00003F80U) >> 7U);
2056:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2057:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** pCSD->WrProtectGrSize = (uint8_t)(hsd->CSD[2] & 0x0000007FU);
2058:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2059:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** pCSD->WrProtectGrEnable = (uint8_t)((hsd->CSD[3] & 0x80000000U) >> 31U);
2060:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2061:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** pCSD->ManDeflECC = (uint8_t)((hsd->CSD[3] & 0x60000000U) >> 29U);
2062:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2063:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** pCSD->WrSpeedFact = (uint8_t)((hsd->CSD[3] & 0x1C000000U) >> 26U);
2064:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2065:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** pCSD->MaxWrBlockLen= (uint8_t)((hsd->CSD[3] & 0x03C00000U) >> 22U);
2066:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2067:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** pCSD->WriteBlockPaPartial = (uint8_t)((hsd->CSD[3] & 0x00200000U) >> 21U);
2068:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2069:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** pCSD->Reserved3 = 0;
2070:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2071:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** pCSD->ContentProtectAppli = (uint8_t)((hsd->CSD[3] & 0x00010000U) >> 16U);
2072:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2073:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** pCSD->FileFormatGroup = (uint8_t)((hsd->CSD[3] & 0x00008000U) >> 15U);
2074:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2075:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** pCSD->CopyFlag = (uint8_t)((hsd->CSD[3] & 0x00004000U) >> 14U);
2076:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2077:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** pCSD->PermWrProtect = (uint8_t)((hsd->CSD[3] & 0x00002000U) >> 13U);
2078:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2079:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** pCSD->TempWrProtect = (uint8_t)((hsd->CSD[3] & 0x00001000U) >> 12U);
2080:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2081:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** pCSD->FileFormat = (uint8_t)((hsd->CSD[3] & 0x00000C00U) >> 10U);
2082:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2083:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** pCSD->ECC= (uint8_t)((hsd->CSD[3] & 0x00000300U) >> 8U);
ARM GAS /tmp/cc2oBAwl.s page 38
2084:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2085:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** pCSD->CSD_CRC = (uint8_t)((hsd->CSD[3] & 0x000000FEU) >> 1U);
2086:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2087:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** pCSD->Reserved4 = 1;
2088:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2089:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_OK;
2090:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2091:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2092:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /**
2093:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @brief Gets the SD status info.
2094:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @param hsd: Pointer to SD handle
2095:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @param pStatus: Pointer to the HAL_SD_CardStatusTypeDef structure that
2096:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * will contain the SD card status information
2097:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @retval HAL status
2098:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** */
2099:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** HAL_StatusTypeDef HAL_SD_GetCardStatus(SD_HandleTypeDef *hsd, HAL_SD_CardStatusTypeDef *pStatus)
2100:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2101:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t sd_status[16];
2102:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t errorstate;
2103:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** HAL_StatusTypeDef status = HAL_OK;
2104:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2105:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** errorstate = SD_SendSDStatus(hsd, sd_status);
2106:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
2107:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2108:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Clear all the static flags */
2109:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** __HAL_SD_CLEAR_FLAG(hsd, SDMMC_STATIC_FLAGS);
2110:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= errorstate;
2111:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
2112:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** status = HAL_ERROR;
2113:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2114:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** else
2115:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2116:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** pStatus->DataBusWidth = (uint8_t)((sd_status[0] & 0xC0U) >> 6U);
2117:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2118:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** pStatus->SecuredMode = (uint8_t)((sd_status[0] & 0x20U) >> 5U);
2119:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2120:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** pStatus->CardType = (uint16_t)(((sd_status[0] & 0x00FF0000U) >> 8U) | ((sd_status[0] & 0xFF0000
2121:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2122:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** pStatus->ProtectedAreaSize = (((sd_status[1] & 0xFFU) << 24U) | ((sd_status[1] & 0xFF00U) <<
2123:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** ((sd_status[1] & 0xFF0000U) >> 8U) | ((sd_status[1] & 0xFF000000U
2124:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2125:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** pStatus->SpeedClass = (uint8_t)(sd_status[2] & 0xFFU);
2126:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2127:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** pStatus->PerformanceMove = (uint8_t)((sd_status[2] & 0xFF00U) >> 8U);
2128:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2129:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** pStatus->AllocationUnitSize = (uint8_t)((sd_status[2] & 0xF00000U) >> 20U);
2130:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2131:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** pStatus->EraseSize = (uint16_t)(((sd_status[2] & 0xFF000000U) >> 16U) | (sd_status[3] & 0xFFU))
2132:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2133:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** pStatus->EraseTimeout = (uint8_t)((sd_status[3] & 0xFC00U) >> 10U);
2134:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2135:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** pStatus->EraseOffset = (uint8_t)((sd_status[3] & 0x0300U) >> 8U);
2136:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2137:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2138:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Set Block Size for Card */
2139:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** errorstate = SDMMC_CmdBlockLength(hsd->Instance, BLOCKSIZE);
2140:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
ARM GAS /tmp/cc2oBAwl.s page 39
2141:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2142:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Clear all the static flags */
2143:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** __HAL_SD_CLEAR_FLAG(hsd, SDMMC_STATIC_FLAGS);
2144:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode = errorstate;
2145:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
2146:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** status = HAL_ERROR;
2147:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2148:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2149:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return status;
2150:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2151:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2152:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /**
2153:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @brief Gets the SD card info.
2154:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @param hsd: Pointer to SD handle
2155:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @param pCardInfo: Pointer to the HAL_SD_CardInfoTypeDef structure that
2156:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * will contain the SD card status information
2157:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @retval HAL status
2158:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** */
2159:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** HAL_StatusTypeDef HAL_SD_GetCardInfo(SD_HandleTypeDef *hsd, HAL_SD_CardInfoTypeDef *pCardInfo)
2160:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2161:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** pCardInfo->CardType = (uint32_t)(hsd->SdCard.CardType);
2162:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** pCardInfo->CardVersion = (uint32_t)(hsd->SdCard.CardVersion);
2163:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** pCardInfo->Class = (uint32_t)(hsd->SdCard.Class);
2164:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** pCardInfo->RelCardAdd = (uint32_t)(hsd->SdCard.RelCardAdd);
2165:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** pCardInfo->BlockNbr = (uint32_t)(hsd->SdCard.BlockNbr);
2166:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** pCardInfo->BlockSize = (uint32_t)(hsd->SdCard.BlockSize);
2167:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** pCardInfo->LogBlockNbr = (uint32_t)(hsd->SdCard.LogBlockNbr);
2168:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** pCardInfo->LogBlockSize = (uint32_t)(hsd->SdCard.LogBlockSize);
2169:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2170:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_OK;
2171:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2172:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2173:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /**
2174:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @brief Enables wide bus operation for the requested card if supported by
2175:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * card.
2176:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @param hsd: Pointer to SD handle
2177:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @param WideMode: Specifies the SD card wide bus mode
2178:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * This parameter can be one of the following values:
2179:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @arg SDMMC_BUS_WIDE_8B: 8-bit data transfer
2180:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @arg SDMMC_BUS_WIDE_4B: 4-bit data transfer
2181:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @arg SDMMC_BUS_WIDE_1B: 1-bit data transfer
2182:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @retval HAL status
2183:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** */
2184:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** HAL_StatusTypeDef HAL_SD_ConfigWideBusOperation(SD_HandleTypeDef *hsd, uint32_t WideMode)
2185:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2186:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** SDMMC_InitTypeDef Init;
2187:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t errorstate;
2188:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** HAL_StatusTypeDef status = HAL_OK;
2189:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2190:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Check the parameters */
2191:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** assert_param(IS_SDMMC_BUS_WIDE(WideMode));
2192:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2193:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Change State */
2194:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_BUSY;
2195:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2196:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(hsd->SdCard.CardType != CARD_SECURED)
2197:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
ARM GAS /tmp/cc2oBAwl.s page 40
2198:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(WideMode == SDMMC_BUS_WIDE_8B)
2199:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2200:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= HAL_SD_ERROR_UNSUPPORTED_FEATURE;
2201:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2202:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** else if(WideMode == SDMMC_BUS_WIDE_4B)
2203:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2204:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** errorstate = SD_WideBus_Enable(hsd);
2205:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2206:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= errorstate;
2207:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2208:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** else if(WideMode == SDMMC_BUS_WIDE_1B)
2209:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2210:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** errorstate = SD_WideBus_Disable(hsd);
2211:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2212:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= errorstate;
2213:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2214:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** else
2215:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2216:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* WideMode is not a valid argument*/
2217:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= HAL_SD_ERROR_PARAM;
2218:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2219:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2220:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** else
2221:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2222:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* MMC Card does not support this feature */
2223:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= HAL_SD_ERROR_UNSUPPORTED_FEATURE;
2224:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2225:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2226:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(hsd->ErrorCode != HAL_SD_ERROR_NONE)
2227:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2228:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Clear all the static flags */
2229:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** __HAL_SD_CLEAR_FLAG(hsd, SDMMC_STATIC_FLAGS);
2230:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
2231:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** status = HAL_ERROR;
2232:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2233:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** else
2234:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2235:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Configure the SDMMC peripheral */
2236:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** Init.ClockEdge = hsd->Init.ClockEdge;
2237:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** Init.ClockBypass = hsd->Init.ClockBypass;
2238:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** Init.ClockPowerSave = hsd->Init.ClockPowerSave;
2239:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** Init.BusWide = WideMode;
2240:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** Init.HardwareFlowControl = hsd->Init.HardwareFlowControl;
2241:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** Init.ClockDiv = hsd->Init.ClockDiv;
2242:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** (void)SDMMC_Init(hsd->Instance, Init);
2243:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2244:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2245:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Set Block Size for Card */
2246:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** errorstate = SDMMC_CmdBlockLength(hsd->Instance, BLOCKSIZE);
2247:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
2248:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2249:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Clear all the static flags */
2250:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** __HAL_SD_CLEAR_FLAG(hsd, SDMMC_STATIC_FLAGS);
2251:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= errorstate;
2252:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** status = HAL_ERROR;
2253:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2254:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
ARM GAS /tmp/cc2oBAwl.s page 41
2255:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Change State */
2256:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
2257:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2258:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return status;
2259:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2260:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2261:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /**
2262:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @brief Gets the current sd card data state.
2263:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @param hsd: pointer to SD handle
2264:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @retval Card state
2265:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** */
2266:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** HAL_SD_CardStateTypeDef HAL_SD_GetCardState(SD_HandleTypeDef *hsd)
2267:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2268:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t cardstate;
2269:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t errorstate;
2270:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t resp1 = 0;
2271:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2272:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** errorstate = SD_SendStatus(hsd, &resp1);
2273:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
2274:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2275:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= errorstate;
2276:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2277:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2278:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** cardstate = ((resp1 >> 9U) & 0x0FU);
2279:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2280:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return (HAL_SD_CardStateTypeDef)cardstate;
2281:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2282:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2283:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /**
2284:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @brief Abort the current transfer and disable the SD.
2285:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @param hsd: pointer to a SD_HandleTypeDef structure that contains
2286:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * the configuration information for SD module.
2287:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @retval HAL status
2288:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** */
2289:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** HAL_StatusTypeDef HAL_SD_Abort(SD_HandleTypeDef *hsd)
2290:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2291:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** HAL_SD_CardStateTypeDef CardState;
2292:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t context = hsd->Context;
2293:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2294:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* DIsable All interrupts */
2295:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** __HAL_SD_DISABLE_IT(hsd, SDMMC_IT_DATAEND | SDMMC_IT_DCRCFAIL | SDMMC_IT_DTIMEOUT|\
2296:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** SDMMC_IT_TXUNDERR| SDMMC_IT_RXOVERR);
2297:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2298:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Clear All flags */
2299:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** __HAL_SD_CLEAR_FLAG(hsd, SDMMC_STATIC_DATA_FLAGS);
2300:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2301:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** CLEAR_BIT(hsd->Instance->DCTRL, SDMMC_DCTRL_DTEN);
2302:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2303:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if ((context & SD_CONTEXT_DMA) != 0U)
2304:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2305:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Disable the SD DMA request */
2306:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Instance->DCTRL &= (uint32_t)~((uint32_t)SDMMC_DCTRL_DMAEN);
2307:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2308:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Abort the SD DMA Tx channel */
2309:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if (((context & SD_CONTEXT_WRITE_SINGLE_BLOCK) != 0U) || ((context & SD_CONTEXT_WRITE_MULTIPLE_
2310:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2311:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(HAL_DMA_Abort(hsd->hdmatx) != HAL_OK)
ARM GAS /tmp/cc2oBAwl.s page 42
2312:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2313:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= HAL_SD_ERROR_DMA;
2314:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2315:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2316:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Abort the SD DMA Rx channel */
2317:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** else if (((context & SD_CONTEXT_READ_SINGLE_BLOCK) != 0U) || ((context & SD_CONTEXT_READ_MULTIP
2318:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2319:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(HAL_DMA_Abort(hsd->hdmarx) != HAL_OK)
2320:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2321:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= HAL_SD_ERROR_DMA;
2322:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2323:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2324:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** else
2325:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2326:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Nothing to do */
2327:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2328:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2329:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2330:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
2331:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2332:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Initialize the SD operation */
2333:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Context = SD_CONTEXT_NONE;
2334:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2335:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** CardState = HAL_SD_GetCardState(hsd);
2336:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if((CardState == HAL_SD_CARD_RECEIVING) || (CardState == HAL_SD_CARD_SENDING))
2337:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2338:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode = SDMMC_CmdStopTransfer(hsd->Instance);
2339:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2340:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(hsd->ErrorCode != HAL_SD_ERROR_NONE)
2341:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2342:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
2343:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2344:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_OK;
2345:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2346:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2347:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /**
2348:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @brief Abort the current transfer and disable the SD (IT mode).
2349:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @param hsd: pointer to a SD_HandleTypeDef structure that contains
2350:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * the configuration information for SD module.
2351:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @retval HAL status
2352:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** */
2353:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** HAL_StatusTypeDef HAL_SD_Abort_IT(SD_HandleTypeDef *hsd)
2354:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2355:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** HAL_SD_CardStateTypeDef CardState;
2356:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t context = hsd->Context;
2357:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2358:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Disable All interrupts */
2359:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** __HAL_SD_DISABLE_IT(hsd, SDMMC_IT_DATAEND | SDMMC_IT_DCRCFAIL | SDMMC_IT_DTIMEOUT|\
2360:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** SDMMC_IT_TXUNDERR| SDMMC_IT_RXOVERR);
2361:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2362:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** CLEAR_BIT(hsd->Instance->DCTRL, SDMMC_DCTRL_DTEN);
2363:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2364:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if ((context & SD_CONTEXT_DMA) != 0U)
2365:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2366:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Disable the SD DMA request */
2367:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Instance->DCTRL &= (uint32_t)~((uint32_t)SDMMC_DCTRL_DMAEN);
2368:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
ARM GAS /tmp/cc2oBAwl.s page 43
2369:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Abort the SD DMA Tx channel */
2370:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if (((context & SD_CONTEXT_WRITE_SINGLE_BLOCK) != 0U) || ((context & SD_CONTEXT_WRITE_MULTIPLE_
2371:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2372:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->hdmatx->XferAbortCallback = SD_DMATxAbort;
2373:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(HAL_DMA_Abort_IT(hsd->hdmatx) != HAL_OK)
2374:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2375:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->hdmatx = NULL;
2376:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2377:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2378:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Abort the SD DMA Rx channel */
2379:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** else if (((context & SD_CONTEXT_READ_SINGLE_BLOCK) != 0U) || ((context & SD_CONTEXT_READ_MULTIP
2380:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2381:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->hdmarx->XferAbortCallback = SD_DMARxAbort;
2382:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(HAL_DMA_Abort_IT(hsd->hdmarx) != HAL_OK)
2383:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2384:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->hdmarx = NULL;
2385:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2386:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2387:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** else
2388:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2389:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Nothing to do */
2390:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2391:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2392:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* No transfer ongoing on both DMA channels*/
2393:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** else
2394:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2395:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Clear All flags */
2396:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** __HAL_SD_CLEAR_FLAG(hsd, SDMMC_STATIC_DATA_FLAGS);
2397:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2398:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** CardState = HAL_SD_GetCardState(hsd);
2399:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
2400:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Context = SD_CONTEXT_NONE;
2401:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if((CardState == HAL_SD_CARD_RECEIVING) || (CardState == HAL_SD_CARD_SENDING))
2402:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2403:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode = SDMMC_CmdStopTransfer(hsd->Instance);
2404:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2405:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(hsd->ErrorCode != HAL_SD_ERROR_NONE)
2406:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2407:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
2408:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2409:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** else
2410:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2411:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** #if defined (USE_HAL_SD_REGISTER_CALLBACKS) && (USE_HAL_SD_REGISTER_CALLBACKS == 1U)
2412:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->AbortCpltCallback(hsd);
2413:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** #else
2414:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** HAL_SD_AbortCallback(hsd);
2415:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** #endif /* USE_HAL_SD_REGISTER_CALLBACKS */
2416:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2417:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2418:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2419:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_OK;
2420:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2421:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2422:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /**
2423:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @}
2424:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** */
2425:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
ARM GAS /tmp/cc2oBAwl.s page 44
2426:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /**
2427:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @}
2428:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** */
2429:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2430:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Private function ----------------------------------------------------------*/
2431:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /** @addtogroup SD_Private_Functions
2432:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @{
2433:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** */
2434:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2435:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /**
2436:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @brief DMA SD transmit process complete callback
2437:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @param hdma: DMA handle
2438:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @retval None
2439:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** */
2440:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** static void SD_DMATransmitCplt(DMA_HandleTypeDef *hdma)
2441:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
28 .loc 1 2441 1 view -0
29 .cfi_startproc
30 @ args = 0, pretend = 0, frame = 0
31 @ frame_needed = 0, uses_anonymous_args = 0
32 @ link register save eliminated.
2442:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** SD_HandleTypeDef* hsd = (SD_HandleTypeDef* )(hdma->Parent);
33 .loc 1 2442 3 view .LVU1
34 .loc 1 2442 21 is_stmt 0 view .LVU2
35 0000 836B ldr r3, [r0, #56]
36 .LVL1:
2443:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2444:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Enable DATAEND Interrupt */
2445:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** __HAL_SD_ENABLE_IT(hsd, (SDMMC_IT_DATAEND));
37 .loc 1 2445 3 is_stmt 1 view .LVU3
38 0002 1A68 ldr r2, [r3]
39 0004 D36B ldr r3, [r2, #60]
40 .LVL2:
41 .loc 1 2445 3 is_stmt 0 view .LVU4
42 0006 43F48073 orr r3, r3, #256
43 000a D363 str r3, [r2, #60]
44 .LVL3:
2446:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
45 .loc 1 2446 1 view .LVU5
46 000c 7047 bx lr
47 .cfi_endproc
48 .LFE168:
50 .section .text.SD_PowerON,"ax",%progbits
51 .align 1
52 .syntax unified
53 .thumb
54 .thumb_func
55 .fpu fpv5-d16
57 SD_PowerON:
58 .LVL4:
59 .LFB174:
2447:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2448:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /**
2449:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @brief DMA SD receive process complete callback
2450:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @param hdma: DMA handle
2451:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @retval None
2452:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** */
ARM GAS /tmp/cc2oBAwl.s page 45
2453:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** static void SD_DMAReceiveCplt(DMA_HandleTypeDef *hdma)
2454:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2455:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** SD_HandleTypeDef* hsd = (SD_HandleTypeDef* )(hdma->Parent);
2456:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t errorstate;
2457:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2458:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Send stop command in multiblock write */
2459:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(hsd->Context == (SD_CONTEXT_READ_MULTIPLE_BLOCK | SD_CONTEXT_DMA))
2460:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2461:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** errorstate = SDMMC_CmdStopTransfer(hsd->Instance);
2462:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
2463:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2464:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= errorstate;
2465:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** #if (USE_HAL_SD_REGISTER_CALLBACKS == 1)
2466:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCallback(hsd);
2467:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** #else
2468:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** HAL_SD_ErrorCallback(hsd);
2469:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** #endif
2470:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2471:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2472:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2473:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Disable the DMA transfer for transmit request by setting the DMAEN bit
2474:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** in the SD DCTRL register */
2475:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Instance->DCTRL &= (uint32_t)~((uint32_t)SDMMC_DCTRL_DMAEN);
2476:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2477:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Clear all the static flags */
2478:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** __HAL_SD_CLEAR_FLAG(hsd, SDMMC_STATIC_DATA_FLAGS);
2479:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2480:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
2481:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Context = SD_CONTEXT_NONE;
2482:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2483:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** #if (USE_HAL_SD_REGISTER_CALLBACKS == 1)
2484:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->RxCpltCallback(hsd);
2485:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** #else
2486:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** HAL_SD_RxCpltCallback(hsd);
2487:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** #endif
2488:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2489:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2490:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /**
2491:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @brief DMA SD communication error callback
2492:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @param hdma: DMA handle
2493:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @retval None
2494:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** */
2495:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** static void SD_DMAError(DMA_HandleTypeDef *hdma)
2496:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2497:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** SD_HandleTypeDef* hsd = (SD_HandleTypeDef* )(hdma->Parent);
2498:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** HAL_SD_CardStateTypeDef CardState;
2499:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t RxErrorCode, TxErrorCode;
2500:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2501:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* if DMA error is FIFO error ignore it */
2502:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(HAL_DMA_GetError(hdma) != HAL_DMA_ERROR_FE)
2503:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2504:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** RxErrorCode = hsd->hdmarx->ErrorCode;
2505:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** TxErrorCode = hsd->hdmatx->ErrorCode;
2506:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if((RxErrorCode == HAL_DMA_ERROR_TE) || (TxErrorCode == HAL_DMA_ERROR_TE))
2507:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2508:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Clear All flags */
2509:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** __HAL_SD_CLEAR_FLAG(hsd, SDMMC_STATIC_FLAGS);
ARM GAS /tmp/cc2oBAwl.s page 46
2510:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2511:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Disable All interrupts */
2512:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** __HAL_SD_DISABLE_IT(hsd, SDMMC_IT_DATAEND | SDMMC_IT_DCRCFAIL | SDMMC_IT_DTIMEOUT|\
2513:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** SDMMC_IT_TXUNDERR| SDMMC_IT_RXOVERR);
2514:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2515:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= HAL_SD_ERROR_DMA;
2516:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** CardState = HAL_SD_GetCardState(hsd);
2517:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if((CardState == HAL_SD_CARD_RECEIVING) || (CardState == HAL_SD_CARD_SENDING))
2518:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2519:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= SDMMC_CmdStopTransfer(hsd->Instance);
2520:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2521:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2522:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State= HAL_SD_STATE_READY;
2523:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Context = SD_CONTEXT_NONE;
2524:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2525:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2526:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** #if (USE_HAL_SD_REGISTER_CALLBACKS == 1)
2527:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCallback(hsd);
2528:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** #else
2529:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** HAL_SD_ErrorCallback(hsd);
2530:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** #endif
2531:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2532:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2533:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2534:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /**
2535:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @brief DMA SD Tx Abort callback
2536:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @param hdma: DMA handle
2537:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @retval None
2538:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** */
2539:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** static void SD_DMATxAbort(DMA_HandleTypeDef *hdma)
2540:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2541:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** SD_HandleTypeDef* hsd = (SD_HandleTypeDef* )(hdma->Parent);
2542:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** HAL_SD_CardStateTypeDef CardState;
2543:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2544:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Clear All flags */
2545:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** __HAL_SD_CLEAR_FLAG(hsd, SDMMC_STATIC_DATA_FLAGS);
2546:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2547:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** CardState = HAL_SD_GetCardState(hsd);
2548:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
2549:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Context = SD_CONTEXT_NONE;
2550:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if((CardState == HAL_SD_CARD_RECEIVING) || (CardState == HAL_SD_CARD_SENDING))
2551:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2552:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= SDMMC_CmdStopTransfer(hsd->Instance);
2553:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2554:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2555:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(hsd->ErrorCode == HAL_SD_ERROR_NONE)
2556:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2557:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** #if (USE_HAL_SD_REGISTER_CALLBACKS == 1)
2558:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->AbortCpltCallback(hsd);
2559:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** #else
2560:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** HAL_SD_AbortCallback(hsd);
2561:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** #endif
2562:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2563:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** else
2564:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2565:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** #if (USE_HAL_SD_REGISTER_CALLBACKS == 1)
2566:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCallback(hsd);
ARM GAS /tmp/cc2oBAwl.s page 47
2567:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** #else
2568:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** HAL_SD_ErrorCallback(hsd);
2569:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** #endif
2570:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2571:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2572:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2573:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /**
2574:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @brief DMA SD Rx Abort callback
2575:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @param hdma: DMA handle
2576:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @retval None
2577:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** */
2578:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** static void SD_DMARxAbort(DMA_HandleTypeDef *hdma)
2579:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2580:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** SD_HandleTypeDef* hsd = (SD_HandleTypeDef* )(hdma->Parent);
2581:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** HAL_SD_CardStateTypeDef CardState;
2582:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2583:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Clear All flags */
2584:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** __HAL_SD_CLEAR_FLAG(hsd, SDMMC_STATIC_DATA_FLAGS);
2585:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2586:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** CardState = HAL_SD_GetCardState(hsd);
2587:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
2588:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Context = SD_CONTEXT_NONE;
2589:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if((CardState == HAL_SD_CARD_RECEIVING) || (CardState == HAL_SD_CARD_SENDING))
2590:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2591:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= SDMMC_CmdStopTransfer(hsd->Instance);
2592:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2593:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2594:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(hsd->ErrorCode == HAL_SD_ERROR_NONE)
2595:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2596:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** #if (USE_HAL_SD_REGISTER_CALLBACKS == 1)
2597:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->AbortCpltCallback(hsd);
2598:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** #else
2599:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** HAL_SD_AbortCallback(hsd);
2600:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** #endif
2601:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2602:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** else
2603:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2604:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** #if (USE_HAL_SD_REGISTER_CALLBACKS == 1)
2605:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCallback(hsd);
2606:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** #else
2607:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** HAL_SD_ErrorCallback(hsd);
2608:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** #endif
2609:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2610:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2611:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2612:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /**
2613:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @brief Initializes the sd card.
2614:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @param hsd: Pointer to SD handle
2615:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @retval SD Card error state
2616:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** */
2617:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** static uint32_t SD_InitCard(SD_HandleTypeDef *hsd)
2618:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2619:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** HAL_SD_CardCSDTypeDef CSD;
2620:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t errorstate;
2621:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint16_t sd_rca = 1U;
2622:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2623:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Check the power State */
ARM GAS /tmp/cc2oBAwl.s page 48
2624:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(SDMMC_GetPowerState(hsd->Instance) == 0U)
2625:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2626:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Power off */
2627:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_SD_ERROR_REQUEST_NOT_APPLICABLE;
2628:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2629:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2630:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(hsd->SdCard.CardType != CARD_SECURED)
2631:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2632:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Send CMD2 ALL_SEND_CID */
2633:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** errorstate = SDMMC_CmdSendCID(hsd->Instance);
2634:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
2635:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2636:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return errorstate;
2637:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2638:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** else
2639:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2640:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Get Card identification number data */
2641:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->CID[0U] = SDMMC_GetResponse(hsd->Instance, SDMMC_RESP1);
2642:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->CID[1U] = SDMMC_GetResponse(hsd->Instance, SDMMC_RESP2);
2643:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->CID[2U] = SDMMC_GetResponse(hsd->Instance, SDMMC_RESP3);
2644:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->CID[3U] = SDMMC_GetResponse(hsd->Instance, SDMMC_RESP4);
2645:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2646:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2647:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2648:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(hsd->SdCard.CardType != CARD_SECURED)
2649:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2650:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Send CMD3 SET_REL_ADDR with argument 0 */
2651:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* SD Card publishes its RCA. */
2652:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** errorstate = SDMMC_CmdSetRelAdd(hsd->Instance, &sd_rca);
2653:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
2654:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2655:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return errorstate;
2656:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2657:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2658:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(hsd->SdCard.CardType != CARD_SECURED)
2659:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2660:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Get the SD card RCA */
2661:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->SdCard.RelCardAdd = sd_rca;
2662:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2663:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Send CMD9 SEND_CSD with argument as card's RCA */
2664:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** errorstate = SDMMC_CmdSendCSD(hsd->Instance, (uint32_t)(hsd->SdCard.RelCardAdd << 16U));
2665:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
2666:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2667:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return errorstate;
2668:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2669:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** else
2670:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2671:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Get Card Specific Data */
2672:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->CSD[0U] = SDMMC_GetResponse(hsd->Instance, SDMMC_RESP1);
2673:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->CSD[1U] = SDMMC_GetResponse(hsd->Instance, SDMMC_RESP2);
2674:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->CSD[2U] = SDMMC_GetResponse(hsd->Instance, SDMMC_RESP3);
2675:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->CSD[3U] = SDMMC_GetResponse(hsd->Instance, SDMMC_RESP4);
2676:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2677:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2678:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2679:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Get the Card Class */
2680:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->SdCard.Class = (SDMMC_GetResponse(hsd->Instance, SDMMC_RESP2) >> 20U);
ARM GAS /tmp/cc2oBAwl.s page 49
2681:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2682:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Get CSD parameters */
2683:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if (HAL_SD_GetCardCSD(hsd, &CSD) != HAL_OK)
2684:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2685:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_SD_ERROR_UNSUPPORTED_FEATURE;
2686:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2687:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2688:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Select the Card */
2689:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** errorstate = SDMMC_CmdSelDesel(hsd->Instance, (uint32_t)(((uint32_t)hsd->SdCard.RelCardAdd) << 16
2690:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
2691:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2692:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return errorstate;
2693:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2694:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2695:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Configure SDMMC peripheral interface */
2696:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** (void)SDMMC_Init(hsd->Instance, hsd->Init);
2697:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2698:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* All cards are initialized */
2699:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_SD_ERROR_NONE;
2700:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2701:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2702:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /**
2703:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @brief Enquires cards about their operating voltage and configures clock
2704:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * controls and stores SD information that will be needed in future
2705:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * in the SD handle.
2706:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @param hsd: Pointer to SD handle
2707:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @retval error state
2708:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** */
2709:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** static uint32_t SD_PowerON(SD_HandleTypeDef *hsd)
2710:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
60 .loc 1 2710 1 is_stmt 1 view -0
61 .cfi_startproc
62 @ args = 0, pretend = 0, frame = 8
63 @ frame_needed = 0, uses_anonymous_args = 0
64 .loc 1 2710 1 is_stmt 0 view .LVU7
65 0000 70B5 push {r4, r5, r6, lr}
66 .LCFI0:
67 .cfi_def_cfa_offset 16
68 .cfi_offset 4, -16
69 .cfi_offset 5, -12
70 .cfi_offset 6, -8
71 .cfi_offset 14, -4
72 0002 82B0 sub sp, sp, #8
73 .LCFI1:
74 .cfi_def_cfa_offset 24
75 0004 0446 mov r4, r0
2711:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** __IO uint32_t count = 0U;
76 .loc 1 2711 3 is_stmt 1 view .LVU8
77 .loc 1 2711 17 is_stmt 0 view .LVU9
78 0006 0023 movs r3, #0
79 0008 0193 str r3, [sp, #4]
2712:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t response = 0U, validvoltage = 0U;
80 .loc 1 2712 3 is_stmt 1 view .LVU10
81 .LVL5:
2713:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t errorstate;
82 .loc 1 2713 3 view .LVU11
2714:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
ARM GAS /tmp/cc2oBAwl.s page 50
2715:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* CMD0: GO_IDLE_STATE */
2716:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** errorstate = SDMMC_CmdGoIdleState(hsd->Instance);
83 .loc 1 2716 3 view .LVU12
84 .loc 1 2716 16 is_stmt 0 view .LVU13
85 000a 0068 ldr r0, [r0]
86 .LVL6:
87 .loc 1 2716 16 view .LVU14
88 000c FFF7FEFF bl SDMMC_CmdGoIdleState
89 .LVL7:
2717:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
90 .loc 1 2717 3 is_stmt 1 view .LVU15
91 .loc 1 2717 5 is_stmt 0 view .LVU16
92 0010 0546 mov r5, r0
93 0012 10B1 cbz r0, .L19
94 .LVL8:
95 .L2:
2718:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2719:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return errorstate;
2720:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2721:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2722:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* CMD8: SEND_IF_COND: Command available only on V2.0 cards */
2723:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** errorstate = SDMMC_CmdOperCond(hsd->Instance);
2724:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
2725:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2726:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->SdCard.CardVersion = CARD_V1_X;
2727:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* CMD0: GO_IDLE_STATE */
2728:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** errorstate = SDMMC_CmdGoIdleState(hsd->Instance);
2729:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
2730:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2731:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return errorstate;
2732:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2733:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2734:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2735:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** else
2736:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2737:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->SdCard.CardVersion = CARD_V2_X;
2738:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2739:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2740:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if( hsd->SdCard.CardVersion == CARD_V2_X)
2741:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2742:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* SEND CMD55 APP_CMD with RCA as 0 */
2743:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** errorstate = SDMMC_CmdAppCommand(hsd->Instance, 0);
2744:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
2745:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2746:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_SD_ERROR_UNSUPPORTED_FEATURE;
2747:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2748:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2749:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* SD CARD */
2750:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Send ACMD41 SD_APP_OP_COND with Argument 0x80100000 */
2751:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** while((count < SDMMC_MAX_VOLT_TRIAL) && (validvoltage == 0U))
2752:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2753:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* SEND CMD55 APP_CMD with RCA as 0 */
2754:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** errorstate = SDMMC_CmdAppCommand(hsd->Instance, 0);
2755:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
2756:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2757:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return errorstate;
2758:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
ARM GAS /tmp/cc2oBAwl.s page 51
2759:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2760:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Send CMD41 */
2761:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** errorstate = SDMMC_CmdAppOperCommand(hsd->Instance, SDMMC_VOLTAGE_WINDOW_SD | SDMMC_HIGH_CAPACI
2762:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
2763:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2764:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_SD_ERROR_UNSUPPORTED_FEATURE;
2765:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2766:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2767:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Get command response */
2768:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** response = SDMMC_GetResponse(hsd->Instance, SDMMC_RESP1);
2769:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2770:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Get operating voltage*/
2771:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** validvoltage = (((response >> 31U) == 1U) ? 1U : 0U);
2772:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2773:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** count++;
2774:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2775:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2776:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(count >= SDMMC_MAX_VOLT_TRIAL)
2777:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2778:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_SD_ERROR_INVALID_VOLTRANGE;
2779:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2780:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2781:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if((response & SDMMC_HIGH_CAPACITY) == SDMMC_HIGH_CAPACITY) /* (response &= SD_HIGH_CAPACITY) */
2782:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2783:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->SdCard.CardType = CARD_SDHC_SDXC;
2784:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2785:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** else
2786:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2787:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->SdCard.CardType = CARD_SDSC;
2788:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2789:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2790:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2791:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_SD_ERROR_NONE;
2792:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
96 .loc 1 2792 1 view .LVU17
97 0014 2846 mov r0, r5
98 0016 02B0 add sp, sp, #8
99 .LCFI2:
100 .cfi_remember_state
101 .cfi_def_cfa_offset 16
102 @ sp needed
103 0018 70BD pop {r4, r5, r6, pc}
104 .LVL9:
105 .L19:
106 .LCFI3:
107 .cfi_restore_state
2723:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
108 .loc 1 2723 3 is_stmt 1 view .LVU18
2723:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
109 .loc 1 2723 16 is_stmt 0 view .LVU19
110 001a 2068 ldr r0, [r4]
111 .LVL10:
2723:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
112 .loc 1 2723 16 view .LVU20
113 001c FFF7FEFF bl SDMMC_CmdOperCond
114 .LVL11:
2724:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
ARM GAS /tmp/cc2oBAwl.s page 52
115 .loc 1 2724 3 is_stmt 1 view .LVU21
2724:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
116 .loc 1 2724 5 is_stmt 0 view .LVU22
117 0020 38B9 cbnz r0, .L20
2737:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
118 .loc 1 2737 5 is_stmt 1 view .LVU23
2737:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
119 .loc 1 2737 29 is_stmt 0 view .LVU24
120 0022 0123 movs r3, #1
121 0024 A364 str r3, [r4, #72]
122 .L5:
2740:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
123 .loc 1 2740 3 is_stmt 1 view .LVU25
2740:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
124 .loc 1 2740 18 is_stmt 0 view .LVU26
125 0026 A36C ldr r3, [r4, #72]
2740:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
126 .loc 1 2740 5 view .LVU27
127 0028 012B cmp r3, #1
128 002a 0BD0 beq .L6
129 .L8:
2771:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
130 .loc 1 2771 52 view .LVU28
131 002c 2E46 mov r6, r5
132 002e 2846 mov r0, r5
133 .LVL12:
2771:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
134 .loc 1 2771 52 view .LVU29
135 0030 14E0 b .L7
136 .LVL13:
137 .L20:
2726:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* CMD0: GO_IDLE_STATE */
138 .loc 1 2726 5 is_stmt 1 view .LVU30
2726:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* CMD0: GO_IDLE_STATE */
139 .loc 1 2726 29 is_stmt 0 view .LVU31
140 0032 0023 movs r3, #0
141 0034 A364 str r3, [r4, #72]
2728:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
142 .loc 1 2728 5 is_stmt 1 view .LVU32
2728:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
143 .loc 1 2728 18 is_stmt 0 view .LVU33
144 0036 2068 ldr r0, [r4]
145 .LVL14:
2728:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
146 .loc 1 2728 18 view .LVU34
147 0038 FFF7FEFF bl SDMMC_CmdGoIdleState
148 .LVL15:
2729:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
149 .loc 1 2729 5 is_stmt 1 view .LVU35
2729:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
150 .loc 1 2729 7 is_stmt 0 view .LVU36
151 003c 0028 cmp r0, #0
152 003e F2D0 beq .L5
2731:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
153 .loc 1 2731 14 view .LVU37
154 0040 0546 mov r5, r0
155 0042 E7E7 b .L2
ARM GAS /tmp/cc2oBAwl.s page 53
156 .L6:
2743:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
157 .loc 1 2743 5 is_stmt 1 view .LVU38
2743:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
158 .loc 1 2743 18 is_stmt 0 view .LVU39
159 0044 0021 movs r1, #0
160 0046 2068 ldr r0, [r4]
161 .LVL16:
2743:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
162 .loc 1 2743 18 view .LVU40
163 0048 FFF7FEFF bl SDMMC_CmdAppCommand
164 .LVL17:
2744:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
165 .loc 1 2744 5 is_stmt 1 view .LVU41
2744:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
166 .loc 1 2744 7 is_stmt 0 view .LVU42
167 004c 0028 cmp r0, #0
168 004e EDD0 beq .L8
2746:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
169 .loc 1 2746 14 view .LVU43
170 0050 4FF08055 mov r5, #268435456
171 0054 DEE7 b .L2
172 .LVL18:
173 .L9:
2773:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
174 .loc 1 2773 5 is_stmt 1 discriminator 4 view .LVU44
2773:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
175 .loc 1 2773 10 is_stmt 0 discriminator 4 view .LVU45
176 0056 019B ldr r3, [sp, #4]
177 0058 0133 adds r3, r3, #1
178 005a 0193 str r3, [sp, #4]
179 .LVL19:
180 .L7:
2751:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
181 .loc 1 2751 8 is_stmt 1 view .LVU46
2751:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
182 .loc 1 2751 16 is_stmt 0 view .LVU47
183 005c 019A ldr r2, [sp, #4]
2751:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
184 .loc 1 2751 8 view .LVU48
185 005e 4FF6FE73 movw r3, #65534
186 0062 9A42 cmp r2, r3
187 0064 13D8 bhi .L10
2751:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
188 .loc 1 2751 40 discriminator 1 view .LVU49
189 0066 96B9 cbnz r6, .L10
2754:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
190 .loc 1 2754 5 is_stmt 1 view .LVU50
2754:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
191 .loc 1 2754 18 is_stmt 0 view .LVU51
192 0068 0021 movs r1, #0
193 006a 2068 ldr r0, [r4]
194 .LVL20:
2754:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
195 .loc 1 2754 18 view .LVU52
196 006c FFF7FEFF bl SDMMC_CmdAppCommand
197 .LVL21:
ARM GAS /tmp/cc2oBAwl.s page 54
2755:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
198 .loc 1 2755 5 is_stmt 1 view .LVU53
2755:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
199 .loc 1 2755 7 is_stmt 0 view .LVU54
200 0070 E0B9 cbnz r0, .L15
2761:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
201 .loc 1 2761 5 is_stmt 1 view .LVU55
2761:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
202 .loc 1 2761 18 is_stmt 0 view .LVU56
203 0072 1249 ldr r1, .L21
204 0074 2068 ldr r0, [r4]
205 .LVL22:
2761:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
206 .loc 1 2761 18 view .LVU57
207 0076 FFF7FEFF bl SDMMC_CmdAppOperCommand
208 .LVL23:
2762:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
209 .loc 1 2762 5 is_stmt 1 view .LVU58
2762:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
210 .loc 1 2762 7 is_stmt 0 view .LVU59
211 007a 0646 mov r6, r0
212 .LVL24:
2762:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
213 .loc 1 2762 7 view .LVU60
214 007c C0B9 cbnz r0, .L16
2768:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
215 .loc 1 2768 5 is_stmt 1 view .LVU61
2768:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
216 .loc 1 2768 16 is_stmt 0 view .LVU62
217 007e 0021 movs r1, #0
218 0080 2068 ldr r0, [r4]
219 .LVL25:
2768:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
220 .loc 1 2768 16 view .LVU63
221 0082 FFF7FEFF bl SDMMC_GetResponse
222 .LVL26:
2771:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
223 .loc 1 2771 5 is_stmt 1 view .LVU64
2771:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
224 .loc 1 2771 52 is_stmt 0 view .LVU65
225 0086 C30F lsrs r3, r0, #31
226 0088 E5D0 beq .L9
227 008a 1E46 mov r6, r3
228 .LVL27:
2771:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
229 .loc 1 2771 52 view .LVU66
230 008c E3E7 b .L9
231 .LVL28:
232 .L10:
2776:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
233 .loc 1 2776 3 is_stmt 1 view .LVU67
2776:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
234 .loc 1 2776 12 is_stmt 0 view .LVU68
235 008e 019A ldr r2, [sp, #4]
2776:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
236 .loc 1 2776 5 view .LVU69
237 0090 4FF6FE73 movw r3, #65534
ARM GAS /tmp/cc2oBAwl.s page 55
238 0094 9A42 cmp r2, r3
239 0096 0ED8 bhi .L17
2781:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
240 .loc 1 2781 3 is_stmt 1 view .LVU70
2781:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
241 .loc 1 2781 5 is_stmt 0 view .LVU71
242 0098 10F08043 ands r3, r0, #1073741824
243 009c 02D0 beq .L12
2783:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
244 .loc 1 2783 5 is_stmt 1 view .LVU72
2783:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
245 .loc 1 2783 26 is_stmt 0 view .LVU73
246 009e 0123 movs r3, #1
247 00a0 6364 str r3, [r4, #68]
248 00a2 B7E7 b .L2
249 .L12:
2787:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
250 .loc 1 2787 5 is_stmt 1 view .LVU74
2787:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
251 .loc 1 2787 26 is_stmt 0 view .LVU75
252 00a4 0022 movs r2, #0
253 00a6 6264 str r2, [r4, #68]
2791:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
254 .loc 1 2791 10 view .LVU76
255 00a8 1D46 mov r5, r3
256 00aa B3E7 b .L2
257 .LVL29:
258 .L15:
2757:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
259 .loc 1 2757 14 view .LVU77
260 00ac 0546 mov r5, r0
261 00ae B1E7 b .L2
262 .LVL30:
263 .L16:
2764:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
264 .loc 1 2764 14 view .LVU78
265 00b0 4FF08055 mov r5, #268435456
266 00b4 AEE7 b .L2
267 .LVL31:
268 .L17:
2778:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
269 .loc 1 2778 12 view .LVU79
270 00b6 4FF08075 mov r5, #16777216
271 00ba ABE7 b .L2
272 .L22:
273 .align 2
274 .L21:
275 00bc 000010C1 .word -1055916032
276 .cfi_endproc
277 .LFE174:
279 .section .text.SD_PowerOFF,"ax",%progbits
280 .align 1
281 .syntax unified
282 .thumb
283 .thumb_func
284 .fpu fpv5-d16
286 SD_PowerOFF:
ARM GAS /tmp/cc2oBAwl.s page 56
287 .LVL32:
288 .LFB175:
2793:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2794:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /**
2795:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @brief Turns the SDMMC output signals off.
2796:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @param hsd: Pointer to SD handle
2797:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @retval None
2798:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** */
2799:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** static void SD_PowerOFF(SD_HandleTypeDef *hsd)
2800:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
289 .loc 1 2800 1 is_stmt 1 view -0
290 .cfi_startproc
291 @ args = 0, pretend = 0, frame = 0
292 @ frame_needed = 0, uses_anonymous_args = 0
293 .loc 1 2800 1 is_stmt 0 view .LVU81
294 0000 08B5 push {r3, lr}
295 .LCFI4:
296 .cfi_def_cfa_offset 8
297 .cfi_offset 3, -8
298 .cfi_offset 14, -4
2801:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Set Power State to OFF */
2802:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** (void)SDMMC_PowerState_OFF(hsd->Instance);
299 .loc 1 2802 3 is_stmt 1 view .LVU82
300 .loc 1 2802 9 is_stmt 0 view .LVU83
301 0002 0068 ldr r0, [r0]
302 .LVL33:
303 .loc 1 2802 9 view .LVU84
304 0004 FFF7FEFF bl SDMMC_PowerState_OFF
305 .LVL34:
2803:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
306 .loc 1 2803 1 view .LVU85
307 0008 08BD pop {r3, pc}
308 .cfi_endproc
309 .LFE175:
311 .section .text.SD_Read_IT,"ax",%progbits
312 .align 1
313 .syntax unified
314 .thumb
315 .thumb_func
316 .fpu fpv5-d16
318 SD_Read_IT:
319 .LVL35:
320 .LFB181:
2804:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2805:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /**
2806:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @brief Send Status info command.
2807:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @param hsd: pointer to SD handle
2808:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @param pSDstatus: Pointer to the buffer that will contain the SD card status
2809:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * SD Status register)
2810:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @retval error state
2811:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** */
2812:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** static uint32_t SD_SendSDStatus(SD_HandleTypeDef *hsd, uint32_t *pSDstatus)
2813:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2814:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** SDMMC_DataInitTypeDef config;
2815:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t errorstate;
2816:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t tickstart = HAL_GetTick();
2817:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t count;
ARM GAS /tmp/cc2oBAwl.s page 57
2818:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t *pData = pSDstatus;
2819:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2820:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Check SD response */
2821:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if((SDMMC_GetResponse(hsd->Instance, SDMMC_RESP1) & SDMMC_CARD_LOCKED) == SDMMC_CARD_LOCKED)
2822:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2823:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_SD_ERROR_LOCK_UNLOCK_FAILED;
2824:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2825:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2826:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Set block size for card if it is not equal to current block size for card */
2827:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** errorstate = SDMMC_CmdBlockLength(hsd->Instance, 64U);
2828:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
2829:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2830:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= HAL_SD_ERROR_NONE;
2831:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return errorstate;
2832:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2833:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2834:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Send CMD55 */
2835:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** errorstate = SDMMC_CmdAppCommand(hsd->Instance, (uint32_t)(hsd->SdCard.RelCardAdd << 16U));
2836:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
2837:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2838:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= HAL_SD_ERROR_NONE;
2839:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return errorstate;
2840:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2841:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2842:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Configure the SD DPSM (Data Path State Machine) */
2843:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.DataTimeOut = SDMMC_DATATIMEOUT;
2844:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.DataLength = 64U;
2845:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.DataBlockSize = SDMMC_DATABLOCK_SIZE_64B;
2846:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.TransferDir = SDMMC_TRANSFER_DIR_TO_SDMMC;
2847:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.TransferMode = SDMMC_TRANSFER_MODE_BLOCK;
2848:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.DPSM = SDMMC_DPSM_ENABLE;
2849:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** (void)SDMMC_ConfigData(hsd->Instance, &config);
2850:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2851:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Send ACMD13 (SD_APP_STAUS) with argument as card's RCA */
2852:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** errorstate = SDMMC_CmdStatusRegister(hsd->Instance);
2853:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
2854:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2855:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= HAL_SD_ERROR_NONE;
2856:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return errorstate;
2857:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2858:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2859:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Get status data */
2860:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** while(!__HAL_SD_GET_FLAG(hsd, SDMMC_FLAG_RXOVERR | SDMMC_FLAG_DCRCFAIL | SDMMC_FLAG_DTIMEOUT | SD
2861:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2862:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(__HAL_SD_GET_FLAG(hsd, SDMMC_FLAG_RXFIFOHF))
2863:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2864:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** for(count = 0U; count < 8U; count++)
2865:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2866:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** *pData = SDMMC_ReadFIFO(hsd->Instance);
2867:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** pData++;
2868:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2869:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2870:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2871:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if((HAL_GetTick() - tickstart) >= SDMMC_DATATIMEOUT)
2872:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2873:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_SD_ERROR_TIMEOUT;
2874:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
ARM GAS /tmp/cc2oBAwl.s page 58
2875:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2876:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2877:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(__HAL_SD_GET_FLAG(hsd, SDMMC_FLAG_DTIMEOUT))
2878:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2879:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_SD_ERROR_DATA_TIMEOUT;
2880:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2881:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** else if(__HAL_SD_GET_FLAG(hsd, SDMMC_FLAG_DCRCFAIL))
2882:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2883:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_SD_ERROR_DATA_CRC_FAIL;
2884:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2885:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** else if(__HAL_SD_GET_FLAG(hsd, SDMMC_FLAG_RXOVERR))
2886:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2887:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_SD_ERROR_RX_OVERRUN;
2888:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2889:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** else
2890:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2891:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Nothing to do */
2892:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2893:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2894:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** while ((__HAL_SD_GET_FLAG(hsd, SDMMC_FLAG_RXDAVL)))
2895:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2896:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** *pData = SDMMC_ReadFIFO(hsd->Instance);
2897:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** pData++;
2898:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2899:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if((HAL_GetTick() - tickstart) >= SDMMC_DATATIMEOUT)
2900:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2901:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_SD_ERROR_TIMEOUT;
2902:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2903:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2904:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2905:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Clear all the static status flags*/
2906:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** __HAL_SD_CLEAR_FLAG(hsd, SDMMC_STATIC_DATA_FLAGS);
2907:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2908:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_SD_ERROR_NONE;
2909:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2910:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2911:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /**
2912:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @brief Returns the current card's status.
2913:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @param hsd: Pointer to SD handle
2914:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @param pCardStatus: pointer to the buffer that will contain the SD card
2915:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * status (Card Status register)
2916:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @retval error state
2917:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** */
2918:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** static uint32_t SD_SendStatus(SD_HandleTypeDef *hsd, uint32_t *pCardStatus)
2919:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2920:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t errorstate;
2921:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2922:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(pCardStatus == NULL)
2923:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2924:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_SD_ERROR_PARAM;
2925:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2926:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2927:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Send Status command */
2928:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** errorstate = SDMMC_CmdSendStatus(hsd->Instance, (uint32_t)(hsd->SdCard.RelCardAdd << 16U));
2929:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
2930:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2931:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return errorstate;
ARM GAS /tmp/cc2oBAwl.s page 59
2932:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2933:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2934:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Get SD card status */
2935:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** *pCardStatus = SDMMC_GetResponse(hsd->Instance, SDMMC_RESP1);
2936:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2937:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_SD_ERROR_NONE;
2938:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2939:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2940:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /**
2941:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @brief Enables the SDMMC wide bus mode.
2942:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @param hsd: pointer to SD handle
2943:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @retval error state
2944:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** */
2945:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** static uint32_t SD_WideBus_Enable(SD_HandleTypeDef *hsd)
2946:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2947:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t scr[2U] = {0U, 0U};
2948:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t errorstate;
2949:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2950:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if((SDMMC_GetResponse(hsd->Instance, SDMMC_RESP1) & SDMMC_CARD_LOCKED) == SDMMC_CARD_LOCKED)
2951:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2952:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_SD_ERROR_LOCK_UNLOCK_FAILED;
2953:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2954:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2955:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Get SCR Register */
2956:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** errorstate = SD_FindSCR(hsd, scr);
2957:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
2958:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2959:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return errorstate;
2960:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2961:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2962:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* If requested card supports wide bus operation */
2963:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if((scr[1U] & SDMMC_WIDE_BUS_SUPPORT) != SDMMC_ALLZERO)
2964:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2965:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Send CMD55 APP_CMD with argument as card's RCA.*/
2966:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** errorstate = SDMMC_CmdAppCommand(hsd->Instance, (uint32_t)(hsd->SdCard.RelCardAdd << 16U));
2967:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
2968:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2969:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return errorstate;
2970:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2971:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2972:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Send ACMD6 APP_CMD with argument as 2 for wide bus mode */
2973:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** errorstate = SDMMC_CmdBusWidth(hsd->Instance, 2U);
2974:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
2975:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2976:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return errorstate;
2977:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2978:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2979:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_SD_ERROR_NONE;
2980:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2981:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** else
2982:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2983:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_SD_ERROR_REQUEST_NOT_APPLICABLE;
2984:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2985:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2986:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2987:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /**
2988:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @brief Disables the SDMMC wide bus mode.
ARM GAS /tmp/cc2oBAwl.s page 60
2989:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @param hsd: Pointer to SD handle
2990:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @retval error state
2991:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** */
2992:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** static uint32_t SD_WideBus_Disable(SD_HandleTypeDef *hsd)
2993:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2994:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t scr[2U] = {0U, 0U};
2995:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t errorstate;
2996:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2997:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if((SDMMC_GetResponse(hsd->Instance, SDMMC_RESP1) & SDMMC_CARD_LOCKED) == SDMMC_CARD_LOCKED)
2998:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2999:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_SD_ERROR_LOCK_UNLOCK_FAILED;
3000:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
3001:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
3002:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Get SCR Register */
3003:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** errorstate = SD_FindSCR(hsd, scr);
3004:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
3005:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
3006:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return errorstate;
3007:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
3008:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
3009:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* If requested card supports 1 bit mode operation */
3010:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if((scr[1U] & SDMMC_SINGLE_BUS_SUPPORT) != SDMMC_ALLZERO)
3011:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
3012:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Send CMD55 APP_CMD with argument as card's RCA */
3013:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** errorstate = SDMMC_CmdAppCommand(hsd->Instance, (uint32_t)(hsd->SdCard.RelCardAdd << 16U));
3014:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
3015:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
3016:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return errorstate;
3017:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
3018:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
3019:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Send ACMD6 APP_CMD with argument as 0 for single bus mode */
3020:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** errorstate = SDMMC_CmdBusWidth(hsd->Instance, 0U);
3021:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
3022:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
3023:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return errorstate;
3024:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
3025:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
3026:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_SD_ERROR_NONE;
3027:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
3028:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** else
3029:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
3030:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_SD_ERROR_REQUEST_NOT_APPLICABLE;
3031:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
3032:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
3033:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
3034:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
3035:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /**
3036:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @brief Finds the SD card SCR register value.
3037:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @param hsd: Pointer to SD handle
3038:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @param pSCR: pointer to the buffer that will contain the SCR value
3039:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @retval error state
3040:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** */
3041:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** static uint32_t SD_FindSCR(SD_HandleTypeDef *hsd, uint32_t *pSCR)
3042:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
3043:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** SDMMC_DataInitTypeDef config;
3044:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t errorstate;
3045:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t tickstart = HAL_GetTick();
ARM GAS /tmp/cc2oBAwl.s page 61
3046:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t index = 0U;
3047:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t tempscr[2U] = {0U, 0U};
3048:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t *scr = pSCR;
3049:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
3050:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Set Block Size To 8 Bytes */
3051:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** errorstate = SDMMC_CmdBlockLength(hsd->Instance, 8U);
3052:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
3053:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
3054:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return errorstate;
3055:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
3056:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
3057:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Send CMD55 APP_CMD with argument as card's RCA */
3058:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** errorstate = SDMMC_CmdAppCommand(hsd->Instance, (uint32_t)((hsd->SdCard.RelCardAdd) << 16U));
3059:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
3060:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
3061:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return errorstate;
3062:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
3063:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
3064:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.DataTimeOut = SDMMC_DATATIMEOUT;
3065:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.DataLength = 8U;
3066:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.DataBlockSize = SDMMC_DATABLOCK_SIZE_8B;
3067:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.TransferDir = SDMMC_TRANSFER_DIR_TO_SDMMC;
3068:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.TransferMode = SDMMC_TRANSFER_MODE_BLOCK;
3069:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.DPSM = SDMMC_DPSM_ENABLE;
3070:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** (void)SDMMC_ConfigData(hsd->Instance, &config);
3071:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
3072:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Send ACMD51 SD_APP_SEND_SCR with argument as 0 */
3073:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** errorstate = SDMMC_CmdSendSCR(hsd->Instance);
3074:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
3075:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
3076:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return errorstate;
3077:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
3078:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
3079:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** while(!__HAL_SD_GET_FLAG(hsd, SDMMC_FLAG_RXOVERR | SDMMC_FLAG_DCRCFAIL | SDMMC_FLAG_DTIMEOUT))
3080:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
3081:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(__HAL_SD_GET_FLAG(hsd, SDMMC_FLAG_RXDAVL))
3082:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
3083:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** *(tempscr + index) = SDMMC_ReadFIFO(hsd->Instance);
3084:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** index++;
3085:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
3086:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** else if(!__HAL_SD_GET_FLAG(hsd, SDMMC_FLAG_RXACT))
3087:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
3088:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** break;
3089:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
3090:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
3091:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if((HAL_GetTick() - tickstart) >= SDMMC_DATATIMEOUT)
3092:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
3093:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_SD_ERROR_TIMEOUT;
3094:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
3095:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
3096:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
3097:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(__HAL_SD_GET_FLAG(hsd, SDMMC_FLAG_DTIMEOUT))
3098:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
3099:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** __HAL_SD_CLEAR_FLAG(hsd, SDMMC_FLAG_DTIMEOUT);
3100:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
3101:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_SD_ERROR_DATA_TIMEOUT;
3102:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
ARM GAS /tmp/cc2oBAwl.s page 62
3103:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** else if(__HAL_SD_GET_FLAG(hsd, SDMMC_FLAG_DCRCFAIL))
3104:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
3105:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** __HAL_SD_CLEAR_FLAG(hsd, SDMMC_FLAG_DCRCFAIL);
3106:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
3107:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_SD_ERROR_DATA_CRC_FAIL;
3108:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
3109:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** else if(__HAL_SD_GET_FLAG(hsd, SDMMC_FLAG_RXOVERR))
3110:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
3111:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** __HAL_SD_CLEAR_FLAG(hsd, SDMMC_FLAG_RXOVERR);
3112:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
3113:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_SD_ERROR_RX_OVERRUN;
3114:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
3115:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** else
3116:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
3117:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* No error flag set */
3118:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Clear all the static flags */
3119:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** __HAL_SD_CLEAR_FLAG(hsd, SDMMC_STATIC_DATA_FLAGS);
3120:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
3121:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** *scr = (((tempscr[1] & SDMMC_0TO7BITS) << 24) | ((tempscr[1] & SDMMC_8TO15BITS) << 8) |\
3122:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** ((tempscr[1] & SDMMC_16TO23BITS) >> 8) | ((tempscr[1] & SDMMC_24TO31BITS) >> 24));
3123:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** scr++;
3124:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** *scr = (((tempscr[0] & SDMMC_0TO7BITS) << 24) | ((tempscr[0] & SDMMC_8TO15BITS) << 8) |\
3125:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** ((tempscr[0] & SDMMC_16TO23BITS) >> 8) | ((tempscr[0] & SDMMC_24TO31BITS) >> 24));
3126:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
3127:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
3128:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
3129:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_SD_ERROR_NONE;
3130:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
3131:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
3132:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /**
3133:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @brief Wrap up reading in non-blocking mode.
3134:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @param hsd: pointer to a SD_HandleTypeDef structure that contains
3135:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * the configuration information.
3136:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @retval None
3137:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** */
3138:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** static void SD_Read_IT(SD_HandleTypeDef *hsd)
3139:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
321 .loc 1 3139 1 is_stmt 1 view -0
322 .cfi_startproc
323 @ args = 0, pretend = 0, frame = 0
324 @ frame_needed = 0, uses_anonymous_args = 0
325 .loc 1 3139 1 is_stmt 0 view .LVU87
326 0000 F8B5 push {r3, r4, r5, r6, r7, lr}
327 .LCFI5:
328 .cfi_def_cfa_offset 24
329 .cfi_offset 3, -24
330 .cfi_offset 4, -20
331 .cfi_offset 5, -16
332 .cfi_offset 6, -12
333 .cfi_offset 7, -8
334 .cfi_offset 14, -4
3140:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t count, data, dataremaining;
335 .loc 1 3140 3 is_stmt 1 view .LVU88
3141:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint8_t* tmp;
336 .loc 1 3141 3 view .LVU89
3142:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
3143:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** tmp = hsd->pRxBuffPtr;
ARM GAS /tmp/cc2oBAwl.s page 63
337 .loc 1 3143 3 view .LVU90
338 .loc 1 3143 7 is_stmt 0 view .LVU91
339 0002 846A ldr r4, [r0, #40]
340 .LVL36:
3144:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** dataremaining = hsd->RxXferSize;
341 .loc 1 3144 3 is_stmt 1 view .LVU92
342 .loc 1 3144 17 is_stmt 0 view .LVU93
343 0004 C66A ldr r6, [r0, #44]
344 .LVL37:
3145:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
3146:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if (dataremaining > 0U)
345 .loc 1 3146 3 is_stmt 1 view .LVU94
346 .loc 1 3146 6 is_stmt 0 view .LVU95
347 0006 A6B9 cbnz r6, .L29
348 .LVL38:
349 .L25:
3147:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
3148:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Read data from SDMMC Rx FIFO */
3149:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** for(count = 0U; count < 8U; count++)
3150:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
3151:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** data = SDMMC_ReadFIFO(hsd->Instance);
3152:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** *tmp = (uint8_t)(data & 0xFFU);
3153:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** tmp++;
3154:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** dataremaining--;
3155:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** *tmp = (uint8_t)((data >> 8U) & 0xFFU);
3156:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** tmp++;
3157:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** dataremaining--;
3158:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** *tmp = (uint8_t)((data >> 16U) & 0xFFU);
3159:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** tmp++;
3160:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** dataremaining--;
3161:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** *tmp = (uint8_t)((data >> 24U) & 0xFFU);
3162:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** tmp++;
3163:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** dataremaining--;
3164:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
3165:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
3166:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->pRxBuffPtr = tmp;
3167:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->RxXferSize = dataremaining;
3168:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
3169:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
350 .loc 1 3169 1 view .LVU96
351 0008 F8BD pop {r3, r4, r5, r6, r7, pc}
352 .LVL39:
353 .L28:
3151:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** *tmp = (uint8_t)(data & 0xFFU);
354 .loc 1 3151 7 is_stmt 1 discriminator 3 view .LVU97
3151:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** *tmp = (uint8_t)(data & 0xFFU);
355 .loc 1 3151 14 is_stmt 0 discriminator 3 view .LVU98
356 000a 3868 ldr r0, [r7]
357 000c FFF7FEFF bl SDMMC_ReadFIFO
358 .LVL40:
3152:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** tmp++;
359 .loc 1 3152 7 is_stmt 1 discriminator 3 view .LVU99
3152:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** tmp++;
360 .loc 1 3152 12 is_stmt 0 discriminator 3 view .LVU100
361 0010 2070 strb r0, [r4]
3153:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** dataremaining--;
362 .loc 1 3153 7 is_stmt 1 discriminator 3 view .LVU101
ARM GAS /tmp/cc2oBAwl.s page 64
363 .LVL41:
3154:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** *tmp = (uint8_t)((data >> 8U) & 0xFFU);
364 .loc 1 3154 7 discriminator 3 view .LVU102
3155:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** tmp++;
365 .loc 1 3155 7 discriminator 3 view .LVU103
3155:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** tmp++;
366 .loc 1 3155 14 is_stmt 0 discriminator 3 view .LVU104
367 0012 C0F30723 ubfx r3, r0, #8, #8
3155:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** tmp++;
368 .loc 1 3155 12 discriminator 3 view .LVU105
369 0016 6370 strb r3, [r4, #1]
3156:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** dataremaining--;
370 .loc 1 3156 7 is_stmt 1 discriminator 3 view .LVU106
371 .LVL42:
3157:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** *tmp = (uint8_t)((data >> 16U) & 0xFFU);
372 .loc 1 3157 7 discriminator 3 view .LVU107
3158:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** tmp++;
373 .loc 1 3158 7 discriminator 3 view .LVU108
3158:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** tmp++;
374 .loc 1 3158 14 is_stmt 0 discriminator 3 view .LVU109
375 0018 C0F30743 ubfx r3, r0, #16, #8
3158:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** tmp++;
376 .loc 1 3158 12 discriminator 3 view .LVU110
377 001c A370 strb r3, [r4, #2]
3159:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** dataremaining--;
378 .loc 1 3159 7 is_stmt 1 discriminator 3 view .LVU111
379 .LVL43:
3160:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** *tmp = (uint8_t)((data >> 24U) & 0xFFU);
380 .loc 1 3160 7 discriminator 3 view .LVU112
3161:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** tmp++;
381 .loc 1 3161 7 discriminator 3 view .LVU113
3161:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** tmp++;
382 .loc 1 3161 14 is_stmt 0 discriminator 3 view .LVU114
383 001e 000E lsrs r0, r0, #24
384 .LVL44:
3161:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** tmp++;
385 .loc 1 3161 12 discriminator 3 view .LVU115
386 0020 E070 strb r0, [r4, #3]
3162:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** dataremaining--;
387 .loc 1 3162 7 is_stmt 1 discriminator 3 view .LVU116
3162:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** dataremaining--;
388 .loc 1 3162 10 is_stmt 0 discriminator 3 view .LVU117
389 0022 0434 adds r4, r4, #4
390 .LVL45:
3163:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
391 .loc 1 3163 7 is_stmt 1 discriminator 3 view .LVU118
3163:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
392 .loc 1 3163 20 is_stmt 0 discriminator 3 view .LVU119
393 0024 043E subs r6, r6, #4
394 .LVL46:
3149:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
395 .loc 1 3149 33 is_stmt 1 discriminator 3 view .LVU120
3149:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
396 .loc 1 3149 38 is_stmt 0 discriminator 3 view .LVU121
397 0026 0135 adds r5, r5, #1
398 .LVL47:
399 .L26:
ARM GAS /tmp/cc2oBAwl.s page 65
3149:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
400 .loc 1 3149 21 is_stmt 1 discriminator 1 view .LVU122
3149:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
401 .loc 1 3149 5 is_stmt 0 discriminator 1 view .LVU123
402 0028 072D cmp r5, #7
403 002a EED9 bls .L28
3166:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->RxXferSize = dataremaining;
404 .loc 1 3166 5 is_stmt 1 view .LVU124
3166:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->RxXferSize = dataremaining;
405 .loc 1 3166 21 is_stmt 0 view .LVU125
406 002c BC62 str r4, [r7, #40]
3167:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
407 .loc 1 3167 5 is_stmt 1 view .LVU126
3167:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
408 .loc 1 3167 21 is_stmt 0 view .LVU127
409 002e FE62 str r6, [r7, #44]
410 .loc 1 3169 1 view .LVU128
411 0030 EAE7 b .L25
412 .LVL48:
413 .L29:
414 .loc 1 3169 1 view .LVU129
415 0032 0746 mov r7, r0
3149:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
416 .loc 1 3149 15 view .LVU130
417 0034 0025 movs r5, #0
418 0036 F7E7 b .L26
419 .cfi_endproc
420 .LFE181:
422 .section .text.SD_Write_IT,"ax",%progbits
423 .align 1
424 .syntax unified
425 .thumb
426 .thumb_func
427 .fpu fpv5-d16
429 SD_Write_IT:
430 .LVL49:
431 .LFB182:
3170:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
3171:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /**
3172:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @brief Wrap up writing in non-blocking mode.
3173:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @param hsd: pointer to a SD_HandleTypeDef structure that contains
3174:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * the configuration information.
3175:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** * @retval None
3176:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** */
3177:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** static void SD_Write_IT(SD_HandleTypeDef *hsd)
3178:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
432 .loc 1 3178 1 is_stmt 1 view -0
433 .cfi_startproc
434 @ args = 0, pretend = 0, frame = 8
435 @ frame_needed = 0, uses_anonymous_args = 0
436 .loc 1 3178 1 is_stmt 0 view .LVU132
437 0000 F0B5 push {r4, r5, r6, r7, lr}
438 .LCFI6:
439 .cfi_def_cfa_offset 20
440 .cfi_offset 4, -20
441 .cfi_offset 5, -16
442 .cfi_offset 6, -12
ARM GAS /tmp/cc2oBAwl.s page 66
443 .cfi_offset 7, -8
444 .cfi_offset 14, -4
445 0002 83B0 sub sp, sp, #12
446 .LCFI7:
447 .cfi_def_cfa_offset 32
3179:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t count, data, dataremaining;
448 .loc 1 3179 3 is_stmt 1 view .LVU133
3180:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint8_t* tmp;
449 .loc 1 3180 3 view .LVU134
3181:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
3182:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** tmp = hsd->pTxBuffPtr;
450 .loc 1 3182 3 view .LVU135
451 .loc 1 3182 7 is_stmt 0 view .LVU136
452 0004 046A ldr r4, [r0, #32]
453 .LVL50:
3183:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** dataremaining = hsd->TxXferSize;
454 .loc 1 3183 3 is_stmt 1 view .LVU137
455 .loc 1 3183 17 is_stmt 0 view .LVU138
456 0006 466A ldr r6, [r0, #36]
457 .LVL51:
3184:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
3185:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if (dataremaining > 0U)
458 .loc 1 3185 3 is_stmt 1 view .LVU139
459 .loc 1 3185 6 is_stmt 0 view .LVU140
460 0008 DEB9 cbnz r6, .L35
461 .LVL52:
462 .L31:
3186:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
3187:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Write data to SDMMC Tx FIFO */
3188:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** for(count = 0U; count < 8U; count++)
3189:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
3190:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** data = (uint32_t)(*tmp);
3191:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** tmp++;
3192:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** dataremaining--;
3193:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** data |= ((uint32_t)(*tmp) << 8U);
3194:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** tmp++;
3195:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** dataremaining--;
3196:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** data |= ((uint32_t)(*tmp) << 16U);
3197:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** tmp++;
3198:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** dataremaining--;
3199:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** data |= ((uint32_t)(*tmp) << 24U);
3200:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** tmp++;
3201:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** dataremaining--;
3202:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** (void)SDMMC_WriteFIFO(hsd->Instance, &data);
3203:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
3204:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
3205:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->pTxBuffPtr = tmp;
3206:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->TxXferSize = dataremaining;
3207:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
3208:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
463 .loc 1 3208 1 view .LVU141
464 000a 03B0 add sp, sp, #12
465 .LCFI8:
466 .cfi_remember_state
467 .cfi_def_cfa_offset 20
468 @ sp needed
469 000c F0BD pop {r4, r5, r6, r7, pc}
ARM GAS /tmp/cc2oBAwl.s page 67
470 .LVL53:
471 .L34:
472 .LCFI9:
473 .cfi_restore_state
3190:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** tmp++;
474 .loc 1 3190 7 is_stmt 1 discriminator 3 view .LVU142
3190:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** tmp++;
475 .loc 1 3190 25 is_stmt 0 discriminator 3 view .LVU143
476 000e 2378 ldrb r3, [r4] @ zero_extendqisi2
3190:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** tmp++;
477 .loc 1 3190 12 discriminator 3 view .LVU144
478 0010 0193 str r3, [sp, #4]
3191:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** dataremaining--;
479 .loc 1 3191 7 is_stmt 1 discriminator 3 view .LVU145
480 .LVL54:
3192:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** data |= ((uint32_t)(*tmp) << 8U);
481 .loc 1 3192 7 discriminator 3 view .LVU146
3193:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** tmp++;
482 .loc 1 3193 7 discriminator 3 view .LVU147
3193:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** tmp++;
483 .loc 1 3193 27 is_stmt 0 discriminator 3 view .LVU148
484 0012 6278 ldrb r2, [r4, #1] @ zero_extendqisi2
3193:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** tmp++;
485 .loc 1 3193 12 discriminator 3 view .LVU149
486 0014 43EA0223 orr r3, r3, r2, lsl #8
487 0018 0193 str r3, [sp, #4]
3194:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** dataremaining--;
488 .loc 1 3194 7 is_stmt 1 discriminator 3 view .LVU150
489 .LVL55:
3195:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** data |= ((uint32_t)(*tmp) << 16U);
490 .loc 1 3195 7 discriminator 3 view .LVU151
3196:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** tmp++;
491 .loc 1 3196 7 discriminator 3 view .LVU152
3196:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** tmp++;
492 .loc 1 3196 27 is_stmt 0 discriminator 3 view .LVU153
493 001a A278 ldrb r2, [r4, #2] @ zero_extendqisi2
3196:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** tmp++;
494 .loc 1 3196 12 discriminator 3 view .LVU154
495 001c 43EA0243 orr r3, r3, r2, lsl #16
496 0020 0193 str r3, [sp, #4]
3197:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** dataremaining--;
497 .loc 1 3197 7 is_stmt 1 discriminator 3 view .LVU155
498 .LVL56:
3198:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** data |= ((uint32_t)(*tmp) << 24U);
499 .loc 1 3198 7 discriminator 3 view .LVU156
3199:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** tmp++;
500 .loc 1 3199 7 discriminator 3 view .LVU157
3199:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** tmp++;
501 .loc 1 3199 27 is_stmt 0 discriminator 3 view .LVU158
502 0022 E278 ldrb r2, [r4, #3] @ zero_extendqisi2
3199:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** tmp++;
503 .loc 1 3199 12 discriminator 3 view .LVU159
504 0024 43EA0263 orr r3, r3, r2, lsl #24
505 0028 0193 str r3, [sp, #4]
3200:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** dataremaining--;
506 .loc 1 3200 7 is_stmt 1 discriminator 3 view .LVU160
3200:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** dataremaining--;
ARM GAS /tmp/cc2oBAwl.s page 68
507 .loc 1 3200 10 is_stmt 0 discriminator 3 view .LVU161
508 002a 0434 adds r4, r4, #4
509 .LVL57:
3201:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** (void)SDMMC_WriteFIFO(hsd->Instance, &data);
510 .loc 1 3201 7 is_stmt 1 discriminator 3 view .LVU162
3201:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** (void)SDMMC_WriteFIFO(hsd->Instance, &data);
511 .loc 1 3201 20 is_stmt 0 discriminator 3 view .LVU163
512 002c 043E subs r6, r6, #4
513 .LVL58:
3202:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
514 .loc 1 3202 7 is_stmt 1 discriminator 3 view .LVU164
3202:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
515 .loc 1 3202 13 is_stmt 0 discriminator 3 view .LVU165
516 002e 01A9 add r1, sp, #4
517 0030 3868 ldr r0, [r7]
518 0032 FFF7FEFF bl SDMMC_WriteFIFO
519 .LVL59:
3188:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
520 .loc 1 3188 33 is_stmt 1 discriminator 3 view .LVU166
3188:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
521 .loc 1 3188 38 is_stmt 0 discriminator 3 view .LVU167
522 0036 0135 adds r5, r5, #1
523 .LVL60:
524 .L32:
3188:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
525 .loc 1 3188 21 is_stmt 1 discriminator 1 view .LVU168
3188:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
526 .loc 1 3188 5 is_stmt 0 discriminator 1 view .LVU169
527 0038 072D cmp r5, #7
528 003a E8D9 bls .L34
3205:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->TxXferSize = dataremaining;
529 .loc 1 3205 5 is_stmt 1 view .LVU170
3205:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->TxXferSize = dataremaining;
530 .loc 1 3205 21 is_stmt 0 view .LVU171
531 003c 3C62 str r4, [r7, #32]
3206:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
532 .loc 1 3206 5 is_stmt 1 view .LVU172
3206:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
533 .loc 1 3206 21 is_stmt 0 view .LVU173
534 003e 7E62 str r6, [r7, #36]
535 .loc 1 3208 1 view .LVU174
536 0040 E3E7 b .L31
537 .LVL61:
538 .L35:
539 .loc 1 3208 1 view .LVU175
540 0042 0746 mov r7, r0
3188:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
541 .loc 1 3188 15 view .LVU176
542 0044 0025 movs r5, #0
543 0046 F7E7 b .L32
544 .cfi_endproc
545 .LFE182:
547 .section .text.SD_SendSDStatus,"ax",%progbits
548 .align 1
549 .syntax unified
550 .thumb
551 .thumb_func
ARM GAS /tmp/cc2oBAwl.s page 69
552 .fpu fpv5-d16
554 SD_SendSDStatus:
555 .LVL62:
556 .LFB176:
2813:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** SDMMC_DataInitTypeDef config;
557 .loc 1 2813 1 is_stmt 1 view -0
558 .cfi_startproc
559 @ args = 0, pretend = 0, frame = 24
560 @ frame_needed = 0, uses_anonymous_args = 0
2813:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** SDMMC_DataInitTypeDef config;
561 .loc 1 2813 1 is_stmt 0 view .LVU178
562 0000 F0B5 push {r4, r5, r6, r7, lr}
563 .LCFI10:
564 .cfi_def_cfa_offset 20
565 .cfi_offset 4, -20
566 .cfi_offset 5, -16
567 .cfi_offset 6, -12
568 .cfi_offset 7, -8
569 .cfi_offset 14, -4
570 0002 87B0 sub sp, sp, #28
571 .LCFI11:
572 .cfi_def_cfa_offset 48
573 0004 0546 mov r5, r0
574 0006 0E46 mov r6, r1
2814:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t errorstate;
575 .loc 1 2814 3 is_stmt 1 view .LVU179
2815:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t tickstart = HAL_GetTick();
576 .loc 1 2815 3 view .LVU180
2816:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t count;
577 .loc 1 2816 3 view .LVU181
2816:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t count;
578 .loc 1 2816 24 is_stmt 0 view .LVU182
579 0008 FFF7FEFF bl HAL_GetTick
580 .LVL63:
2816:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t count;
581 .loc 1 2816 24 view .LVU183
582 000c 0746 mov r7, r0
583 .LVL64:
2817:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t *pData = pSDstatus;
584 .loc 1 2817 3 is_stmt 1 view .LVU184
2818:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
585 .loc 1 2818 3 view .LVU185
2821:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
586 .loc 1 2821 3 view .LVU186
2821:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
587 .loc 1 2821 7 is_stmt 0 view .LVU187
588 000e 0021 movs r1, #0
589 0010 2868 ldr r0, [r5]
590 .LVL65:
2821:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
591 .loc 1 2821 7 view .LVU188
592 0012 FFF7FEFF bl SDMMC_GetResponse
593 .LVL66:
2821:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
594 .loc 1 2821 5 view .LVU189
595 0016 10F0007F tst r0, #33554432
596 001a 66D1 bne .L48
ARM GAS /tmp/cc2oBAwl.s page 70
2827:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
597 .loc 1 2827 3 is_stmt 1 view .LVU190
2827:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
598 .loc 1 2827 16 is_stmt 0 view .LVU191
599 001c 4021 movs r1, #64
600 001e 2868 ldr r0, [r5]
601 0020 FFF7FEFF bl SDMMC_CmdBlockLength
602 .LVL67:
2828:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
603 .loc 1 2828 3 is_stmt 1 view .LVU192
2828:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
604 .loc 1 2828 5 is_stmt 0 view .LVU193
605 0024 0346 mov r3, r0
606 0026 10B1 cbz r0, .L39
2830:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return errorstate;
607 .loc 1 2830 5 is_stmt 1 view .LVU194
2830:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return errorstate;
608 .loc 1 2830 20 is_stmt 0 view .LVU195
609 0028 AA6B ldr r2, [r5, #56]
610 002a AA63 str r2, [r5, #56]
2831:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
611 .loc 1 2831 5 is_stmt 1 view .LVU196
2831:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
612 .loc 1 2831 12 is_stmt 0 view .LVU197
613 002c 5FE0 b .L37
614 .L39:
2835:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
615 .loc 1 2835 3 is_stmt 1 view .LVU198
2835:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
616 .loc 1 2835 73 is_stmt 0 view .LVU199
617 002e 296D ldr r1, [r5, #80]
2835:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
618 .loc 1 2835 16 view .LVU200
619 0030 0904 lsls r1, r1, #16
620 0032 2868 ldr r0, [r5]
621 .LVL68:
2835:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
622 .loc 1 2835 16 view .LVU201
623 0034 FFF7FEFF bl SDMMC_CmdAppCommand
624 .LVL69:
2836:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
625 .loc 1 2836 3 is_stmt 1 view .LVU202
2836:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
626 .loc 1 2836 5 is_stmt 0 view .LVU203
627 0038 0346 mov r3, r0
628 003a 10B1 cbz r0, .L40
2838:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return errorstate;
629 .loc 1 2838 5 is_stmt 1 view .LVU204
2838:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return errorstate;
630 .loc 1 2838 20 is_stmt 0 view .LVU205
631 003c AA6B ldr r2, [r5, #56]
632 003e AA63 str r2, [r5, #56]
2839:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
633 .loc 1 2839 5 is_stmt 1 view .LVU206
2839:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
634 .loc 1 2839 12 is_stmt 0 view .LVU207
635 0040 55E0 b .L37
ARM GAS /tmp/cc2oBAwl.s page 71
636 .L40:
2843:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.DataLength = 64U;
637 .loc 1 2843 3 is_stmt 1 view .LVU208
2843:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.DataLength = 64U;
638 .loc 1 2843 24 is_stmt 0 view .LVU209
639 0042 4FF0FF33 mov r3, #-1
640 0046 0093 str r3, [sp]
2844:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.DataBlockSize = SDMMC_DATABLOCK_SIZE_64B;
641 .loc 1 2844 3 is_stmt 1 view .LVU210
2844:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.DataBlockSize = SDMMC_DATABLOCK_SIZE_64B;
642 .loc 1 2844 24 is_stmt 0 view .LVU211
643 0048 4023 movs r3, #64
644 004a 0193 str r3, [sp, #4]
2845:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.TransferDir = SDMMC_TRANSFER_DIR_TO_SDMMC;
645 .loc 1 2845 3 is_stmt 1 view .LVU212
2845:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.TransferDir = SDMMC_TRANSFER_DIR_TO_SDMMC;
646 .loc 1 2845 24 is_stmt 0 view .LVU213
647 004c 6023 movs r3, #96
648 004e 0293 str r3, [sp, #8]
2846:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.TransferMode = SDMMC_TRANSFER_MODE_BLOCK;
649 .loc 1 2846 3 is_stmt 1 view .LVU214
2846:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.TransferMode = SDMMC_TRANSFER_MODE_BLOCK;
650 .loc 1 2846 24 is_stmt 0 view .LVU215
651 0050 0223 movs r3, #2
652 0052 0393 str r3, [sp, #12]
2847:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.DPSM = SDMMC_DPSM_ENABLE;
653 .loc 1 2847 3 is_stmt 1 view .LVU216
2847:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.DPSM = SDMMC_DPSM_ENABLE;
654 .loc 1 2847 24 is_stmt 0 view .LVU217
655 0054 0023 movs r3, #0
656 0056 0493 str r3, [sp, #16]
2848:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** (void)SDMMC_ConfigData(hsd->Instance, &config);
657 .loc 1 2848 3 is_stmt 1 view .LVU218
2848:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** (void)SDMMC_ConfigData(hsd->Instance, &config);
658 .loc 1 2848 24 is_stmt 0 view .LVU219
659 0058 0123 movs r3, #1
660 005a 0593 str r3, [sp, #20]
2849:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
661 .loc 1 2849 3 is_stmt 1 view .LVU220
2849:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
662 .loc 1 2849 9 is_stmt 0 view .LVU221
663 005c 6946 mov r1, sp
664 005e 2868 ldr r0, [r5]
665 .LVL70:
2849:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
666 .loc 1 2849 9 view .LVU222
667 0060 FFF7FEFF bl SDMMC_ConfigData
668 .LVL71:
2852:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
669 .loc 1 2852 3 is_stmt 1 view .LVU223
2852:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
670 .loc 1 2852 16 is_stmt 0 view .LVU224
671 0064 2868 ldr r0, [r5]
672 0066 FFF7FEFF bl SDMMC_CmdStatusRegister
673 .LVL72:
2853:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
674 .loc 1 2853 3 is_stmt 1 view .LVU225
ARM GAS /tmp/cc2oBAwl.s page 72
2853:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
675 .loc 1 2853 5 is_stmt 0 view .LVU226
676 006a 0346 mov r3, r0
677 006c 80B1 cbz r0, .L41
2855:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return errorstate;
678 .loc 1 2855 5 is_stmt 1 view .LVU227
2855:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return errorstate;
679 .loc 1 2855 20 is_stmt 0 view .LVU228
680 006e AA6B ldr r2, [r5, #56]
681 0070 AA63 str r2, [r5, #56]
2856:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
682 .loc 1 2856 5 is_stmt 1 view .LVU229
2856:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
683 .loc 1 2856 12 is_stmt 0 view .LVU230
684 0072 3CE0 b .L37
685 .LVL73:
686 .L44:
2866:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** pData++;
687 .loc 1 2866 9 is_stmt 1 discriminator 3 view .LVU231
2866:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** pData++;
688 .loc 1 2866 18 is_stmt 0 discriminator 3 view .LVU232
689 0074 2868 ldr r0, [r5]
690 0076 FFF7FEFF bl SDMMC_ReadFIFO
691 .LVL74:
2866:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** pData++;
692 .loc 1 2866 16 discriminator 3 view .LVU233
693 007a 46F8040B str r0, [r6], #4
694 .LVL75:
2867:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
695 .loc 1 2867 9 is_stmt 1 discriminator 3 view .LVU234
2864:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
696 .loc 1 2864 35 discriminator 3 view .LVU235
2864:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
697 .loc 1 2864 40 is_stmt 0 discriminator 3 view .LVU236
698 007e 0134 adds r4, r4, #1
699 .LVL76:
700 .L42:
2864:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
701 .loc 1 2864 23 is_stmt 1 discriminator 1 view .LVU237
2864:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
702 .loc 1 2864 7 is_stmt 0 discriminator 1 view .LVU238
703 0080 072C cmp r4, #7
704 0082 F7D9 bls .L44
705 .LVL77:
706 .L43:
2871:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
707 .loc 1 2871 5 is_stmt 1 view .LVU239
2871:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
708 .loc 1 2871 9 is_stmt 0 view .LVU240
709 0084 FFF7FEFF bl HAL_GetTick
710 .LVL78:
2871:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
711 .loc 1 2871 23 view .LVU241
712 0088 C01B subs r0, r0, r7
2871:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
713 .loc 1 2871 7 view .LVU242
714 008a B0F1FF3F cmp r0, #-1
ARM GAS /tmp/cc2oBAwl.s page 73
715 008e 31D0 beq .L49
716 .L41:
2860:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
717 .loc 1 2860 8 is_stmt 1 view .LVU243
2860:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
718 .loc 1 2860 10 is_stmt 0 view .LVU244
719 0090 2B68 ldr r3, [r5]
720 0092 5C6B ldr r4, [r3, #52]
721 0094 40F22A42 movw r2, #1066
2860:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
722 .loc 1 2860 8 view .LVU245
723 0098 1440 ands r4, r4, r2
724 009a 04D1 bne .L55
2862:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
725 .loc 1 2862 5 is_stmt 1 view .LVU246
2862:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
726 .loc 1 2862 8 is_stmt 0 view .LVU247
727 009c 5B6B ldr r3, [r3, #52]
2862:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
728 .loc 1 2862 7 view .LVU248
729 009e 13F4004F tst r3, #32768
730 00a2 EFD0 beq .L43
731 00a4 ECE7 b .L42
732 .L55:
2877:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
733 .loc 1 2877 3 is_stmt 1 view .LVU249
2877:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
734 .loc 1 2877 6 is_stmt 0 view .LVU250
735 00a6 5A6B ldr r2, [r3, #52]
2877:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
736 .loc 1 2877 5 view .LVU251
737 00a8 12F0080F tst r2, #8
738 00ac 25D1 bne .L50
2881:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
739 .loc 1 2881 8 is_stmt 1 view .LVU252
2881:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
740 .loc 1 2881 11 is_stmt 0 view .LVU253
741 00ae 5A6B ldr r2, [r3, #52]
2881:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
742 .loc 1 2881 10 view .LVU254
743 00b0 12F0020F tst r2, #2
744 00b4 23D1 bne .L51
2885:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
745 .loc 1 2885 8 is_stmt 1 view .LVU255
2885:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
746 .loc 1 2885 11 is_stmt 0 view .LVU256
747 00b6 5B6B ldr r3, [r3, #52]
2885:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
748 .loc 1 2885 10 view .LVU257
749 00b8 13F0200F tst r3, #32
750 00bc 21D1 bne .L56
751 .L46:
2894:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
752 .loc 1 2894 9 is_stmt 1 view .LVU258
2894:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
753 .loc 1 2894 11 is_stmt 0 view .LVU259
754 00be 2868 ldr r0, [r5]
ARM GAS /tmp/cc2oBAwl.s page 74
755 00c0 436B ldr r3, [r0, #52]
2894:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
756 .loc 1 2894 9 view .LVU260
757 00c2 13F40013 ands r3, r3, #2097152
758 00c6 0CD0 beq .L57
2896:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** pData++;
759 .loc 1 2896 5 is_stmt 1 view .LVU261
2896:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** pData++;
760 .loc 1 2896 14 is_stmt 0 view .LVU262
761 00c8 FFF7FEFF bl SDMMC_ReadFIFO
762 .LVL79:
2896:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** pData++;
763 .loc 1 2896 12 view .LVU263
764 00cc 46F8040B str r0, [r6], #4
765 .LVL80:
2897:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
766 .loc 1 2897 5 is_stmt 1 view .LVU264
2899:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
767 .loc 1 2899 5 view .LVU265
2899:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
768 .loc 1 2899 9 is_stmt 0 view .LVU266
769 00d0 FFF7FEFF bl HAL_GetTick
770 .LVL81:
2899:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
771 .loc 1 2899 23 view .LVU267
772 00d4 C01B subs r0, r0, r7
2899:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
773 .loc 1 2899 7 view .LVU268
774 00d6 B0F1FF3F cmp r0, #-1
775 00da F0D1 bne .L46
2901:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
776 .loc 1 2901 14 view .LVU269
777 00dc 4FF00043 mov r3, #-2147483648
778 00e0 05E0 b .L37
779 .L57:
2906:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
780 .loc 1 2906 3 is_stmt 1 view .LVU270
781 00e2 40F23A52 movw r2, #1338
782 00e6 8263 str r2, [r0, #56]
2908:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
783 .loc 1 2908 3 view .LVU271
2908:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
784 .loc 1 2908 10 is_stmt 0 view .LVU272
785 00e8 01E0 b .L37
786 .LVL82:
787 .L48:
2823:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
788 .loc 1 2823 12 view .LVU273
789 00ea 4FF40063 mov r3, #2048
790 .LVL83:
791 .L37:
2909:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
792 .loc 1 2909 1 view .LVU274
793 00ee 1846 mov r0, r3
794 00f0 07B0 add sp, sp, #28
795 .LCFI12:
796 .cfi_remember_state
ARM GAS /tmp/cc2oBAwl.s page 75
797 .cfi_def_cfa_offset 20
798 @ sp needed
799 00f2 F0BD pop {r4, r5, r6, r7, pc}
800 .LVL84:
801 .L49:
802 .LCFI13:
803 .cfi_restore_state
2873:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
804 .loc 1 2873 14 view .LVU275
805 00f4 4FF00043 mov r3, #-2147483648
806 00f8 F9E7 b .L37
807 .L50:
2879:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
808 .loc 1 2879 12 view .LVU276
809 00fa 0823 movs r3, #8
810 00fc F7E7 b .L37
811 .L51:
2883:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
812 .loc 1 2883 12 view .LVU277
813 00fe 0223 movs r3, #2
814 0100 F5E7 b .L37
815 .L56:
2887:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
816 .loc 1 2887 12 view .LVU278
817 0102 2023 movs r3, #32
818 0104 F3E7 b .L37
819 .cfi_endproc
820 .LFE176:
822 .section .text.SD_FindSCR,"ax",%progbits
823 .align 1
824 .syntax unified
825 .thumb
826 .thumb_func
827 .fpu fpv5-d16
829 SD_FindSCR:
830 .LVL85:
831 .LFB180:
3042:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** SDMMC_DataInitTypeDef config;
832 .loc 1 3042 1 is_stmt 1 view -0
833 .cfi_startproc
834 @ args = 0, pretend = 0, frame = 32
835 @ frame_needed = 0, uses_anonymous_args = 0
3042:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** SDMMC_DataInitTypeDef config;
836 .loc 1 3042 1 is_stmt 0 view .LVU280
837 0000 F0B5 push {r4, r5, r6, r7, lr}
838 .LCFI14:
839 .cfi_def_cfa_offset 20
840 .cfi_offset 4, -20
841 .cfi_offset 5, -16
842 .cfi_offset 6, -12
843 .cfi_offset 7, -8
844 .cfi_offset 14, -4
845 0002 89B0 sub sp, sp, #36
846 .LCFI15:
847 .cfi_def_cfa_offset 56
848 0004 0446 mov r4, r0
849 0006 0F46 mov r7, r1
ARM GAS /tmp/cc2oBAwl.s page 76
3043:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t errorstate;
850 .loc 1 3043 3 is_stmt 1 view .LVU281
3044:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t tickstart = HAL_GetTick();
851 .loc 1 3044 3 view .LVU282
3045:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t index = 0U;
852 .loc 1 3045 3 view .LVU283
3045:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t index = 0U;
853 .loc 1 3045 24 is_stmt 0 view .LVU284
854 0008 FFF7FEFF bl HAL_GetTick
855 .LVL86:
3045:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t index = 0U;
856 .loc 1 3045 24 view .LVU285
857 000c 0646 mov r6, r0
858 .LVL87:
3046:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t tempscr[2U] = {0U, 0U};
859 .loc 1 3046 3 is_stmt 1 view .LVU286
3047:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t *scr = pSCR;
860 .loc 1 3047 3 view .LVU287
3047:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t *scr = pSCR;
861 .loc 1 3047 12 is_stmt 0 view .LVU288
862 000e 0023 movs r3, #0
863 0010 0093 str r3, [sp]
864 0012 0193 str r3, [sp, #4]
3048:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
865 .loc 1 3048 3 is_stmt 1 view .LVU289
866 .LVL88:
3051:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
867 .loc 1 3051 3 view .LVU290
3051:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
868 .loc 1 3051 16 is_stmt 0 view .LVU291
869 0014 0821 movs r1, #8
870 0016 2068 ldr r0, [r4]
871 .LVL89:
3051:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
872 .loc 1 3051 16 view .LVU292
873 0018 FFF7FEFF bl SDMMC_CmdBlockLength
874 .LVL90:
3052:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
875 .loc 1 3052 3 is_stmt 1 view .LVU293
3052:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
876 .loc 1 3052 5 is_stmt 0 view .LVU294
877 001c 0546 mov r5, r0
878 001e 10B1 cbz r0, .L70
879 .LVL91:
880 .L58:
3130:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
881 .loc 1 3130 1 view .LVU295
882 0020 2846 mov r0, r5
883 0022 09B0 add sp, sp, #36
884 .LCFI16:
885 .cfi_remember_state
886 .cfi_def_cfa_offset 20
887 @ sp needed
888 0024 F0BD pop {r4, r5, r6, r7, pc}
889 .LVL92:
890 .L70:
891 .LCFI17:
ARM GAS /tmp/cc2oBAwl.s page 77
892 .cfi_restore_state
3058:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
893 .loc 1 3058 3 is_stmt 1 view .LVU296
3058:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
894 .loc 1 3058 74 is_stmt 0 view .LVU297
895 0026 216D ldr r1, [r4, #80]
3058:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
896 .loc 1 3058 16 view .LVU298
897 0028 0904 lsls r1, r1, #16
898 002a 2068 ldr r0, [r4]
899 .LVL93:
3058:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
900 .loc 1 3058 16 view .LVU299
901 002c FFF7FEFF bl SDMMC_CmdAppCommand
902 .LVL94:
3059:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
903 .loc 1 3059 3 is_stmt 1 view .LVU300
3059:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
904 .loc 1 3059 5 is_stmt 0 view .LVU301
905 0030 0546 mov r5, r0
906 0032 0028 cmp r0, #0
907 0034 F4D1 bne .L58
3064:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.DataLength = 8U;
908 .loc 1 3064 3 is_stmt 1 view .LVU302
3064:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.DataLength = 8U;
909 .loc 1 3064 24 is_stmt 0 view .LVU303
910 0036 4FF0FF33 mov r3, #-1
911 003a 0293 str r3, [sp, #8]
3065:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.DataBlockSize = SDMMC_DATABLOCK_SIZE_8B;
912 .loc 1 3065 3 is_stmt 1 view .LVU304
3065:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.DataBlockSize = SDMMC_DATABLOCK_SIZE_8B;
913 .loc 1 3065 24 is_stmt 0 view .LVU305
914 003c 0823 movs r3, #8
915 003e 0393 str r3, [sp, #12]
3066:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.TransferDir = SDMMC_TRANSFER_DIR_TO_SDMMC;
916 .loc 1 3066 3 is_stmt 1 view .LVU306
3066:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.TransferDir = SDMMC_TRANSFER_DIR_TO_SDMMC;
917 .loc 1 3066 24 is_stmt 0 view .LVU307
918 0040 3023 movs r3, #48
919 0042 0493 str r3, [sp, #16]
3067:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.TransferMode = SDMMC_TRANSFER_MODE_BLOCK;
920 .loc 1 3067 3 is_stmt 1 view .LVU308
3067:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.TransferMode = SDMMC_TRANSFER_MODE_BLOCK;
921 .loc 1 3067 24 is_stmt 0 view .LVU309
922 0044 0223 movs r3, #2
923 0046 0593 str r3, [sp, #20]
3068:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.DPSM = SDMMC_DPSM_ENABLE;
924 .loc 1 3068 3 is_stmt 1 view .LVU310
3068:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.DPSM = SDMMC_DPSM_ENABLE;
925 .loc 1 3068 24 is_stmt 0 view .LVU311
926 0048 0023 movs r3, #0
927 004a 0693 str r3, [sp, #24]
3069:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** (void)SDMMC_ConfigData(hsd->Instance, &config);
928 .loc 1 3069 3 is_stmt 1 view .LVU312
3069:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** (void)SDMMC_ConfigData(hsd->Instance, &config);
929 .loc 1 3069 24 is_stmt 0 view .LVU313
930 004c 0123 movs r3, #1
ARM GAS /tmp/cc2oBAwl.s page 78
931 004e 0793 str r3, [sp, #28]
3070:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
932 .loc 1 3070 3 is_stmt 1 view .LVU314
3070:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
933 .loc 1 3070 9 is_stmt 0 view .LVU315
934 0050 02A9 add r1, sp, #8
935 0052 2068 ldr r0, [r4]
936 .LVL95:
3070:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
937 .loc 1 3070 9 view .LVU316
938 0054 FFF7FEFF bl SDMMC_ConfigData
939 .LVL96:
3073:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
940 .loc 1 3073 3 is_stmt 1 view .LVU317
3073:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
941 .loc 1 3073 16 is_stmt 0 view .LVU318
942 0058 2068 ldr r0, [r4]
943 005a FFF7FEFF bl SDMMC_CmdSendSCR
944 .LVL97:
3074:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
945 .loc 1 3074 3 is_stmt 1 view .LVU319
3074:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
946 .loc 1 3074 5 is_stmt 0 view .LVU320
947 005e 0546 mov r5, r0
948 0060 58B1 cbz r0, .L60
949 0062 DDE7 b .L58
950 .LVL98:
951 .L71:
3083:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** index++;
952 .loc 1 3083 7 is_stmt 1 view .LVU321
3083:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** index++;
953 .loc 1 3083 28 is_stmt 0 view .LVU322
954 0064 FFF7FEFF bl SDMMC_ReadFIFO
955 .LVL99:
3083:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** index++;
956 .loc 1 3083 26 view .LVU323
957 0068 4DF82500 str r0, [sp, r5, lsl #2]
3084:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
958 .loc 1 3084 7 is_stmt 1 view .LVU324
3084:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
959 .loc 1 3084 12 is_stmt 0 view .LVU325
960 006c 0135 adds r5, r5, #1
961 .LVL100:
962 .L62:
3091:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
963 .loc 1 3091 5 is_stmt 1 view .LVU326
3091:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
964 .loc 1 3091 9 is_stmt 0 view .LVU327
965 006e FFF7FEFF bl HAL_GetTick
966 .LVL101:
3091:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
967 .loc 1 3091 23 view .LVU328
968 0072 831B subs r3, r0, r6
3091:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
969 .loc 1 3091 7 view .LVU329
970 0074 B3F1FF3F cmp r3, #-1
971 0078 3FD0 beq .L68
ARM GAS /tmp/cc2oBAwl.s page 79
972 .LVL102:
973 .L60:
3079:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
974 .loc 1 3079 8 is_stmt 1 view .LVU330
3079:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
975 .loc 1 3079 10 is_stmt 0 view .LVU331
976 007a 2068 ldr r0, [r4]
977 007c 436B ldr r3, [r0, #52]
3079:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
978 .loc 1 3079 8 view .LVU332
979 007e 13F02A0F tst r3, #42
980 0082 07D1 bne .L63
3081:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
981 .loc 1 3081 5 is_stmt 1 view .LVU333
3081:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
982 .loc 1 3081 8 is_stmt 0 view .LVU334
983 0084 436B ldr r3, [r0, #52]
3081:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
984 .loc 1 3081 7 view .LVU335
985 0086 13F4001F tst r3, #2097152
986 008a EBD1 bne .L71
3086:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
987 .loc 1 3086 10 is_stmt 1 view .LVU336
3086:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
988 .loc 1 3086 14 is_stmt 0 view .LVU337
989 008c 436B ldr r3, [r0, #52]
3086:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
990 .loc 1 3086 12 view .LVU338
991 008e 13F4005F tst r3, #8192
992 0092 ECD1 bne .L62
993 .L63:
3097:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
994 .loc 1 3097 3 is_stmt 1 view .LVU339
3097:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
995 .loc 1 3097 6 is_stmt 0 view .LVU340
996 0094 436B ldr r3, [r0, #52]
3097:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
997 .loc 1 3097 5 view .LVU341
998 0096 13F0080F tst r3, #8
999 009a 25D1 bne .L72
3103:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1000 .loc 1 3103 8 is_stmt 1 view .LVU342
3103:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1001 .loc 1 3103 11 is_stmt 0 view .LVU343
1002 009c 436B ldr r3, [r0, #52]
3103:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1003 .loc 1 3103 10 view .LVU344
1004 009e 13F0020F tst r3, #2
1005 00a2 24D1 bne .L73
3109:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1006 .loc 1 3109 8 is_stmt 1 view .LVU345
3109:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1007 .loc 1 3109 11 is_stmt 0 view .LVU346
1008 00a4 456B ldr r5, [r0, #52]
1009 .LVL103:
3109:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1010 .loc 1 3109 10 view .LVU347
ARM GAS /tmp/cc2oBAwl.s page 80
1011 00a6 15F02005 ands r5, r5, #32
1012 00aa 23D1 bne .L74
3119:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1013 .loc 1 3119 5 is_stmt 1 view .LVU348
1014 00ac 40F23A53 movw r3, #1338
1015 00b0 8363 str r3, [r0, #56]
3121:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** ((tempscr[1] & SDMMC_16TO23BITS) >> 8) | ((tempscr[1] & SDMMC_24TO31BITS) >> 24));
1016 .loc 1 3121 5 view .LVU349
3121:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** ((tempscr[1] & SDMMC_16TO23BITS) >> 8) | ((tempscr[1] & SDMMC_24TO31BITS) >> 24));
1017 .loc 1 3121 22 is_stmt 0 view .LVU350
1018 00b2 019A ldr r2, [sp, #4]
3121:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** ((tempscr[1] & SDMMC_16TO23BITS) >> 8) | ((tempscr[1] & SDMMC_24TO31BITS) >> 24));
1019 .loc 1 3121 86 view .LVU351
1020 00b4 1302 lsls r3, r2, #8
1021 00b6 03F47F03 and r3, r3, #16711680
3121:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** ((tempscr[1] & SDMMC_16TO23BITS) >> 8) | ((tempscr[1] & SDMMC_24TO31BITS) >> 24));
1022 .loc 1 3121 52 view .LVU352
1023 00ba 43EA0263 orr r3, r3, r2, lsl #24
3122:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** scr++;
1024 .loc 1 3122 46 view .LVU353
1025 00be 110A lsrs r1, r2, #8
1026 00c0 01F47F41 and r1, r1, #65280
3121:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** ((tempscr[1] & SDMMC_16TO23BITS) >> 8) | ((tempscr[1] & SDMMC_24TO31BITS) >> 24));
1027 .loc 1 3121 92 view .LVU354
1028 00c4 0B43 orrs r3, r3, r1
3122:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** scr++;
1029 .loc 1 3122 52 view .LVU355
1030 00c6 43EA1263 orr r3, r3, r2, lsr #24
3121:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** ((tempscr[1] & SDMMC_16TO23BITS) >> 8) | ((tempscr[1] & SDMMC_24TO31BITS) >> 24));
1031 .loc 1 3121 10 view .LVU356
1032 00ca 3B60 str r3, [r7]
3123:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** *scr = (((tempscr[0] & SDMMC_0TO7BITS) << 24) | ((tempscr[0] & SDMMC_8TO15BITS) << 8) |\
1033 .loc 1 3123 5 is_stmt 1 view .LVU357
1034 .LVL104:
3124:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** ((tempscr[0] & SDMMC_16TO23BITS) >> 8) | ((tempscr[0] & SDMMC_24TO31BITS) >> 24));
1035 .loc 1 3124 5 view .LVU358
3124:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** ((tempscr[0] & SDMMC_16TO23BITS) >> 8) | ((tempscr[0] & SDMMC_24TO31BITS) >> 24));
1036 .loc 1 3124 22 is_stmt 0 view .LVU359
1037 00cc 009A ldr r2, [sp]
3124:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** ((tempscr[0] & SDMMC_16TO23BITS) >> 8) | ((tempscr[0] & SDMMC_24TO31BITS) >> 24));
1038 .loc 1 3124 86 view .LVU360
1039 00ce 1302 lsls r3, r2, #8
1040 00d0 03F47F03 and r3, r3, #16711680
3124:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** ((tempscr[0] & SDMMC_16TO23BITS) >> 8) | ((tempscr[0] & SDMMC_24TO31BITS) >> 24));
1041 .loc 1 3124 52 view .LVU361
1042 00d4 43EA0263 orr r3, r3, r2, lsl #24
3125:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1043 .loc 1 3125 46 view .LVU362
1044 00d8 110A lsrs r1, r2, #8
1045 00da 01F47F41 and r1, r1, #65280
3124:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** ((tempscr[0] & SDMMC_16TO23BITS) >> 8) | ((tempscr[0] & SDMMC_24TO31BITS) >> 24));
1046 .loc 1 3124 92 view .LVU363
1047 00de 0B43 orrs r3, r3, r1
3125:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1048 .loc 1 3125 52 view .LVU364
1049 00e0 43EA1263 orr r3, r3, r2, lsr #24
3124:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** ((tempscr[0] & SDMMC_16TO23BITS) >> 8) | ((tempscr[0] & SDMMC_24TO31BITS) >> 24));
ARM GAS /tmp/cc2oBAwl.s page 81
1050 .loc 1 3124 10 view .LVU365
1051 00e4 7B60 str r3, [r7, #4]
3129:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1052 .loc 1 3129 3 is_stmt 1 view .LVU366
3129:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1053 .loc 1 3129 10 is_stmt 0 view .LVU367
1054 00e6 9BE7 b .L58
1055 .LVL105:
1056 .L72:
3099:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1057 .loc 1 3099 5 is_stmt 1 view .LVU368
1058 00e8 0825 movs r5, #8
1059 .LVL106:
3099:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1060 .loc 1 3099 5 is_stmt 0 view .LVU369
1061 00ea 8563 str r5, [r0, #56]
3101:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1062 .loc 1 3101 5 is_stmt 1 view .LVU370
3101:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1063 .loc 1 3101 12 is_stmt 0 view .LVU371
1064 00ec 98E7 b .L58
1065 .LVL107:
1066 .L73:
3105:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1067 .loc 1 3105 5 is_stmt 1 view .LVU372
1068 00ee 0225 movs r5, #2
1069 .LVL108:
3105:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1070 .loc 1 3105 5 is_stmt 0 view .LVU373
1071 00f0 8563 str r5, [r0, #56]
3107:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1072 .loc 1 3107 5 is_stmt 1 view .LVU374
3107:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1073 .loc 1 3107 12 is_stmt 0 view .LVU375
1074 00f2 95E7 b .L58
1075 .L74:
3111:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1076 .loc 1 3111 5 is_stmt 1 view .LVU376
1077 00f4 2025 movs r5, #32
1078 00f6 8563 str r5, [r0, #56]
3113:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1079 .loc 1 3113 5 view .LVU377
3113:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1080 .loc 1 3113 12 is_stmt 0 view .LVU378
1081 00f8 92E7 b .L58
1082 .LVL109:
1083 .L68:
3093:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1084 .loc 1 3093 14 view .LVU379
1085 00fa 4FF00045 mov r5, #-2147483648
1086 .LVL110:
3093:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1087 .loc 1 3093 14 view .LVU380
1088 00fe 8FE7 b .L58
1089 .cfi_endproc
1090 .LFE180:
1092 .section .text.SD_WideBus_Enable,"ax",%progbits
ARM GAS /tmp/cc2oBAwl.s page 82
1093 .align 1
1094 .syntax unified
1095 .thumb
1096 .thumb_func
1097 .fpu fpv5-d16
1099 SD_WideBus_Enable:
1100 .LVL111:
1101 .LFB178:
2946:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t scr[2U] = {0U, 0U};
1102 .loc 1 2946 1 is_stmt 1 view -0
1103 .cfi_startproc
1104 @ args = 0, pretend = 0, frame = 8
1105 @ frame_needed = 0, uses_anonymous_args = 0
2946:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t scr[2U] = {0U, 0U};
1106 .loc 1 2946 1 is_stmt 0 view .LVU382
1107 0000 10B5 push {r4, lr}
1108 .LCFI18:
1109 .cfi_def_cfa_offset 8
1110 .cfi_offset 4, -8
1111 .cfi_offset 14, -4
1112 0002 82B0 sub sp, sp, #8
1113 .LCFI19:
1114 .cfi_def_cfa_offset 16
1115 0004 0446 mov r4, r0
2947:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t errorstate;
1116 .loc 1 2947 3 is_stmt 1 view .LVU383
2947:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t errorstate;
1117 .loc 1 2947 12 is_stmt 0 view .LVU384
1118 0006 0021 movs r1, #0
1119 0008 0091 str r1, [sp]
1120 000a 0191 str r1, [sp, #4]
2948:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1121 .loc 1 2948 3 is_stmt 1 view .LVU385
2950:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1122 .loc 1 2950 3 view .LVU386
2950:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1123 .loc 1 2950 7 is_stmt 0 view .LVU387
1124 000c 0068 ldr r0, [r0]
1125 .LVL112:
2950:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1126 .loc 1 2950 7 view .LVU388
1127 000e FFF7FEFF bl SDMMC_GetResponse
1128 .LVL113:
2950:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1129 .loc 1 2950 5 view .LVU389
1130 0012 10F0007F tst r0, #33554432
1131 0016 13D1 bne .L77
2956:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
1132 .loc 1 2956 3 is_stmt 1 view .LVU390
2956:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
1133 .loc 1 2956 16 is_stmt 0 view .LVU391
1134 0018 6946 mov r1, sp
1135 001a 2046 mov r0, r4
1136 001c FFF7FEFF bl SD_FindSCR
1137 .LVL114:
2957:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1138 .loc 1 2957 3 is_stmt 1 view .LVU392
ARM GAS /tmp/cc2oBAwl.s page 83
2957:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1139 .loc 1 2957 5 is_stmt 0 view .LVU393
1140 0020 80B9 cbnz r0, .L75
2963:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1141 .loc 1 2963 3 is_stmt 1 view .LVU394
2963:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1142 .loc 1 2963 5 is_stmt 0 view .LVU395
1143 0022 019B ldr r3, [sp, #4]
1144 0024 13F4802F tst r3, #262144
1145 0028 0ED0 beq .L78
2966:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
1146 .loc 1 2966 5 is_stmt 1 view .LVU396
2966:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
1147 .loc 1 2966 75 is_stmt 0 view .LVU397
1148 002a 216D ldr r1, [r4, #80]
2966:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
1149 .loc 1 2966 18 view .LVU398
1150 002c 0904 lsls r1, r1, #16
1151 002e 2068 ldr r0, [r4]
1152 .LVL115:
2966:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
1153 .loc 1 2966 18 view .LVU399
1154 0030 FFF7FEFF bl SDMMC_CmdAppCommand
1155 .LVL116:
2967:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1156 .loc 1 2967 5 is_stmt 1 view .LVU400
2967:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1157 .loc 1 2967 7 is_stmt 0 view .LVU401
1158 0034 30B9 cbnz r0, .L75
2973:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
1159 .loc 1 2973 5 is_stmt 1 view .LVU402
2973:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
1160 .loc 1 2973 18 is_stmt 0 view .LVU403
1161 0036 0221 movs r1, #2
1162 0038 2068 ldr r0, [r4]
1163 .LVL117:
2973:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
1164 .loc 1 2973 18 view .LVU404
1165 003a FFF7FEFF bl SDMMC_CmdBusWidth
1166 .LVL118:
2974:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1167 .loc 1 2974 5 is_stmt 1 view .LVU405
1168 003e 01E0 b .L75
1169 .LVL119:
1170 .L77:
2952:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1171 .loc 1 2952 12 is_stmt 0 view .LVU406
1172 0040 4FF40060 mov r0, #2048
1173 .L75:
2985:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1174 .loc 1 2985 1 view .LVU407
1175 0044 02B0 add sp, sp, #8
1176 .LCFI20:
1177 .cfi_remember_state
1178 .cfi_def_cfa_offset 8
1179 @ sp needed
1180 0046 10BD pop {r4, pc}
ARM GAS /tmp/cc2oBAwl.s page 84
1181 .LVL120:
1182 .L78:
1183 .LCFI21:
1184 .cfi_restore_state
2983:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1185 .loc 1 2983 12 view .LVU408
1186 0048 4FF08060 mov r0, #67108864
1187 .LVL121:
2983:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1188 .loc 1 2983 12 view .LVU409
1189 004c FAE7 b .L75
1190 .cfi_endproc
1191 .LFE178:
1193 .section .text.SD_WideBus_Disable,"ax",%progbits
1194 .align 1
1195 .syntax unified
1196 .thumb
1197 .thumb_func
1198 .fpu fpv5-d16
1200 SD_WideBus_Disable:
1201 .LVL122:
1202 .LFB179:
2993:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t scr[2U] = {0U, 0U};
1203 .loc 1 2993 1 is_stmt 1 view -0
1204 .cfi_startproc
1205 @ args = 0, pretend = 0, frame = 8
1206 @ frame_needed = 0, uses_anonymous_args = 0
2993:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t scr[2U] = {0U, 0U};
1207 .loc 1 2993 1 is_stmt 0 view .LVU411
1208 0000 10B5 push {r4, lr}
1209 .LCFI22:
1210 .cfi_def_cfa_offset 8
1211 .cfi_offset 4, -8
1212 .cfi_offset 14, -4
1213 0002 82B0 sub sp, sp, #8
1214 .LCFI23:
1215 .cfi_def_cfa_offset 16
1216 0004 0446 mov r4, r0
2994:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t errorstate;
1217 .loc 1 2994 3 is_stmt 1 view .LVU412
2994:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t errorstate;
1218 .loc 1 2994 12 is_stmt 0 view .LVU413
1219 0006 0021 movs r1, #0
1220 0008 0091 str r1, [sp]
1221 000a 0191 str r1, [sp, #4]
2995:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1222 .loc 1 2995 3 is_stmt 1 view .LVU414
2997:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1223 .loc 1 2997 3 view .LVU415
2997:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1224 .loc 1 2997 7 is_stmt 0 view .LVU416
1225 000c 0068 ldr r0, [r0]
1226 .LVL123:
2997:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1227 .loc 1 2997 7 view .LVU417
1228 000e FFF7FEFF bl SDMMC_GetResponse
1229 .LVL124:
ARM GAS /tmp/cc2oBAwl.s page 85
2997:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1230 .loc 1 2997 5 view .LVU418
1231 0012 10F0007F tst r0, #33554432
1232 0016 13D1 bne .L82
3003:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
1233 .loc 1 3003 3 is_stmt 1 view .LVU419
3003:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
1234 .loc 1 3003 16 is_stmt 0 view .LVU420
1235 0018 6946 mov r1, sp
1236 001a 2046 mov r0, r4
1237 001c FFF7FEFF bl SD_FindSCR
1238 .LVL125:
3004:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1239 .loc 1 3004 3 is_stmt 1 view .LVU421
3004:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1240 .loc 1 3004 5 is_stmt 0 view .LVU422
1241 0020 80B9 cbnz r0, .L80
3010:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1242 .loc 1 3010 3 is_stmt 1 view .LVU423
3010:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1243 .loc 1 3010 5 is_stmt 0 view .LVU424
1244 0022 019B ldr r3, [sp, #4]
1245 0024 13F4803F tst r3, #65536
1246 0028 0ED0 beq .L83
3013:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
1247 .loc 1 3013 5 is_stmt 1 view .LVU425
3013:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
1248 .loc 1 3013 75 is_stmt 0 view .LVU426
1249 002a 216D ldr r1, [r4, #80]
3013:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
1250 .loc 1 3013 18 view .LVU427
1251 002c 0904 lsls r1, r1, #16
1252 002e 2068 ldr r0, [r4]
1253 .LVL126:
3013:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
1254 .loc 1 3013 18 view .LVU428
1255 0030 FFF7FEFF bl SDMMC_CmdAppCommand
1256 .LVL127:
3014:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1257 .loc 1 3014 5 is_stmt 1 view .LVU429
3014:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1258 .loc 1 3014 7 is_stmt 0 view .LVU430
1259 0034 30B9 cbnz r0, .L80
3020:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
1260 .loc 1 3020 5 is_stmt 1 view .LVU431
3020:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
1261 .loc 1 3020 18 is_stmt 0 view .LVU432
1262 0036 0021 movs r1, #0
1263 0038 2068 ldr r0, [r4]
1264 .LVL128:
3020:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
1265 .loc 1 3020 18 view .LVU433
1266 003a FFF7FEFF bl SDMMC_CmdBusWidth
1267 .LVL129:
3021:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1268 .loc 1 3021 5 is_stmt 1 view .LVU434
1269 003e 01E0 b .L80
ARM GAS /tmp/cc2oBAwl.s page 86
1270 .LVL130:
1271 .L82:
2999:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1272 .loc 1 2999 12 is_stmt 0 view .LVU435
1273 0040 4FF40060 mov r0, #2048
1274 .L80:
3032:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1275 .loc 1 3032 1 view .LVU436
1276 0044 02B0 add sp, sp, #8
1277 .LCFI24:
1278 .cfi_remember_state
1279 .cfi_def_cfa_offset 8
1280 @ sp needed
1281 0046 10BD pop {r4, pc}
1282 .LVL131:
1283 .L83:
1284 .LCFI25:
1285 .cfi_restore_state
3030:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1286 .loc 1 3030 12 view .LVU437
1287 0048 4FF08060 mov r0, #67108864
1288 .LVL132:
3030:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1289 .loc 1 3030 12 view .LVU438
1290 004c FAE7 b .L80
1291 .cfi_endproc
1292 .LFE179:
1294 .section .text.SD_SendStatus,"ax",%progbits
1295 .align 1
1296 .syntax unified
1297 .thumb
1298 .thumb_func
1299 .fpu fpv5-d16
1301 SD_SendStatus:
1302 .LVL133:
1303 .LFB177:
2919:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t errorstate;
1304 .loc 1 2919 1 is_stmt 1 view -0
1305 .cfi_startproc
1306 @ args = 0, pretend = 0, frame = 0
1307 @ frame_needed = 0, uses_anonymous_args = 0
2919:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t errorstate;
1308 .loc 1 2919 1 is_stmt 0 view .LVU440
1309 0000 70B5 push {r4, r5, r6, lr}
1310 .LCFI26:
1311 .cfi_def_cfa_offset 16
1312 .cfi_offset 4, -16
1313 .cfi_offset 5, -12
1314 .cfi_offset 6, -8
1315 .cfi_offset 14, -4
2920:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1316 .loc 1 2920 3 is_stmt 1 view .LVU441
2922:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1317 .loc 1 2922 3 view .LVU442
2922:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1318 .loc 1 2922 5 is_stmt 0 view .LVU443
1319 0002 81B1 cbz r1, .L87
ARM GAS /tmp/cc2oBAwl.s page 87
1320 0004 0446 mov r4, r0
1321 0006 0E46 mov r6, r1
2928:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
1322 .loc 1 2928 3 is_stmt 1 view .LVU444
2928:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
1323 .loc 1 2928 73 is_stmt 0 view .LVU445
1324 0008 016D ldr r1, [r0, #80]
1325 .LVL134:
2928:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
1326 .loc 1 2928 16 view .LVU446
1327 000a 0904 lsls r1, r1, #16
1328 000c 0068 ldr r0, [r0]
1329 .LVL135:
2928:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
1330 .loc 1 2928 16 view .LVU447
1331 000e FFF7FEFF bl SDMMC_CmdSendStatus
1332 .LVL136:
2929:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1333 .loc 1 2929 3 is_stmt 1 view .LVU448
2929:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1334 .loc 1 2929 5 is_stmt 0 view .LVU449
1335 0012 0546 mov r5, r0
1336 0014 08B1 cbz r0, .L89
1337 .LVL137:
1338 .L85:
2938:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1339 .loc 1 2938 1 view .LVU450
1340 0016 2846 mov r0, r5
1341 0018 70BD pop {r4, r5, r6, pc}
1342 .LVL138:
1343 .L89:
2935:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1344 .loc 1 2935 3 is_stmt 1 view .LVU451
2935:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1345 .loc 1 2935 18 is_stmt 0 view .LVU452
1346 001a 0021 movs r1, #0
1347 001c 2068 ldr r0, [r4]
1348 .LVL139:
2935:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1349 .loc 1 2935 18 view .LVU453
1350 001e FFF7FEFF bl SDMMC_GetResponse
1351 .LVL140:
2935:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1352 .loc 1 2935 16 view .LVU454
1353 0022 3060 str r0, [r6]
2937:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1354 .loc 1 2937 3 is_stmt 1 view .LVU455
2937:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1355 .loc 1 2937 10 is_stmt 0 view .LVU456
1356 0024 F7E7 b .L85
1357 .LVL141:
1358 .L87:
2924:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1359 .loc 1 2924 12 view .LVU457
1360 0026 4FF00065 mov r5, #134217728
1361 002a F4E7 b .L85
1362 .cfi_endproc
ARM GAS /tmp/cc2oBAwl.s page 88
1363 .LFE177:
1365 .section .text.HAL_SD_MspInit,"ax",%progbits
1366 .align 1
1367 .weak HAL_SD_MspInit
1368 .syntax unified
1369 .thumb
1370 .thumb_func
1371 .fpu fpv5-d16
1373 HAL_SD_MspInit:
1374 .LVL142:
1375 .LFB144:
515:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Prevent unused argument(s) compilation warning */
1376 .loc 1 515 1 is_stmt 1 view -0
1377 .cfi_startproc
1378 @ args = 0, pretend = 0, frame = 0
1379 @ frame_needed = 0, uses_anonymous_args = 0
1380 @ link register save eliminated.
517:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1381 .loc 1 517 3 view .LVU459
522:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1382 .loc 1 522 1 is_stmt 0 view .LVU460
1383 0000 7047 bx lr
1384 .cfi_endproc
1385 .LFE144:
1387 .section .text.HAL_SD_MspDeInit,"ax",%progbits
1388 .align 1
1389 .weak HAL_SD_MspDeInit
1390 .syntax unified
1391 .thumb
1392 .thumb_func
1393 .fpu fpv5-d16
1395 HAL_SD_MspDeInit:
1396 .LVL143:
1397 .LFB145:
530:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Prevent unused argument(s) compilation warning */
1398 .loc 1 530 1 is_stmt 1 view -0
1399 .cfi_startproc
1400 @ args = 0, pretend = 0, frame = 0
1401 @ frame_needed = 0, uses_anonymous_args = 0
1402 @ link register save eliminated.
532:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1403 .loc 1 532 3 view .LVU462
537:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1404 .loc 1 537 1 is_stmt 0 view .LVU463
1405 0000 7047 bx lr
1406 .cfi_endproc
1407 .LFE145:
1409 .section .text.HAL_SD_DeInit,"ax",%progbits
1410 .align 1
1411 .global HAL_SD_DeInit
1412 .syntax unified
1413 .thumb
1414 .thumb_func
1415 .fpu fpv5-d16
1417 HAL_SD_DeInit:
1418 .LVL144:
1419 .LFB143:
ARM GAS /tmp/cc2oBAwl.s page 89
474:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Check the SD handle allocation */
1420 .loc 1 474 1 is_stmt 1 view -0
1421 .cfi_startproc
1422 @ args = 0, pretend = 0, frame = 0
1423 @ frame_needed = 0, uses_anonymous_args = 0
476:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1424 .loc 1 476 3 view .LVU465
476:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1425 .loc 1 476 5 is_stmt 0 view .LVU466
1426 0000 70B1 cbz r0, .L94
474:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Check the SD handle allocation */
1427 .loc 1 474 1 view .LVU467
1428 0002 10B5 push {r4, lr}
1429 .LCFI27:
1430 .cfi_def_cfa_offset 8
1431 .cfi_offset 4, -8
1432 .cfi_offset 14, -4
1433 0004 0446 mov r4, r0
482:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1434 .loc 1 482 3 is_stmt 1 view .LVU468
484:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1435 .loc 1 484 3 view .LVU469
484:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1436 .loc 1 484 14 is_stmt 0 view .LVU470
1437 0006 0323 movs r3, #3
1438 0008 80F83430 strb r3, [r0, #52]
487:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1439 .loc 1 487 3 is_stmt 1 view .LVU471
1440 000c FFF7FEFF bl SD_PowerOFF
1441 .LVL145:
499:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** #endif /* USE_HAL_SD_REGISTER_CALLBACKS */
1442 .loc 1 499 3 view .LVU472
1443 0010 2046 mov r0, r4
1444 0012 FFF7FEFF bl HAL_SD_MspDeInit
1445 .LVL146:
502:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_RESET;
1446 .loc 1 502 3 view .LVU473
502:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_RESET;
1447 .loc 1 502 18 is_stmt 0 view .LVU474
1448 0016 0020 movs r0, #0
1449 0018 A063 str r0, [r4, #56]
503:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1450 .loc 1 503 3 is_stmt 1 view .LVU475
503:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1451 .loc 1 503 14 is_stmt 0 view .LVU476
1452 001a 84F83400 strb r0, [r4, #52]
505:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1453 .loc 1 505 3 is_stmt 1 view .LVU477
506:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1454 .loc 1 506 1 is_stmt 0 view .LVU478
1455 001e 10BD pop {r4, pc}
1456 .LVL147:
1457 .L94:
1458 .LCFI28:
1459 .cfi_def_cfa_offset 0
1460 .cfi_restore 4
1461 .cfi_restore 14
ARM GAS /tmp/cc2oBAwl.s page 90
478:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1462 .loc 1 478 12 view .LVU479
1463 0020 0120 movs r0, #1
1464 .LVL148:
506:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1465 .loc 1 506 1 view .LVU480
1466 0022 7047 bx lr
1467 .cfi_endproc
1468 .LFE143:
1470 .section .text.HAL_SD_ReadBlocks,"ax",%progbits
1471 .align 1
1472 .global HAL_SD_ReadBlocks
1473 .syntax unified
1474 .thumb
1475 .thumb_func
1476 .fpu fpv5-d16
1478 HAL_SD_ReadBlocks:
1479 .LVL149:
1480 .LFB146:
571:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** SDMMC_DataInitTypeDef config;
1481 .loc 1 571 1 is_stmt 1 view -0
1482 .cfi_startproc
1483 @ args = 4, pretend = 0, frame = 24
1484 @ frame_needed = 0, uses_anonymous_args = 0
571:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** SDMMC_DataInitTypeDef config;
1485 .loc 1 571 1 is_stmt 0 view .LVU482
1486 0000 2DE9F04F push {r4, r5, r6, r7, r8, r9, r10, fp, lr}
1487 .LCFI29:
1488 .cfi_def_cfa_offset 36
1489 .cfi_offset 4, -36
1490 .cfi_offset 5, -32
1491 .cfi_offset 6, -28
1492 .cfi_offset 7, -24
1493 .cfi_offset 8, -20
1494 .cfi_offset 9, -16
1495 .cfi_offset 10, -12
1496 .cfi_offset 11, -8
1497 .cfi_offset 14, -4
1498 0004 87B0 sub sp, sp, #28
1499 .LCFI30:
1500 .cfi_def_cfa_offset 64
1501 0006 0546 mov r5, r0
1502 0008 0C46 mov r4, r1
1503 000a 1646 mov r6, r2
1504 000c 9B46 mov fp, r3
1505 000e DDF840A0 ldr r10, [sp, #64]
572:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t errorstate;
1506 .loc 1 572 3 is_stmt 1 view .LVU483
573:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t tickstart = HAL_GetTick();
1507 .loc 1 573 3 view .LVU484
574:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t count, data, dataremaining;
1508 .loc 1 574 3 view .LVU485
574:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t count, data, dataremaining;
1509 .loc 1 574 24 is_stmt 0 view .LVU486
1510 0012 FFF7FEFF bl HAL_GetTick
1511 .LVL150:
575:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t add = BlockAdd;
ARM GAS /tmp/cc2oBAwl.s page 91
1512 .loc 1 575 3 is_stmt 1 view .LVU487
576:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint8_t *tempbuff = pData;
1513 .loc 1 576 3 view .LVU488
577:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1514 .loc 1 577 3 view .LVU489
579:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1515 .loc 1 579 3 view .LVU490
579:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1516 .loc 1 579 5 is_stmt 0 view .LVU491
1517 0016 002C cmp r4, #0
1518 0018 36D0 beq .L122
1519 001a 8146 mov r9, r0
585:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1520 .loc 1 585 3 is_stmt 1 view .LVU492
585:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1521 .loc 1 585 9 is_stmt 0 view .LVU493
1522 001c 95F83470 ldrb r7, [r5, #52] @ zero_extendqisi2
1523 0020 FFB2 uxtb r7, r7
585:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1524 .loc 1 585 5 view .LVU494
1525 0022 012F cmp r7, #1
1526 0024 40F00481 bne .L102
587:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1527 .loc 1 587 5 is_stmt 1 view .LVU495
587:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1528 .loc 1 587 20 is_stmt 0 view .LVU496
1529 0028 0023 movs r3, #0
1530 002a AB63 str r3, [r5, #56]
589:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1531 .loc 1 589 5 is_stmt 1 view .LVU497
589:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1532 .loc 1 589 13 is_stmt 0 view .LVU498
1533 002c 06EB0B03 add r3, r6, fp
589:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1534 .loc 1 589 45 view .LVU499
1535 0030 EA6D ldr r2, [r5, #92]
589:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1536 .loc 1 589 7 view .LVU500
1537 0032 9342 cmp r3, r2
1538 0034 2ED8 bhi .L123
595:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1539 .loc 1 595 5 is_stmt 1 view .LVU501
595:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1540 .loc 1 595 16 is_stmt 0 view .LVU502
1541 0036 0323 movs r3, #3
1542 0038 85F83430 strb r3, [r5, #52]
598:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1543 .loc 1 598 5 is_stmt 1 view .LVU503
598:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1544 .loc 1 598 8 is_stmt 0 view .LVU504
1545 003c 2B68 ldr r3, [r5]
598:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1546 .loc 1 598 26 view .LVU505
1547 003e 0022 movs r2, #0
1548 0040 DA62 str r2, [r3, #44]
600:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1549 .loc 1 600 5 is_stmt 1 view .LVU506
ARM GAS /tmp/cc2oBAwl.s page 92
600:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1550 .loc 1 600 19 is_stmt 0 view .LVU507
1551 0042 6B6C ldr r3, [r5, #68]
600:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1552 .loc 1 600 7 view .LVU508
1553 0044 012B cmp r3, #1
1554 0046 00D0 beq .L104
602:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1555 .loc 1 602 7 is_stmt 1 view .LVU509
602:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1556 .loc 1 602 11 is_stmt 0 view .LVU510
1557 0048 7602 lsls r6, r6, #9
1558 .LVL151:
1559 .L104:
606:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.DataLength = NumberOfBlocks * BLOCKSIZE;
1560 .loc 1 606 5 is_stmt 1 view .LVU511
606:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.DataLength = NumberOfBlocks * BLOCKSIZE;
1561 .loc 1 606 26 is_stmt 0 view .LVU512
1562 004a 4FF0FF33 mov r3, #-1
1563 004e 0093 str r3, [sp]
607:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.DataBlockSize = SDMMC_DATABLOCK_SIZE_512B;
1564 .loc 1 607 5 is_stmt 1 view .LVU513
607:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.DataBlockSize = SDMMC_DATABLOCK_SIZE_512B;
1565 .loc 1 607 43 is_stmt 0 view .LVU514
1566 0050 4FEA4B23 lsl r3, fp, #9
607:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.DataBlockSize = SDMMC_DATABLOCK_SIZE_512B;
1567 .loc 1 607 26 view .LVU515
1568 0054 0193 str r3, [sp, #4]
608:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.TransferDir = SDMMC_TRANSFER_DIR_TO_SDMMC;
1569 .loc 1 608 5 is_stmt 1 view .LVU516
608:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.TransferDir = SDMMC_TRANSFER_DIR_TO_SDMMC;
1570 .loc 1 608 26 is_stmt 0 view .LVU517
1571 0056 9023 movs r3, #144
1572 0058 0293 str r3, [sp, #8]
609:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.TransferMode = SDMMC_TRANSFER_MODE_BLOCK;
1573 .loc 1 609 5 is_stmt 1 view .LVU518
609:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.TransferMode = SDMMC_TRANSFER_MODE_BLOCK;
1574 .loc 1 609 26 is_stmt 0 view .LVU519
1575 005a 0223 movs r3, #2
1576 005c 0393 str r3, [sp, #12]
610:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.DPSM = SDMMC_DPSM_ENABLE;
1577 .loc 1 610 5 is_stmt 1 view .LVU520
610:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.DPSM = SDMMC_DPSM_ENABLE;
1578 .loc 1 610 26 is_stmt 0 view .LVU521
1579 005e 0023 movs r3, #0
1580 0060 0493 str r3, [sp, #16]
611:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** (void)SDMMC_ConfigData(hsd->Instance, &config);
1581 .loc 1 611 5 is_stmt 1 view .LVU522
611:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** (void)SDMMC_ConfigData(hsd->Instance, &config);
1582 .loc 1 611 26 is_stmt 0 view .LVU523
1583 0062 0123 movs r3, #1
1584 0064 0593 str r3, [sp, #20]
612:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1585 .loc 1 612 5 is_stmt 1 view .LVU524
612:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1586 .loc 1 612 11 is_stmt 0 view .LVU525
1587 0066 6946 mov r1, sp
ARM GAS /tmp/cc2oBAwl.s page 93
1588 0068 2868 ldr r0, [r5]
1589 .LVL152:
612:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1590 .loc 1 612 11 view .LVU526
1591 006a FFF7FEFF bl SDMMC_ConfigData
1592 .LVL153:
615:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1593 .loc 1 615 5 is_stmt 1 view .LVU527
615:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1594 .loc 1 615 7 is_stmt 0 view .LVU528
1595 006e BBF1010F cmp fp, #1
1596 0072 14D9 bls .L105
617:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1597 .loc 1 617 7 is_stmt 1 view .LVU529
617:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1598 .loc 1 617 20 is_stmt 0 view .LVU530
1599 0074 0223 movs r3, #2
1600 0076 2B63 str r3, [r5, #48]
620:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1601 .loc 1 620 7 is_stmt 1 view .LVU531
620:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1602 .loc 1 620 20 is_stmt 0 view .LVU532
1603 0078 3146 mov r1, r6
1604 007a 2868 ldr r0, [r5]
1605 007c FFF7FEFF bl SDMMC_CmdReadMultiBlock
1606 .LVL154:
1607 .L106:
629:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1608 .loc 1 629 5 is_stmt 1 view .LVU533
629:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1609 .loc 1 629 7 is_stmt 0 view .LVU534
1610 0080 A0B9 cbnz r0, .L124
640:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** while(!__HAL_SD_GET_FLAG(hsd, SDMMC_FLAG_RXOVERR | SDMMC_FLAG_DCRCFAIL | SDMMC_FLAG_DTIMEOUT |
1611 .loc 1 640 5 is_stmt 1 view .LVU535
640:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** while(!__HAL_SD_GET_FLAG(hsd, SDMMC_FLAG_RXOVERR | SDMMC_FLAG_DCRCFAIL | SDMMC_FLAG_DTIMEOUT |
1612 .loc 1 640 19 is_stmt 0 view .LVU536
1613 0082 DDF80480 ldr r8, [sp, #4]
1614 .LVL155:
641:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1615 .loc 1 641 5 is_stmt 1 view .LVU537
641:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1616 .loc 1 641 10 is_stmt 0 view .LVU538
1617 0086 38E0 b .L108
1618 .LVL156:
1619 .L122:
581:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
1620 .loc 1 581 5 is_stmt 1 view .LVU539
581:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
1621 .loc 1 581 20 is_stmt 0 view .LVU540
1622 0088 AB6B ldr r3, [r5, #56]
1623 008a 43F00063 orr r3, r3, #134217728
1624 008e AB63 str r3, [r5, #56]
582:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1625 .loc 1 582 5 is_stmt 1 view .LVU541
582:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1626 .loc 1 582 12 is_stmt 0 view .LVU542
1627 0090 0127 movs r7, #1
ARM GAS /tmp/cc2oBAwl.s page 94
1628 0092 D2E0 b .L101
1629 .L123:
591:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
1630 .loc 1 591 7 is_stmt 1 view .LVU543
591:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
1631 .loc 1 591 22 is_stmt 0 view .LVU544
1632 0094 AB6B ldr r3, [r5, #56]
1633 0096 43F00073 orr r3, r3, #33554432
1634 009a AB63 str r3, [r5, #56]
592:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1635 .loc 1 592 7 is_stmt 1 view .LVU545
592:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1636 .loc 1 592 14 is_stmt 0 view .LVU546
1637 009c CDE0 b .L101
1638 .LVL157:
1639 .L105:
624:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1640 .loc 1 624 7 is_stmt 1 view .LVU547
624:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1641 .loc 1 624 20 is_stmt 0 view .LVU548
1642 009e 0123 movs r3, #1
1643 00a0 2B63 str r3, [r5, #48]
627:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1644 .loc 1 627 7 is_stmt 1 view .LVU549
627:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1645 .loc 1 627 20 is_stmt 0 view .LVU550
1646 00a2 3146 mov r1, r6
1647 00a4 2868 ldr r0, [r5]
1648 00a6 FFF7FEFF bl SDMMC_CmdReadSingleBlock
1649 .LVL158:
627:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1650 .loc 1 627 20 view .LVU551
1651 00aa E9E7 b .L106
1652 .L124:
632:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= errorstate;
1653 .loc 1 632 7 is_stmt 1 view .LVU552
1654 00ac 2B68 ldr r3, [r5]
1655 00ae 654A ldr r2, .L130
1656 00b0 9A63 str r2, [r3, #56]
633:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
1657 .loc 1 633 7 view .LVU553
633:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
1658 .loc 1 633 22 is_stmt 0 view .LVU554
1659 00b2 AB6B ldr r3, [r5, #56]
1660 00b4 1843 orrs r0, r0, r3
1661 .LVL159:
633:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
1662 .loc 1 633 22 view .LVU555
1663 00b6 A863 str r0, [r5, #56]
634:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Context = SD_CONTEXT_NONE;
1664 .loc 1 634 7 is_stmt 1 view .LVU556
634:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Context = SD_CONTEXT_NONE;
1665 .loc 1 634 18 is_stmt 0 view .LVU557
1666 00b8 0123 movs r3, #1
1667 00ba 85F83430 strb r3, [r5, #52]
635:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
1668 .loc 1 635 7 is_stmt 1 view .LVU558
ARM GAS /tmp/cc2oBAwl.s page 95
635:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
1669 .loc 1 635 20 is_stmt 0 view .LVU559
1670 00be 0023 movs r3, #0
1671 00c0 2B63 str r3, [r5, #48]
636:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1672 .loc 1 636 7 is_stmt 1 view .LVU560
636:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1673 .loc 1 636 14 is_stmt 0 view .LVU561
1674 00c2 BAE0 b .L101
1675 .LVL160:
1676 .L111:
648:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** *tempbuff = (uint8_t)(data & 0xFFU);
1677 .loc 1 648 11 is_stmt 1 discriminator 3 view .LVU562
648:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** *tempbuff = (uint8_t)(data & 0xFFU);
1678 .loc 1 648 18 is_stmt 0 discriminator 3 view .LVU563
1679 00c4 2868 ldr r0, [r5]
1680 00c6 FFF7FEFF bl SDMMC_ReadFIFO
1681 .LVL161:
649:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** tempbuff++;
1682 .loc 1 649 11 is_stmt 1 discriminator 3 view .LVU564
649:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** tempbuff++;
1683 .loc 1 649 21 is_stmt 0 discriminator 3 view .LVU565
1684 00ca 2070 strb r0, [r4]
650:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** dataremaining--;
1685 .loc 1 650 11 is_stmt 1 discriminator 3 view .LVU566
1686 .LVL162:
651:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** *tempbuff = (uint8_t)((data >> 8U) & 0xFFU);
1687 .loc 1 651 11 discriminator 3 view .LVU567
652:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** tempbuff++;
1688 .loc 1 652 11 discriminator 3 view .LVU568
652:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** tempbuff++;
1689 .loc 1 652 23 is_stmt 0 discriminator 3 view .LVU569
1690 00cc C0F30723 ubfx r3, r0, #8, #8
652:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** tempbuff++;
1691 .loc 1 652 21 discriminator 3 view .LVU570
1692 00d0 6370 strb r3, [r4, #1]
653:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** dataremaining--;
1693 .loc 1 653 11 is_stmt 1 discriminator 3 view .LVU571
1694 .LVL163:
654:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** *tempbuff = (uint8_t)((data >> 16U) & 0xFFU);
1695 .loc 1 654 11 discriminator 3 view .LVU572
655:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** tempbuff++;
1696 .loc 1 655 11 discriminator 3 view .LVU573
655:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** tempbuff++;
1697 .loc 1 655 23 is_stmt 0 discriminator 3 view .LVU574
1698 00d2 C0F30743 ubfx r3, r0, #16, #8
655:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** tempbuff++;
1699 .loc 1 655 21 discriminator 3 view .LVU575
1700 00d6 A370 strb r3, [r4, #2]
656:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** dataremaining--;
1701 .loc 1 656 11 is_stmt 1 discriminator 3 view .LVU576
1702 .LVL164:
657:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** *tempbuff = (uint8_t)((data >> 24U) & 0xFFU);
1703 .loc 1 657 11 discriminator 3 view .LVU577
658:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** tempbuff++;
1704 .loc 1 658 11 discriminator 3 view .LVU578
658:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** tempbuff++;
ARM GAS /tmp/cc2oBAwl.s page 96
1705 .loc 1 658 23 is_stmt 0 discriminator 3 view .LVU579
1706 00d8 000E lsrs r0, r0, #24
1707 .LVL165:
658:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** tempbuff++;
1708 .loc 1 658 21 discriminator 3 view .LVU580
1709 00da E070 strb r0, [r4, #3]
659:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** dataremaining--;
1710 .loc 1 659 11 is_stmt 1 discriminator 3 view .LVU581
659:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** dataremaining--;
1711 .loc 1 659 19 is_stmt 0 discriminator 3 view .LVU582
1712 00dc 0434 adds r4, r4, #4
1713 .LVL166:
660:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1714 .loc 1 660 11 is_stmt 1 discriminator 3 view .LVU583
660:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1715 .loc 1 660 24 is_stmt 0 discriminator 3 view .LVU584
1716 00de A8F10408 sub r8, r8, #4
1717 .LVL167:
646:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1718 .loc 1 646 37 is_stmt 1 discriminator 3 view .LVU585
646:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1719 .loc 1 646 42 is_stmt 0 discriminator 3 view .LVU586
1720 00e2 0136 adds r6, r6, #1
1721 .LVL168:
1722 .L110:
646:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1723 .loc 1 646 25 is_stmt 1 discriminator 1 view .LVU587
646:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1724 .loc 1 646 9 is_stmt 0 discriminator 1 view .LVU588
1725 00e4 072E cmp r6, #7
1726 00e6 EDD9 bls .L111
1727 .LVL169:
1728 .L109:
664:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1729 .loc 1 664 7 is_stmt 1 view .LVU589
664:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1730 .loc 1 664 12 is_stmt 0 view .LVU590
1731 00e8 FFF7FEFF bl HAL_GetTick
1732 .LVL170:
664:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1733 .loc 1 664 25 view .LVU591
1734 00ec A0EB0900 sub r0, r0, r9
664:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1735 .loc 1 664 9 view .LVU592
1736 00f0 5045 cmp r0, r10
1737 00f2 0FD2 bcs .L112
664:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1738 .loc 1 664 50 discriminator 1 view .LVU593
1739 00f4 BAF1000F cmp r10, #0
1740 00f8 0CD0 beq .L112
1741 .L108:
641:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1742 .loc 1 641 10 is_stmt 1 view .LVU594
641:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1743 .loc 1 641 12 is_stmt 0 view .LVU595
1744 00fa 2868 ldr r0, [r5]
1745 00fc 466B ldr r6, [r0, #52]
ARM GAS /tmp/cc2oBAwl.s page 97
641:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1746 .loc 1 641 10 view .LVU596
1747 00fe 16F49576 ands r6, r6, #298
1748 0102 15D1 bne .L125
643:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1749 .loc 1 643 7 is_stmt 1 view .LVU597
643:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1750 .loc 1 643 10 is_stmt 0 view .LVU598
1751 0104 436B ldr r3, [r0, #52]
643:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1752 .loc 1 643 9 view .LVU599
1753 0106 13F4004F tst r3, #32768
1754 010a EDD0 beq .L109
643:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1755 .loc 1 643 54 discriminator 1 view .LVU600
1756 010c B8F1000F cmp r8, #0
1757 0110 EAD0 beq .L109
1758 0112 E7E7 b .L110
1759 .L112:
667:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= HAL_SD_ERROR_TIMEOUT;
1760 .loc 1 667 9 is_stmt 1 view .LVU601
1761 0114 2B68 ldr r3, [r5]
1762 0116 4B4A ldr r2, .L130
1763 0118 9A63 str r2, [r3, #56]
668:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State= HAL_SD_STATE_READY;
1764 .loc 1 668 9 view .LVU602
668:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State= HAL_SD_STATE_READY;
1765 .loc 1 668 24 is_stmt 0 view .LVU603
1766 011a AB6B ldr r3, [r5, #56]
1767 011c 43F00043 orr r3, r3, #-2147483648
1768 0120 AB63 str r3, [r5, #56]
669:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Context = SD_CONTEXT_NONE;
1769 .loc 1 669 9 is_stmt 1 view .LVU604
669:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Context = SD_CONTEXT_NONE;
1770 .loc 1 669 19 is_stmt 0 view .LVU605
1771 0122 0123 movs r3, #1
1772 0124 85F83430 strb r3, [r5, #52]
670:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_TIMEOUT;
1773 .loc 1 670 9 is_stmt 1 view .LVU606
670:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_TIMEOUT;
1774 .loc 1 670 22 is_stmt 0 view .LVU607
1775 0128 0023 movs r3, #0
1776 012a 2B63 str r3, [r5, #48]
671:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1777 .loc 1 671 9 is_stmt 1 view .LVU608
671:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1778 .loc 1 671 16 is_stmt 0 view .LVU609
1779 012c 0327 movs r7, #3
1780 012e 84E0 b .L101
1781 .L125:
676:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1782 .loc 1 676 5 is_stmt 1 view .LVU610
676:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1783 .loc 1 676 8 is_stmt 0 view .LVU611
1784 0130 436B ldr r3, [r0, #52]
676:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1785 .loc 1 676 7 view .LVU612
ARM GAS /tmp/cc2oBAwl.s page 98
1786 0132 13F4807F tst r3, #256
1787 0136 05D0 beq .L114
676:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1788 .loc 1 676 51 discriminator 1 view .LVU613
1789 0138 BBF1010F cmp fp, #1
1790 013c 02D9 bls .L114
678:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1791 .loc 1 678 7 is_stmt 1 view .LVU614
678:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1792 .loc 1 678 21 is_stmt 0 view .LVU615
1793 013e 6B6C ldr r3, [r5, #68]
678:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1794 .loc 1 678 9 view .LVU616
1795 0140 032B cmp r3, #3
1796 0142 38D1 bne .L126
1797 .L114:
695:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1798 .loc 1 695 5 is_stmt 1 view .LVU617
695:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1799 .loc 1 695 8 is_stmt 0 view .LVU618
1800 0144 2B68 ldr r3, [r5]
1801 0146 5A6B ldr r2, [r3, #52]
695:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1802 .loc 1 695 7 view .LVU619
1803 0148 12F0080F tst r2, #8
1804 014c 44D1 bne .L127
704:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1805 .loc 1 704 10 is_stmt 1 view .LVU620
704:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1806 .loc 1 704 13 is_stmt 0 view .LVU621
1807 014e 5A6B ldr r2, [r3, #52]
704:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1808 .loc 1 704 12 view .LVU622
1809 0150 12F0020F tst r2, #2
1810 0154 4CD1 bne .L128
713:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1811 .loc 1 713 10 is_stmt 1 view .LVU623
713:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1812 .loc 1 713 13 is_stmt 0 view .LVU624
1813 0156 5A6B ldr r2, [r3, #52]
713:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1814 .loc 1 713 12 view .LVU625
1815 0158 12F0200F tst r2, #32
1816 015c 54D1 bne .L129
1817 .L117:
728:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1818 .loc 1 728 11 is_stmt 1 view .LVU626
728:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1819 .loc 1 728 13 is_stmt 0 view .LVU627
1820 015e 2868 ldr r0, [r5]
1821 0160 436B ldr r3, [r0, #52]
728:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1822 .loc 1 728 11 view .LVU628
1823 0162 13F4001F tst r3, #2097152
1824 0166 5BD0 beq .L119
728:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1825 .loc 1 728 56 discriminator 1 view .LVU629
ARM GAS /tmp/cc2oBAwl.s page 99
1826 0168 B8F1000F cmp r8, #0
1827 016c 58D0 beq .L119
730:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** *tempbuff = (uint8_t)(data & 0xFFU);
1828 .loc 1 730 7 is_stmt 1 view .LVU630
730:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** *tempbuff = (uint8_t)(data & 0xFFU);
1829 .loc 1 730 14 is_stmt 0 view .LVU631
1830 016e FFF7FEFF bl SDMMC_ReadFIFO
1831 .LVL171:
731:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** tempbuff++;
1832 .loc 1 731 7 is_stmt 1 view .LVU632
731:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** tempbuff++;
1833 .loc 1 731 17 is_stmt 0 view .LVU633
1834 0172 2070 strb r0, [r4]
732:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** dataremaining--;
1835 .loc 1 732 7 is_stmt 1 view .LVU634
1836 .LVL172:
733:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** *tempbuff = (uint8_t)((data >> 8U) & 0xFFU);
1837 .loc 1 733 7 view .LVU635
734:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** tempbuff++;
1838 .loc 1 734 7 view .LVU636
734:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** tempbuff++;
1839 .loc 1 734 19 is_stmt 0 view .LVU637
1840 0174 C0F30723 ubfx r3, r0, #8, #8
734:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** tempbuff++;
1841 .loc 1 734 17 view .LVU638
1842 0178 6370 strb r3, [r4, #1]
735:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** dataremaining--;
1843 .loc 1 735 7 is_stmt 1 view .LVU639
1844 .LVL173:
736:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** *tempbuff = (uint8_t)((data >> 16U) & 0xFFU);
1845 .loc 1 736 7 view .LVU640
737:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** tempbuff++;
1846 .loc 1 737 7 view .LVU641
737:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** tempbuff++;
1847 .loc 1 737 19 is_stmt 0 view .LVU642
1848 017a C0F30743 ubfx r3, r0, #16, #8
737:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** tempbuff++;
1849 .loc 1 737 17 view .LVU643
1850 017e A370 strb r3, [r4, #2]
738:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** dataremaining--;
1851 .loc 1 738 7 is_stmt 1 view .LVU644
1852 .LVL174:
739:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** *tempbuff = (uint8_t)((data >> 24U) & 0xFFU);
1853 .loc 1 739 7 view .LVU645
740:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** tempbuff++;
1854 .loc 1 740 7 view .LVU646
740:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** tempbuff++;
1855 .loc 1 740 19 is_stmt 0 view .LVU647
1856 0180 000E lsrs r0, r0, #24
1857 .LVL175:
740:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** tempbuff++;
1858 .loc 1 740 17 view .LVU648
1859 0182 E070 strb r0, [r4, #3]
741:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** dataremaining--;
1860 .loc 1 741 7 is_stmt 1 view .LVU649
741:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** dataremaining--;
1861 .loc 1 741 15 is_stmt 0 view .LVU650
ARM GAS /tmp/cc2oBAwl.s page 100
1862 0184 0434 adds r4, r4, #4
1863 .LVL176:
742:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1864 .loc 1 742 7 is_stmt 1 view .LVU651
742:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1865 .loc 1 742 20 is_stmt 0 view .LVU652
1866 0186 A8F10408 sub r8, r8, #4
1867 .LVL177:
744:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1868 .loc 1 744 7 is_stmt 1 view .LVU653
744:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1869 .loc 1 744 12 is_stmt 0 view .LVU654
1870 018a FFF7FEFF bl HAL_GetTick
1871 .LVL178:
744:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1872 .loc 1 744 25 view .LVU655
1873 018e A0EB0900 sub r0, r0, r9
744:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1874 .loc 1 744 9 view .LVU656
1875 0192 5045 cmp r0, r10
1876 0194 02D2 bcs .L118
744:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1877 .loc 1 744 50 discriminator 1 view .LVU657
1878 0196 BAF1000F cmp r10, #0
1879 019a E0D1 bne .L117
1880 .L118:
747:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= HAL_SD_ERROR_TIMEOUT;
1881 .loc 1 747 9 is_stmt 1 view .LVU658
1882 019c 2B68 ldr r3, [r5]
1883 019e 294A ldr r2, .L130
1884 01a0 9A63 str r2, [r3, #56]
748:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State= HAL_SD_STATE_READY;
1885 .loc 1 748 9 view .LVU659
748:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State= HAL_SD_STATE_READY;
1886 .loc 1 748 24 is_stmt 0 view .LVU660
1887 01a2 AB6B ldr r3, [r5, #56]
1888 01a4 43F00043 orr r3, r3, #-2147483648
1889 01a8 AB63 str r3, [r5, #56]
749:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Context = SD_CONTEXT_NONE;
1890 .loc 1 749 9 is_stmt 1 view .LVU661
749:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Context = SD_CONTEXT_NONE;
1891 .loc 1 749 19 is_stmt 0 view .LVU662
1892 01aa 0123 movs r3, #1
1893 01ac 85F83430 strb r3, [r5, #52]
750:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
1894 .loc 1 750 9 is_stmt 1 view .LVU663
750:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
1895 .loc 1 750 22 is_stmt 0 view .LVU664
1896 01b0 0023 movs r3, #0
1897 01b2 2B63 str r3, [r5, #48]
751:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1898 .loc 1 751 9 is_stmt 1 view .LVU665
751:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1899 .loc 1 751 16 is_stmt 0 view .LVU666
1900 01b4 41E0 b .L101
1901 .L126:
681:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
ARM GAS /tmp/cc2oBAwl.s page 101
1902 .loc 1 681 9 is_stmt 1 view .LVU667
681:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
1903 .loc 1 681 22 is_stmt 0 view .LVU668
1904 01b6 FFF7FEFF bl SDMMC_CmdStopTransfer
1905 .LVL179:
682:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1906 .loc 1 682 9 is_stmt 1 view .LVU669
682:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
1907 .loc 1 682 11 is_stmt 0 view .LVU670
1908 01ba 0346 mov r3, r0
1909 01bc 0028 cmp r0, #0
1910 01be C1D0 beq .L114
685:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= errorstate;
1911 .loc 1 685 11 is_stmt 1 view .LVU671
1912 01c0 2A68 ldr r2, [r5]
1913 01c2 2049 ldr r1, .L130
1914 01c4 9163 str r1, [r2, #56]
686:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
1915 .loc 1 686 11 view .LVU672
686:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
1916 .loc 1 686 26 is_stmt 0 view .LVU673
1917 01c6 AA6B ldr r2, [r5, #56]
1918 01c8 1343 orrs r3, r3, r2
1919 01ca AB63 str r3, [r5, #56]
687:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Context = SD_CONTEXT_NONE;
1920 .loc 1 687 11 is_stmt 1 view .LVU674
687:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Context = SD_CONTEXT_NONE;
1921 .loc 1 687 22 is_stmt 0 view .LVU675
1922 01cc 0123 movs r3, #1
1923 01ce 85F83430 strb r3, [r5, #52]
688:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
1924 .loc 1 688 11 is_stmt 1 view .LVU676
688:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
1925 .loc 1 688 24 is_stmt 0 view .LVU677
1926 01d2 0023 movs r3, #0
1927 01d4 2B63 str r3, [r5, #48]
689:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1928 .loc 1 689 11 is_stmt 1 view .LVU678
689:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1929 .loc 1 689 18 is_stmt 0 view .LVU679
1930 01d6 30E0 b .L101
1931 .LVL180:
1932 .L127:
698:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= HAL_SD_ERROR_DATA_TIMEOUT;
1933 .loc 1 698 7 is_stmt 1 view .LVU680
1934 01d8 1A4A ldr r2, .L130
1935 01da 9A63 str r2, [r3, #56]
699:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
1936 .loc 1 699 7 view .LVU681
699:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
1937 .loc 1 699 22 is_stmt 0 view .LVU682
1938 01dc AB6B ldr r3, [r5, #56]
1939 01de 43F00803 orr r3, r3, #8
1940 01e2 AB63 str r3, [r5, #56]
700:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Context = SD_CONTEXT_NONE;
1941 .loc 1 700 7 is_stmt 1 view .LVU683
700:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Context = SD_CONTEXT_NONE;
ARM GAS /tmp/cc2oBAwl.s page 102
1942 .loc 1 700 18 is_stmt 0 view .LVU684
1943 01e4 0123 movs r3, #1
1944 01e6 85F83430 strb r3, [r5, #52]
701:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
1945 .loc 1 701 7 is_stmt 1 view .LVU685
701:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
1946 .loc 1 701 20 is_stmt 0 view .LVU686
1947 01ea 0023 movs r3, #0
1948 01ec 2B63 str r3, [r5, #48]
702:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1949 .loc 1 702 7 is_stmt 1 view .LVU687
702:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1950 .loc 1 702 14 is_stmt 0 view .LVU688
1951 01ee 24E0 b .L101
1952 .L128:
707:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= HAL_SD_ERROR_DATA_CRC_FAIL;
1953 .loc 1 707 7 is_stmt 1 view .LVU689
1954 01f0 144A ldr r2, .L130
1955 01f2 9A63 str r2, [r3, #56]
708:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
1956 .loc 1 708 7 view .LVU690
708:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
1957 .loc 1 708 22 is_stmt 0 view .LVU691
1958 01f4 AB6B ldr r3, [r5, #56]
1959 01f6 43F00203 orr r3, r3, #2
1960 01fa AB63 str r3, [r5, #56]
709:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Context = SD_CONTEXT_NONE;
1961 .loc 1 709 7 is_stmt 1 view .LVU692
709:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Context = SD_CONTEXT_NONE;
1962 .loc 1 709 18 is_stmt 0 view .LVU693
1963 01fc 0123 movs r3, #1
1964 01fe 85F83430 strb r3, [r5, #52]
710:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
1965 .loc 1 710 7 is_stmt 1 view .LVU694
710:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
1966 .loc 1 710 20 is_stmt 0 view .LVU695
1967 0202 0023 movs r3, #0
1968 0204 2B63 str r3, [r5, #48]
711:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1969 .loc 1 711 7 is_stmt 1 view .LVU696
711:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1970 .loc 1 711 14 is_stmt 0 view .LVU697
1971 0206 18E0 b .L101
1972 .L129:
716:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= HAL_SD_ERROR_RX_OVERRUN;
1973 .loc 1 716 7 is_stmt 1 view .LVU698
1974 0208 0E4A ldr r2, .L130
1975 020a 9A63 str r2, [r3, #56]
717:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
1976 .loc 1 717 7 view .LVU699
717:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
1977 .loc 1 717 22 is_stmt 0 view .LVU700
1978 020c AB6B ldr r3, [r5, #56]
1979 020e 43F02003 orr r3, r3, #32
1980 0212 AB63 str r3, [r5, #56]
718:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Context = SD_CONTEXT_NONE;
1981 .loc 1 718 7 is_stmt 1 view .LVU701
ARM GAS /tmp/cc2oBAwl.s page 103
718:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Context = SD_CONTEXT_NONE;
1982 .loc 1 718 18 is_stmt 0 view .LVU702
1983 0214 0123 movs r3, #1
1984 0216 85F83430 strb r3, [r5, #52]
719:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
1985 .loc 1 719 7 is_stmt 1 view .LVU703
719:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
1986 .loc 1 719 20 is_stmt 0 view .LVU704
1987 021a 0023 movs r3, #0
1988 021c 2B63 str r3, [r5, #48]
720:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1989 .loc 1 720 7 is_stmt 1 view .LVU705
720:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
1990 .loc 1 720 14 is_stmt 0 view .LVU706
1991 021e 0CE0 b .L101
1992 .L119:
756:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1993 .loc 1 756 5 is_stmt 1 view .LVU707
1994 0220 40F23A53 movw r3, #1338
1995 0224 8363 str r3, [r0, #56]
758:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1996 .loc 1 758 5 view .LVU708
758:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
1997 .loc 1 758 16 is_stmt 0 view .LVU709
1998 0226 0123 movs r3, #1
1999 0228 85F83430 strb r3, [r5, #52]
760:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2000 .loc 1 760 5 is_stmt 1 view .LVU710
760:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2001 .loc 1 760 12 is_stmt 0 view .LVU711
2002 022c 0027 movs r7, #0
2003 022e 04E0 b .L101
2004 .LVL181:
2005 .L102:
764:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
2006 .loc 1 764 5 is_stmt 1 view .LVU712
764:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
2007 .loc 1 764 20 is_stmt 0 view .LVU713
2008 0230 AB6B ldr r3, [r5, #56]
2009 0232 43F00053 orr r3, r3, #536870912
2010 0236 AB63 str r3, [r5, #56]
765:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2011 .loc 1 765 5 is_stmt 1 view .LVU714
765:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2012 .loc 1 765 12 is_stmt 0 view .LVU715
2013 0238 0127 movs r7, #1
2014 .LVL182:
2015 .L101:
767:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2016 .loc 1 767 1 view .LVU716
2017 023a 3846 mov r0, r7
2018 023c 07B0 add sp, sp, #28
2019 .LCFI31:
2020 .cfi_def_cfa_offset 36
2021 @ sp needed
2022 023e BDE8F08F pop {r4, r5, r6, r7, r8, r9, r10, fp, pc}
2023 .LVL183:
ARM GAS /tmp/cc2oBAwl.s page 104
2024 .L131:
767:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2025 .loc 1 767 1 view .LVU717
2026 0242 00BF .align 2
2027 .L130:
2028 0244 FF054000 .word 4195839
2029 .cfi_endproc
2030 .LFE146:
2032 .section .text.HAL_SD_WriteBlocks,"ax",%progbits
2033 .align 1
2034 .global HAL_SD_WriteBlocks
2035 .syntax unified
2036 .thumb
2037 .thumb_func
2038 .fpu fpv5-d16
2040 HAL_SD_WriteBlocks:
2041 .LVL184:
2042 .LFB147:
782:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** SDMMC_DataInitTypeDef config;
2043 .loc 1 782 1 is_stmt 1 view -0
2044 .cfi_startproc
2045 @ args = 4, pretend = 0, frame = 40
2046 @ frame_needed = 0, uses_anonymous_args = 0
782:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** SDMMC_DataInitTypeDef config;
2047 .loc 1 782 1 is_stmt 0 view .LVU719
2048 0000 2DE9F04F push {r4, r5, r6, r7, r8, r9, r10, fp, lr}
2049 .LCFI32:
2050 .cfi_def_cfa_offset 36
2051 .cfi_offset 4, -36
2052 .cfi_offset 5, -32
2053 .cfi_offset 6, -28
2054 .cfi_offset 7, -24
2055 .cfi_offset 8, -20
2056 .cfi_offset 9, -16
2057 .cfi_offset 10, -12
2058 .cfi_offset 11, -8
2059 .cfi_offset 14, -4
2060 0004 8BB0 sub sp, sp, #44
2061 .LCFI33:
2062 .cfi_def_cfa_offset 80
2063 0006 0546 mov r5, r0
2064 0008 0C46 mov r4, r1
2065 000a 1646 mov r6, r2
2066 000c 9B46 mov fp, r3
2067 000e DDF850A0 ldr r10, [sp, #80]
783:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t errorstate;
2068 .loc 1 783 3 is_stmt 1 view .LVU720
784:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t tickstart = HAL_GetTick();
2069 .loc 1 784 3 view .LVU721
785:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t count, data, dataremaining;
2070 .loc 1 785 3 view .LVU722
785:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t count, data, dataremaining;
2071 .loc 1 785 24 is_stmt 0 view .LVU723
2072 0012 FFF7FEFF bl HAL_GetTick
2073 .LVL185:
786:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t add = BlockAdd;
2074 .loc 1 786 3 is_stmt 1 view .LVU724
ARM GAS /tmp/cc2oBAwl.s page 105
787:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint8_t *tempbuff = pData;
2075 .loc 1 787 3 view .LVU725
788:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2076 .loc 1 788 3 view .LVU726
790:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2077 .loc 1 790 3 view .LVU727
790:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2078 .loc 1 790 5 is_stmt 0 view .LVU728
2079 0016 002C cmp r4, #0
2080 0018 37D0 beq .L152
2081 001a 8046 mov r8, r0
796:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2082 .loc 1 796 3 is_stmt 1 view .LVU729
796:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2083 .loc 1 796 9 is_stmt 0 view .LVU730
2084 001c 95F83470 ldrb r7, [r5, #52] @ zero_extendqisi2
2085 0020 FFB2 uxtb r7, r7
796:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2086 .loc 1 796 5 view .LVU731
2087 0022 012F cmp r7, #1
2088 0024 40F0E180 bne .L135
798:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2089 .loc 1 798 5 is_stmt 1 view .LVU732
798:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2090 .loc 1 798 20 is_stmt 0 view .LVU733
2091 0028 0023 movs r3, #0
2092 002a AB63 str r3, [r5, #56]
800:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2093 .loc 1 800 5 is_stmt 1 view .LVU734
800:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2094 .loc 1 800 13 is_stmt 0 view .LVU735
2095 002c 06EB0B03 add r3, r6, fp
800:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2096 .loc 1 800 45 view .LVU736
2097 0030 EA6D ldr r2, [r5, #92]
800:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2098 .loc 1 800 7 view .LVU737
2099 0032 9342 cmp r3, r2
2100 0034 2FD8 bhi .L153
806:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2101 .loc 1 806 5 is_stmt 1 view .LVU738
806:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2102 .loc 1 806 16 is_stmt 0 view .LVU739
2103 0036 0323 movs r3, #3
2104 0038 85F83430 strb r3, [r5, #52]
809:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2105 .loc 1 809 5 is_stmt 1 view .LVU740
809:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2106 .loc 1 809 8 is_stmt 0 view .LVU741
2107 003c 2B68 ldr r3, [r5]
809:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2108 .loc 1 809 26 view .LVU742
2109 003e 0022 movs r2, #0
2110 0040 DA62 str r2, [r3, #44]
811:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2111 .loc 1 811 5 is_stmt 1 view .LVU743
811:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
ARM GAS /tmp/cc2oBAwl.s page 106
2112 .loc 1 811 19 is_stmt 0 view .LVU744
2113 0042 6B6C ldr r3, [r5, #68]
811:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2114 .loc 1 811 7 view .LVU745
2115 0044 012B cmp r3, #1
2116 0046 00D0 beq .L137
813:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2117 .loc 1 813 7 is_stmt 1 view .LVU746
813:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2118 .loc 1 813 11 is_stmt 0 view .LVU747
2119 0048 7602 lsls r6, r6, #9
2120 .LVL186:
2121 .L137:
817:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.DataLength = NumberOfBlocks * BLOCKSIZE;
2122 .loc 1 817 5 is_stmt 1 view .LVU748
817:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.DataLength = NumberOfBlocks * BLOCKSIZE;
2123 .loc 1 817 26 is_stmt 0 view .LVU749
2124 004a 4FF0FF33 mov r3, #-1
2125 004e 0493 str r3, [sp, #16]
818:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.DataBlockSize = SDMMC_DATABLOCK_SIZE_512B;
2126 .loc 1 818 5 is_stmt 1 view .LVU750
818:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.DataBlockSize = SDMMC_DATABLOCK_SIZE_512B;
2127 .loc 1 818 43 is_stmt 0 view .LVU751
2128 0050 4FEA4B23 lsl r3, fp, #9
818:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.DataBlockSize = SDMMC_DATABLOCK_SIZE_512B;
2129 .loc 1 818 26 view .LVU752
2130 0054 0593 str r3, [sp, #20]
819:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.TransferDir = SDMMC_TRANSFER_DIR_TO_CARD;
2131 .loc 1 819 5 is_stmt 1 view .LVU753
819:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.TransferDir = SDMMC_TRANSFER_DIR_TO_CARD;
2132 .loc 1 819 26 is_stmt 0 view .LVU754
2133 0056 9023 movs r3, #144
2134 0058 0693 str r3, [sp, #24]
820:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.TransferMode = SDMMC_TRANSFER_MODE_BLOCK;
2135 .loc 1 820 5 is_stmt 1 view .LVU755
820:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.TransferMode = SDMMC_TRANSFER_MODE_BLOCK;
2136 .loc 1 820 26 is_stmt 0 view .LVU756
2137 005a 0023 movs r3, #0
2138 005c 0793 str r3, [sp, #28]
821:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.DPSM = SDMMC_DPSM_ENABLE;
2139 .loc 1 821 5 is_stmt 1 view .LVU757
821:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.DPSM = SDMMC_DPSM_ENABLE;
2140 .loc 1 821 26 is_stmt 0 view .LVU758
2141 005e 0893 str r3, [sp, #32]
822:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** (void)SDMMC_ConfigData(hsd->Instance, &config);
2142 .loc 1 822 5 is_stmt 1 view .LVU759
822:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** (void)SDMMC_ConfigData(hsd->Instance, &config);
2143 .loc 1 822 26 is_stmt 0 view .LVU760
2144 0060 0123 movs r3, #1
2145 0062 0993 str r3, [sp, #36]
823:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2146 .loc 1 823 5 is_stmt 1 view .LVU761
823:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2147 .loc 1 823 11 is_stmt 0 view .LVU762
2148 0064 04A9 add r1, sp, #16
2149 0066 2868 ldr r0, [r5]
2150 .LVL187:
ARM GAS /tmp/cc2oBAwl.s page 107
823:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2151 .loc 1 823 11 view .LVU763
2152 0068 FFF7FEFF bl SDMMC_ConfigData
2153 .LVL188:
826:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2154 .loc 1 826 5 is_stmt 1 view .LVU764
826:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2155 .loc 1 826 7 is_stmt 0 view .LVU765
2156 006c BBF1010F cmp fp, #1
2157 0070 16D9 bls .L138
828:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2158 .loc 1 828 7 is_stmt 1 view .LVU766
828:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2159 .loc 1 828 20 is_stmt 0 view .LVU767
2160 0072 2023 movs r3, #32
2161 0074 2B63 str r3, [r5, #48]
831:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2162 .loc 1 831 7 is_stmt 1 view .LVU768
831:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2163 .loc 1 831 20 is_stmt 0 view .LVU769
2164 0076 3146 mov r1, r6
2165 0078 2868 ldr r0, [r5]
2166 007a FFF7FEFF bl SDMMC_CmdWriteMultiBlock
2167 .LVL189:
2168 007e 0190 str r0, [sp, #4]
2169 .LVL190:
2170 .L139:
840:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2171 .loc 1 840 5 is_stmt 1 view .LVU770
840:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2172 .loc 1 840 7 is_stmt 0 view .LVU771
2173 0080 019B ldr r3, [sp, #4]
2174 0082 ABB9 cbnz r3, .L154
851:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** while(!__HAL_SD_GET_FLAG(hsd, SDMMC_FLAG_TXUNDERR | SDMMC_FLAG_DCRCFAIL | SDMMC_FLAG_DTIMEOUT |
2175 .loc 1 851 5 is_stmt 1 view .LVU772
851:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** while(!__HAL_SD_GET_FLAG(hsd, SDMMC_FLAG_TXUNDERR | SDMMC_FLAG_DCRCFAIL | SDMMC_FLAG_DTIMEOUT |
2176 .loc 1 851 19 is_stmt 0 view .LVU773
2177 0084 DDF81490 ldr r9, [sp, #20]
2178 .LVL191:
852:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2179 .loc 1 852 5 is_stmt 1 view .LVU774
852:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2180 .loc 1 852 10 is_stmt 0 view .LVU775
2181 0088 40E0 b .L141
2182 .LVL192:
2183 .L152:
792:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
2184 .loc 1 792 5 is_stmt 1 view .LVU776
792:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
2185 .loc 1 792 20 is_stmt 0 view .LVU777
2186 008a AB6B ldr r3, [r5, #56]
2187 008c 43F00063 orr r3, r3, #134217728
2188 0090 AB63 str r3, [r5, #56]
793:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2189 .loc 1 793 5 is_stmt 1 view .LVU778
793:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2190 .loc 1 793 12 is_stmt 0 view .LVU779
ARM GAS /tmp/cc2oBAwl.s page 108
2191 0092 0127 movs r7, #1
2192 0094 AEE0 b .L134
2193 .L153:
802:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
2194 .loc 1 802 7 is_stmt 1 view .LVU780
802:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
2195 .loc 1 802 22 is_stmt 0 view .LVU781
2196 0096 AB6B ldr r3, [r5, #56]
2197 0098 43F00073 orr r3, r3, #33554432
2198 009c AB63 str r3, [r5, #56]
803:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2199 .loc 1 803 7 is_stmt 1 view .LVU782
803:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2200 .loc 1 803 14 is_stmt 0 view .LVU783
2201 009e A9E0 b .L134
2202 .LVL193:
2203 .L138:
835:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2204 .loc 1 835 7 is_stmt 1 view .LVU784
835:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2205 .loc 1 835 20 is_stmt 0 view .LVU785
2206 00a0 1023 movs r3, #16
2207 00a2 2B63 str r3, [r5, #48]
838:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2208 .loc 1 838 7 is_stmt 1 view .LVU786
838:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2209 .loc 1 838 20 is_stmt 0 view .LVU787
2210 00a4 3146 mov r1, r6
2211 00a6 2868 ldr r0, [r5]
2212 00a8 FFF7FEFF bl SDMMC_CmdWriteSingleBlock
2213 .LVL194:
2214 00ac 0190 str r0, [sp, #4]
2215 .LVL195:
838:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2216 .loc 1 838 20 view .LVU788
2217 00ae E7E7 b .L139
2218 .LVL196:
2219 .L154:
843:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= errorstate;
2220 .loc 1 843 7 is_stmt 1 view .LVU789
2221 00b0 2B68 ldr r3, [r5]
2222 .LVL197:
843:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= errorstate;
2223 .loc 1 843 7 is_stmt 0 view .LVU790
2224 00b2 524A ldr r2, .L159
2225 00b4 9A63 str r2, [r3, #56]
844:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
2226 .loc 1 844 7 is_stmt 1 view .LVU791
844:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
2227 .loc 1 844 22 is_stmt 0 view .LVU792
2228 00b6 A86B ldr r0, [r5, #56]
2229 00b8 019B ldr r3, [sp, #4]
2230 00ba 1843 orrs r0, r0, r3
2231 00bc A863 str r0, [r5, #56]
845:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Context = SD_CONTEXT_NONE;
2232 .loc 1 845 7 is_stmt 1 view .LVU793
845:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Context = SD_CONTEXT_NONE;
ARM GAS /tmp/cc2oBAwl.s page 109
2233 .loc 1 845 18 is_stmt 0 view .LVU794
2234 00be 0123 movs r3, #1
2235 00c0 85F83430 strb r3, [r5, #52]
846:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
2236 .loc 1 846 7 is_stmt 1 view .LVU795
846:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
2237 .loc 1 846 20 is_stmt 0 view .LVU796
2238 00c4 0023 movs r3, #0
2239 00c6 2B63 str r3, [r5, #48]
847:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2240 .loc 1 847 7 is_stmt 1 view .LVU797
847:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2241 .loc 1 847 14 is_stmt 0 view .LVU798
2242 00c8 94E0 b .L134
2243 .LVL198:
2244 .L144:
859:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** tempbuff++;
2245 .loc 1 859 11 is_stmt 1 discriminator 3 view .LVU799
859:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** tempbuff++;
2246 .loc 1 859 29 is_stmt 0 discriminator 3 view .LVU800
2247 00ca 2378 ldrb r3, [r4] @ zero_extendqisi2
859:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** tempbuff++;
2248 .loc 1 859 16 discriminator 3 view .LVU801
2249 00cc 0393 str r3, [sp, #12]
860:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** dataremaining--;
2250 .loc 1 860 11 is_stmt 1 discriminator 3 view .LVU802
2251 .LVL199:
861:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** data |= ((uint32_t)(*tempbuff) << 8U);
2252 .loc 1 861 11 discriminator 3 view .LVU803
862:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** tempbuff++;
2253 .loc 1 862 11 discriminator 3 view .LVU804
862:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** tempbuff++;
2254 .loc 1 862 31 is_stmt 0 discriminator 3 view .LVU805
2255 00ce 6278 ldrb r2, [r4, #1] @ zero_extendqisi2
862:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** tempbuff++;
2256 .loc 1 862 16 discriminator 3 view .LVU806
2257 00d0 43EA0223 orr r3, r3, r2, lsl #8
2258 00d4 0393 str r3, [sp, #12]
863:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** dataremaining--;
2259 .loc 1 863 11 is_stmt 1 discriminator 3 view .LVU807
2260 .LVL200:
864:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** data |= ((uint32_t)(*tempbuff) << 16U);
2261 .loc 1 864 11 discriminator 3 view .LVU808
865:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** tempbuff++;
2262 .loc 1 865 11 discriminator 3 view .LVU809
865:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** tempbuff++;
2263 .loc 1 865 31 is_stmt 0 discriminator 3 view .LVU810
2264 00d6 A278 ldrb r2, [r4, #2] @ zero_extendqisi2
865:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** tempbuff++;
2265 .loc 1 865 16 discriminator 3 view .LVU811
2266 00d8 43EA0243 orr r3, r3, r2, lsl #16
2267 00dc 0393 str r3, [sp, #12]
866:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** dataremaining--;
2268 .loc 1 866 11 is_stmt 1 discriminator 3 view .LVU812
2269 .LVL201:
867:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** data |= ((uint32_t)(*tempbuff) << 24U);
2270 .loc 1 867 11 discriminator 3 view .LVU813
ARM GAS /tmp/cc2oBAwl.s page 110
868:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** tempbuff++;
2271 .loc 1 868 11 discriminator 3 view .LVU814
868:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** tempbuff++;
2272 .loc 1 868 31 is_stmt 0 discriminator 3 view .LVU815
2273 00de E278 ldrb r2, [r4, #3] @ zero_extendqisi2
868:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** tempbuff++;
2274 .loc 1 868 16 discriminator 3 view .LVU816
2275 00e0 43EA0263 orr r3, r3, r2, lsl #24
2276 00e4 0393 str r3, [sp, #12]
869:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** dataremaining--;
2277 .loc 1 869 11 is_stmt 1 discriminator 3 view .LVU817
869:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** dataremaining--;
2278 .loc 1 869 19 is_stmt 0 discriminator 3 view .LVU818
2279 00e6 0434 adds r4, r4, #4
2280 .LVL202:
870:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** (void)SDMMC_WriteFIFO(hsd->Instance, &data);
2281 .loc 1 870 11 is_stmt 1 discriminator 3 view .LVU819
870:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** (void)SDMMC_WriteFIFO(hsd->Instance, &data);
2282 .loc 1 870 24 is_stmt 0 discriminator 3 view .LVU820
2283 00e8 A9F10409 sub r9, r9, #4
2284 .LVL203:
871:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2285 .loc 1 871 11 is_stmt 1 discriminator 3 view .LVU821
871:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2286 .loc 1 871 17 is_stmt 0 discriminator 3 view .LVU822
2287 00ec 03A9 add r1, sp, #12
2288 00ee 2868 ldr r0, [r5]
2289 00f0 FFF7FEFF bl SDMMC_WriteFIFO
2290 .LVL204:
857:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2291 .loc 1 857 37 is_stmt 1 discriminator 3 view .LVU823
857:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2292 .loc 1 857 42 is_stmt 0 discriminator 3 view .LVU824
2293 00f4 0136 adds r6, r6, #1
2294 .LVL205:
2295 .L143:
857:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2296 .loc 1 857 25 is_stmt 1 discriminator 1 view .LVU825
857:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2297 .loc 1 857 9 is_stmt 0 discriminator 1 view .LVU826
2298 00f6 072E cmp r6, #7
2299 00f8 E7D9 bls .L144
2300 .LVL206:
2301 .L142:
875:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2302 .loc 1 875 7 is_stmt 1 view .LVU827
875:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2303 .loc 1 875 12 is_stmt 0 view .LVU828
2304 00fa FFF7FEFF bl HAL_GetTick
2305 .LVL207:
875:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2306 .loc 1 875 25 view .LVU829
2307 00fe A0EB0800 sub r0, r0, r8
875:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2308 .loc 1 875 9 view .LVU830
2309 0102 5045 cmp r0, r10
2310 0104 0FD2 bcs .L145
ARM GAS /tmp/cc2oBAwl.s page 111
875:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2311 .loc 1 875 50 discriminator 1 view .LVU831
2312 0106 BAF1000F cmp r10, #0
2313 010a 0CD0 beq .L145
2314 .L141:
852:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2315 .loc 1 852 10 is_stmt 1 view .LVU832
852:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2316 .loc 1 852 12 is_stmt 0 view .LVU833
2317 010c 2868 ldr r0, [r5]
2318 010e 466B ldr r6, [r0, #52]
852:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2319 .loc 1 852 10 view .LVU834
2320 0110 16F48D76 ands r6, r6, #282
2321 0114 15D1 bne .L155
854:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2322 .loc 1 854 7 is_stmt 1 view .LVU835
854:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2323 .loc 1 854 10 is_stmt 0 view .LVU836
2324 0116 436B ldr r3, [r0, #52]
854:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2325 .loc 1 854 9 view .LVU837
2326 0118 13F4804F tst r3, #16384
2327 011c EDD0 beq .L142
854:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2328 .loc 1 854 54 discriminator 1 view .LVU838
2329 011e B9F1000F cmp r9, #0
2330 0122 EAD0 beq .L142
2331 0124 E7E7 b .L143
2332 .L145:
878:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= errorstate;
2333 .loc 1 878 9 is_stmt 1 view .LVU839
2334 0126 2B68 ldr r3, [r5]
2335 0128 344A ldr r2, .L159
2336 012a 9A63 str r2, [r3, #56]
879:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
2337 .loc 1 879 9 view .LVU840
879:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
2338 .loc 1 879 24 is_stmt 0 view .LVU841
2339 012c A86B ldr r0, [r5, #56]
2340 012e 019B ldr r3, [sp, #4]
2341 0130 1843 orrs r0, r0, r3
2342 0132 A863 str r0, [r5, #56]
880:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Context = SD_CONTEXT_NONE;
2343 .loc 1 880 9 is_stmt 1 view .LVU842
880:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Context = SD_CONTEXT_NONE;
2344 .loc 1 880 20 is_stmt 0 view .LVU843
2345 0134 0123 movs r3, #1
2346 0136 85F83430 strb r3, [r5, #52]
881:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_TIMEOUT;
2347 .loc 1 881 9 is_stmt 1 view .LVU844
881:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_TIMEOUT;
2348 .loc 1 881 22 is_stmt 0 view .LVU845
2349 013a 0023 movs r3, #0
2350 013c 2B63 str r3, [r5, #48]
882:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2351 .loc 1 882 9 is_stmt 1 view .LVU846
ARM GAS /tmp/cc2oBAwl.s page 112
882:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2352 .loc 1 882 16 is_stmt 0 view .LVU847
2353 013e 0327 movs r7, #3
2354 0140 58E0 b .L134
2355 .L155:
887:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2356 .loc 1 887 5 is_stmt 1 view .LVU848
887:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2357 .loc 1 887 8 is_stmt 0 view .LVU849
2358 0142 436B ldr r3, [r0, #52]
887:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2359 .loc 1 887 7 view .LVU850
2360 0144 13F4807F tst r3, #256
2361 0148 05D0 beq .L147
887:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2362 .loc 1 887 51 discriminator 1 view .LVU851
2363 014a BBF1010F cmp fp, #1
2364 014e 02D9 bls .L147
889:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2365 .loc 1 889 7 is_stmt 1 view .LVU852
889:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2366 .loc 1 889 21 is_stmt 0 view .LVU853
2367 0150 6B6C ldr r3, [r5, #68]
889:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2368 .loc 1 889 9 view .LVU854
2369 0152 032B cmp r3, #3
2370 0154 18D1 bne .L156
2371 .LVL208:
2372 .L147:
906:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2373 .loc 1 906 5 is_stmt 1 view .LVU855
906:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2374 .loc 1 906 8 is_stmt 0 view .LVU856
2375 0156 2B68 ldr r3, [r5]
2376 0158 5A6B ldr r2, [r3, #52]
906:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2377 .loc 1 906 7 view .LVU857
2378 015a 12F0080F tst r2, #8
2379 015e 24D1 bne .L157
915:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2380 .loc 1 915 10 is_stmt 1 view .LVU858
915:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2381 .loc 1 915 13 is_stmt 0 view .LVU859
2382 0160 5A6B ldr r2, [r3, #52]
915:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2383 .loc 1 915 12 view .LVU860
2384 0162 12F0020F tst r2, #2
2385 0166 2CD1 bne .L158
924:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2386 .loc 1 924 10 is_stmt 1 view .LVU861
924:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2387 .loc 1 924 13 is_stmt 0 view .LVU862
2388 0168 5A6B ldr r2, [r3, #52]
924:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2389 .loc 1 924 12 view .LVU863
2390 016a 12F0100F tst r2, #16
2391 016e 34D0 beq .L150
ARM GAS /tmp/cc2oBAwl.s page 113
927:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= HAL_SD_ERROR_TX_UNDERRUN;
2392 .loc 1 927 7 is_stmt 1 view .LVU864
2393 0170 224A ldr r2, .L159
2394 0172 9A63 str r2, [r3, #56]
928:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
2395 .loc 1 928 7 view .LVU865
928:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
2396 .loc 1 928 22 is_stmt 0 view .LVU866
2397 0174 AB6B ldr r3, [r5, #56]
2398 0176 43F01003 orr r3, r3, #16
2399 017a AB63 str r3, [r5, #56]
929:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Context = SD_CONTEXT_NONE;
2400 .loc 1 929 7 is_stmt 1 view .LVU867
929:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Context = SD_CONTEXT_NONE;
2401 .loc 1 929 18 is_stmt 0 view .LVU868
2402 017c 0123 movs r3, #1
2403 017e 85F83430 strb r3, [r5, #52]
930:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
2404 .loc 1 930 7 is_stmt 1 view .LVU869
930:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
2405 .loc 1 930 20 is_stmt 0 view .LVU870
2406 0182 0023 movs r3, #0
2407 0184 2B63 str r3, [r5, #48]
931:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2408 .loc 1 931 7 is_stmt 1 view .LVU871
931:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2409 .loc 1 931 14 is_stmt 0 view .LVU872
2410 0186 35E0 b .L134
2411 .LVL209:
2412 .L156:
892:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
2413 .loc 1 892 9 is_stmt 1 view .LVU873
892:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
2414 .loc 1 892 22 is_stmt 0 view .LVU874
2415 0188 FFF7FEFF bl SDMMC_CmdStopTransfer
2416 .LVL210:
893:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2417 .loc 1 893 9 is_stmt 1 view .LVU875
893:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2418 .loc 1 893 11 is_stmt 0 view .LVU876
2419 018c 0346 mov r3, r0
2420 018e 0028 cmp r0, #0
2421 0190 E1D0 beq .L147
896:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= errorstate;
2422 .loc 1 896 11 is_stmt 1 view .LVU877
2423 0192 2A68 ldr r2, [r5]
2424 0194 1949 ldr r1, .L159
2425 0196 9163 str r1, [r2, #56]
897:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
2426 .loc 1 897 11 view .LVU878
897:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
2427 .loc 1 897 26 is_stmt 0 view .LVU879
2428 0198 AA6B ldr r2, [r5, #56]
2429 019a 1343 orrs r3, r3, r2
2430 019c AB63 str r3, [r5, #56]
898:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Context = SD_CONTEXT_NONE;
2431 .loc 1 898 11 is_stmt 1 view .LVU880
ARM GAS /tmp/cc2oBAwl.s page 114
898:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Context = SD_CONTEXT_NONE;
2432 .loc 1 898 22 is_stmt 0 view .LVU881
2433 019e 0123 movs r3, #1
2434 01a0 85F83430 strb r3, [r5, #52]
899:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
2435 .loc 1 899 11 is_stmt 1 view .LVU882
899:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
2436 .loc 1 899 24 is_stmt 0 view .LVU883
2437 01a4 0023 movs r3, #0
2438 01a6 2B63 str r3, [r5, #48]
900:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2439 .loc 1 900 11 is_stmt 1 view .LVU884
900:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2440 .loc 1 900 18 is_stmt 0 view .LVU885
2441 01a8 24E0 b .L134
2442 .LVL211:
2443 .L157:
909:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= HAL_SD_ERROR_DATA_TIMEOUT;
2444 .loc 1 909 7 is_stmt 1 view .LVU886
2445 01aa 144A ldr r2, .L159
2446 01ac 9A63 str r2, [r3, #56]
910:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
2447 .loc 1 910 7 view .LVU887
910:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
2448 .loc 1 910 22 is_stmt 0 view .LVU888
2449 01ae AB6B ldr r3, [r5, #56]
2450 01b0 43F00803 orr r3, r3, #8
2451 01b4 AB63 str r3, [r5, #56]
911:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Context = SD_CONTEXT_NONE;
2452 .loc 1 911 7 is_stmt 1 view .LVU889
911:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Context = SD_CONTEXT_NONE;
2453 .loc 1 911 18 is_stmt 0 view .LVU890
2454 01b6 0123 movs r3, #1
2455 01b8 85F83430 strb r3, [r5, #52]
912:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
2456 .loc 1 912 7 is_stmt 1 view .LVU891
912:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
2457 .loc 1 912 20 is_stmt 0 view .LVU892
2458 01bc 0023 movs r3, #0
2459 01be 2B63 str r3, [r5, #48]
913:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2460 .loc 1 913 7 is_stmt 1 view .LVU893
913:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2461 .loc 1 913 14 is_stmt 0 view .LVU894
2462 01c0 18E0 b .L134
2463 .L158:
918:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= HAL_SD_ERROR_DATA_CRC_FAIL;
2464 .loc 1 918 7 is_stmt 1 view .LVU895
2465 01c2 0E4A ldr r2, .L159
2466 01c4 9A63 str r2, [r3, #56]
919:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
2467 .loc 1 919 7 view .LVU896
919:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
2468 .loc 1 919 22 is_stmt 0 view .LVU897
2469 01c6 AB6B ldr r3, [r5, #56]
2470 01c8 43F00203 orr r3, r3, #2
2471 01cc AB63 str r3, [r5, #56]
ARM GAS /tmp/cc2oBAwl.s page 115
920:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Context = SD_CONTEXT_NONE;
2472 .loc 1 920 7 is_stmt 1 view .LVU898
920:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Context = SD_CONTEXT_NONE;
2473 .loc 1 920 18 is_stmt 0 view .LVU899
2474 01ce 0123 movs r3, #1
2475 01d0 85F83430 strb r3, [r5, #52]
921:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
2476 .loc 1 921 7 is_stmt 1 view .LVU900
921:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
2477 .loc 1 921 20 is_stmt 0 view .LVU901
2478 01d4 0023 movs r3, #0
2479 01d6 2B63 str r3, [r5, #48]
922:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2480 .loc 1 922 7 is_stmt 1 view .LVU902
922:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2481 .loc 1 922 14 is_stmt 0 view .LVU903
2482 01d8 0CE0 b .L134
2483 .L150:
936:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2484 .loc 1 936 5 is_stmt 1 view .LVU904
939:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2485 .loc 1 939 5 view .LVU905
2486 01da 40F23A52 movw r2, #1338
2487 01de 9A63 str r2, [r3, #56]
941:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2488 .loc 1 941 5 view .LVU906
941:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2489 .loc 1 941 16 is_stmt 0 view .LVU907
2490 01e0 0123 movs r3, #1
2491 01e2 85F83430 strb r3, [r5, #52]
943:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2492 .loc 1 943 5 is_stmt 1 view .LVU908
943:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2493 .loc 1 943 12 is_stmt 0 view .LVU909
2494 01e6 0027 movs r7, #0
2495 01e8 04E0 b .L134
2496 .LVL212:
2497 .L135:
947:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
2498 .loc 1 947 5 is_stmt 1 view .LVU910
947:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
2499 .loc 1 947 20 is_stmt 0 view .LVU911
2500 01ea AB6B ldr r3, [r5, #56]
2501 01ec 43F00053 orr r3, r3, #536870912
2502 01f0 AB63 str r3, [r5, #56]
948:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2503 .loc 1 948 5 is_stmt 1 view .LVU912
948:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2504 .loc 1 948 12 is_stmt 0 view .LVU913
2505 01f2 0127 movs r7, #1
2506 .LVL213:
2507 .L134:
950:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2508 .loc 1 950 1 view .LVU914
2509 01f4 3846 mov r0, r7
2510 01f6 0BB0 add sp, sp, #44
2511 .LCFI34:
ARM GAS /tmp/cc2oBAwl.s page 116
2512 .cfi_def_cfa_offset 36
2513 @ sp needed
2514 01f8 BDE8F08F pop {r4, r5, r6, r7, r8, r9, r10, fp, pc}
2515 .LVL214:
2516 .L160:
950:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2517 .loc 1 950 1 view .LVU915
2518 .align 2
2519 .L159:
2520 01fc FF054000 .word 4195839
2521 .cfi_endproc
2522 .LFE147:
2524 .section .text.HAL_SD_ReadBlocks_IT,"ax",%progbits
2525 .align 1
2526 .global HAL_SD_ReadBlocks_IT
2527 .syntax unified
2528 .thumb
2529 .thumb_func
2530 .fpu fpv5-d16
2532 HAL_SD_ReadBlocks_IT:
2533 .LVL215:
2534 .LFB148:
966:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** SDMMC_DataInitTypeDef config;
2535 .loc 1 966 1 is_stmt 1 view -0
2536 .cfi_startproc
2537 @ args = 0, pretend = 0, frame = 24
2538 @ frame_needed = 0, uses_anonymous_args = 0
966:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** SDMMC_DataInitTypeDef config;
2539 .loc 1 966 1 is_stmt 0 view .LVU917
2540 0000 F0B5 push {r4, r5, r6, r7, lr}
2541 .LCFI35:
2542 .cfi_def_cfa_offset 20
2543 .cfi_offset 4, -20
2544 .cfi_offset 5, -16
2545 .cfi_offset 6, -12
2546 .cfi_offset 7, -8
2547 .cfi_offset 14, -4
2548 0002 87B0 sub sp, sp, #28
2549 .LCFI36:
2550 .cfi_def_cfa_offset 48
2551 0004 0446 mov r4, r0
967:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t errorstate;
2552 .loc 1 967 3 is_stmt 1 view .LVU918
968:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t add = BlockAdd;
2553 .loc 1 968 3 view .LVU919
969:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2554 .loc 1 969 3 view .LVU920
2555 .LVL216:
971:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2556 .loc 1 971 3 view .LVU921
971:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2557 .loc 1 971 5 is_stmt 0 view .LVU922
2558 0006 0029 cmp r1, #0
2559 0008 45D0 beq .L171
2560 000a 1646 mov r6, r2
2561 000c 1F46 mov r7, r3
2562 000e 0A46 mov r2, r1
ARM GAS /tmp/cc2oBAwl.s page 117
2563 .LVL217:
977:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2564 .loc 1 977 3 is_stmt 1 view .LVU923
977:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2565 .loc 1 977 9 is_stmt 0 view .LVU924
2566 0010 90F83450 ldrb r5, [r0, #52] @ zero_extendqisi2
2567 0014 EDB2 uxtb r5, r5
977:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2568 .loc 1 977 5 view .LVU925
2569 0016 012D cmp r5, #1
2570 0018 4FD1 bne .L168
979:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2571 .loc 1 979 5 is_stmt 1 view .LVU926
979:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2572 .loc 1 979 20 is_stmt 0 view .LVU927
2573 001a 0023 movs r3, #0
2574 .LVL218:
979:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2575 .loc 1 979 20 view .LVU928
2576 001c 8363 str r3, [r0, #56]
981:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2577 .loc 1 981 5 is_stmt 1 view .LVU929
981:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2578 .loc 1 981 13 is_stmt 0 view .LVU930
2579 001e F319 adds r3, r6, r7
981:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2580 .loc 1 981 45 view .LVU931
2581 0020 C16D ldr r1, [r0, #92]
2582 .LVL219:
981:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2583 .loc 1 981 7 view .LVU932
2584 0022 8B42 cmp r3, r1
2585 0024 3DD8 bhi .L172
987:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2586 .loc 1 987 5 is_stmt 1 view .LVU933
987:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2587 .loc 1 987 16 is_stmt 0 view .LVU934
2588 0026 0323 movs r3, #3
2589 0028 80F83430 strb r3, [r0, #52]
990:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2590 .loc 1 990 5 is_stmt 1 view .LVU935
990:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2591 .loc 1 990 8 is_stmt 0 view .LVU936
2592 002c 0368 ldr r3, [r0]
990:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2593 .loc 1 990 26 view .LVU937
2594 002e 0021 movs r1, #0
2595 0030 D962 str r1, [r3, #44]
992:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->RxXferSize = BLOCKSIZE * NumberOfBlocks;
2596 .loc 1 992 5 is_stmt 1 view .LVU938
992:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->RxXferSize = BLOCKSIZE * NumberOfBlocks;
2597 .loc 1 992 21 is_stmt 0 view .LVU939
2598 0032 8262 str r2, [r0, #40]
993:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2599 .loc 1 993 5 is_stmt 1 view .LVU940
993:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2600 .loc 1 993 33 is_stmt 0 view .LVU941
ARM GAS /tmp/cc2oBAwl.s page 118
2601 0034 7A02 lsls r2, r7, #9
2602 .LVL220:
993:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2603 .loc 1 993 21 view .LVU942
2604 0036 C262 str r2, [r0, #44]
995:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2605 .loc 1 995 5 is_stmt 1 view .LVU943
2606 0038 0168 ldr r1, [r0]
2607 003a C86B ldr r0, [r1, #60]
2608 .LVL221:
995:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2609 .loc 1 995 5 is_stmt 0 view .LVU944
2610 003c 48F22A13 movw r3, #33066
2611 0040 0343 orrs r3, r3, r0
2612 0042 CB63 str r3, [r1, #60]
2613 .LVL222:
997:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2614 .loc 1 997 5 is_stmt 1 view .LVU945
997:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2615 .loc 1 997 19 is_stmt 0 view .LVU946
2616 0044 636C ldr r3, [r4, #68]
997:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2617 .loc 1 997 7 view .LVU947
2618 0046 012B cmp r3, #1
2619 0048 00D0 beq .L165
999:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2620 .loc 1 999 7 is_stmt 1 view .LVU948
999:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2621 .loc 1 999 11 is_stmt 0 view .LVU949
2622 004a 7602 lsls r6, r6, #9
2623 .LVL223:
2624 .L165:
1003:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.DataLength = BLOCKSIZE * NumberOfBlocks;
2625 .loc 1 1003 5 is_stmt 1 view .LVU950
1003:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.DataLength = BLOCKSIZE * NumberOfBlocks;
2626 .loc 1 1003 26 is_stmt 0 view .LVU951
2627 004c 4FF0FF33 mov r3, #-1
2628 0050 0093 str r3, [sp]
1004:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.DataBlockSize = SDMMC_DATABLOCK_SIZE_512B;
2629 .loc 1 1004 5 is_stmt 1 view .LVU952
1004:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.DataBlockSize = SDMMC_DATABLOCK_SIZE_512B;
2630 .loc 1 1004 26 is_stmt 0 view .LVU953
2631 0052 0192 str r2, [sp, #4]
1005:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.TransferDir = SDMMC_TRANSFER_DIR_TO_SDMMC;
2632 .loc 1 1005 5 is_stmt 1 view .LVU954
1005:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.TransferDir = SDMMC_TRANSFER_DIR_TO_SDMMC;
2633 .loc 1 1005 26 is_stmt 0 view .LVU955
2634 0054 9023 movs r3, #144
2635 0056 0293 str r3, [sp, #8]
1006:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.TransferMode = SDMMC_TRANSFER_MODE_BLOCK;
2636 .loc 1 1006 5 is_stmt 1 view .LVU956
1006:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.TransferMode = SDMMC_TRANSFER_MODE_BLOCK;
2637 .loc 1 1006 26 is_stmt 0 view .LVU957
2638 0058 0223 movs r3, #2
2639 005a 0393 str r3, [sp, #12]
1007:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.DPSM = SDMMC_DPSM_ENABLE;
2640 .loc 1 1007 5 is_stmt 1 view .LVU958
ARM GAS /tmp/cc2oBAwl.s page 119
1007:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.DPSM = SDMMC_DPSM_ENABLE;
2641 .loc 1 1007 26 is_stmt 0 view .LVU959
2642 005c 0023 movs r3, #0
2643 005e 0493 str r3, [sp, #16]
1008:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** (void)SDMMC_ConfigData(hsd->Instance, &config);
2644 .loc 1 1008 5 is_stmt 1 view .LVU960
1008:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** (void)SDMMC_ConfigData(hsd->Instance, &config);
2645 .loc 1 1008 26 is_stmt 0 view .LVU961
2646 0060 0123 movs r3, #1
2647 0062 0593 str r3, [sp, #20]
1009:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2648 .loc 1 1009 5 is_stmt 1 view .LVU962
1009:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2649 .loc 1 1009 11 is_stmt 0 view .LVU963
2650 0064 6946 mov r1, sp
2651 0066 2068 ldr r0, [r4]
2652 0068 FFF7FEFF bl SDMMC_ConfigData
2653 .LVL224:
1012:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2654 .loc 1 1012 5 is_stmt 1 view .LVU964
1012:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2655 .loc 1 1012 7 is_stmt 0 view .LVU965
2656 006c 012F cmp r7, #1
2657 006e 1DD9 bls .L166
1014:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2658 .loc 1 1014 7 is_stmt 1 view .LVU966
1014:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2659 .loc 1 1014 20 is_stmt 0 view .LVU967
2660 0070 0A23 movs r3, #10
2661 0072 2363 str r3, [r4, #48]
1017:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2662 .loc 1 1017 7 is_stmt 1 view .LVU968
1017:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2663 .loc 1 1017 20 is_stmt 0 view .LVU969
2664 0074 3146 mov r1, r6
2665 0076 2068 ldr r0, [r4]
2666 0078 FFF7FEFF bl SDMMC_CmdReadMultiBlock
2667 .LVL225:
2668 .L167:
1026:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2669 .loc 1 1026 5 is_stmt 1 view .LVU970
1026:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2670 .loc 1 1026 7 is_stmt 0 view .LVU971
2671 007c 08B3 cbz r0, .L169
1029:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= errorstate;
2672 .loc 1 1029 7 is_stmt 1 view .LVU972
2673 007e 2368 ldr r3, [r4]
2674 0080 114A ldr r2, .L173
2675 0082 9A63 str r2, [r3, #56]
1030:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
2676 .loc 1 1030 7 view .LVU973
1030:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
2677 .loc 1 1030 22 is_stmt 0 view .LVU974
2678 0084 A36B ldr r3, [r4, #56]
2679 0086 1843 orrs r0, r0, r3
2680 .LVL226:
1030:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
ARM GAS /tmp/cc2oBAwl.s page 120
2681 .loc 1 1030 22 view .LVU975
2682 0088 A063 str r0, [r4, #56]
1031:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Context = SD_CONTEXT_NONE;
2683 .loc 1 1031 7 is_stmt 1 view .LVU976
1031:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Context = SD_CONTEXT_NONE;
2684 .loc 1 1031 18 is_stmt 0 view .LVU977
2685 008a 0123 movs r3, #1
2686 008c 84F83430 strb r3, [r4, #52]
1032:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
2687 .loc 1 1032 7 is_stmt 1 view .LVU978
1032:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
2688 .loc 1 1032 20 is_stmt 0 view .LVU979
2689 0090 0023 movs r3, #0
2690 0092 2363 str r3, [r4, #48]
1033:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2691 .loc 1 1033 7 is_stmt 1 view .LVU980
1033:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2692 .loc 1 1033 14 is_stmt 0 view .LVU981
2693 0094 12E0 b .L163
2694 .LVL227:
2695 .L171:
973:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
2696 .loc 1 973 5 is_stmt 1 view .LVU982
973:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
2697 .loc 1 973 20 is_stmt 0 view .LVU983
2698 0096 836B ldr r3, [r0, #56]
2699 .LVL228:
973:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
2700 .loc 1 973 20 view .LVU984
2701 0098 43F00063 orr r3, r3, #134217728
2702 009c 8363 str r3, [r0, #56]
974:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2703 .loc 1 974 5 is_stmt 1 view .LVU985
974:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2704 .loc 1 974 12 is_stmt 0 view .LVU986
2705 009e 0125 movs r5, #1
2706 00a0 0CE0 b .L163
2707 .LVL229:
2708 .L172:
983:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
2709 .loc 1 983 7 is_stmt 1 view .LVU987
983:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
2710 .loc 1 983 22 is_stmt 0 view .LVU988
2711 00a2 836B ldr r3, [r0, #56]
2712 00a4 43F00073 orr r3, r3, #33554432
2713 00a8 8363 str r3, [r0, #56]
984:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2714 .loc 1 984 7 is_stmt 1 view .LVU989
984:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2715 .loc 1 984 14 is_stmt 0 view .LVU990
2716 00aa 07E0 b .L163
2717 .LVL230:
2718 .L166:
1021:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2719 .loc 1 1021 7 is_stmt 1 view .LVU991
1021:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2720 .loc 1 1021 20 is_stmt 0 view .LVU992
ARM GAS /tmp/cc2oBAwl.s page 121
2721 00ac 0923 movs r3, #9
2722 00ae 2363 str r3, [r4, #48]
1024:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2723 .loc 1 1024 7 is_stmt 1 view .LVU993
1024:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2724 .loc 1 1024 20 is_stmt 0 view .LVU994
2725 00b0 3146 mov r1, r6
2726 00b2 2068 ldr r0, [r4]
2727 00b4 FFF7FEFF bl SDMMC_CmdReadSingleBlock
2728 .LVL231:
1024:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2729 .loc 1 1024 20 view .LVU995
2730 00b8 E0E7 b .L167
2731 .LVL232:
2732 .L168:
1040:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2733 .loc 1 1040 12 view .LVU996
2734 00ba 0225 movs r5, #2
2735 .LVL233:
2736 .L163:
1042:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2737 .loc 1 1042 1 view .LVU997
2738 00bc 2846 mov r0, r5
2739 00be 07B0 add sp, sp, #28
2740 .LCFI37:
2741 .cfi_remember_state
2742 .cfi_def_cfa_offset 20
2743 @ sp needed
2744 00c0 F0BD pop {r4, r5, r6, r7, pc}
2745 .LVL234:
2746 .L169:
2747 .LCFI38:
2748 .cfi_restore_state
1036:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2749 .loc 1 1036 12 view .LVU998
2750 00c2 0025 movs r5, #0
2751 00c4 FAE7 b .L163
2752 .L174:
2753 00c6 00BF .align 2
2754 .L173:
2755 00c8 FF054000 .word 4195839
2756 .cfi_endproc
2757 .LFE148:
2759 .section .text.HAL_SD_WriteBlocks_IT,"ax",%progbits
2760 .align 1
2761 .global HAL_SD_WriteBlocks_IT
2762 .syntax unified
2763 .thumb
2764 .thumb_func
2765 .fpu fpv5-d16
2767 HAL_SD_WriteBlocks_IT:
2768 .LVL235:
2769 .LFB149:
1058:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** SDMMC_DataInitTypeDef config;
2770 .loc 1 1058 1 is_stmt 1 view -0
2771 .cfi_startproc
2772 @ args = 0, pretend = 0, frame = 24
ARM GAS /tmp/cc2oBAwl.s page 122
2773 @ frame_needed = 0, uses_anonymous_args = 0
1058:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** SDMMC_DataInitTypeDef config;
2774 .loc 1 1058 1 is_stmt 0 view .LVU1000
2775 0000 F0B5 push {r4, r5, r6, r7, lr}
2776 .LCFI39:
2777 .cfi_def_cfa_offset 20
2778 .cfi_offset 4, -20
2779 .cfi_offset 5, -16
2780 .cfi_offset 6, -12
2781 .cfi_offset 7, -8
2782 .cfi_offset 14, -4
2783 0002 87B0 sub sp, sp, #28
2784 .LCFI40:
2785 .cfi_def_cfa_offset 48
2786 0004 0446 mov r4, r0
1059:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t errorstate;
2787 .loc 1 1059 3 is_stmt 1 view .LVU1001
1060:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t add = BlockAdd;
2788 .loc 1 1060 3 view .LVU1002
1061:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2789 .loc 1 1061 3 view .LVU1003
2790 .LVL236:
1063:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2791 .loc 1 1063 3 view .LVU1004
1063:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2792 .loc 1 1063 5 is_stmt 0 view .LVU1005
2793 0006 0029 cmp r1, #0
2794 0008 33D0 beq .L185
2795 000a 0846 mov r0, r1
2796 .LVL237:
1069:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2797 .loc 1 1069 3 is_stmt 1 view .LVU1006
1069:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2798 .loc 1 1069 9 is_stmt 0 view .LVU1007
2799 000c 94F83450 ldrb r5, [r4, #52] @ zero_extendqisi2
2800 0010 EDB2 uxtb r5, r5
1069:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2801 .loc 1 1069 5 view .LVU1008
2802 0012 012D cmp r5, #1
2803 0014 4FD1 bne .L183
1071:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2804 .loc 1 1071 5 is_stmt 1 view .LVU1009
1071:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2805 .loc 1 1071 20 is_stmt 0 view .LVU1010
2806 0016 0021 movs r1, #0
2807 .LVL238:
1071:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2808 .loc 1 1071 20 view .LVU1011
2809 0018 A163 str r1, [r4, #56]
1073:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2810 .loc 1 1073 5 is_stmt 1 view .LVU1012
1073:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2811 .loc 1 1073 13 is_stmt 0 view .LVU1013
2812 001a D118 adds r1, r2, r3
1073:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2813 .loc 1 1073 45 view .LVU1014
2814 001c E66D ldr r6, [r4, #92]
ARM GAS /tmp/cc2oBAwl.s page 123
1073:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2815 .loc 1 1073 7 view .LVU1015
2816 001e B142 cmp r1, r6
2817 0020 2DD8 bhi .L186
1079:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2818 .loc 1 1079 5 is_stmt 1 view .LVU1016
1079:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2819 .loc 1 1079 16 is_stmt 0 view .LVU1017
2820 0022 0321 movs r1, #3
2821 0024 84F83410 strb r1, [r4, #52]
1082:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2822 .loc 1 1082 5 is_stmt 1 view .LVU1018
1082:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2823 .loc 1 1082 8 is_stmt 0 view .LVU1019
2824 0028 2168 ldr r1, [r4]
1082:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2825 .loc 1 1082 26 view .LVU1020
2826 002a 0026 movs r6, #0
2827 002c CE62 str r6, [r1, #44]
1084:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->TxXferSize = BLOCKSIZE * NumberOfBlocks;
2828 .loc 1 1084 5 is_stmt 1 view .LVU1021
1084:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->TxXferSize = BLOCKSIZE * NumberOfBlocks;
2829 .loc 1 1084 21 is_stmt 0 view .LVU1022
2830 002e 2062 str r0, [r4, #32]
1085:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2831 .loc 1 1085 5 is_stmt 1 view .LVU1023
1085:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2832 .loc 1 1085 33 is_stmt 0 view .LVU1024
2833 0030 5E02 lsls r6, r3, #9
1085:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2834 .loc 1 1085 21 view .LVU1025
2835 0032 6662 str r6, [r4, #36]
1088:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2836 .loc 1 1088 5 is_stmt 1 view .LVU1026
2837 0034 2068 ldr r0, [r4]
2838 .LVL239:
1088:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2839 .loc 1 1088 5 is_stmt 0 view .LVU1027
2840 0036 C76B ldr r7, [r0, #60]
2841 0038 44F21A11 movw r1, #16666
2842 003c 3943 orrs r1, r1, r7
2843 003e C163 str r1, [r0, #60]
2844 .LVL240:
1090:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2845 .loc 1 1090 5 is_stmt 1 view .LVU1028
1090:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2846 .loc 1 1090 19 is_stmt 0 view .LVU1029
2847 0040 616C ldr r1, [r4, #68]
1090:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2848 .loc 1 1090 7 view .LVU1030
2849 0042 0129 cmp r1, #1
2850 0044 00D0 beq .L179
1092:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2851 .loc 1 1092 7 is_stmt 1 view .LVU1031
1092:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2852 .loc 1 1092 11 is_stmt 0 view .LVU1032
2853 0046 5202 lsls r2, r2, #9
ARM GAS /tmp/cc2oBAwl.s page 124
2854 .LVL241:
2855 .L179:
1096:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2856 .loc 1 1096 5 is_stmt 1 view .LVU1033
1096:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2857 .loc 1 1096 7 is_stmt 0 view .LVU1034
2858 0048 012B cmp r3, #1
2859 004a 1DD9 bls .L180
1098:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2860 .loc 1 1098 7 is_stmt 1 view .LVU1035
1098:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2861 .loc 1 1098 20 is_stmt 0 view .LVU1036
2862 004c 2823 movs r3, #40
2863 .LVL242:
1098:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2864 .loc 1 1098 20 view .LVU1037
2865 004e 2363 str r3, [r4, #48]
1101:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2866 .loc 1 1101 7 is_stmt 1 view .LVU1038
1101:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2867 .loc 1 1101 20 is_stmt 0 view .LVU1039
2868 0050 1146 mov r1, r2
2869 0052 2068 ldr r0, [r4]
2870 0054 FFF7FEFF bl SDMMC_CmdWriteMultiBlock
2871 .LVL243:
2872 .L181:
1110:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2873 .loc 1 1110 5 is_stmt 1 view .LVU1040
1110:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
2874 .loc 1 1110 7 is_stmt 0 view .LVU1041
2875 0058 E8B1 cbz r0, .L182
1113:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= errorstate;
2876 .loc 1 1113 7 is_stmt 1 view .LVU1042
2877 005a 2368 ldr r3, [r4]
2878 005c 184A ldr r2, .L187
2879 005e 9A63 str r2, [r3, #56]
1114:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
2880 .loc 1 1114 7 view .LVU1043
1114:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
2881 .loc 1 1114 22 is_stmt 0 view .LVU1044
2882 0060 A36B ldr r3, [r4, #56]
2883 0062 1843 orrs r0, r0, r3
2884 .LVL244:
1114:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
2885 .loc 1 1114 22 view .LVU1045
2886 0064 A063 str r0, [r4, #56]
1115:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Context = SD_CONTEXT_NONE;
2887 .loc 1 1115 7 is_stmt 1 view .LVU1046
1115:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Context = SD_CONTEXT_NONE;
2888 .loc 1 1115 18 is_stmt 0 view .LVU1047
2889 0066 0123 movs r3, #1
2890 0068 84F83430 strb r3, [r4, #52]
1116:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
2891 .loc 1 1116 7 is_stmt 1 view .LVU1048
1116:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
2892 .loc 1 1116 20 is_stmt 0 view .LVU1049
2893 006c 0023 movs r3, #0
ARM GAS /tmp/cc2oBAwl.s page 125
2894 006e 2363 str r3, [r4, #48]
1117:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2895 .loc 1 1117 7 is_stmt 1 view .LVU1050
1117:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2896 .loc 1 1117 14 is_stmt 0 view .LVU1051
2897 0070 22E0 b .L177
2898 .LVL245:
2899 .L185:
1065:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
2900 .loc 1 1065 5 is_stmt 1 view .LVU1052
1065:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
2901 .loc 1 1065 20 is_stmt 0 view .LVU1053
2902 0072 836B ldr r3, [r0, #56]
2903 .LVL246:
1065:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
2904 .loc 1 1065 20 view .LVU1054
2905 0074 43F00063 orr r3, r3, #134217728
2906 0078 8363 str r3, [r0, #56]
1066:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2907 .loc 1 1066 5 is_stmt 1 view .LVU1055
1066:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2908 .loc 1 1066 12 is_stmt 0 view .LVU1056
2909 007a 0125 movs r5, #1
2910 007c 1CE0 b .L177
2911 .LVL247:
2912 .L186:
1075:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
2913 .loc 1 1075 7 is_stmt 1 view .LVU1057
1075:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
2914 .loc 1 1075 22 is_stmt 0 view .LVU1058
2915 007e A36B ldr r3, [r4, #56]
2916 .LVL248:
1075:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
2917 .loc 1 1075 22 view .LVU1059
2918 0080 43F00073 orr r3, r3, #33554432
2919 0084 A363 str r3, [r4, #56]
1076:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2920 .loc 1 1076 7 is_stmt 1 view .LVU1060
1076:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2921 .loc 1 1076 14 is_stmt 0 view .LVU1061
2922 0086 17E0 b .L177
2923 .LVL249:
2924 .L180:
1105:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2925 .loc 1 1105 7 is_stmt 1 view .LVU1062
1105:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2926 .loc 1 1105 20 is_stmt 0 view .LVU1063
2927 0088 1823 movs r3, #24
2928 .LVL250:
1105:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2929 .loc 1 1105 20 view .LVU1064
2930 008a 2363 str r3, [r4, #48]
1108:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2931 .loc 1 1108 7 is_stmt 1 view .LVU1065
1108:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2932 .loc 1 1108 20 is_stmt 0 view .LVU1066
2933 008c 1146 mov r1, r2
ARM GAS /tmp/cc2oBAwl.s page 126
2934 008e 2068 ldr r0, [r4]
2935 0090 FFF7FEFF bl SDMMC_CmdWriteSingleBlock
2936 .LVL251:
1108:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2937 .loc 1 1108 20 view .LVU1067
2938 0094 E0E7 b .L181
2939 .L182:
1121:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.DataLength = BLOCKSIZE * NumberOfBlocks;
2940 .loc 1 1121 5 is_stmt 1 view .LVU1068
1121:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.DataLength = BLOCKSIZE * NumberOfBlocks;
2941 .loc 1 1121 26 is_stmt 0 view .LVU1069
2942 0096 4FF0FF33 mov r3, #-1
2943 009a 0093 str r3, [sp]
1122:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.DataBlockSize = SDMMC_DATABLOCK_SIZE_512B;
2944 .loc 1 1122 5 is_stmt 1 view .LVU1070
1122:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.DataBlockSize = SDMMC_DATABLOCK_SIZE_512B;
2945 .loc 1 1122 26 is_stmt 0 view .LVU1071
2946 009c 0196 str r6, [sp, #4]
1123:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.TransferDir = SDMMC_TRANSFER_DIR_TO_CARD;
2947 .loc 1 1123 5 is_stmt 1 view .LVU1072
1123:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.TransferDir = SDMMC_TRANSFER_DIR_TO_CARD;
2948 .loc 1 1123 26 is_stmt 0 view .LVU1073
2949 009e 9023 movs r3, #144
2950 00a0 0293 str r3, [sp, #8]
1124:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.TransferMode = SDMMC_TRANSFER_MODE_BLOCK;
2951 .loc 1 1124 5 is_stmt 1 view .LVU1074
1124:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.TransferMode = SDMMC_TRANSFER_MODE_BLOCK;
2952 .loc 1 1124 26 is_stmt 0 view .LVU1075
2953 00a2 0025 movs r5, #0
2954 00a4 0395 str r5, [sp, #12]
1125:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.DPSM = SDMMC_DPSM_ENABLE;
2955 .loc 1 1125 5 is_stmt 1 view .LVU1076
1125:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.DPSM = SDMMC_DPSM_ENABLE;
2956 .loc 1 1125 26 is_stmt 0 view .LVU1077
2957 00a6 0495 str r5, [sp, #16]
1126:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** (void)SDMMC_ConfigData(hsd->Instance, &config);
2958 .loc 1 1126 5 is_stmt 1 view .LVU1078
1126:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** (void)SDMMC_ConfigData(hsd->Instance, &config);
2959 .loc 1 1126 26 is_stmt 0 view .LVU1079
2960 00a8 0123 movs r3, #1
2961 00aa 0593 str r3, [sp, #20]
1127:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2962 .loc 1 1127 5 is_stmt 1 view .LVU1080
1127:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2963 .loc 1 1127 11 is_stmt 0 view .LVU1081
2964 00ac 6946 mov r1, sp
2965 00ae 2068 ldr r0, [r4]
2966 .LVL252:
1127:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2967 .loc 1 1127 11 view .LVU1082
2968 00b0 FFF7FEFF bl SDMMC_ConfigData
2969 .LVL253:
1129:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2970 .loc 1 1129 5 is_stmt 1 view .LVU1083
1129:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2971 .loc 1 1129 12 is_stmt 0 view .LVU1084
2972 00b4 00E0 b .L177
ARM GAS /tmp/cc2oBAwl.s page 127
2973 .LVL254:
2974 .L183:
1133:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
2975 .loc 1 1133 12 view .LVU1085
2976 00b6 0225 movs r5, #2
2977 .LVL255:
2978 .L177:
1135:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2979 .loc 1 1135 1 view .LVU1086
2980 00b8 2846 mov r0, r5
2981 00ba 07B0 add sp, sp, #28
2982 .LCFI41:
2983 .cfi_def_cfa_offset 20
2984 @ sp needed
2985 00bc F0BD pop {r4, r5, r6, r7, pc}
2986 .LVL256:
2987 .L188:
1135:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
2988 .loc 1 1135 1 view .LVU1087
2989 00be 00BF .align 2
2990 .L187:
2991 00c0 FF054000 .word 4195839
2992 .cfi_endproc
2993 .LFE149:
2995 .section .text.HAL_SD_ReadBlocks_DMA,"ax",%progbits
2996 .align 1
2997 .global HAL_SD_ReadBlocks_DMA
2998 .syntax unified
2999 .thumb
3000 .thumb_func
3001 .fpu fpv5-d16
3003 HAL_SD_ReadBlocks_DMA:
3004 .LVL257:
3005 .LFB150:
1151:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** SDMMC_DataInitTypeDef config;
3006 .loc 1 1151 1 is_stmt 1 view -0
3007 .cfi_startproc
3008 @ args = 0, pretend = 0, frame = 24
3009 @ frame_needed = 0, uses_anonymous_args = 0
1151:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** SDMMC_DataInitTypeDef config;
3010 .loc 1 1151 1 is_stmt 0 view .LVU1089
3011 0000 2DE9F043 push {r4, r5, r6, r7, r8, r9, lr}
3012 .LCFI42:
3013 .cfi_def_cfa_offset 28
3014 .cfi_offset 4, -28
3015 .cfi_offset 5, -24
3016 .cfi_offset 6, -20
3017 .cfi_offset 7, -16
3018 .cfi_offset 8, -12
3019 .cfi_offset 9, -8
3020 .cfi_offset 14, -4
3021 0004 87B0 sub sp, sp, #28
3022 .LCFI43:
3023 .cfi_def_cfa_offset 56
3024 0006 0446 mov r4, r0
1152:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t errorstate;
3025 .loc 1 1152 3 is_stmt 1 view .LVU1090
ARM GAS /tmp/cc2oBAwl.s page 128
1153:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t add = BlockAdd;
3026 .loc 1 1153 3 view .LVU1091
1154:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
3027 .loc 1 1154 3 view .LVU1092
3028 .LVL258:
1156:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
3029 .loc 1 1156 3 view .LVU1093
1156:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
3030 .loc 1 1156 5 is_stmt 0 view .LVU1094
3031 0008 91B1 cbz r1, .L200
3032 000a 1646 mov r6, r2
3033 000c 1F46 mov r7, r3
3034 000e 0A46 mov r2, r1
3035 .LVL259:
1162:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
3036 .loc 1 1162 3 is_stmt 1 view .LVU1095
1162:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
3037 .loc 1 1162 9 is_stmt 0 view .LVU1096
3038 0010 90F83450 ldrb r5, [r0, #52] @ zero_extendqisi2
3039 0014 EDB2 uxtb r5, r5
1162:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
3040 .loc 1 1162 5 view .LVU1097
3041 0016 012D cmp r5, #1
3042 0018 7FD1 bne .L197
1164:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
3043 .loc 1 1164 5 is_stmt 1 view .LVU1098
1164:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
3044 .loc 1 1164 20 is_stmt 0 view .LVU1099
3045 001a 0023 movs r3, #0
3046 .LVL260:
1164:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
3047 .loc 1 1164 20 view .LVU1100
3048 001c 8363 str r3, [r0, #56]
1166:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
3049 .loc 1 1166 5 is_stmt 1 view .LVU1101
1166:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
3050 .loc 1 1166 13 is_stmt 0 view .LVU1102
3051 001e F019 adds r0, r6, r7
3052 .LVL261:
1166:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
3053 .loc 1 1166 45 view .LVU1103
3054 0020 E36D ldr r3, [r4, #92]
1166:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
3055 .loc 1 1166 7 view .LVU1104
3056 0022 9842 cmp r0, r3
3057 0024 0AD9 bls .L192
1168:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
3058 .loc 1 1168 7 is_stmt 1 view .LVU1105
1168:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
3059 .loc 1 1168 22 is_stmt 0 view .LVU1106
3060 0026 A36B ldr r3, [r4, #56]
3061 0028 43F00073 orr r3, r3, #33554432
3062 002c A363 str r3, [r4, #56]
1169:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
3063 .loc 1 1169 7 is_stmt 1 view .LVU1107
1169:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
3064 .loc 1 1169 14 is_stmt 0 view .LVU1108
ARM GAS /tmp/cc2oBAwl.s page 129
3065 002e 75E0 b .L191
3066 .LVL262:
3067 .L200:
1158:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
3068 .loc 1 1158 5 is_stmt 1 view .LVU1109
1158:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
3069 .loc 1 1158 20 is_stmt 0 view .LVU1110
3070 0030 836B ldr r3, [r0, #56]
3071 .LVL263:
1158:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
3072 .loc 1 1158 20 view .LVU1111
3073 0032 43F00063 orr r3, r3, #134217728
3074 0036 8363 str r3, [r0, #56]
1159:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
3075 .loc 1 1159 5 is_stmt 1 view .LVU1112
1159:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
3076 .loc 1 1159 12 is_stmt 0 view .LVU1113
3077 0038 0125 movs r5, #1
3078 003a 6FE0 b .L191
3079 .LVL264:
3080 .L192:
1172:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
3081 .loc 1 1172 5 is_stmt 1 view .LVU1114
1172:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
3082 .loc 1 1172 16 is_stmt 0 view .LVU1115
3083 003c 0323 movs r3, #3
3084 003e 84F83430 strb r3, [r4, #52]
1175:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
3085 .loc 1 1175 5 is_stmt 1 view .LVU1116
1175:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
3086 .loc 1 1175 8 is_stmt 0 view .LVU1117
3087 0042 2168 ldr r1, [r4]
3088 .LVL265:
1175:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
3089 .loc 1 1175 26 view .LVU1118
3090 0044 0023 movs r3, #0
3091 0046 CB62 str r3, [r1, #44]
1177:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
3092 .loc 1 1177 5 is_stmt 1 view .LVU1119
3093 0048 2068 ldr r0, [r4]
3094 004a C16B ldr r1, [r0, #60]
3095 004c 41F49571 orr r1, r1, #298
3096 0050 C163 str r1, [r0, #60]
1180:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
3097 .loc 1 1180 5 view .LVU1120
1180:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
3098 .loc 1 1180 8 is_stmt 0 view .LVU1121
3099 0052 216C ldr r1, [r4, #64]
1180:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
3100 .loc 1 1180 35 view .LVU1122
3101 0054 3448 ldr r0, .L202
3102 0056 C863 str r0, [r1, #60]
1183:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
3103 .loc 1 1183 5 is_stmt 1 view .LVU1123
1183:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
3104 .loc 1 1183 8 is_stmt 0 view .LVU1124
3105 0058 216C ldr r1, [r4, #64]
ARM GAS /tmp/cc2oBAwl.s page 130
1183:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
3106 .loc 1 1183 36 view .LVU1125
3107 005a 3448 ldr r0, .L202+4
3108 005c C864 str r0, [r1, #76]
1186:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
3109 .loc 1 1186 5 is_stmt 1 view .LVU1126
1186:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
3110 .loc 1 1186 8 is_stmt 0 view .LVU1127
3111 005e 216C ldr r1, [r4, #64]
1186:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
3112 .loc 1 1186 36 view .LVU1128
3113 0060 0B65 str r3, [r1, #80]
1189:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** MODIFY_REG(hsd->hdmarx->Instance->CR, DMA_SxCR_DIR, hsd->hdmarx->Init.Direction);
3114 .loc 1 1189 5 is_stmt 1 view .LVU1129
1189:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** MODIFY_REG(hsd->hdmarx->Instance->CR, DMA_SxCR_DIR, hsd->hdmarx->Init.Direction);
3115 .loc 1 1189 8 is_stmt 0 view .LVU1130
3116 0062 216C ldr r1, [r4, #64]
1189:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** MODIFY_REG(hsd->hdmarx->Instance->CR, DMA_SxCR_DIR, hsd->hdmarx->Init.Direction);
3117 .loc 1 1189 33 view .LVU1131
3118 0064 8B60 str r3, [r1, #8]
1190:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
3119 .loc 1 1190 5 is_stmt 1 view .LVU1132
3120 0066 206C ldr r0, [r4, #64]
3121 0068 0168 ldr r1, [r0]
3122 006a 0B68 ldr r3, [r1]
3123 006c 23F0C003 bic r3, r3, #192
3124 0070 8068 ldr r0, [r0, #8]
3125 0072 0343 orrs r3, r3, r0
3126 0074 0B60 str r3, [r1]
1193:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
3127 .loc 1 1193 5 view .LVU1133
1193:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
3128 .loc 1 1193 52 is_stmt 0 view .LVU1134
3129 0076 2168 ldr r1, [r4]
1193:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
3130 .loc 1 1193 87 view .LVU1135
3131 0078 4FEA4729 lsl r9, r7, #9
1193:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
3132 .loc 1 1193 8 view .LVU1136
3133 007c 4FEA9903 lsr r3, r9, #2
3134 0080 8031 adds r1, r1, #128
3135 0082 206C ldr r0, [r4, #64]
3136 0084 FFF7FEFF bl HAL_DMA_Start_IT
3137 .LVL266:
1193:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
3138 .loc 1 1193 7 view .LVU1137
3139 0088 8046 mov r8, r0
3140 008a 0028 cmp r0, #0
3141 008c 2ED1 bne .L201
1204:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
3142 .loc 1 1204 7 is_stmt 1 view .LVU1138
3143 008e 2268 ldr r2, [r4]
3144 0090 D36A ldr r3, [r2, #44]
3145 0092 43F00803 orr r3, r3, #8
3146 0096 D362 str r3, [r2, #44]
1206:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
3147 .loc 1 1206 7 view .LVU1139
ARM GAS /tmp/cc2oBAwl.s page 131
1206:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
3148 .loc 1 1206 21 is_stmt 0 view .LVU1140
3149 0098 636C ldr r3, [r4, #68]
1206:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
3150 .loc 1 1206 9 view .LVU1141
3151 009a 012B cmp r3, #1
3152 009c 00D0 beq .L194
1208:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
3153 .loc 1 1208 9 is_stmt 1 view .LVU1142
1208:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
3154 .loc 1 1208 13 is_stmt 0 view .LVU1143
3155 009e 7602 lsls r6, r6, #9
3156 .LVL267:
3157 .L194:
1212:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.DataLength = BLOCKSIZE * NumberOfBlocks;
3158 .loc 1 1212 7 is_stmt 1 view .LVU1144
1212:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.DataLength = BLOCKSIZE * NumberOfBlocks;
3159 .loc 1 1212 28 is_stmt 0 view .LVU1145
3160 00a0 4FF0FF33 mov r3, #-1
3161 00a4 0093 str r3, [sp]
1213:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.DataBlockSize = SDMMC_DATABLOCK_SIZE_512B;
3162 .loc 1 1213 7 is_stmt 1 view .LVU1146
1213:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.DataBlockSize = SDMMC_DATABLOCK_SIZE_512B;
3163 .loc 1 1213 28 is_stmt 0 view .LVU1147
3164 00a6 CDF80490 str r9, [sp, #4]
1214:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.TransferDir = SDMMC_TRANSFER_DIR_TO_SDMMC;
3165 .loc 1 1214 7 is_stmt 1 view .LVU1148
1214:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.TransferDir = SDMMC_TRANSFER_DIR_TO_SDMMC;
3166 .loc 1 1214 28 is_stmt 0 view .LVU1149
3167 00aa 9023 movs r3, #144
3168 00ac 0293 str r3, [sp, #8]
1215:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.TransferMode = SDMMC_TRANSFER_MODE_BLOCK;
3169 .loc 1 1215 7 is_stmt 1 view .LVU1150
1215:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.TransferMode = SDMMC_TRANSFER_MODE_BLOCK;
3170 .loc 1 1215 28 is_stmt 0 view .LVU1151
3171 00ae 0223 movs r3, #2
3172 00b0 0393 str r3, [sp, #12]
1216:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.DPSM = SDMMC_DPSM_ENABLE;
3173 .loc 1 1216 7 is_stmt 1 view .LVU1152
1216:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.DPSM = SDMMC_DPSM_ENABLE;
3174 .loc 1 1216 28 is_stmt 0 view .LVU1153
3175 00b2 0023 movs r3, #0
3176 00b4 0493 str r3, [sp, #16]
1217:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** (void)SDMMC_ConfigData(hsd->Instance, &config);
3177 .loc 1 1217 7 is_stmt 1 view .LVU1154
1217:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** (void)SDMMC_ConfigData(hsd->Instance, &config);
3178 .loc 1 1217 28 is_stmt 0 view .LVU1155
3179 00b6 0123 movs r3, #1
3180 00b8 0593 str r3, [sp, #20]
1218:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
3181 .loc 1 1218 7 is_stmt 1 view .LVU1156
1218:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
3182 .loc 1 1218 13 is_stmt 0 view .LVU1157
3183 00ba 6946 mov r1, sp
3184 00bc 2068 ldr r0, [r4]
3185 00be FFF7FEFF bl SDMMC_ConfigData
3186 .LVL268:
ARM GAS /tmp/cc2oBAwl.s page 132
1221:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
3187 .loc 1 1221 7 is_stmt 1 view .LVU1158
1221:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
3188 .loc 1 1221 9 is_stmt 0 view .LVU1159
3189 00c2 012F cmp r7, #1
3190 00c4 22D9 bls .L195
1223:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
3191 .loc 1 1223 9 is_stmt 1 view .LVU1160
1223:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
3192 .loc 1 1223 22 is_stmt 0 view .LVU1161
3193 00c6 8223 movs r3, #130
3194 00c8 2363 str r3, [r4, #48]
1226:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
3195 .loc 1 1226 9 is_stmt 1 view .LVU1162
1226:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
3196 .loc 1 1226 22 is_stmt 0 view .LVU1163
3197 00ca 3146 mov r1, r6
3198 00cc 2068 ldr r0, [r4]
3199 00ce FFF7FEFF bl SDMMC_CmdReadMultiBlock
3200 .LVL269:
3201 .L196:
1235:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
3202 .loc 1 1235 7 is_stmt 1 view .LVU1164
1235:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
3203 .loc 1 1235 9 is_stmt 0 view .LVU1165
3204 00d2 38B3 cbz r0, .L198
1238:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= errorstate;
3205 .loc 1 1238 9 is_stmt 1 view .LVU1166
3206 00d4 2368 ldr r3, [r4]
3207 00d6 164A ldr r2, .L202+8
3208 00d8 9A63 str r2, [r3, #56]
1239:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
3209 .loc 1 1239 9 view .LVU1167
1239:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
3210 .loc 1 1239 24 is_stmt 0 view .LVU1168
3211 00da A36B ldr r3, [r4, #56]
3212 00dc 1843 orrs r0, r0, r3
3213 .LVL270:
1239:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
3214 .loc 1 1239 24 view .LVU1169
3215 00de A063 str r0, [r4, #56]
1240:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Context = SD_CONTEXT_NONE;
3216 .loc 1 1240 9 is_stmt 1 view .LVU1170
1240:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Context = SD_CONTEXT_NONE;
3217 .loc 1 1240 20 is_stmt 0 view .LVU1171
3218 00e0 0123 movs r3, #1
3219 00e2 84F83430 strb r3, [r4, #52]
1241:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
3220 .loc 1 1241 9 is_stmt 1 view .LVU1172
1241:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
3221 .loc 1 1241 22 is_stmt 0 view .LVU1173
3222 00e6 0023 movs r3, #0
3223 00e8 2363 str r3, [r4, #48]
1242:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
3224 .loc 1 1242 9 is_stmt 1 view .LVU1174
1242:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
3225 .loc 1 1242 16 is_stmt 0 view .LVU1175
ARM GAS /tmp/cc2oBAwl.s page 133
3226 00ea 17E0 b .L191
3227 .LVL271:
3228 .L201:
1195:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** __HAL_SD_CLEAR_FLAG(hsd, SDMMC_STATIC_FLAGS);
3229 .loc 1 1195 7 is_stmt 1 view .LVU1176
3230 00ec 2268 ldr r2, [r4]
3231 00ee D36B ldr r3, [r2, #60]
3232 00f0 23F49573 bic r3, r3, #298
3233 00f4 D363 str r3, [r2, #60]
1196:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= HAL_SD_ERROR_DMA;
3234 .loc 1 1196 7 view .LVU1177
3235 00f6 2368 ldr r3, [r4]
3236 00f8 0D4A ldr r2, .L202+8
3237 00fa 9A63 str r2, [r3, #56]
1197:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
3238 .loc 1 1197 7 view .LVU1178
1197:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
3239 .loc 1 1197 22 is_stmt 0 view .LVU1179
3240 00fc A36B ldr r3, [r4, #56]
3241 00fe 43F08043 orr r3, r3, #1073741824
3242 0102 A363 str r3, [r4, #56]
1198:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
3243 .loc 1 1198 7 is_stmt 1 view .LVU1180
1198:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
3244 .loc 1 1198 18 is_stmt 0 view .LVU1181
3245 0104 0123 movs r3, #1
3246 0106 84F83430 strb r3, [r4, #52]
1199:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
3247 .loc 1 1199 7 is_stmt 1 view .LVU1182
1199:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
3248 .loc 1 1199 14 is_stmt 0 view .LVU1183
3249 010a 07E0 b .L191
3250 .LVL272:
3251 .L195:
1230:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
3252 .loc 1 1230 9 is_stmt 1 view .LVU1184
1230:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
3253 .loc 1 1230 22 is_stmt 0 view .LVU1185
3254 010c 8123 movs r3, #129
3255 010e 2363 str r3, [r4, #48]
1233:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
3256 .loc 1 1233 9 is_stmt 1 view .LVU1186
1233:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
3257 .loc 1 1233 22 is_stmt 0 view .LVU1187
3258 0110 3146 mov r1, r6
3259 0112 2068 ldr r0, [r4]
3260 0114 FFF7FEFF bl SDMMC_CmdReadSingleBlock
3261 .LVL273:
1233:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
3262 .loc 1 1233 22 view .LVU1188
3263 0118 DBE7 b .L196
3264 .LVL274:
3265 .L197:
1250:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
3266 .loc 1 1250 12 view .LVU1189
3267 011a 0225 movs r5, #2
3268 .LVL275:
ARM GAS /tmp/cc2oBAwl.s page 134
3269 .L191:
1252:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
3270 .loc 1 1252 1 view .LVU1190
3271 011c 2846 mov r0, r5
3272 011e 07B0 add sp, sp, #28
3273 .LCFI44:
3274 .cfi_remember_state
3275 .cfi_def_cfa_offset 28
3276 @ sp needed
3277 0120 BDE8F083 pop {r4, r5, r6, r7, r8, r9, pc}
3278 .LVL276:
3279 .L198:
3280 .LCFI45:
3281 .cfi_restore_state
1245:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
3282 .loc 1 1245 14 view .LVU1191
3283 0124 4546 mov r5, r8
3284 0126 F9E7 b .L191
3285 .L203:
3286 .align 2
3287 .L202:
3288 0128 00000000 .word SD_DMAReceiveCplt
3289 012c 00000000 .word SD_DMAError
3290 0130 FF054000 .word 4195839
3291 .cfi_endproc
3292 .LFE150:
3294 .section .text.HAL_SD_WriteBlocks_DMA,"ax",%progbits
3295 .align 1
3296 .global HAL_SD_WriteBlocks_DMA
3297 .syntax unified
3298 .thumb
3299 .thumb_func
3300 .fpu fpv5-d16
3302 HAL_SD_WriteBlocks_DMA:
3303 .LVL277:
3304 .LFB151:
1268:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** SDMMC_DataInitTypeDef config;
3305 .loc 1 1268 1 is_stmt 1 view -0
3306 .cfi_startproc
3307 @ args = 0, pretend = 0, frame = 24
3308 @ frame_needed = 0, uses_anonymous_args = 0
1268:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** SDMMC_DataInitTypeDef config;
3309 .loc 1 1268 1 is_stmt 0 view .LVU1193
3310 0000 F0B5 push {r4, r5, r6, r7, lr}
3311 .LCFI46:
3312 .cfi_def_cfa_offset 20
3313 .cfi_offset 4, -20
3314 .cfi_offset 5, -16
3315 .cfi_offset 6, -12
3316 .cfi_offset 7, -8
3317 .cfi_offset 14, -4
3318 0002 87B0 sub sp, sp, #28
3319 .LCFI47:
3320 .cfi_def_cfa_offset 48
3321 0004 0446 mov r4, r0
1269:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t errorstate;
3322 .loc 1 1269 3 is_stmt 1 view .LVU1194
ARM GAS /tmp/cc2oBAwl.s page 135
1270:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t add = BlockAdd;
3323 .loc 1 1270 3 view .LVU1195
1271:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
3324 .loc 1 1271 3 view .LVU1196
3325 .LVL278:
1273:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
3326 .loc 1 1273 3 view .LVU1197
1273:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
3327 .loc 1 1273 5 is_stmt 0 view .LVU1198
3328 0006 0029 cmp r1, #0
3329 0008 39D0 beq .L215
3330 000a 1E46 mov r6, r3
3331 000c 0F46 mov r7, r1
1279:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
3332 .loc 1 1279 3 is_stmt 1 view .LVU1199
1279:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
3333 .loc 1 1279 9 is_stmt 0 view .LVU1200
3334 000e 90F83450 ldrb r5, [r0, #52] @ zero_extendqisi2
3335 0012 EDB2 uxtb r5, r5
1279:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
3336 .loc 1 1279 5 view .LVU1201
3337 0014 012D cmp r5, #1
3338 0016 40F08180 bne .L213
1281:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
3339 .loc 1 1281 5 is_stmt 1 view .LVU1202
1281:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
3340 .loc 1 1281 20 is_stmt 0 view .LVU1203
3341 001a 0023 movs r3, #0
3342 .LVL279:
1281:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
3343 .loc 1 1281 20 view .LVU1204
3344 001c 8363 str r3, [r0, #56]
1283:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
3345 .loc 1 1283 5 is_stmt 1 view .LVU1205
1283:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
3346 .loc 1 1283 13 is_stmt 0 view .LVU1206
3347 001e 9319 adds r3, r2, r6
1283:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
3348 .loc 1 1283 45 view .LVU1207
3349 0020 C16D ldr r1, [r0, #92]
3350 .LVL280:
1283:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
3351 .loc 1 1283 7 view .LVU1208
3352 0022 8B42 cmp r3, r1
3353 0024 31D8 bhi .L216
1289:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
3354 .loc 1 1289 5 is_stmt 1 view .LVU1209
1289:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
3355 .loc 1 1289 16 is_stmt 0 view .LVU1210
3356 0026 0323 movs r3, #3
3357 0028 80F83430 strb r3, [r0, #52]
1292:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
3358 .loc 1 1292 5 is_stmt 1 view .LVU1211
1292:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
3359 .loc 1 1292 8 is_stmt 0 view .LVU1212
3360 002c 0368 ldr r3, [r0]
1292:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
ARM GAS /tmp/cc2oBAwl.s page 136
3361 .loc 1 1292 26 view .LVU1213
3362 002e 0021 movs r1, #0
3363 0030 D962 str r1, [r3, #44]
1295:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
3364 .loc 1 1295 5 is_stmt 1 view .LVU1214
3365 0032 0068 ldr r0, [r0]
3366 .LVL281:
1295:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
3367 .loc 1 1295 5 is_stmt 0 view .LVU1215
3368 0034 C36B ldr r3, [r0, #60]
3369 0036 43F01A03 orr r3, r3, #26
3370 003a C363 str r3, [r0, #60]
1298:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
3371 .loc 1 1298 5 is_stmt 1 view .LVU1216
1298:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
3372 .loc 1 1298 8 is_stmt 0 view .LVU1217
3373 003c E36B ldr r3, [r4, #60]
1298:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
3374 .loc 1 1298 35 view .LVU1218
3375 003e 3948 ldr r0, .L217
3376 0040 D863 str r0, [r3, #60]
1301:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
3377 .loc 1 1301 5 is_stmt 1 view .LVU1219
1301:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
3378 .loc 1 1301 8 is_stmt 0 view .LVU1220
3379 0042 E36B ldr r3, [r4, #60]
1301:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
3380 .loc 1 1301 36 view .LVU1221
3381 0044 3848 ldr r0, .L217+4
3382 0046 D864 str r0, [r3, #76]
1304:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
3383 .loc 1 1304 5 is_stmt 1 view .LVU1222
1304:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
3384 .loc 1 1304 8 is_stmt 0 view .LVU1223
3385 0048 E36B ldr r3, [r4, #60]
1304:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
3386 .loc 1 1304 36 view .LVU1224
3387 004a 1965 str r1, [r3, #80]
1306:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
3388 .loc 1 1306 5 is_stmt 1 view .LVU1225
1306:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
3389 .loc 1 1306 19 is_stmt 0 view .LVU1226
3390 004c 636C ldr r3, [r4, #68]
1306:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
3391 .loc 1 1306 7 view .LVU1227
3392 004e 012B cmp r3, #1
3393 0050 00D0 beq .L208
1308:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
3394 .loc 1 1308 7 is_stmt 1 view .LVU1228
1308:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
3395 .loc 1 1308 11 is_stmt 0 view .LVU1229
3396 0052 5202 lsls r2, r2, #9
3397 .LVL282:
3398 .L208:
1312:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
3399 .loc 1 1312 5 is_stmt 1 view .LVU1230
1312:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
ARM GAS /tmp/cc2oBAwl.s page 137
3400 .loc 1 1312 7 is_stmt 0 view .LVU1231
3401 0054 012E cmp r6, #1
3402 0056 1DD9 bls .L209
1314:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
3403 .loc 1 1314 7 is_stmt 1 view .LVU1232
1314:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
3404 .loc 1 1314 20 is_stmt 0 view .LVU1233
3405 0058 A023 movs r3, #160
3406 005a 2363 str r3, [r4, #48]
1317:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
3407 .loc 1 1317 7 is_stmt 1 view .LVU1234
1317:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
3408 .loc 1 1317 20 is_stmt 0 view .LVU1235
3409 005c 1146 mov r1, r2
3410 005e 2068 ldr r0, [r4]
3411 0060 FFF7FEFF bl SDMMC_CmdWriteMultiBlock
3412 .LVL283:
3413 .L210:
1326:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
3414 .loc 1 1326 5 is_stmt 1 view .LVU1236
1326:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
3415 .loc 1 1326 7 is_stmt 0 view .LVU1237
3416 0064 E8B1 cbz r0, .L211
1329:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= errorstate;
3417 .loc 1 1329 7 is_stmt 1 view .LVU1238
3418 0066 2368 ldr r3, [r4]
3419 0068 304A ldr r2, .L217+8
3420 006a 9A63 str r2, [r3, #56]
1330:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
3421 .loc 1 1330 7 view .LVU1239
1330:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
3422 .loc 1 1330 22 is_stmt 0 view .LVU1240
3423 006c A36B ldr r3, [r4, #56]
3424 006e 1843 orrs r0, r0, r3
3425 .LVL284:
1330:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
3426 .loc 1 1330 22 view .LVU1241
3427 0070 A063 str r0, [r4, #56]
1331:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Context = SD_CONTEXT_NONE;
3428 .loc 1 1331 7 is_stmt 1 view .LVU1242
1331:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Context = SD_CONTEXT_NONE;
3429 .loc 1 1331 18 is_stmt 0 view .LVU1243
3430 0072 0123 movs r3, #1
3431 0074 84F83430 strb r3, [r4, #52]
1332:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
3432 .loc 1 1332 7 is_stmt 1 view .LVU1244
1332:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
3433 .loc 1 1332 20 is_stmt 0 view .LVU1245
3434 0078 0023 movs r3, #0
3435 007a 2363 str r3, [r4, #48]
1333:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
3436 .loc 1 1333 7 is_stmt 1 view .LVU1246
1333:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
3437 .loc 1 1333 14 is_stmt 0 view .LVU1247
3438 007c 4FE0 b .L206
3439 .LVL285:
3440 .L215:
ARM GAS /tmp/cc2oBAwl.s page 138
1275:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
3441 .loc 1 1275 5 is_stmt 1 view .LVU1248
1275:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
3442 .loc 1 1275 20 is_stmt 0 view .LVU1249
3443 007e 836B ldr r3, [r0, #56]
3444 .LVL286:
1275:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
3445 .loc 1 1275 20 view .LVU1250
3446 0080 43F00063 orr r3, r3, #134217728
3447 0084 8363 str r3, [r0, #56]
1276:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
3448 .loc 1 1276 5 is_stmt 1 view .LVU1251
1276:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
3449 .loc 1 1276 12 is_stmt 0 view .LVU1252
3450 0086 0125 movs r5, #1
3451 0088 49E0 b .L206
3452 .LVL287:
3453 .L216:
1285:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
3454 .loc 1 1285 7 is_stmt 1 view .LVU1253
1285:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
3455 .loc 1 1285 22 is_stmt 0 view .LVU1254
3456 008a 836B ldr r3, [r0, #56]
3457 008c 43F00073 orr r3, r3, #33554432
3458 0090 8363 str r3, [r0, #56]
1286:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
3459 .loc 1 1286 7 is_stmt 1 view .LVU1255
1286:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
3460 .loc 1 1286 14 is_stmt 0 view .LVU1256
3461 0092 44E0 b .L206
3462 .LVL288:
3463 .L209:
1321:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
3464 .loc 1 1321 7 is_stmt 1 view .LVU1257
1321:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
3465 .loc 1 1321 20 is_stmt 0 view .LVU1258
3466 0094 9023 movs r3, #144
3467 0096 2363 str r3, [r4, #48]
1324:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
3468 .loc 1 1324 7 is_stmt 1 view .LVU1259
1324:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
3469 .loc 1 1324 20 is_stmt 0 view .LVU1260
3470 0098 1146 mov r1, r2
3471 009a 2068 ldr r0, [r4]
3472 009c FFF7FEFF bl SDMMC_CmdWriteSingleBlock
3473 .LVL289:
1324:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
3474 .loc 1 1324 20 view .LVU1261
3475 00a0 E0E7 b .L210
3476 .L211:
1337:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
3477 .loc 1 1337 5 is_stmt 1 view .LVU1262
3478 00a2 2268 ldr r2, [r4]
3479 00a4 D36A ldr r3, [r2, #44]
3480 00a6 43F00803 orr r3, r3, #8
3481 00aa D362 str r3, [r2, #44]
1340:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** MODIFY_REG(hsd->hdmatx->Instance->CR, DMA_SxCR_DIR, hsd->hdmatx->Init.Direction);
ARM GAS /tmp/cc2oBAwl.s page 139
3482 .loc 1 1340 5 view .LVU1263
1340:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** MODIFY_REG(hsd->hdmatx->Instance->CR, DMA_SxCR_DIR, hsd->hdmatx->Init.Direction);
3483 .loc 1 1340 8 is_stmt 0 view .LVU1264
3484 00ac E36B ldr r3, [r4, #60]
1340:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** MODIFY_REG(hsd->hdmatx->Instance->CR, DMA_SxCR_DIR, hsd->hdmatx->Init.Direction);
3485 .loc 1 1340 33 view .LVU1265
3486 00ae 4022 movs r2, #64
3487 00b0 9A60 str r2, [r3, #8]
1341:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
3488 .loc 1 1341 5 is_stmt 1 view .LVU1266
3489 00b2 E16B ldr r1, [r4, #60]
3490 00b4 0A68 ldr r2, [r1]
3491 00b6 1368 ldr r3, [r2]
3492 00b8 23F0C003 bic r3, r3, #192
3493 00bc 8968 ldr r1, [r1, #8]
3494 00be 0B43 orrs r3, r3, r1
3495 00c0 1360 str r3, [r2]
1344:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
3496 .loc 1 1344 5 view .LVU1267
1344:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
3497 .loc 1 1344 69 is_stmt 0 view .LVU1268
3498 00c2 2268 ldr r2, [r4]
1344:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
3499 .loc 1 1344 87 view .LVU1269
3500 00c4 7602 lsls r6, r6, #9
3501 .LVL290:
1344:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
3502 .loc 1 1344 8 view .LVU1270
3503 00c6 B308 lsrs r3, r6, #2
3504 00c8 8032 adds r2, r2, #128
3505 00ca 3946 mov r1, r7
3506 00cc E06B ldr r0, [r4, #60]
3507 .LVL291:
1344:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
3508 .loc 1 1344 8 view .LVU1271
3509 00ce FFF7FEFF bl HAL_DMA_Start_IT
3510 .LVL292:
1344:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
3511 .loc 1 1344 7 view .LVU1272
3512 00d2 0746 mov r7, r0
3513 .LVL293:
1344:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
3514 .loc 1 1344 7 view .LVU1273
3515 00d4 88B1 cbz r0, .L212
1346:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** __HAL_SD_CLEAR_FLAG(hsd, SDMMC_STATIC_FLAGS);
3516 .loc 1 1346 7 is_stmt 1 view .LVU1274
3517 00d6 2268 ldr r2, [r4]
3518 00d8 D36B ldr r3, [r2, #60]
3519 00da 23F01A03 bic r3, r3, #26
3520 00de D363 str r3, [r2, #60]
1347:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= HAL_SD_ERROR_DMA;
3521 .loc 1 1347 7 view .LVU1275
3522 00e0 2368 ldr r3, [r4]
3523 00e2 124A ldr r2, .L217+8
3524 00e4 9A63 str r2, [r3, #56]
1348:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
3525 .loc 1 1348 7 view .LVU1276
ARM GAS /tmp/cc2oBAwl.s page 140
1348:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
3526 .loc 1 1348 22 is_stmt 0 view .LVU1277
3527 00e6 A36B ldr r3, [r4, #56]
3528 00e8 43F08043 orr r3, r3, #1073741824
3529 00ec A363 str r3, [r4, #56]
1349:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Context = SD_CONTEXT_NONE;
3530 .loc 1 1349 7 is_stmt 1 view .LVU1278
1349:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Context = SD_CONTEXT_NONE;
3531 .loc 1 1349 18 is_stmt 0 view .LVU1279
3532 00ee 0123 movs r3, #1
3533 00f0 84F83430 strb r3, [r4, #52]
1350:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
3534 .loc 1 1350 7 is_stmt 1 view .LVU1280
1350:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
3535 .loc 1 1350 20 is_stmt 0 view .LVU1281
3536 00f4 0023 movs r3, #0
3537 00f6 2363 str r3, [r4, #48]
1351:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
3538 .loc 1 1351 7 is_stmt 1 view .LVU1282
1351:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
3539 .loc 1 1351 14 is_stmt 0 view .LVU1283
3540 00f8 11E0 b .L206
3541 .L212:
1356:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.DataLength = BLOCKSIZE * NumberOfBlocks;
3542 .loc 1 1356 7 is_stmt 1 view .LVU1284
1356:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.DataLength = BLOCKSIZE * NumberOfBlocks;
3543 .loc 1 1356 28 is_stmt 0 view .LVU1285
3544 00fa 4FF0FF33 mov r3, #-1
3545 00fe 0093 str r3, [sp]
1357:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.DataBlockSize = SDMMC_DATABLOCK_SIZE_512B;
3546 .loc 1 1357 7 is_stmt 1 view .LVU1286
1357:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.DataBlockSize = SDMMC_DATABLOCK_SIZE_512B;
3547 .loc 1 1357 28 is_stmt 0 view .LVU1287
3548 0100 0196 str r6, [sp, #4]
1358:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.TransferDir = SDMMC_TRANSFER_DIR_TO_CARD;
3549 .loc 1 1358 7 is_stmt 1 view .LVU1288
1358:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.TransferDir = SDMMC_TRANSFER_DIR_TO_CARD;
3550 .loc 1 1358 28 is_stmt 0 view .LVU1289
3551 0102 9023 movs r3, #144
3552 0104 0293 str r3, [sp, #8]
1359:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.TransferMode = SDMMC_TRANSFER_MODE_BLOCK;
3553 .loc 1 1359 7 is_stmt 1 view .LVU1290
1359:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.TransferMode = SDMMC_TRANSFER_MODE_BLOCK;
3554 .loc 1 1359 28 is_stmt 0 view .LVU1291
3555 0106 0023 movs r3, #0
3556 0108 0393 str r3, [sp, #12]
1360:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.DPSM = SDMMC_DPSM_ENABLE;
3557 .loc 1 1360 7 is_stmt 1 view .LVU1292
1360:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** config.DPSM = SDMMC_DPSM_ENABLE;
3558 .loc 1 1360 28 is_stmt 0 view .LVU1293
3559 010a 0493 str r3, [sp, #16]
1361:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** (void)SDMMC_ConfigData(hsd->Instance, &config);
3560 .loc 1 1361 7 is_stmt 1 view .LVU1294
1361:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** (void)SDMMC_ConfigData(hsd->Instance, &config);
3561 .loc 1 1361 28 is_stmt 0 view .LVU1295
3562 010c 0123 movs r3, #1
3563 010e 0593 str r3, [sp, #20]
ARM GAS /tmp/cc2oBAwl.s page 141
1362:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
3564 .loc 1 1362 7 is_stmt 1 view .LVU1296
1362:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
3565 .loc 1 1362 13 is_stmt 0 view .LVU1297
3566 0110 6946 mov r1, sp
3567 0112 2068 ldr r0, [r4]
3568 0114 FFF7FEFF bl SDMMC_ConfigData
3569 .LVL294:
1364:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
3570 .loc 1 1364 7 is_stmt 1 view .LVU1298
1364:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
3571 .loc 1 1364 14 is_stmt 0 view .LVU1299
3572 0118 3D46 mov r5, r7
3573 011a 00E0 b .L206
3574 .LVL295:
3575 .L213:
1369:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
3576 .loc 1 1369 12 view .LVU1300
3577 011c 0225 movs r5, #2
3578 .LVL296:
3579 .L206:
1371:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
3580 .loc 1 1371 1 view .LVU1301
3581 011e 2846 mov r0, r5
3582 0120 07B0 add sp, sp, #28
3583 .LCFI48:
3584 .cfi_def_cfa_offset 20
3585 @ sp needed
3586 0122 F0BD pop {r4, r5, r6, r7, pc}
3587 .LVL297:
3588 .L218:
1371:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
3589 .loc 1 1371 1 view .LVU1302
3590 .align 2
3591 .L217:
3592 0124 00000000 .word SD_DMATransmitCplt
3593 0128 00000000 .word SD_DMAError
3594 012c FF054000 .word 4195839
3595 .cfi_endproc
3596 .LFE151:
3598 .section .text.HAL_SD_Erase,"ax",%progbits
3599 .align 1
3600 .global HAL_SD_Erase
3601 .syntax unified
3602 .thumb
3603 .thumb_func
3604 .fpu fpv5-d16
3606 HAL_SD_Erase:
3607 .LVL298:
3608 .LFB152:
1383:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t errorstate;
3609 .loc 1 1383 1 is_stmt 1 view -0
3610 .cfi_startproc
3611 @ args = 0, pretend = 0, frame = 0
3612 @ frame_needed = 0, uses_anonymous_args = 0
1383:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t errorstate;
3613 .loc 1 1383 1 is_stmt 0 view .LVU1304
ARM GAS /tmp/cc2oBAwl.s page 142
3614 0000 F8B5 push {r3, r4, r5, r6, r7, lr}
3615 .LCFI49:
3616 .cfi_def_cfa_offset 24
3617 .cfi_offset 3, -24
3618 .cfi_offset 4, -20
3619 .cfi_offset 5, -16
3620 .cfi_offset 6, -12
3621 .cfi_offset 7, -8
3622 .cfi_offset 14, -4
1384:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t start_add = BlockStartAdd;
3623 .loc 1 1384 3 is_stmt 1 view .LVU1305
1385:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t end_add = BlockEndAdd;
3624 .loc 1 1385 3 view .LVU1306
3625 .LVL299:
1386:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
3626 .loc 1 1386 3 view .LVU1307
1388:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
3627 .loc 1 1388 3 view .LVU1308
1388:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
3628 .loc 1 1388 9 is_stmt 0 view .LVU1309
3629 0002 90F83450 ldrb r5, [r0, #52] @ zero_extendqisi2
3630 0006 EDB2 uxtb r5, r5
1388:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
3631 .loc 1 1388 5 view .LVU1310
3632 0008 012D cmp r5, #1
3633 000a 6FD1 bne .L229
3634 000c 0446 mov r4, r0
3635 000e 0F46 mov r7, r1
3636 0010 1646 mov r6, r2
1390:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
3637 .loc 1 1390 5 is_stmt 1 view .LVU1311
1390:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
3638 .loc 1 1390 20 is_stmt 0 view .LVU1312
3639 0012 0023 movs r3, #0
3640 0014 8363 str r3, [r0, #56]
1392:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
3641 .loc 1 1392 5 is_stmt 1 view .LVU1313
1392:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
3642 .loc 1 1392 7 is_stmt 0 view .LVU1314
3643 0016 9142 cmp r1, r2
3644 0018 14D8 bhi .L231
1398:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
3645 .loc 1 1398 5 is_stmt 1 view .LVU1315
1398:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
3646 .loc 1 1398 30 is_stmt 0 view .LVU1316
3647 001a C36D ldr r3, [r0, #92]
1398:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
3648 .loc 1 1398 7 view .LVU1317
3649 001c 9342 cmp r3, r2
3650 001e 16D3 bcc .L232
1404:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
3651 .loc 1 1404 5 is_stmt 1 view .LVU1318
1404:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
3652 .loc 1 1404 16 is_stmt 0 view .LVU1319
3653 0020 0323 movs r3, #3
3654 0022 80F83430 strb r3, [r0, #52]
1407:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
ARM GAS /tmp/cc2oBAwl.s page 143
3655 .loc 1 1407 5 is_stmt 1 view .LVU1320
1407:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
3656 .loc 1 1407 21 is_stmt 0 view .LVU1321
3657 0026 C36C ldr r3, [r0, #76]
1407:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
3658 .loc 1 1407 7 view .LVU1322
3659 0028 13F0200F tst r3, #32
3660 002c 14D1 bne .L223
1410:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= HAL_SD_ERROR_REQUEST_NOT_APPLICABLE;
3661 .loc 1 1410 7 is_stmt 1 view .LVU1323
3662 002e 0368 ldr r3, [r0]
3663 0030 304A ldr r2, .L235
3664 .LVL300:
1410:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= HAL_SD_ERROR_REQUEST_NOT_APPLICABLE;
3665 .loc 1 1410 7 is_stmt 0 view .LVU1324
3666 0032 9A63 str r2, [r3, #56]
1411:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
3667 .loc 1 1411 7 is_stmt 1 view .LVU1325
1411:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
3668 .loc 1 1411 22 is_stmt 0 view .LVU1326
3669 0034 836B ldr r3, [r0, #56]
3670 0036 43F08063 orr r3, r3, #67108864
3671 003a 8363 str r3, [r0, #56]
1412:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
3672 .loc 1 1412 7 is_stmt 1 view .LVU1327
1412:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
3673 .loc 1 1412 18 is_stmt 0 view .LVU1328
3674 003c 0123 movs r3, #1
3675 003e 80F83430 strb r3, [r0, #52]
1413:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
3676 .loc 1 1413 7 is_stmt 1 view .LVU1329
1413:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
3677 .loc 1 1413 14 is_stmt 0 view .LVU1330
3678 0042 54E0 b .L220
3679 .LVL301:
3680 .L231:
1394:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
3681 .loc 1 1394 7 is_stmt 1 view .LVU1331
1394:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
3682 .loc 1 1394 22 is_stmt 0 view .LVU1332
3683 0044 836B ldr r3, [r0, #56]
3684 0046 43F00063 orr r3, r3, #134217728
3685 004a 8363 str r3, [r0, #56]
1395:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
3686 .loc 1 1395 7 is_stmt 1 view .LVU1333
1395:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
3687 .loc 1 1395 14 is_stmt 0 view .LVU1334
3688 004c 4FE0 b .L220
3689 .L232:
1400:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
3690 .loc 1 1400 7 is_stmt 1 view .LVU1335
1400:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
3691 .loc 1 1400 22 is_stmt 0 view .LVU1336
3692 004e 836B ldr r3, [r0, #56]
3693 0050 43F00073 orr r3, r3, #33554432
3694 0054 8363 str r3, [r0, #56]
1401:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
ARM GAS /tmp/cc2oBAwl.s page 144
3695 .loc 1 1401 7 is_stmt 1 view .LVU1337
1401:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
3696 .loc 1 1401 14 is_stmt 0 view .LVU1338
3697 0056 4AE0 b .L220
3698 .L223:
1416:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
3699 .loc 1 1416 5 is_stmt 1 view .LVU1339
1416:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
3700 .loc 1 1416 9 is_stmt 0 view .LVU1340
3701 0058 0021 movs r1, #0
3702 .LVL302:
1416:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
3703 .loc 1 1416 9 view .LVU1341
3704 005a 0068 ldr r0, [r0]
3705 .LVL303:
1416:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
3706 .loc 1 1416 9 view .LVU1342
3707 005c FFF7FEFF bl SDMMC_GetResponse
3708 .LVL304:
1416:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
3709 .loc 1 1416 7 view .LVU1343
3710 0060 10F0007F tst r0, #33554432
3711 0064 15D1 bne .L233
1426:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
3712 .loc 1 1426 5 is_stmt 1 view .LVU1344
1426:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
3713 .loc 1 1426 19 is_stmt 0 view .LVU1345
3714 0066 636C ldr r3, [r4, #68]
1426:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
3715 .loc 1 1426 7 view .LVU1346
3716 0068 012B cmp r3, #1
3717 006a 01D0 beq .L225
1428:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** end_add *= 512U;
3718 .loc 1 1428 7 is_stmt 1 view .LVU1347
1428:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** end_add *= 512U;
3719 .loc 1 1428 17 is_stmt 0 view .LVU1348
3720 006c 7F02 lsls r7, r7, #9
3721 .LVL305:
1429:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
3722 .loc 1 1429 7 is_stmt 1 view .LVU1349
1429:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
3723 .loc 1 1429 17 is_stmt 0 view .LVU1350
3724 006e 7602 lsls r6, r6, #9
3725 .LVL306:
3726 .L225:
1433:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
3727 .loc 1 1433 5 is_stmt 1 view .LVU1351
1433:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
3728 .loc 1 1433 7 is_stmt 0 view .LVU1352
3729 0070 032B cmp r3, #3
3730 0072 1ED0 beq .L226
1436:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
3731 .loc 1 1436 7 is_stmt 1 view .LVU1353
1436:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
3732 .loc 1 1436 20 is_stmt 0 view .LVU1354
3733 0074 3946 mov r1, r7
3734 0076 2068 ldr r0, [r4]
ARM GAS /tmp/cc2oBAwl.s page 145
3735 0078 FFF7FEFF bl SDMMC_CmdSDEraseStartAdd
3736 .LVL307:
1437:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
3737 .loc 1 1437 7 is_stmt 1 view .LVU1355
1437:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
3738 .loc 1 1437 9 is_stmt 0 view .LVU1356
3739 007c A0B1 cbz r0, .L227
1440:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= errorstate;
3740 .loc 1 1440 9 is_stmt 1 view .LVU1357
3741 007e 2368 ldr r3, [r4]
3742 0080 1C49 ldr r1, .L235
3743 0082 9963 str r1, [r3, #56]
1441:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
3744 .loc 1 1441 9 view .LVU1358
1441:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
3745 .loc 1 1441 24 is_stmt 0 view .LVU1359
3746 0084 A36B ldr r3, [r4, #56]
3747 0086 0343 orrs r3, r3, r0
3748 0088 A363 str r3, [r4, #56]
1442:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
3749 .loc 1 1442 9 is_stmt 1 view .LVU1360
1442:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
3750 .loc 1 1442 20 is_stmt 0 view .LVU1361
3751 008a 0123 movs r3, #1
3752 008c 84F83430 strb r3, [r4, #52]
1443:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
3753 .loc 1 1443 9 is_stmt 1 view .LVU1362
1443:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
3754 .loc 1 1443 16 is_stmt 0 view .LVU1363
3755 0090 2DE0 b .L220
3756 .LVL308:
3757 .L233:
1419:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= HAL_SD_ERROR_LOCK_UNLOCK_FAILED;
3758 .loc 1 1419 7 is_stmt 1 view .LVU1364
3759 0092 2368 ldr r3, [r4]
3760 0094 174A ldr r2, .L235
3761 0096 9A63 str r2, [r3, #56]
1420:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
3762 .loc 1 1420 7 view .LVU1365
1420:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
3763 .loc 1 1420 22 is_stmt 0 view .LVU1366
3764 0098 A36B ldr r3, [r4, #56]
3765 009a 43F40063 orr r3, r3, #2048
3766 009e A363 str r3, [r4, #56]
1421:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
3767 .loc 1 1421 7 is_stmt 1 view .LVU1367
1421:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
3768 .loc 1 1421 18 is_stmt 0 view .LVU1368
3769 00a0 0123 movs r3, #1
3770 00a2 84F83430 strb r3, [r4, #52]
1422:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
3771 .loc 1 1422 7 is_stmt 1 view .LVU1369
1422:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
3772 .loc 1 1422 14 is_stmt 0 view .LVU1370
3773 00a6 22E0 b .L220
3774 .LVL309:
3775 .L227:
ARM GAS /tmp/cc2oBAwl.s page 146
1447:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
3776 .loc 1 1447 7 is_stmt 1 view .LVU1371
1447:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
3777 .loc 1 1447 20 is_stmt 0 view .LVU1372
3778 00a8 3146 mov r1, r6
3779 00aa 2068 ldr r0, [r4]
3780 .LVL310:
1447:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
3781 .loc 1 1447 20 view .LVU1373
3782 00ac FFF7FEFF bl SDMMC_CmdSDEraseEndAdd
3783 .LVL311:
1448:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
3784 .loc 1 1448 7 is_stmt 1 view .LVU1374
1448:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
3785 .loc 1 1448 9 is_stmt 0 view .LVU1375
3786 00b0 68B9 cbnz r0, .L234
3787 .LVL312:
3788 .L226:
1459:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
3789 .loc 1 1459 5 is_stmt 1 view .LVU1376
1459:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
3790 .loc 1 1459 18 is_stmt 0 view .LVU1377
3791 00b2 2068 ldr r0, [r4]
3792 00b4 FFF7FEFF bl SDMMC_CmdErase
3793 .LVL313:
1460:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
3794 .loc 1 1460 5 is_stmt 1 view .LVU1378
1460:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
3795 .loc 1 1460 7 is_stmt 0 view .LVU1379
3796 00b8 98B1 cbz r0, .L228
1463:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= errorstate;
3797 .loc 1 1463 7 is_stmt 1 view .LVU1380
3798 00ba 2368 ldr r3, [r4]
3799 00bc 0D49 ldr r1, .L235
3800 00be 9963 str r1, [r3, #56]
1464:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
3801 .loc 1 1464 7 view .LVU1381
1464:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
3802 .loc 1 1464 22 is_stmt 0 view .LVU1382
3803 00c0 A36B ldr r3, [r4, #56]
3804 00c2 0343 orrs r3, r3, r0
3805 00c4 A363 str r3, [r4, #56]
1465:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
3806 .loc 1 1465 7 is_stmt 1 view .LVU1383
1465:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
3807 .loc 1 1465 18 is_stmt 0 view .LVU1384
3808 00c6 0123 movs r3, #1
3809 00c8 84F83430 strb r3, [r4, #52]
1466:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
3810 .loc 1 1466 7 is_stmt 1 view .LVU1385
1466:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
3811 .loc 1 1466 14 is_stmt 0 view .LVU1386
3812 00cc 0FE0 b .L220
3813 .L234:
1451:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= errorstate;
3814 .loc 1 1451 9 is_stmt 1 view .LVU1387
3815 00ce 2368 ldr r3, [r4]
ARM GAS /tmp/cc2oBAwl.s page 147
3816 00d0 0849 ldr r1, .L235
3817 00d2 9963 str r1, [r3, #56]
1452:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
3818 .loc 1 1452 9 view .LVU1388
1452:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
3819 .loc 1 1452 24 is_stmt 0 view .LVU1389
3820 00d4 A36B ldr r3, [r4, #56]
3821 00d6 0343 orrs r3, r3, r0
3822 00d8 A363 str r3, [r4, #56]
1453:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
3823 .loc 1 1453 9 is_stmt 1 view .LVU1390
1453:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
3824 .loc 1 1453 20 is_stmt 0 view .LVU1391
3825 00da 0123 movs r3, #1
3826 00dc 84F83430 strb r3, [r4, #52]
1454:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
3827 .loc 1 1454 9 is_stmt 1 view .LVU1392
1454:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
3828 .loc 1 1454 16 is_stmt 0 view .LVU1393
3829 00e0 05E0 b .L220
3830 .L228:
1469:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
3831 .loc 1 1469 5 is_stmt 1 view .LVU1394
1469:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
3832 .loc 1 1469 16 is_stmt 0 view .LVU1395
3833 00e2 0123 movs r3, #1
3834 00e4 84F83430 strb r3, [r4, #52]
1471:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
3835 .loc 1 1471 5 is_stmt 1 view .LVU1396
1471:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
3836 .loc 1 1471 12 is_stmt 0 view .LVU1397
3837 00e8 0025 movs r5, #0
3838 00ea 00E0 b .L220
3839 .LVL314:
3840 .L229:
1475:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
3841 .loc 1 1475 12 view .LVU1398
3842 00ec 0225 movs r5, #2
3843 .LVL315:
3844 .L220:
1477:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
3845 .loc 1 1477 1 view .LVU1399
3846 00ee 2846 mov r0, r5
3847 00f0 F8BD pop {r3, r4, r5, r6, r7, pc}
3848 .L236:
3849 00f2 00BF .align 2
3850 .L235:
3851 00f4 FF054000 .word 4195839
3852 .cfi_endproc
3853 .LFE152:
3855 .section .text.HAL_SD_GetState,"ax",%progbits
3856 .align 1
3857 .global HAL_SD_GetState
3858 .syntax unified
3859 .thumb
3860 .thumb_func
3861 .fpu fpv5-d16
ARM GAS /tmp/cc2oBAwl.s page 148
3863 HAL_SD_GetState:
3864 .LVL316:
3865 .LFB154:
1676:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return hsd->State;
3866 .loc 1 1676 1 is_stmt 1 view -0
3867 .cfi_startproc
3868 @ args = 0, pretend = 0, frame = 0
3869 @ frame_needed = 0, uses_anonymous_args = 0
3870 @ link register save eliminated.
1677:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
3871 .loc 1 1677 3 view .LVU1401
1677:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
3872 .loc 1 1677 13 is_stmt 0 view .LVU1402
3873 0000 90F83400 ldrb r0, [r0, #52] @ zero_extendqisi2
3874 .LVL317:
1678:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
3875 .loc 1 1678 1 view .LVU1403
3876 0004 7047 bx lr
3877 .cfi_endproc
3878 .LFE154:
3880 .section .text.HAL_SD_GetError,"ax",%progbits
3881 .align 1
3882 .global HAL_SD_GetError
3883 .syntax unified
3884 .thumb
3885 .thumb_func
3886 .fpu fpv5-d16
3888 HAL_SD_GetError:
3889 .LVL318:
3890 .LFB155:
1687:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return hsd->ErrorCode;
3891 .loc 1 1687 1 is_stmt 1 view -0
3892 .cfi_startproc
3893 @ args = 0, pretend = 0, frame = 0
3894 @ frame_needed = 0, uses_anonymous_args = 0
3895 @ link register save eliminated.
1688:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
3896 .loc 1 1688 3 view .LVU1405
1688:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
3897 .loc 1 1688 13 is_stmt 0 view .LVU1406
3898 0000 806B ldr r0, [r0, #56]
3899 .LVL319:
1689:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
3900 .loc 1 1689 1 view .LVU1407
3901 0002 7047 bx lr
3902 .cfi_endproc
3903 .LFE155:
3905 .section .text.HAL_SD_TxCpltCallback,"ax",%progbits
3906 .align 1
3907 .weak HAL_SD_TxCpltCallback
3908 .syntax unified
3909 .thumb
3910 .thumb_func
3911 .fpu fpv5-d16
3913 HAL_SD_TxCpltCallback:
3914 .LVL320:
3915 .LFB156:
ARM GAS /tmp/cc2oBAwl.s page 149
1697:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Prevent unused argument(s) compilation warning */
3916 .loc 1 1697 1 is_stmt 1 view -0
3917 .cfi_startproc
3918 @ args = 0, pretend = 0, frame = 0
3919 @ frame_needed = 0, uses_anonymous_args = 0
3920 @ link register save eliminated.
1699:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
3921 .loc 1 1699 3 view .LVU1409
1704:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
3922 .loc 1 1704 1 is_stmt 0 view .LVU1410
3923 0000 7047 bx lr
3924 .cfi_endproc
3925 .LFE156:
3927 .section .text.HAL_SD_RxCpltCallback,"ax",%progbits
3928 .align 1
3929 .weak HAL_SD_RxCpltCallback
3930 .syntax unified
3931 .thumb
3932 .thumb_func
3933 .fpu fpv5-d16
3935 HAL_SD_RxCpltCallback:
3936 .LVL321:
3937 .LFB157:
1712:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Prevent unused argument(s) compilation warning */
3938 .loc 1 1712 1 is_stmt 1 view -0
3939 .cfi_startproc
3940 @ args = 0, pretend = 0, frame = 0
3941 @ frame_needed = 0, uses_anonymous_args = 0
3942 @ link register save eliminated.
1714:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
3943 .loc 1 1714 3 view .LVU1412
1719:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
3944 .loc 1 1719 1 is_stmt 0 view .LVU1413
3945 0000 7047 bx lr
3946 .cfi_endproc
3947 .LFE157:
3949 .section .text.HAL_SD_ErrorCallback,"ax",%progbits
3950 .align 1
3951 .weak HAL_SD_ErrorCallback
3952 .syntax unified
3953 .thumb
3954 .thumb_func
3955 .fpu fpv5-d16
3957 HAL_SD_ErrorCallback:
3958 .LVL322:
3959 .LFB158:
1727:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Prevent unused argument(s) compilation warning */
3960 .loc 1 1727 1 is_stmt 1 view -0
3961 .cfi_startproc
3962 @ args = 0, pretend = 0, frame = 0
3963 @ frame_needed = 0, uses_anonymous_args = 0
3964 @ link register save eliminated.
1729:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
3965 .loc 1 1729 3 view .LVU1415
1734:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
3966 .loc 1 1734 1 is_stmt 0 view .LVU1416
3967 0000 7047 bx lr
ARM GAS /tmp/cc2oBAwl.s page 150
3968 .cfi_endproc
3969 .LFE158:
3971 .section .text.SD_DMAReceiveCplt,"ax",%progbits
3972 .align 1
3973 .syntax unified
3974 .thumb
3975 .thumb_func
3976 .fpu fpv5-d16
3978 SD_DMAReceiveCplt:
3979 .LVL323:
3980 .LFB169:
2454:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** SD_HandleTypeDef* hsd = (SD_HandleTypeDef* )(hdma->Parent);
3981 .loc 1 2454 1 is_stmt 1 view -0
3982 .cfi_startproc
3983 @ args = 0, pretend = 0, frame = 0
3984 @ frame_needed = 0, uses_anonymous_args = 0
2454:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** SD_HandleTypeDef* hsd = (SD_HandleTypeDef* )(hdma->Parent);
3985 .loc 1 2454 1 is_stmt 0 view .LVU1418
3986 0000 10B5 push {r4, lr}
3987 .LCFI50:
3988 .cfi_def_cfa_offset 8
3989 .cfi_offset 4, -8
3990 .cfi_offset 14, -4
2455:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t errorstate;
3991 .loc 1 2455 3 is_stmt 1 view .LVU1419
2455:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t errorstate;
3992 .loc 1 2455 21 is_stmt 0 view .LVU1420
3993 0002 846B ldr r4, [r0, #56]
3994 .LVL324:
2456:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
3995 .loc 1 2456 3 is_stmt 1 view .LVU1421
2459:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
3996 .loc 1 2459 3 view .LVU1422
2459:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
3997 .loc 1 2459 9 is_stmt 0 view .LVU1423
3998 0004 236B ldr r3, [r4, #48]
2459:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
3999 .loc 1 2459 5 view .LVU1424
4000 0006 822B cmp r3, #130
4001 0008 11D0 beq .L245
4002 .LVL325:
4003 .L243:
2475:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4004 .loc 1 2475 3 is_stmt 1 view .LVU1425
2475:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4005 .loc 1 2475 6 is_stmt 0 view .LVU1426
4006 000a 2268 ldr r2, [r4]
2475:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4007 .loc 1 2475 24 view .LVU1427
4008 000c D36A ldr r3, [r2, #44]
4009 000e 23F00803 bic r3, r3, #8
4010 0012 D362 str r3, [r2, #44]
2478:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4011 .loc 1 2478 3 is_stmt 1 view .LVU1428
4012 0014 2368 ldr r3, [r4]
4013 0016 40F23A52 movw r2, #1338
4014 001a 9A63 str r2, [r3, #56]
ARM GAS /tmp/cc2oBAwl.s page 151
2480:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Context = SD_CONTEXT_NONE;
4015 .loc 1 2480 3 view .LVU1429
2480:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Context = SD_CONTEXT_NONE;
4016 .loc 1 2480 14 is_stmt 0 view .LVU1430
4017 001c 0123 movs r3, #1
4018 001e 84F83430 strb r3, [r4, #52]
2481:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4019 .loc 1 2481 3 is_stmt 1 view .LVU1431
2481:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4020 .loc 1 2481 16 is_stmt 0 view .LVU1432
4021 0022 0023 movs r3, #0
4022 0024 2363 str r3, [r4, #48]
2486:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** #endif
4023 .loc 1 2486 3 is_stmt 1 view .LVU1433
4024 0026 2046 mov r0, r4
4025 0028 FFF7FEFF bl HAL_SD_RxCpltCallback
4026 .LVL326:
2488:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4027 .loc 1 2488 1 is_stmt 0 view .LVU1434
4028 002c 10BD pop {r4, pc}
4029 .LVL327:
4030 .L245:
2461:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
4031 .loc 1 2461 5 is_stmt 1 view .LVU1435
2461:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
4032 .loc 1 2461 18 is_stmt 0 view .LVU1436
4033 002e 2068 ldr r0, [r4]
4034 .LVL328:
2461:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
4035 .loc 1 2461 18 view .LVU1437
4036 0030 FFF7FEFF bl SDMMC_CmdStopTransfer
4037 .LVL329:
2462:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
4038 .loc 1 2462 5 is_stmt 1 view .LVU1438
2462:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
4039 .loc 1 2462 7 is_stmt 0 view .LVU1439
4040 0034 0346 mov r3, r0
4041 0036 0028 cmp r0, #0
4042 0038 E7D0 beq .L243
2464:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** #if (USE_HAL_SD_REGISTER_CALLBACKS == 1)
4043 .loc 1 2464 7 is_stmt 1 view .LVU1440
2464:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** #if (USE_HAL_SD_REGISTER_CALLBACKS == 1)
4044 .loc 1 2464 22 is_stmt 0 view .LVU1441
4045 003a A26B ldr r2, [r4, #56]
4046 003c 1343 orrs r3, r3, r2
4047 003e A363 str r3, [r4, #56]
2468:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** #endif
4048 .loc 1 2468 7 is_stmt 1 view .LVU1442
4049 0040 2046 mov r0, r4
4050 .LVL330:
2468:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** #endif
4051 .loc 1 2468 7 is_stmt 0 view .LVU1443
4052 0042 FFF7FEFF bl HAL_SD_ErrorCallback
4053 .LVL331:
4054 0046 E0E7 b .L243
4055 .cfi_endproc
4056 .LFE169:
ARM GAS /tmp/cc2oBAwl.s page 152
4058 .section .text.HAL_SD_AbortCallback,"ax",%progbits
4059 .align 1
4060 .weak HAL_SD_AbortCallback
4061 .syntax unified
4062 .thumb
4063 .thumb_func
4064 .fpu fpv5-d16
4066 HAL_SD_AbortCallback:
4067 .LVL332:
4068 .LFB159:
1742:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Prevent unused argument(s) compilation warning */
4069 .loc 1 1742 1 is_stmt 1 view -0
4070 .cfi_startproc
4071 @ args = 0, pretend = 0, frame = 0
4072 @ frame_needed = 0, uses_anonymous_args = 0
4073 @ link register save eliminated.
1744:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4074 .loc 1 1744 3 view .LVU1445
1749:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4075 .loc 1 1749 1 is_stmt 0 view .LVU1446
4076 0000 7047 bx lr
4077 .cfi_endproc
4078 .LFE159:
4080 .section .text.HAL_SD_GetCardCID,"ax",%progbits
4081 .align 1
4082 .global HAL_SD_GetCardCID
4083 .syntax unified
4084 .thumb
4085 .thumb_func
4086 .fpu fpv5-d16
4088 HAL_SD_GetCardCID:
4089 .LVL333:
4090 .LFB160:
1953:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** pCID->ManufacturerID = (uint8_t)((hsd->CID[0] & 0xFF000000U) >> 24U);
4091 .loc 1 1953 1 is_stmt 1 view -0
4092 .cfi_startproc
4093 @ args = 0, pretend = 0, frame = 0
4094 @ frame_needed = 0, uses_anonymous_args = 0
4095 @ link register save eliminated.
1954:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4096 .loc 1 1954 3 view .LVU1448
1954:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4097 .loc 1 1954 26 is_stmt 0 view .LVU1449
4098 0000 90F87730 ldrb r3, [r0, #119] @ zero_extendqisi2
1954:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4099 .loc 1 1954 24 view .LVU1450
4100 0004 0B70 strb r3, [r1]
1956:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4101 .loc 1 1956 3 is_stmt 1 view .LVU1451
1956:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4102 .loc 1 1956 43 is_stmt 0 view .LVU1452
4103 0006 436F ldr r3, [r0, #116]
1956:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4104 .loc 1 1956 23 view .LVU1453
4105 0008 C3F30F23 ubfx r3, r3, #8, #16
1956:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4106 .loc 1 1956 21 view .LVU1454
ARM GAS /tmp/cc2oBAwl.s page 153
4107 000c 4B80 strh r3, [r1, #2] @ movhi
1958:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4108 .loc 1 1958 3 is_stmt 1 view .LVU1455
1958:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4109 .loc 1 1958 32 is_stmt 0 view .LVU1456
4110 000e 426F ldr r2, [r0, #116]
1958:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4111 .loc 1 1958 71 view .LVU1457
4112 0010 836F ldr r3, [r0, #120]
1958:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4113 .loc 1 1958 90 view .LVU1458
4114 0012 1B0A lsrs r3, r3, #8
1958:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4115 .loc 1 1958 59 view .LVU1459
4116 0014 43EA0263 orr r3, r3, r2, lsl #24
1958:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4117 .loc 1 1958 19 view .LVU1460
4118 0018 4B60 str r3, [r1, #4]
1960:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4119 .loc 1 1960 3 is_stmt 1 view .LVU1461
1960:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4120 .loc 1 1960 21 is_stmt 0 view .LVU1462
4121 001a 90F87830 ldrb r3, [r0, #120] @ zero_extendqisi2
1960:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4122 .loc 1 1960 19 view .LVU1463
4123 001e 0B72 strb r3, [r1, #8]
1962:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4124 .loc 1 1962 3 is_stmt 1 view .LVU1464
1962:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4125 .loc 1 1962 19 is_stmt 0 view .LVU1465
4126 0020 90F87F30 ldrb r3, [r0, #127] @ zero_extendqisi2
1962:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4127 .loc 1 1962 17 view .LVU1466
4128 0024 4B72 strb r3, [r1, #9]
1964:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4129 .loc 1 1964 3 is_stmt 1 view .LVU1467
1964:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4130 .loc 1 1964 29 is_stmt 0 view .LVU1468
4131 0026 C26F ldr r2, [r0, #124]
1964:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4132 .loc 1 1964 86 view .LVU1469
4133 0028 90F88330 ldrb r3, [r0, #131] @ zero_extendqisi2
1964:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4134 .loc 1 1964 55 view .LVU1470
4135 002c 43EA0223 orr r3, r3, r2, lsl #8
1964:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4136 .loc 1 1964 16 view .LVU1471
4137 0030 CB60 str r3, [r1, #12]
1966:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4138 .loc 1 1966 3 is_stmt 1 view .LVU1472
1966:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4139 .loc 1 1966 40 is_stmt 0 view .LVU1473
4140 0032 D0F88030 ldr r3, [r0, #128]
1966:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4141 .loc 1 1966 21 view .LVU1474
4142 0036 C3F30353 ubfx r3, r3, #20, #4
1966:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
ARM GAS /tmp/cc2oBAwl.s page 154
4143 .loc 1 1966 19 view .LVU1475
4144 003a 0B74 strb r3, [r1, #16]
1968:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4145 .loc 1 1968 3 is_stmt 1 view .LVU1476
1968:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4146 .loc 1 1968 44 is_stmt 0 view .LVU1477
4147 003c D0F88030 ldr r3, [r0, #128]
1968:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4148 .loc 1 1968 24 view .LVU1478
4149 0040 C3F30B23 ubfx r3, r3, #8, #12
1968:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4150 .loc 1 1968 22 view .LVU1479
4151 0044 4B82 strh r3, [r1, #18] @ movhi
1970:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4152 .loc 1 1970 3 is_stmt 1 view .LVU1480
1970:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4153 .loc 1 1970 38 is_stmt 0 view .LVU1481
4154 0046 D0F88030 ldr r3, [r0, #128]
1970:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4155 .loc 1 1970 19 view .LVU1482
4156 004a C3F34603 ubfx r3, r3, #1, #7
1970:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4157 .loc 1 1970 17 view .LVU1483
4158 004e 0B75 strb r3, [r1, #20]
1972:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4159 .loc 1 1972 3 is_stmt 1 view .LVU1484
1972:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4160 .loc 1 1972 19 is_stmt 0 view .LVU1485
4161 0050 0123 movs r3, #1
4162 0052 4B75 strb r3, [r1, #21]
1974:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
4163 .loc 1 1974 3 is_stmt 1 view .LVU1486
1975:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4164 .loc 1 1975 1 is_stmt 0 view .LVU1487
4165 0054 0020 movs r0, #0
4166 .LVL334:
1975:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4167 .loc 1 1975 1 view .LVU1488
4168 0056 7047 bx lr
4169 .cfi_endproc
4170 .LFE160:
4172 .section .text.HAL_SD_GetCardCSD,"ax",%progbits
4173 .align 1
4174 .global HAL_SD_GetCardCSD
4175 .syntax unified
4176 .thumb
4177 .thumb_func
4178 .fpu fpv5-d16
4180 HAL_SD_GetCardCSD:
4181 .LVL335:
4182 .LFB161:
1986:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** pCSD->CSDStruct = (uint8_t)((hsd->CSD[0] & 0xC0000000U) >> 30U);
4183 .loc 1 1986 1 is_stmt 1 view -0
4184 .cfi_startproc
4185 @ args = 0, pretend = 0, frame = 0
4186 @ frame_needed = 0, uses_anonymous_args = 0
4187 @ link register save eliminated.
ARM GAS /tmp/cc2oBAwl.s page 155
1987:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4188 .loc 1 1987 3 view .LVU1490
1987:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4189 .loc 1 1987 40 is_stmt 0 view .LVU1491
4190 0000 436E ldr r3, [r0, #100]
1987:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4191 .loc 1 1987 21 view .LVU1492
4192 0002 9B0F lsrs r3, r3, #30
1987:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4193 .loc 1 1987 19 view .LVU1493
4194 0004 0B70 strb r3, [r1]
1989:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4195 .loc 1 1989 3 is_stmt 1 view .LVU1494
1989:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4196 .loc 1 1989 45 is_stmt 0 view .LVU1495
4197 0006 436E ldr r3, [r0, #100]
1989:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4198 .loc 1 1989 26 view .LVU1496
4199 0008 C3F38363 ubfx r3, r3, #26, #4
1989:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4200 .loc 1 1989 24 view .LVU1497
4201 000c 4B70 strb r3, [r1, #1]
1991:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4202 .loc 1 1991 3 is_stmt 1 view .LVU1498
1991:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4203 .loc 1 1991 59 is_stmt 0 view .LVU1499
4204 000e 90F86730 ldrb r3, [r0, #103] @ zero_extendqisi2
1991:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4205 .loc 1 1991 21 view .LVU1500
4206 0012 03F00303 and r3, r3, #3
1991:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4207 .loc 1 1991 19 view .LVU1501
4208 0016 8B70 strb r3, [r1, #2]
1993:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4209 .loc 1 1993 3 is_stmt 1 view .LVU1502
1993:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4210 .loc 1 1993 16 is_stmt 0 view .LVU1503
4211 0018 90F86630 ldrb r3, [r0, #102] @ zero_extendqisi2
1993:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4212 .loc 1 1993 14 view .LVU1504
4213 001c CB70 strb r3, [r1, #3]
1995:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4214 .loc 1 1995 3 is_stmt 1 view .LVU1505
1995:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4215 .loc 1 1995 16 is_stmt 0 view .LVU1506
4216 001e 90F86530 ldrb r3, [r0, #101] @ zero_extendqisi2
1995:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4217 .loc 1 1995 14 view .LVU1507
4218 0022 0B71 strb r3, [r1, #4]
1997:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4219 .loc 1 1997 3 is_stmt 1 view .LVU1508
1997:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4220 .loc 1 1997 25 is_stmt 0 view .LVU1509
4221 0024 90F86430 ldrb r3, [r0, #100] @ zero_extendqisi2
1997:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4222 .loc 1 1997 23 view .LVU1510
4223 0028 4B71 strb r3, [r1, #5]
ARM GAS /tmp/cc2oBAwl.s page 156
1999:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4224 .loc 1 1999 3 is_stmt 1 view .LVU1511
1999:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4225 .loc 1 1999 47 is_stmt 0 view .LVU1512
4226 002a 836E ldr r3, [r0, #104]
1999:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4227 .loc 1 1999 27 view .LVU1513
4228 002c 1B0D lsrs r3, r3, #20
1999:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4229 .loc 1 1999 25 view .LVU1514
4230 002e CB80 strh r3, [r1, #6] @ movhi
2001:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4231 .loc 1 2001 3 is_stmt 1 view .LVU1515
2001:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4232 .loc 1 2001 60 is_stmt 0 view .LVU1516
4233 0030 B0F86A30 ldrh r3, [r0, #106]
2001:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4234 .loc 1 2001 22 view .LVU1517
4235 0034 03F00F03 and r3, r3, #15
2001:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4236 .loc 1 2001 20 view .LVU1518
4237 0038 0B72 strb r3, [r1, #8]
2003:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4238 .loc 1 2003 3 is_stmt 1 view .LVU1519
2003:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4239 .loc 1 2003 46 is_stmt 0 view .LVU1520
4240 003a 836E ldr r3, [r0, #104]
2003:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4241 .loc 1 2003 27 view .LVU1521
4242 003c C3F3C033 ubfx r3, r3, #15, #1
2003:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4243 .loc 1 2003 25 view .LVU1522
4244 0040 4B72 strb r3, [r1, #9]
2005:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4245 .loc 1 2005 3 is_stmt 1 view .LVU1523
2005:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4246 .loc 1 2005 46 is_stmt 0 view .LVU1524
4247 0042 836E ldr r3, [r0, #104]
2005:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4248 .loc 1 2005 27 view .LVU1525
4249 0044 C3F38033 ubfx r3, r3, #14, #1
2005:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4250 .loc 1 2005 25 view .LVU1526
4251 0048 8B72 strb r3, [r1, #10]
2007:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4252 .loc 1 2007 3 is_stmt 1 view .LVU1527
2007:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4253 .loc 1 2007 46 is_stmt 0 view .LVU1528
4254 004a 836E ldr r3, [r0, #104]
2007:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4255 .loc 1 2007 27 view .LVU1529
4256 004c C3F34033 ubfx r3, r3, #13, #1
2007:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4257 .loc 1 2007 25 view .LVU1530
4258 0050 CB72 strb r3, [r1, #11]
2009:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4259 .loc 1 2009 3 is_stmt 1 view .LVU1531
ARM GAS /tmp/cc2oBAwl.s page 157
2009:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4260 .loc 1 2009 38 is_stmt 0 view .LVU1532
4261 0052 836E ldr r3, [r0, #104]
2009:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4262 .loc 1 2009 19 view .LVU1533
4263 0054 C3F30033 ubfx r3, r3, #12, #1
2009:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4264 .loc 1 2009 17 view .LVU1534
4265 0058 0B73 strb r3, [r1, #12]
2011:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4266 .loc 1 2011 3 is_stmt 1 view .LVU1535
2011:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4267 .loc 1 2011 19 is_stmt 0 view .LVU1536
4268 005a 0023 movs r3, #0
4269 005c 4B73 strb r3, [r1, #13]
2013:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
4270 .loc 1 2013 3 is_stmt 1 view .LVU1537
2013:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
4271 .loc 1 2013 17 is_stmt 0 view .LVU1538
4272 005e 436C ldr r3, [r0, #68]
2013:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
4273 .loc 1 2013 5 view .LVU1539
4274 0060 002B cmp r3, #0
4275 0062 40F08680 bne .L249
2015:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4276 .loc 1 2015 5 is_stmt 1 view .LVU1540
2015:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4277 .loc 1 2015 35 is_stmt 0 view .LVU1541
4278 0066 826E ldr r2, [r0, #104]
2015:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4279 .loc 1 2015 54 view .LVU1542
4280 0068 40F6FC73 movw r3, #4092
4281 006c 03EA8203 and r3, r3, r2, lsl #2
2015:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4282 .loc 1 2015 73 view .LVU1543
4283 0070 C26E ldr r2, [r0, #108]
2015:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4284 .loc 1 2015 61 view .LVU1544
4285 0072 43EA9273 orr r3, r3, r2, lsr #30
2015:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4286 .loc 1 2015 22 view .LVU1545
4287 0076 0B61 str r3, [r1, #16]
2017:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4288 .loc 1 2017 5 is_stmt 1 view .LVU1546
2017:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4289 .loc 1 2017 51 is_stmt 0 view .LVU1547
4290 0078 C36E ldr r3, [r0, #108]
2017:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4291 .loc 1 2017 32 view .LVU1548
4292 007a C3F3C263 ubfx r3, r3, #27, #3
2017:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4293 .loc 1 2017 30 view .LVU1549
4294 007e 0B75 strb r3, [r1, #20]
2019:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4295 .loc 1 2019 5 is_stmt 1 view .LVU1550
2019:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4296 .loc 1 2019 70 is_stmt 0 view .LVU1551
ARM GAS /tmp/cc2oBAwl.s page 158
4297 0080 90F86F30 ldrb r3, [r0, #111] @ zero_extendqisi2
2019:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4298 .loc 1 2019 32 view .LVU1552
4299 0084 03F00703 and r3, r3, #7
2019:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4300 .loc 1 2019 30 view .LVU1553
4301 0088 4B75 strb r3, [r1, #21]
2021:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4302 .loc 1 2021 5 is_stmt 1 view .LVU1554
2021:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4303 .loc 1 2021 51 is_stmt 0 view .LVU1555
4304 008a C36E ldr r3, [r0, #108]
2021:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4305 .loc 1 2021 32 view .LVU1556
4306 008c C3F34253 ubfx r3, r3, #21, #3
2021:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4307 .loc 1 2021 30 view .LVU1557
4308 0090 8B75 strb r3, [r1, #22]
2023:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4309 .loc 1 2023 5 is_stmt 1 view .LVU1558
2023:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4310 .loc 1 2023 51 is_stmt 0 view .LVU1559
4311 0092 C36E ldr r3, [r0, #108]
2023:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4312 .loc 1 2023 32 view .LVU1560
4313 0094 C3F38243 ubfx r3, r3, #18, #3
2023:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4314 .loc 1 2023 30 view .LVU1561
4315 0098 CB75 strb r3, [r1, #23]
2025:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4316 .loc 1 2025 5 is_stmt 1 view .LVU1562
2025:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4317 .loc 1 2025 46 is_stmt 0 view .LVU1563
4318 009a C36E ldr r3, [r0, #108]
2025:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4319 .loc 1 2025 27 view .LVU1564
4320 009c C3F3C233 ubfx r3, r3, #15, #3
2025:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4321 .loc 1 2025 25 view .LVU1565
4322 00a0 0B76 strb r3, [r1, #24]
2027:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->SdCard.BlockNbr *= (1UL << ((pCSD->DeviceSizeMul & 0x07U) + 2U));
4323 .loc 1 2027 5 is_stmt 1 view .LVU1566
2027:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->SdCard.BlockNbr *= (1UL << ((pCSD->DeviceSizeMul & 0x07U) + 2U));
4324 .loc 1 2027 34 is_stmt 0 view .LVU1567
4325 00a2 0B69 ldr r3, [r1, #16]
2027:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->SdCard.BlockNbr *= (1UL << ((pCSD->DeviceSizeMul & 0x07U) + 2U));
4326 .loc 1 2027 47 view .LVU1568
4327 00a4 0133 adds r3, r3, #1
2027:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->SdCard.BlockNbr *= (1UL << ((pCSD->DeviceSizeMul & 0x07U) + 2U));
4328 .loc 1 2027 27 view .LVU1569
4329 00a6 4365 str r3, [r0, #84]
2028:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->SdCard.BlockSize = (1UL << (pCSD->RdBlockLen & 0x0FU));
4330 .loc 1 2028 5 is_stmt 1 view .LVU1570
2028:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->SdCard.BlockSize = (1UL << (pCSD->RdBlockLen & 0x0FU));
4331 .loc 1 2028 43 is_stmt 0 view .LVU1571
4332 00a8 0A7E ldrb r2, [r1, #24] @ zero_extendqisi2
2028:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->SdCard.BlockSize = (1UL << (pCSD->RdBlockLen & 0x0FU));
ARM GAS /tmp/cc2oBAwl.s page 159
4333 .loc 1 2028 59 view .LVU1572
4334 00aa 02F00702 and r2, r2, #7
2028:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->SdCard.BlockSize = (1UL << (pCSD->RdBlockLen & 0x0FU));
4335 .loc 1 2028 68 view .LVU1573
4336 00ae 0232 adds r2, r2, #2
2028:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->SdCard.BlockSize = (1UL << (pCSD->RdBlockLen & 0x0FU));
4337 .loc 1 2028 26 view .LVU1574
4338 00b0 9340 lsls r3, r3, r2
4339 00b2 4365 str r3, [r0, #84]
2029:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4340 .loc 1 2029 5 is_stmt 1 view .LVU1575
2029:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4341 .loc 1 2029 42 is_stmt 0 view .LVU1576
4342 00b4 0A7A ldrb r2, [r1, #8] @ zero_extendqisi2
2029:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4343 .loc 1 2029 55 view .LVU1577
4344 00b6 02F00F0C and ip, r2, #15
2029:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4345 .loc 1 2029 34 view .LVU1578
4346 00ba 0122 movs r2, #1
4347 00bc 02FA0CF2 lsl r2, r2, ip
2029:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4348 .loc 1 2029 27 view .LVU1579
4349 00c0 8265 str r2, [r0, #88]
2031:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->SdCard.LogBlockSize = 512U;
4350 .loc 1 2031 5 is_stmt 1 view .LVU1580
2031:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->SdCard.LogBlockSize = 512U;
4351 .loc 1 2031 82 is_stmt 0 view .LVU1581
4352 00c2 520A lsrs r2, r2, #9
2031:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->SdCard.LogBlockSize = 512U;
4353 .loc 1 2031 55 view .LVU1582
4354 00c4 02FB03F3 mul r3, r2, r3
2031:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->SdCard.LogBlockSize = 512U;
4355 .loc 1 2031 29 view .LVU1583
4356 00c8 C365 str r3, [r0, #92]
2032:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
4357 .loc 1 2032 5 is_stmt 1 view .LVU1584
2032:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
4358 .loc 1 2032 30 is_stmt 0 view .LVU1585
4359 00ca 4FF40073 mov r3, #512
4360 00ce 0366 str r3, [r0, #96]
4361 .L250:
2053:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4362 .loc 1 2053 3 is_stmt 1 view .LVU1586
2053:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4363 .loc 1 2053 42 is_stmt 0 view .LVU1587
4364 00d0 C36E ldr r3, [r0, #108]
2053:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4365 .loc 1 2053 23 view .LVU1588
4366 00d2 C3F38033 ubfx r3, r3, #14, #1
2053:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4367 .loc 1 2053 21 view .LVU1589
4368 00d6 4B76 strb r3, [r1, #25]
2055:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4369 .loc 1 2055 3 is_stmt 1 view .LVU1590
2055:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4370 .loc 1 2055 41 is_stmt 0 view .LVU1591
ARM GAS /tmp/cc2oBAwl.s page 160
4371 00d8 C36E ldr r3, [r0, #108]
2055:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4372 .loc 1 2055 22 view .LVU1592
4373 00da C3F3C613 ubfx r3, r3, #7, #7
2055:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4374 .loc 1 2055 20 view .LVU1593
4375 00de 8B76 strb r3, [r1, #26]
2057:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4376 .loc 1 2057 3 is_stmt 1 view .LVU1594
2057:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4377 .loc 1 2057 45 is_stmt 0 view .LVU1595
4378 00e0 C36E ldr r3, [r0, #108]
2057:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4379 .loc 1 2057 27 view .LVU1596
4380 00e2 03F07F03 and r3, r3, #127
2057:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4381 .loc 1 2057 25 view .LVU1597
4382 00e6 CB76 strb r3, [r1, #27]
2059:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4383 .loc 1 2059 3 is_stmt 1 view .LVU1598
2059:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4384 .loc 1 2059 48 is_stmt 0 view .LVU1599
4385 00e8 036F ldr r3, [r0, #112]
2059:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4386 .loc 1 2059 29 view .LVU1600
4387 00ea DB0F lsrs r3, r3, #31
2059:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4388 .loc 1 2059 27 view .LVU1601
4389 00ec 0B77 strb r3, [r1, #28]
2061:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4390 .loc 1 2061 3 is_stmt 1 view .LVU1602
2061:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4391 .loc 1 2061 41 is_stmt 0 view .LVU1603
4392 00ee 036F ldr r3, [r0, #112]
2061:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4393 .loc 1 2061 22 view .LVU1604
4394 00f0 C3F34173 ubfx r3, r3, #29, #2
2061:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4395 .loc 1 2061 20 view .LVU1605
4396 00f4 4B77 strb r3, [r1, #29]
2063:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4397 .loc 1 2063 3 is_stmt 1 view .LVU1606
2063:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4398 .loc 1 2063 42 is_stmt 0 view .LVU1607
4399 00f6 036F ldr r3, [r0, #112]
2063:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4400 .loc 1 2063 23 view .LVU1608
4401 00f8 C3F38263 ubfx r3, r3, #26, #3
2063:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4402 .loc 1 2063 21 view .LVU1609
4403 00fc 8B77 strb r3, [r1, #30]
2065:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4404 .loc 1 2065 3 is_stmt 1 view .LVU1610
2065:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4405 .loc 1 2065 43 is_stmt 0 view .LVU1611
4406 00fe 036F ldr r3, [r0, #112]
2065:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
ARM GAS /tmp/cc2oBAwl.s page 161
4407 .loc 1 2065 24 view .LVU1612
4408 0100 C3F38353 ubfx r3, r3, #22, #4
2065:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4409 .loc 1 2065 22 view .LVU1613
4410 0104 CB77 strb r3, [r1, #31]
2067:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4411 .loc 1 2067 3 is_stmt 1 view .LVU1614
2067:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4412 .loc 1 2067 50 is_stmt 0 view .LVU1615
4413 0106 036F ldr r3, [r0, #112]
2067:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4414 .loc 1 2067 31 view .LVU1616
4415 0108 C3F34053 ubfx r3, r3, #21, #1
2067:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4416 .loc 1 2067 29 view .LVU1617
4417 010c 81F82030 strb r3, [r1, #32]
2069:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4418 .loc 1 2069 3 is_stmt 1 view .LVU1618
2069:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4419 .loc 1 2069 19 is_stmt 0 view .LVU1619
4420 0110 0023 movs r3, #0
4421 0112 81F82130 strb r3, [r1, #33]
2071:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4422 .loc 1 2071 3 is_stmt 1 view .LVU1620
2071:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4423 .loc 1 2071 69 is_stmt 0 view .LVU1621
4424 0116 B0F87220 ldrh r2, [r0, #114]
2071:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4425 .loc 1 2071 31 view .LVU1622
4426 011a 02F00102 and r2, r2, #1
2071:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4427 .loc 1 2071 29 view .LVU1623
4428 011e 81F82220 strb r2, [r1, #34]
2073:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4429 .loc 1 2073 3 is_stmt 1 view .LVU1624
2073:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4430 .loc 1 2073 46 is_stmt 0 view .LVU1625
4431 0122 026F ldr r2, [r0, #112]
2073:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4432 .loc 1 2073 27 view .LVU1626
4433 0124 C2F3C032 ubfx r2, r2, #15, #1
2073:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4434 .loc 1 2073 25 view .LVU1627
4435 0128 81F82320 strb r2, [r1, #35]
2075:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4436 .loc 1 2075 3 is_stmt 1 view .LVU1628
2075:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4437 .loc 1 2075 39 is_stmt 0 view .LVU1629
4438 012c 026F ldr r2, [r0, #112]
2075:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4439 .loc 1 2075 20 view .LVU1630
4440 012e C2F38032 ubfx r2, r2, #14, #1
2075:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4441 .loc 1 2075 18 view .LVU1631
4442 0132 81F82420 strb r2, [r1, #36]
2077:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4443 .loc 1 2077 3 is_stmt 1 view .LVU1632
ARM GAS /tmp/cc2oBAwl.s page 162
2077:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4444 .loc 1 2077 44 is_stmt 0 view .LVU1633
4445 0136 026F ldr r2, [r0, #112]
2077:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4446 .loc 1 2077 25 view .LVU1634
4447 0138 C2F34032 ubfx r2, r2, #13, #1
2077:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4448 .loc 1 2077 23 view .LVU1635
4449 013c 81F82520 strb r2, [r1, #37]
2079:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4450 .loc 1 2079 3 is_stmt 1 view .LVU1636
2079:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4451 .loc 1 2079 44 is_stmt 0 view .LVU1637
4452 0140 026F ldr r2, [r0, #112]
2079:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4453 .loc 1 2079 25 view .LVU1638
4454 0142 C2F30032 ubfx r2, r2, #12, #1
2079:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4455 .loc 1 2079 23 view .LVU1639
4456 0146 81F82620 strb r2, [r1, #38]
2081:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4457 .loc 1 2081 3 is_stmt 1 view .LVU1640
2081:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4458 .loc 1 2081 41 is_stmt 0 view .LVU1641
4459 014a 026F ldr r2, [r0, #112]
2081:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4460 .loc 1 2081 22 view .LVU1642
4461 014c C2F38122 ubfx r2, r2, #10, #2
2081:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4462 .loc 1 2081 20 view .LVU1643
4463 0150 81F82720 strb r2, [r1, #39]
2083:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4464 .loc 1 2083 3 is_stmt 1 view .LVU1644
2083:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4465 .loc 1 2083 33 is_stmt 0 view .LVU1645
4466 0154 026F ldr r2, [r0, #112]
2083:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4467 .loc 1 2083 14 view .LVU1646
4468 0156 C2F30122 ubfx r2, r2, #8, #2
2083:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4469 .loc 1 2083 12 view .LVU1647
4470 015a 81F82820 strb r2, [r1, #40]
2085:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4471 .loc 1 2085 3 is_stmt 1 view .LVU1648
2085:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4472 .loc 1 2085 38 is_stmt 0 view .LVU1649
4473 015e 026F ldr r2, [r0, #112]
2085:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4474 .loc 1 2085 19 view .LVU1650
4475 0160 C2F34602 ubfx r2, r2, #1, #7
2085:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4476 .loc 1 2085 17 view .LVU1651
4477 0164 81F82920 strb r2, [r1, #41]
2087:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4478 .loc 1 2087 3 is_stmt 1 view .LVU1652
2087:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4479 .loc 1 2087 19 is_stmt 0 view .LVU1653
ARM GAS /tmp/cc2oBAwl.s page 163
4480 0168 0122 movs r2, #1
4481 016a 81F82A20 strb r2, [r1, #42]
2089:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
4482 .loc 1 2089 3 is_stmt 1 view .LVU1654
2089:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
4483 .loc 1 2089 10 is_stmt 0 view .LVU1655
4484 016e 1846 mov r0, r3
4485 .LVL336:
2090:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4486 .loc 1 2090 1 view .LVU1656
4487 0170 7047 bx lr
4488 .LVL337:
4489 .L249:
2034:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
4490 .loc 1 2034 8 is_stmt 1 view .LVU1657
2034:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
4491 .loc 1 2034 10 is_stmt 0 view .LVU1658
4492 0172 012B cmp r3, #1
4493 0174 11D1 bne .L251
2037:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4494 .loc 1 2037 5 is_stmt 1 view .LVU1659
2037:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4495 .loc 1 2037 35 is_stmt 0 view .LVU1660
4496 0176 836E ldr r3, [r0, #104]
2037:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4497 .loc 1 2037 54 view .LVU1661
4498 0178 1B04 lsls r3, r3, #16
4499 017a 03F47C13 and r3, r3, #4128768
2037:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4500 .loc 1 2037 93 view .LVU1662
4501 017e B0F86E20 ldrh r2, [r0, #110]
2037:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4502 .loc 1 2037 62 view .LVU1663
4503 0182 1343 orrs r3, r3, r2
2037:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4504 .loc 1 2037 22 view .LVU1664
4505 0184 0B61 str r3, [r1, #16]
2039:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->SdCard.LogBlockNbr = hsd->SdCard.BlockNbr;
4506 .loc 1 2039 5 is_stmt 1 view .LVU1665
2039:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->SdCard.LogBlockNbr = hsd->SdCard.BlockNbr;
4507 .loc 1 2039 34 is_stmt 0 view .LVU1666
4508 0186 0B69 ldr r3, [r1, #16]
2039:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->SdCard.LogBlockNbr = hsd->SdCard.BlockNbr;
4509 .loc 1 2039 47 view .LVU1667
4510 0188 0133 adds r3, r3, #1
2039:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->SdCard.LogBlockNbr = hsd->SdCard.BlockNbr;
4511 .loc 1 2039 53 view .LVU1668
4512 018a 9B02 lsls r3, r3, #10
2039:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->SdCard.LogBlockNbr = hsd->SdCard.BlockNbr;
4513 .loc 1 2039 26 view .LVU1669
4514 018c 4365 str r3, [r0, #84]
2040:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->SdCard.BlockSize = 512U;
4515 .loc 1 2040 5 is_stmt 1 view .LVU1670
2040:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->SdCard.BlockSize = 512U;
4516 .loc 1 2040 29 is_stmt 0 view .LVU1671
4517 018e C365 str r3, [r0, #92]
2041:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->SdCard.LogBlockSize = hsd->SdCard.BlockSize;
ARM GAS /tmp/cc2oBAwl.s page 164
4518 .loc 1 2041 5 is_stmt 1 view .LVU1672
2041:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->SdCard.LogBlockSize = hsd->SdCard.BlockSize;
4519 .loc 1 2041 27 is_stmt 0 view .LVU1673
4520 0190 4FF40073 mov r3, #512
4521 0194 8365 str r3, [r0, #88]
2042:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
4522 .loc 1 2042 5 is_stmt 1 view .LVU1674
2042:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
4523 .loc 1 2042 30 is_stmt 0 view .LVU1675
4524 0196 0366 str r3, [r0, #96]
4525 0198 9AE7 b .L250
4526 .L251:
2047:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= HAL_SD_ERROR_UNSUPPORTED_FEATURE;
4527 .loc 1 2047 5 is_stmt 1 view .LVU1676
4528 019a 0368 ldr r3, [r0]
4529 019c 054A ldr r2, .L253
4530 019e 9A63 str r2, [r3, #56]
2048:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
4531 .loc 1 2048 5 view .LVU1677
2048:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
4532 .loc 1 2048 20 is_stmt 0 view .LVU1678
4533 01a0 836B ldr r3, [r0, #56]
4534 01a2 43F08053 orr r3, r3, #268435456
4535 01a6 8363 str r3, [r0, #56]
2049:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
4536 .loc 1 2049 5 is_stmt 1 view .LVU1679
2049:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
4537 .loc 1 2049 16 is_stmt 0 view .LVU1680
4538 01a8 0123 movs r3, #1
4539 01aa 80F83430 strb r3, [r0, #52]
2050:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
4540 .loc 1 2050 5 is_stmt 1 view .LVU1681
2050:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
4541 .loc 1 2050 12 is_stmt 0 view .LVU1682
4542 01ae 1846 mov r0, r3
4543 .LVL338:
2050:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
4544 .loc 1 2050 12 view .LVU1683
4545 01b0 7047 bx lr
4546 .L254:
4547 01b2 00BF .align 2
4548 .L253:
4549 01b4 FF054000 .word 4195839
4550 .cfi_endproc
4551 .LFE161:
4553 .section .text.SD_InitCard,"ax",%progbits
4554 .align 1
4555 .syntax unified
4556 .thumb
4557 .thumb_func
4558 .fpu fpv5-d16
4560 SD_InitCard:
4561 .LVL339:
4562 .LFB173:
2618:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** HAL_SD_CardCSDTypeDef CSD;
4563 .loc 1 2618 1 is_stmt 1 view -0
4564 .cfi_startproc
ARM GAS /tmp/cc2oBAwl.s page 165
4565 @ args = 0, pretend = 0, frame = 48
4566 @ frame_needed = 0, uses_anonymous_args = 0
2618:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** HAL_SD_CardCSDTypeDef CSD;
4567 .loc 1 2618 1 is_stmt 0 view .LVU1685
4568 0000 70B5 push {r4, r5, r6, lr}
4569 .LCFI51:
4570 .cfi_def_cfa_offset 16
4571 .cfi_offset 4, -16
4572 .cfi_offset 5, -12
4573 .cfi_offset 6, -8
4574 .cfi_offset 14, -4
4575 0002 90B0 sub sp, sp, #64
4576 .LCFI52:
4577 .cfi_def_cfa_offset 80
4578 0004 0446 mov r4, r0
2619:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t errorstate;
4579 .loc 1 2619 3 is_stmt 1 view .LVU1686
2620:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint16_t sd_rca = 1U;
4580 .loc 1 2620 3 view .LVU1687
2621:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4581 .loc 1 2621 3 view .LVU1688
2621:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4582 .loc 1 2621 12 is_stmt 0 view .LVU1689
4583 0006 0123 movs r3, #1
4584 0008 ADF81230 strh r3, [sp, #18] @ movhi
2624:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
4585 .loc 1 2624 3 is_stmt 1 view .LVU1690
2624:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
4586 .loc 1 2624 6 is_stmt 0 view .LVU1691
4587 000c 0068 ldr r0, [r0]
4588 .LVL340:
2624:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
4589 .loc 1 2624 6 view .LVU1692
4590 000e FFF7FEFF bl SDMMC_GetPowerState
4591 .LVL341:
2624:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
4592 .loc 1 2624 5 view .LVU1693
4593 0012 0028 cmp r0, #0
4594 0014 6CD0 beq .L260
2630:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
4595 .loc 1 2630 3 is_stmt 1 view .LVU1694
2630:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
4596 .loc 1 2630 17 is_stmt 0 view .LVU1695
4597 0016 636C ldr r3, [r4, #68]
2630:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
4598 .loc 1 2630 5 view .LVU1696
4599 0018 032B cmp r3, #3
4600 001a 45D1 bne .L263
4601 .L257:
2648:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
4602 .loc 1 2648 3 is_stmt 1 view .LVU1697
2648:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
4603 .loc 1 2648 17 is_stmt 0 view .LVU1698
4604 001c 636C ldr r3, [r4, #68]
2648:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
4605 .loc 1 2648 5 view .LVU1699
4606 001e 032B cmp r3, #3
ARM GAS /tmp/cc2oBAwl.s page 166
4607 0020 5DD1 bne .L264
4608 .L258:
2658:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
4609 .loc 1 2658 3 is_stmt 1 view .LVU1700
2658:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
4610 .loc 1 2658 17 is_stmt 0 view .LVU1701
4611 0022 636C ldr r3, [r4, #68]
2658:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
4612 .loc 1 2658 5 view .LVU1702
4613 0024 032B cmp r3, #3
4614 0026 1DD0 beq .L259
2661:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4615 .loc 1 2661 5 is_stmt 1 view .LVU1703
2661:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4616 .loc 1 2661 28 is_stmt 0 view .LVU1704
4617 0028 BDF81210 ldrh r1, [sp, #18]
4618 002c 2165 str r1, [r4, #80]
2664:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
4619 .loc 1 2664 5 is_stmt 1 view .LVU1705
2664:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
4620 .loc 1 2664 18 is_stmt 0 view .LVU1706
4621 002e 0904 lsls r1, r1, #16
4622 0030 2068 ldr r0, [r4]
4623 0032 FFF7FEFF bl SDMMC_CmdSendCSD
4624 .LVL342:
2665:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
4625 .loc 1 2665 5 is_stmt 1 view .LVU1707
2665:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
4626 .loc 1 2665 7 is_stmt 0 view .LVU1708
4627 0036 0546 mov r5, r0
4628 0038 0028 cmp r0, #0
4629 003a 5BD1 bne .L255
2672:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->CSD[1U] = SDMMC_GetResponse(hsd->Instance, SDMMC_RESP2);
4630 .loc 1 2672 7 is_stmt 1 view .LVU1709
2672:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->CSD[1U] = SDMMC_GetResponse(hsd->Instance, SDMMC_RESP2);
4631 .loc 1 2672 22 is_stmt 0 view .LVU1710
4632 003c 0021 movs r1, #0
4633 003e 2068 ldr r0, [r4]
4634 .LVL343:
2672:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->CSD[1U] = SDMMC_GetResponse(hsd->Instance, SDMMC_RESP2);
4635 .loc 1 2672 22 view .LVU1711
4636 0040 FFF7FEFF bl SDMMC_GetResponse
4637 .LVL344:
2672:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->CSD[1U] = SDMMC_GetResponse(hsd->Instance, SDMMC_RESP2);
4638 .loc 1 2672 20 view .LVU1712
4639 0044 6066 str r0, [r4, #100]
2673:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->CSD[2U] = SDMMC_GetResponse(hsd->Instance, SDMMC_RESP3);
4640 .loc 1 2673 7 is_stmt 1 view .LVU1713
2673:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->CSD[2U] = SDMMC_GetResponse(hsd->Instance, SDMMC_RESP3);
4641 .loc 1 2673 22 is_stmt 0 view .LVU1714
4642 0046 0421 movs r1, #4
4643 0048 2068 ldr r0, [r4]
4644 004a FFF7FEFF bl SDMMC_GetResponse
4645 .LVL345:
2673:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->CSD[2U] = SDMMC_GetResponse(hsd->Instance, SDMMC_RESP3);
4646 .loc 1 2673 20 view .LVU1715
4647 004e A066 str r0, [r4, #104]
ARM GAS /tmp/cc2oBAwl.s page 167
2674:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->CSD[3U] = SDMMC_GetResponse(hsd->Instance, SDMMC_RESP4);
4648 .loc 1 2674 7 is_stmt 1 view .LVU1716
2674:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->CSD[3U] = SDMMC_GetResponse(hsd->Instance, SDMMC_RESP4);
4649 .loc 1 2674 22 is_stmt 0 view .LVU1717
4650 0050 0821 movs r1, #8
4651 0052 2068 ldr r0, [r4]
4652 0054 FFF7FEFF bl SDMMC_GetResponse
4653 .LVL346:
2674:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->CSD[3U] = SDMMC_GetResponse(hsd->Instance, SDMMC_RESP4);
4654 .loc 1 2674 20 view .LVU1718
4655 0058 E066 str r0, [r4, #108]
2675:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
4656 .loc 1 2675 7 is_stmt 1 view .LVU1719
2675:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
4657 .loc 1 2675 22 is_stmt 0 view .LVU1720
4658 005a 0C21 movs r1, #12
4659 005c 2068 ldr r0, [r4]
4660 005e FFF7FEFF bl SDMMC_GetResponse
4661 .LVL347:
2675:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
4662 .loc 1 2675 20 view .LVU1721
4663 0062 2067 str r0, [r4, #112]
4664 .LVL348:
4665 .L259:
2680:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4666 .loc 1 2680 3 is_stmt 1 view .LVU1722
2680:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4667 .loc 1 2680 24 is_stmt 0 view .LVU1723
4668 0064 0421 movs r1, #4
4669 0066 2068 ldr r0, [r4]
4670 0068 FFF7FEFF bl SDMMC_GetResponse
4671 .LVL349:
2680:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4672 .loc 1 2680 70 view .LVU1724
4673 006c 000D lsrs r0, r0, #20
2680:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4674 .loc 1 2680 21 view .LVU1725
4675 006e E064 str r0, [r4, #76]
2683:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
4676 .loc 1 2683 3 is_stmt 1 view .LVU1726
2683:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
4677 .loc 1 2683 7 is_stmt 0 view .LVU1727
4678 0070 05A9 add r1, sp, #20
4679 0072 2046 mov r0, r4
4680 0074 FFF7FEFF bl HAL_SD_GetCardCSD
4681 .LVL350:
2683:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
4682 .loc 1 2683 6 view .LVU1728
4683 0078 0028 cmp r0, #0
4684 007a 3ED1 bne .L261
2689:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
4685 .loc 1 2689 3 is_stmt 1 view .LVU1729
2689:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
4686 .loc 1 2689 82 is_stmt 0 view .LVU1730
4687 007c 226D ldr r2, [r4, #80]
2689:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
4688 .loc 1 2689 16 view .LVU1731
ARM GAS /tmp/cc2oBAwl.s page 168
4689 007e 1204 lsls r2, r2, #16
4690 0080 0023 movs r3, #0
4691 0082 2068 ldr r0, [r4]
4692 0084 FFF7FEFF bl SDMMC_CmdSelDesel
4693 .LVL351:
2690:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
4694 .loc 1 2690 3 is_stmt 1 view .LVU1732
2690:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
4695 .loc 1 2690 5 is_stmt 0 view .LVU1733
4696 0088 0546 mov r5, r0
4697 008a 98BB cbnz r0, .L255
2696:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4698 .loc 1 2696 3 is_stmt 1 view .LVU1734
2696:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4699 .loc 1 2696 9 is_stmt 0 view .LVU1735
4700 008c 2346 mov r3, r4
4701 008e 53F8106B ldr r6, [r3], #16
4702 0092 93E80700 ldm r3, {r0, r1, r2}
4703 .LVL352:
2696:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4704 .loc 1 2696 9 view .LVU1736
4705 0096 8DE80700 stm sp, {r0, r1, r2}
4706 009a 0434 adds r4, r4, #4
4707 .LVL353:
2696:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4708 .loc 1 2696 9 view .LVU1737
4709 009c 94E80E00 ldm r4, {r1, r2, r3}
4710 00a0 3046 mov r0, r6
4711 00a2 FFF7FEFF bl SDMMC_Init
4712 .LVL354:
2699:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
4713 .loc 1 2699 3 is_stmt 1 view .LVU1738
2699:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
4714 .loc 1 2699 10 is_stmt 0 view .LVU1739
4715 00a6 25E0 b .L255
4716 .LVL355:
4717 .L263:
2633:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
4718 .loc 1 2633 5 is_stmt 1 view .LVU1740
2633:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
4719 .loc 1 2633 18 is_stmt 0 view .LVU1741
4720 00a8 2068 ldr r0, [r4]
4721 00aa FFF7FEFF bl SDMMC_CmdSendCID
4722 .LVL356:
2634:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
4723 .loc 1 2634 5 is_stmt 1 view .LVU1742
2634:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
4724 .loc 1 2634 7 is_stmt 0 view .LVU1743
4725 00ae 0546 mov r5, r0
4726 00b0 00BB cbnz r0, .L255
2641:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->CID[1U] = SDMMC_GetResponse(hsd->Instance, SDMMC_RESP2);
4727 .loc 1 2641 7 is_stmt 1 view .LVU1744
2641:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->CID[1U] = SDMMC_GetResponse(hsd->Instance, SDMMC_RESP2);
4728 .loc 1 2641 22 is_stmt 0 view .LVU1745
4729 00b2 0021 movs r1, #0
4730 00b4 2068 ldr r0, [r4]
4731 .LVL357:
ARM GAS /tmp/cc2oBAwl.s page 169
2641:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->CID[1U] = SDMMC_GetResponse(hsd->Instance, SDMMC_RESP2);
4732 .loc 1 2641 22 view .LVU1746
4733 00b6 FFF7FEFF bl SDMMC_GetResponse
4734 .LVL358:
2641:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->CID[1U] = SDMMC_GetResponse(hsd->Instance, SDMMC_RESP2);
4735 .loc 1 2641 20 view .LVU1747
4736 00ba 6067 str r0, [r4, #116]
2642:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->CID[2U] = SDMMC_GetResponse(hsd->Instance, SDMMC_RESP3);
4737 .loc 1 2642 7 is_stmt 1 view .LVU1748
2642:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->CID[2U] = SDMMC_GetResponse(hsd->Instance, SDMMC_RESP3);
4738 .loc 1 2642 22 is_stmt 0 view .LVU1749
4739 00bc 0421 movs r1, #4
4740 00be 2068 ldr r0, [r4]
4741 00c0 FFF7FEFF bl SDMMC_GetResponse
4742 .LVL359:
2642:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->CID[2U] = SDMMC_GetResponse(hsd->Instance, SDMMC_RESP3);
4743 .loc 1 2642 20 view .LVU1750
4744 00c4 A067 str r0, [r4, #120]
2643:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->CID[3U] = SDMMC_GetResponse(hsd->Instance, SDMMC_RESP4);
4745 .loc 1 2643 7 is_stmt 1 view .LVU1751
2643:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->CID[3U] = SDMMC_GetResponse(hsd->Instance, SDMMC_RESP4);
4746 .loc 1 2643 22 is_stmt 0 view .LVU1752
4747 00c6 0821 movs r1, #8
4748 00c8 2068 ldr r0, [r4]
4749 00ca FFF7FEFF bl SDMMC_GetResponse
4750 .LVL360:
2643:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->CID[3U] = SDMMC_GetResponse(hsd->Instance, SDMMC_RESP4);
4751 .loc 1 2643 20 view .LVU1753
4752 00ce E067 str r0, [r4, #124]
2644:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
4753 .loc 1 2644 7 is_stmt 1 view .LVU1754
2644:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
4754 .loc 1 2644 22 is_stmt 0 view .LVU1755
4755 00d0 0C21 movs r1, #12
4756 00d2 2068 ldr r0, [r4]
4757 00d4 FFF7FEFF bl SDMMC_GetResponse
4758 .LVL361:
2644:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
4759 .loc 1 2644 20 view .LVU1756
4760 00d8 C4F88000 str r0, [r4, #128]
4761 00dc 9EE7 b .L257
4762 .LVL362:
4763 .L264:
2652:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
4764 .loc 1 2652 5 is_stmt 1 view .LVU1757
2652:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
4765 .loc 1 2652 18 is_stmt 0 view .LVU1758
4766 00de 0DF11201 add r1, sp, #18
4767 00e2 2068 ldr r0, [r4]
4768 00e4 FFF7FEFF bl SDMMC_CmdSetRelAdd
4769 .LVL363:
2653:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
4770 .loc 1 2653 5 is_stmt 1 view .LVU1759
2653:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
4771 .loc 1 2653 7 is_stmt 0 view .LVU1760
4772 00e8 0546 mov r5, r0
4773 00ea 0028 cmp r0, #0
ARM GAS /tmp/cc2oBAwl.s page 170
4774 00ec 99D0 beq .L258
4775 00ee 01E0 b .L255
4776 .LVL364:
4777 .L260:
2627:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
4778 .loc 1 2627 12 view .LVU1761
4779 00f0 4FF08065 mov r5, #67108864
4780 .LVL365:
4781 .L255:
2700:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4782 .loc 1 2700 1 view .LVU1762
4783 00f4 2846 mov r0, r5
4784 00f6 10B0 add sp, sp, #64
4785 .LCFI53:
4786 .cfi_remember_state
4787 .cfi_def_cfa_offset 16
4788 @ sp needed
4789 00f8 70BD pop {r4, r5, r6, pc}
4790 .LVL366:
4791 .L261:
4792 .LCFI54:
4793 .cfi_restore_state
2685:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
4794 .loc 1 2685 12 view .LVU1763
4795 00fa 4FF08055 mov r5, #268435456
4796 00fe F9E7 b .L255
4797 .cfi_endproc
4798 .LFE173:
4800 .section .text.HAL_SD_InitCard,"ax",%progbits
4801 .align 1
4802 .global HAL_SD_InitCard
4803 .syntax unified
4804 .thumb
4805 .thumb_func
4806 .fpu fpv5-d16
4808 HAL_SD_InitCard:
4809 .LVL367:
4810 .LFB142:
404:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t errorstate;
4811 .loc 1 404 1 is_stmt 1 view -0
4812 .cfi_startproc
4813 @ args = 0, pretend = 0, frame = 24
4814 @ frame_needed = 0, uses_anonymous_args = 0
404:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t errorstate;
4815 .loc 1 404 1 is_stmt 0 view .LVU1765
4816 0000 30B5 push {r4, r5, lr}
4817 .LCFI55:
4818 .cfi_def_cfa_offset 12
4819 .cfi_offset 4, -12
4820 .cfi_offset 5, -8
4821 .cfi_offset 14, -4
4822 0002 8BB0 sub sp, sp, #44
4823 .LCFI56:
4824 .cfi_def_cfa_offset 56
4825 0004 0446 mov r4, r0
405:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** HAL_StatusTypeDef status;
4826 .loc 1 405 3 is_stmt 1 view .LVU1766
ARM GAS /tmp/cc2oBAwl.s page 171
406:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** SD_InitTypeDef Init;
4827 .loc 1 406 3 view .LVU1767
407:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4828 .loc 1 407 3 view .LVU1768
410:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** Init.ClockBypass = SDMMC_CLOCK_BYPASS_DISABLE;
4829 .loc 1 410 3 view .LVU1769
410:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** Init.ClockBypass = SDMMC_CLOCK_BYPASS_DISABLE;
4830 .loc 1 410 28 is_stmt 0 view .LVU1770
4831 0006 0023 movs r3, #0
4832 0008 0493 str r3, [sp, #16]
411:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** Init.ClockPowerSave = SDMMC_CLOCK_POWER_SAVE_DISABLE;
4833 .loc 1 411 3 is_stmt 1 view .LVU1771
411:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** Init.ClockPowerSave = SDMMC_CLOCK_POWER_SAVE_DISABLE;
4834 .loc 1 411 28 is_stmt 0 view .LVU1772
4835 000a 0593 str r3, [sp, #20]
412:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** Init.BusWide = SDMMC_BUS_WIDE_1B;
4836 .loc 1 412 3 is_stmt 1 view .LVU1773
412:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** Init.BusWide = SDMMC_BUS_WIDE_1B;
4837 .loc 1 412 28 is_stmt 0 view .LVU1774
4838 000c 0693 str r3, [sp, #24]
413:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** Init.HardwareFlowControl = SDMMC_HARDWARE_FLOW_CONTROL_DISABLE;
4839 .loc 1 413 3 is_stmt 1 view .LVU1775
413:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** Init.HardwareFlowControl = SDMMC_HARDWARE_FLOW_CONTROL_DISABLE;
4840 .loc 1 413 28 is_stmt 0 view .LVU1776
4841 000e 0793 str r3, [sp, #28]
414:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** Init.ClockDiv = SDMMC_INIT_CLK_DIV;
4842 .loc 1 414 3 is_stmt 1 view .LVU1777
414:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** Init.ClockDiv = SDMMC_INIT_CLK_DIV;
4843 .loc 1 414 28 is_stmt 0 view .LVU1778
4844 0010 0893 str r3, [sp, #32]
415:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4845 .loc 1 415 3 is_stmt 1 view .LVU1779
415:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4846 .loc 1 415 28 is_stmt 0 view .LVU1780
4847 0012 7623 movs r3, #118
4848 0014 0993 str r3, [sp, #36]
418:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(status != HAL_OK)
4849 .loc 1 418 3 is_stmt 1 view .LVU1781
418:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(status != HAL_OK)
4850 .loc 1 418 12 is_stmt 0 view .LVU1782
4851 0016 0AAB add r3, sp, #40
4852 0018 13E90700 ldmdb r3, {r0, r1, r2}
4853 .LVL368:
418:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(status != HAL_OK)
4854 .loc 1 418 12 view .LVU1783
4855 001c 8DE80700 stm sp, {r0, r1, r2}
4856 0020 04AB add r3, sp, #16
4857 0022 0ECB ldm r3, {r1, r2, r3}
4858 0024 2068 ldr r0, [r4]
4859 0026 FFF7FEFF bl SDMMC_Init
4860 .LVL369:
419:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
4861 .loc 1 419 3 is_stmt 1 view .LVU1784
419:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
4862 .loc 1 419 5 is_stmt 0 view .LVU1785
4863 002a 18B1 cbz r0, .L271
421:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
ARM GAS /tmp/cc2oBAwl.s page 172
4864 .loc 1 421 12 view .LVU1786
4865 002c 0125 movs r5, #1
4866 .LVL370:
4867 .L266:
466:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4868 .loc 1 466 1 view .LVU1787
4869 002e 2846 mov r0, r5
4870 0030 0BB0 add sp, sp, #44
4871 .LCFI57:
4872 .cfi_remember_state
4873 .cfi_def_cfa_offset 12
4874 @ sp needed
4875 0032 30BD pop {r4, r5, pc}
4876 .LVL371:
4877 .L271:
4878 .LCFI58:
4879 .cfi_restore_state
466:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4880 .loc 1 466 1 view .LVU1788
4881 0034 0546 mov r5, r0
425:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4882 .loc 1 425 3 is_stmt 1 view .LVU1789
4883 0036 2268 ldr r2, [r4]
4884 0038 5368 ldr r3, [r2, #4]
4885 003a 23F48073 bic r3, r3, #256
4886 003e 5360 str r3, [r2, #4]
428:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4887 .loc 1 428 3 view .LVU1790
428:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4888 .loc 1 428 9 is_stmt 0 view .LVU1791
4889 0040 2068 ldr r0, [r4]
4890 .LVL372:
428:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4891 .loc 1 428 9 view .LVU1792
4892 0042 FFF7FEFF bl SDMMC_PowerState_ON
4893 .LVL373:
431:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4894 .loc 1 431 3 is_stmt 1 view .LVU1793
4895 0046 2268 ldr r2, [r4]
4896 0048 5368 ldr r3, [r2, #4]
4897 004a 43F48073 orr r3, r3, #256
4898 004e 5360 str r3, [r2, #4]
434:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
4899 .loc 1 434 3 view .LVU1794
4900 0050 0220 movs r0, #2
4901 0052 FFF7FEFF bl HAL_Delay
4902 .LVL374:
437:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
4903 .loc 1 437 3 view .LVU1795
437:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
4904 .loc 1 437 16 is_stmt 0 view .LVU1796
4905 0056 2046 mov r0, r4
4906 0058 FFF7FEFF bl SD_PowerON
4907 .LVL375:
438:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
4908 .loc 1 438 3 is_stmt 1 view .LVU1797
438:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
ARM GAS /tmp/cc2oBAwl.s page 173
4909 .loc 1 438 5 is_stmt 0 view .LVU1798
4910 005c 30B1 cbz r0, .L267
440:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= errorstate;
4911 .loc 1 440 5 is_stmt 1 view .LVU1799
440:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= errorstate;
4912 .loc 1 440 16 is_stmt 0 view .LVU1800
4913 005e 0125 movs r5, #1
4914 0060 84F83450 strb r5, [r4, #52]
441:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
4915 .loc 1 441 5 is_stmt 1 view .LVU1801
441:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
4916 .loc 1 441 20 is_stmt 0 view .LVU1802
4917 0064 A36B ldr r3, [r4, #56]
4918 0066 0343 orrs r3, r3, r0
4919 0068 A363 str r3, [r4, #56]
442:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
4920 .loc 1 442 5 is_stmt 1 view .LVU1803
442:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
4921 .loc 1 442 12 is_stmt 0 view .LVU1804
4922 006a E0E7 b .L266
4923 .L267:
446:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
4924 .loc 1 446 3 is_stmt 1 view .LVU1805
446:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
4925 .loc 1 446 16 is_stmt 0 view .LVU1806
4926 006c 2046 mov r0, r4
4927 .LVL376:
446:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
4928 .loc 1 446 16 view .LVU1807
4929 006e FFF7FEFF bl SD_InitCard
4930 .LVL377:
447:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
4931 .loc 1 447 3 is_stmt 1 view .LVU1808
447:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
4932 .loc 1 447 5 is_stmt 0 view .LVU1809
4933 0072 30B1 cbz r0, .L268
449:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= errorstate;
4934 .loc 1 449 5 is_stmt 1 view .LVU1810
449:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= errorstate;
4935 .loc 1 449 16 is_stmt 0 view .LVU1811
4936 0074 0125 movs r5, #1
4937 0076 84F83450 strb r5, [r4, #52]
450:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
4938 .loc 1 450 5 is_stmt 1 view .LVU1812
450:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
4939 .loc 1 450 20 is_stmt 0 view .LVU1813
4940 007a A36B ldr r3, [r4, #56]
4941 007c 0343 orrs r3, r3, r0
4942 007e A363 str r3, [r4, #56]
451:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
4943 .loc 1 451 5 is_stmt 1 view .LVU1814
451:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
4944 .loc 1 451 12 is_stmt 0 view .LVU1815
4945 0080 D5E7 b .L266
4946 .L268:
455:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
4947 .loc 1 455 3 is_stmt 1 view .LVU1816
ARM GAS /tmp/cc2oBAwl.s page 174
455:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
4948 .loc 1 455 16 is_stmt 0 view .LVU1817
4949 0082 4FF40071 mov r1, #512
4950 0086 2068 ldr r0, [r4]
4951 .LVL378:
455:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
4952 .loc 1 455 16 view .LVU1818
4953 0088 FFF7FEFF bl SDMMC_CmdBlockLength
4954 .LVL379:
456:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
4955 .loc 1 456 3 is_stmt 1 view .LVU1819
456:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
4956 .loc 1 456 5 is_stmt 0 view .LVU1820
4957 008c 0028 cmp r0, #0
4958 008e CED0 beq .L266
459:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= errorstate;
4959 .loc 1 459 5 is_stmt 1 view .LVU1821
4960 0090 2368 ldr r3, [r4]
4961 0092 0449 ldr r1, .L272
4962 0094 9963 str r1, [r3, #56]
460:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
4963 .loc 1 460 5 view .LVU1822
460:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
4964 .loc 1 460 20 is_stmt 0 view .LVU1823
4965 0096 A36B ldr r3, [r4, #56]
4966 0098 0343 orrs r3, r3, r0
4967 009a A363 str r3, [r4, #56]
461:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
4968 .loc 1 461 5 is_stmt 1 view .LVU1824
461:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** return HAL_ERROR;
4969 .loc 1 461 16 is_stmt 0 view .LVU1825
4970 009c 0125 movs r5, #1
4971 009e 84F83450 strb r5, [r4, #52]
462:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
4972 .loc 1 462 5 is_stmt 1 view .LVU1826
462:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
4973 .loc 1 462 12 is_stmt 0 view .LVU1827
4974 00a2 C4E7 b .L266
4975 .L273:
4976 .align 2
4977 .L272:
4978 00a4 FF054000 .word 4195839
4979 .cfi_endproc
4980 .LFE142:
4982 .section .text.HAL_SD_Init,"ax",%progbits
4983 .align 1
4984 .global HAL_SD_Init
4985 .syntax unified
4986 .thumb
4987 .thumb_func
4988 .fpu fpv5-d16
4990 HAL_SD_Init:
4991 .LVL380:
4992 .LFB141:
336:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Check the SD handle allocation */
4993 .loc 1 336 1 is_stmt 1 view -0
4994 .cfi_startproc
ARM GAS /tmp/cc2oBAwl.s page 175
4995 @ args = 0, pretend = 0, frame = 0
4996 @ frame_needed = 0, uses_anonymous_args = 0
338:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
4997 .loc 1 338 3 view .LVU1829
338:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
4998 .loc 1 338 5 is_stmt 0 view .LVU1830
4999 0000 A8B1 cbz r0, .L277
336:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Check the SD handle allocation */
5000 .loc 1 336 1 view .LVU1831
5001 0002 10B5 push {r4, lr}
5002 .LCFI59:
5003 .cfi_def_cfa_offset 8
5004 .cfi_offset 4, -8
5005 .cfi_offset 14, -4
5006 0004 0446 mov r4, r0
344:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** assert_param(IS_SDMMC_CLOCK_EDGE(hsd->Init.ClockEdge));
5007 .loc 1 344 3 is_stmt 1 view .LVU1832
345:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** assert_param(IS_SDMMC_CLOCK_BYPASS(hsd->Init.ClockBypass));
5008 .loc 1 345 3 view .LVU1833
346:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** assert_param(IS_SDMMC_CLOCK_POWER_SAVE(hsd->Init.ClockPowerSave));
5009 .loc 1 346 3 view .LVU1834
347:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** assert_param(IS_SDMMC_BUS_WIDE(hsd->Init.BusWide));
5010 .loc 1 347 3 view .LVU1835
348:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** assert_param(IS_SDMMC_HARDWARE_FLOW_CONTROL(hsd->Init.HardwareFlowControl));
5011 .loc 1 348 3 view .LVU1836
349:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** assert_param(IS_SDMMC_CLKDIV(hsd->Init.ClockDiv));
5012 .loc 1 349 3 view .LVU1837
350:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
5013 .loc 1 350 3 view .LVU1838
352:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
5014 .loc 1 352 3 view .LVU1839
352:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
5015 .loc 1 352 9 is_stmt 0 view .LVU1840
5016 0006 90F83430 ldrb r3, [r0, #52] @ zero_extendqisi2
352:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
5017 .loc 1 352 5 view .LVU1841
5018 000a 63B1 cbz r3, .L283
5019 .LVL381:
5020 .L276:
376:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
5021 .loc 1 376 3 is_stmt 1 view .LVU1842
376:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
5022 .loc 1 376 14 is_stmt 0 view .LVU1843
5023 000c 0323 movs r3, #3
5024 000e 84F83430 strb r3, [r4, #52]
379:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
5025 .loc 1 379 3 is_stmt 1 view .LVU1844
379:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
5026 .loc 1 379 7 is_stmt 0 view .LVU1845
5027 0012 2046 mov r0, r4
5028 0014 FFF7FEFF bl HAL_SD_InitCard
5029 .LVL382:
379:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
5030 .loc 1 379 6 view .LVU1846
5031 0018 58B9 cbnz r0, .L278
385:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
5032 .loc 1 385 3 is_stmt 1 view .LVU1847
ARM GAS /tmp/cc2oBAwl.s page 176
385:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
5033 .loc 1 385 18 is_stmt 0 view .LVU1848
5034 001a A063 str r0, [r4, #56]
388:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
5035 .loc 1 388 3 is_stmt 1 view .LVU1849
388:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
5036 .loc 1 388 16 is_stmt 0 view .LVU1850
5037 001c 2063 str r0, [r4, #48]
391:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
5038 .loc 1 391 3 is_stmt 1 view .LVU1851
391:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
5039 .loc 1 391 14 is_stmt 0 view .LVU1852
5040 001e 0123 movs r3, #1
5041 0020 84F83430 strb r3, [r4, #52]
393:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
5042 .loc 1 393 3 is_stmt 1 view .LVU1853
5043 .L275:
394:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
5044 .loc 1 394 1 is_stmt 0 view .LVU1854
5045 0024 10BD pop {r4, pc}
5046 .LVL383:
5047 .L283:
355:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** #if defined (USE_HAL_SD_REGISTER_CALLBACKS) && (USE_HAL_SD_REGISTER_CALLBACKS == 1U)
5048 .loc 1 355 5 is_stmt 1 view .LVU1855
355:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** #if defined (USE_HAL_SD_REGISTER_CALLBACKS) && (USE_HAL_SD_REGISTER_CALLBACKS == 1U)
5049 .loc 1 355 15 is_stmt 0 view .LVU1856
5050 0026 0377 strb r3, [r0, #28]
372:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** #endif /* USE_HAL_SD_REGISTER_CALLBACKS */
5051 .loc 1 372 5 is_stmt 1 view .LVU1857
5052 0028 FFF7FEFF bl HAL_SD_MspInit
5053 .LVL384:
372:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** #endif /* USE_HAL_SD_REGISTER_CALLBACKS */
5054 .loc 1 372 5 is_stmt 0 view .LVU1858
5055 002c EEE7 b .L276
5056 .LVL385:
5057 .L277:
5058 .LCFI60:
5059 .cfi_def_cfa_offset 0
5060 .cfi_restore 4
5061 .cfi_restore 14
340:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
5062 .loc 1 340 12 view .LVU1859
5063 002e 0120 movs r0, #1
5064 .LVL386:
394:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
5065 .loc 1 394 1 view .LVU1860
5066 0030 7047 bx lr
5067 .LVL387:
5068 .L278:
5069 .LCFI61:
5070 .cfi_def_cfa_offset 8
5071 .cfi_offset 4, -8
5072 .cfi_offset 14, -4
381:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
5073 .loc 1 381 12 view .LVU1861
5074 0032 0120 movs r0, #1
5075 0034 F6E7 b .L275
ARM GAS /tmp/cc2oBAwl.s page 177
5076 .cfi_endproc
5077 .LFE141:
5079 .section .text.HAL_SD_GetCardStatus,"ax",%progbits
5080 .align 1
5081 .global HAL_SD_GetCardStatus
5082 .syntax unified
5083 .thumb
5084 .thumb_func
5085 .fpu fpv5-d16
5087 HAL_SD_GetCardStatus:
5088 .LVL388:
5089 .LFB162:
2100:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t sd_status[16];
5090 .loc 1 2100 1 is_stmt 1 view -0
5091 .cfi_startproc
5092 @ args = 0, pretend = 0, frame = 64
5093 @ frame_needed = 0, uses_anonymous_args = 0
2100:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t sd_status[16];
5094 .loc 1 2100 1 is_stmt 0 view .LVU1863
5095 0000 30B5 push {r4, r5, lr}
5096 .LCFI62:
5097 .cfi_def_cfa_offset 12
5098 .cfi_offset 4, -12
5099 .cfi_offset 5, -8
5100 .cfi_offset 14, -4
5101 0002 91B0 sub sp, sp, #68
5102 .LCFI63:
5103 .cfi_def_cfa_offset 80
5104 0004 0546 mov r5, r0
5105 0006 0C46 mov r4, r1
2101:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t errorstate;
5106 .loc 1 2101 3 is_stmt 1 view .LVU1864
2102:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** HAL_StatusTypeDef status = HAL_OK;
5107 .loc 1 2102 3 view .LVU1865
2103:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
5108 .loc 1 2103 3 view .LVU1866
5109 .LVL389:
2105:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
5110 .loc 1 2105 3 view .LVU1867
2105:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
5111 .loc 1 2105 16 is_stmt 0 view .LVU1868
5112 0008 6946 mov r1, sp
5113 .LVL390:
2105:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
5114 .loc 1 2105 16 view .LVU1869
5115 000a FFF7FEFF bl SD_SendSDStatus
5116 .LVL391:
2106:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
5117 .loc 1 2106 3 is_stmt 1 view .LVU1870
2106:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
5118 .loc 1 2106 5 is_stmt 0 view .LVU1871
5119 000e C0B1 cbz r0, .L285
2109:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= errorstate;
5120 .loc 1 2109 5 is_stmt 1 view .LVU1872
5121 0010 2B68 ldr r3, [r5]
5122 0012 2549 ldr r1, .L289
5123 0014 9963 str r1, [r3, #56]
ARM GAS /tmp/cc2oBAwl.s page 178
2110:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
5124 .loc 1 2110 5 view .LVU1873
2110:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
5125 .loc 1 2110 20 is_stmt 0 view .LVU1874
5126 0016 AB6B ldr r3, [r5, #56]
5127 0018 0343 orrs r3, r3, r0
5128 001a AB63 str r3, [r5, #56]
2111:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** status = HAL_ERROR;
5129 .loc 1 2111 5 is_stmt 1 view .LVU1875
2111:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** status = HAL_ERROR;
5130 .loc 1 2111 16 is_stmt 0 view .LVU1876
5131 001c 0124 movs r4, #1
5132 .LVL392:
2111:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** status = HAL_ERROR;
5133 .loc 1 2111 16 view .LVU1877
5134 001e 85F83440 strb r4, [r5, #52]
2112:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
5135 .loc 1 2112 5 is_stmt 1 view .LVU1878
5136 .LVL393:
5137 .L286:
2139:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
5138 .loc 1 2139 3 view .LVU1879
2139:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
5139 .loc 1 2139 16 is_stmt 0 view .LVU1880
5140 0022 4FF40071 mov r1, #512
5141 0026 2868 ldr r0, [r5]
5142 .LVL394:
2139:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
5143 .loc 1 2139 16 view .LVU1881
5144 0028 FFF7FEFF bl SDMMC_CmdBlockLength
5145 .LVL395:
2140:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
5146 .loc 1 2140 3 is_stmt 1 view .LVU1882
2140:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
5147 .loc 1 2140 5 is_stmt 0 view .LVU1883
5148 002c 30B1 cbz r0, .L287
2143:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode = errorstate;
5149 .loc 1 2143 5 is_stmt 1 view .LVU1884
5150 002e 2A68 ldr r2, [r5]
5151 0030 1D49 ldr r1, .L289
5152 0032 9163 str r1, [r2, #56]
2144:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
5153 .loc 1 2144 5 view .LVU1885
2144:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
5154 .loc 1 2144 20 is_stmt 0 view .LVU1886
5155 0034 A863 str r0, [r5, #56]
2145:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** status = HAL_ERROR;
5156 .loc 1 2145 5 is_stmt 1 view .LVU1887
2145:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** status = HAL_ERROR;
5157 .loc 1 2145 16 is_stmt 0 view .LVU1888
5158 0036 0124 movs r4, #1
5159 .LVL396:
2145:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** status = HAL_ERROR;
5160 .loc 1 2145 16 view .LVU1889
5161 0038 85F83440 strb r4, [r5, #52]
2146:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
5162 .loc 1 2146 5 is_stmt 1 view .LVU1890
ARM GAS /tmp/cc2oBAwl.s page 179
5163 .LVL397:
5164 .L287:
2149:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
5165 .loc 1 2149 3 view .LVU1891
2150:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
5166 .loc 1 2150 1 is_stmt 0 view .LVU1892
5167 003c 2046 mov r0, r4
5168 .LVL398:
2150:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
5169 .loc 1 2150 1 view .LVU1893
5170 003e 11B0 add sp, sp, #68
5171 .LCFI64:
5172 .cfi_remember_state
5173 .cfi_def_cfa_offset 12
5174 @ sp needed
5175 0040 30BD pop {r4, r5, pc}
5176 .LVL399:
5177 .L285:
5178 .LCFI65:
5179 .cfi_restore_state
2116:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
5180 .loc 1 2116 5 is_stmt 1 view .LVU1894
2116:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
5181 .loc 1 2116 49 is_stmt 0 view .LVU1895
5182 0042 009A ldr r2, [sp]
2116:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
5183 .loc 1 2116 29 view .LVU1896
5184 0044 C2F38113 ubfx r3, r2, #6, #2
2116:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
5185 .loc 1 2116 27 view .LVU1897
5186 0048 2370 strb r3, [r4]
2118:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
5187 .loc 1 2118 5 is_stmt 1 view .LVU1898
2118:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
5188 .loc 1 2118 28 is_stmt 0 view .LVU1899
5189 004a C2F34013 ubfx r3, r2, #5, #1
2118:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
5190 .loc 1 2118 26 view .LVU1900
5191 004e 6370 strb r3, [r4, #1]
2120:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
5192 .loc 1 2120 5 is_stmt 1 view .LVU1901
2120:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
5193 .loc 1 2120 66 is_stmt 0 view .LVU1902
5194 0050 130A lsrs r3, r2, #8
2120:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
5195 .loc 1 2120 25 view .LVU1903
5196 0052 23F0FF03 bic r3, r3, #255
5197 0056 43EA1263 orr r3, r3, r2, lsr #24
5198 005a 9BB2 uxth r3, r3
2120:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
5199 .loc 1 2120 23 view .LVU1904
5200 005c 6380 strh r3, [r4, #2] @ movhi
2122:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** ((sd_status[1] & 0xFF0000U) >> 8U) | ((sd_status[1] & 0xFF000000U
5201 .loc 1 2122 5 is_stmt 1 view .LVU1905
2122:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** ((sd_status[1] & 0xFF0000U) >> 8U) | ((sd_status[1] & 0xFF000000U
5202 .loc 1 2122 46 is_stmt 0 view .LVU1906
5203 005e 019A ldr r2, [sp, #4]
ARM GAS /tmp/cc2oBAwl.s page 180
2122:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** ((sd_status[1] & 0xFF0000U) >> 8U) | ((sd_status[1] & 0xFF000000U
5204 .loc 1 2122 98 view .LVU1907
5205 0060 1302 lsls r3, r2, #8
5206 0062 03F47F03 and r3, r3, #16711680
2122:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** ((sd_status[1] & 0xFF0000U) >> 8U) | ((sd_status[1] & 0xFF000000U
5207 .loc 1 2122 70 view .LVU1908
5208 0066 43EA0263 orr r3, r3, r2, lsl #24
2123:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
5209 .loc 1 2123 63 view .LVU1909
5210 006a 110A lsrs r1, r2, #8
5211 006c 01F47F41 and r1, r1, #65280
2122:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** ((sd_status[1] & 0xFF0000U) >> 8U) | ((sd_status[1] & 0xFF000000U
5212 .loc 1 2122 105 view .LVU1910
5213 0070 0B43 orrs r3, r3, r1
2123:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
5214 .loc 1 2123 70 view .LVU1911
5215 0072 43EA1263 orr r3, r3, r2, lsr #24
2122:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** ((sd_status[1] & 0xFF0000U) >> 8U) | ((sd_status[1] & 0xFF000000U
5216 .loc 1 2122 32 view .LVU1912
5217 0076 6360 str r3, [r4, #4]
2125:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
5218 .loc 1 2125 5 is_stmt 1 view .LVU1913
2125:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
5219 .loc 1 2125 46 is_stmt 0 view .LVU1914
5220 0078 029B ldr r3, [sp, #8]
2125:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
5221 .loc 1 2125 27 view .LVU1915
5222 007a DAB2 uxtb r2, r3
2125:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
5223 .loc 1 2125 25 view .LVU1916
5224 007c 2272 strb r2, [r4, #8]
2127:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
5225 .loc 1 2127 5 is_stmt 1 view .LVU1917
2127:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
5226 .loc 1 2127 32 is_stmt 0 view .LVU1918
5227 007e C3F30722 ubfx r2, r3, #8, #8
2127:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
5228 .loc 1 2127 30 view .LVU1919
5229 0082 6272 strb r2, [r4, #9]
2129:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
5230 .loc 1 2129 5 is_stmt 1 view .LVU1920
2129:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
5231 .loc 1 2129 35 is_stmt 0 view .LVU1921
5232 0084 C3F30352 ubfx r2, r3, #20, #4
2129:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
5233 .loc 1 2129 33 view .LVU1922
5234 0088 A272 strb r2, [r4, #10]
2131:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
5235 .loc 1 2131 5 is_stmt 1 view .LVU1923
2131:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
5236 .loc 1 2131 67 is_stmt 0 view .LVU1924
5237 008a 1B0C lsrs r3, r3, #16
2131:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
5238 .loc 1 2131 87 view .LVU1925
5239 008c 039A ldr r2, [sp, #12]
2131:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
5240 .loc 1 2131 91 view .LVU1926
ARM GAS /tmp/cc2oBAwl.s page 181
5241 008e D1B2 uxtb r1, r2
2131:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
5242 .loc 1 2131 26 view .LVU1927
5243 0090 23F0FF03 bic r3, r3, #255
5244 0094 0B43 orrs r3, r3, r1
2131:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
5245 .loc 1 2131 24 view .LVU1928
5246 0096 A381 strh r3, [r4, #12] @ movhi
2133:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
5247 .loc 1 2133 5 is_stmt 1 view .LVU1929
2133:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
5248 .loc 1 2133 29 is_stmt 0 view .LVU1930
5249 0098 C2F38523 ubfx r3, r2, #10, #6
2133:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
5250 .loc 1 2133 27 view .LVU1931
5251 009c A373 strb r3, [r4, #14]
2135:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
5252 .loc 1 2135 5 is_stmt 1 view .LVU1932
2135:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
5253 .loc 1 2135 28 is_stmt 0 view .LVU1933
5254 009e C2F30122 ubfx r2, r2, #8, #2
2135:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
5255 .loc 1 2135 26 view .LVU1934
5256 00a2 E273 strb r2, [r4, #15]
2103:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
5257 .loc 1 2103 21 view .LVU1935
5258 00a4 0024 movs r4, #0
5259 .LVL400:
2103:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
5260 .loc 1 2103 21 view .LVU1936
5261 00a6 BCE7 b .L286
5262 .L290:
5263 .align 2
5264 .L289:
5265 00a8 FF054000 .word 4195839
5266 .cfi_endproc
5267 .LFE162:
5269 .section .text.HAL_SD_GetCardInfo,"ax",%progbits
5270 .align 1
5271 .global HAL_SD_GetCardInfo
5272 .syntax unified
5273 .thumb
5274 .thumb_func
5275 .fpu fpv5-d16
5277 HAL_SD_GetCardInfo:
5278 .LVL401:
5279 .LFB163:
2160:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** pCardInfo->CardType = (uint32_t)(hsd->SdCard.CardType);
5280 .loc 1 2160 1 is_stmt 1 view -0
5281 .cfi_startproc
5282 @ args = 0, pretend = 0, frame = 0
5283 @ frame_needed = 0, uses_anonymous_args = 0
5284 @ link register save eliminated.
2161:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** pCardInfo->CardVersion = (uint32_t)(hsd->SdCard.CardVersion);
5285 .loc 1 2161 3 view .LVU1938
2161:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** pCardInfo->CardVersion = (uint32_t)(hsd->SdCard.CardVersion);
5286 .loc 1 2161 51 is_stmt 0 view .LVU1939
ARM GAS /tmp/cc2oBAwl.s page 182
5287 0000 436C ldr r3, [r0, #68]
2161:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** pCardInfo->CardVersion = (uint32_t)(hsd->SdCard.CardVersion);
5288 .loc 1 2161 27 view .LVU1940
5289 0002 0B60 str r3, [r1]
2162:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** pCardInfo->Class = (uint32_t)(hsd->SdCard.Class);
5290 .loc 1 2162 3 is_stmt 1 view .LVU1941
2162:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** pCardInfo->Class = (uint32_t)(hsd->SdCard.Class);
5291 .loc 1 2162 51 is_stmt 0 view .LVU1942
5292 0004 836C ldr r3, [r0, #72]
2162:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** pCardInfo->Class = (uint32_t)(hsd->SdCard.Class);
5293 .loc 1 2162 27 view .LVU1943
5294 0006 4B60 str r3, [r1, #4]
2163:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** pCardInfo->RelCardAdd = (uint32_t)(hsd->SdCard.RelCardAdd);
5295 .loc 1 2163 3 is_stmt 1 view .LVU1944
2163:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** pCardInfo->RelCardAdd = (uint32_t)(hsd->SdCard.RelCardAdd);
5296 .loc 1 2163 51 is_stmt 0 view .LVU1945
5297 0008 C36C ldr r3, [r0, #76]
2163:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** pCardInfo->RelCardAdd = (uint32_t)(hsd->SdCard.RelCardAdd);
5298 .loc 1 2163 27 view .LVU1946
5299 000a 8B60 str r3, [r1, #8]
2164:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** pCardInfo->BlockNbr = (uint32_t)(hsd->SdCard.BlockNbr);
5300 .loc 1 2164 3 is_stmt 1 view .LVU1947
2164:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** pCardInfo->BlockNbr = (uint32_t)(hsd->SdCard.BlockNbr);
5301 .loc 1 2164 51 is_stmt 0 view .LVU1948
5302 000c 036D ldr r3, [r0, #80]
2164:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** pCardInfo->BlockNbr = (uint32_t)(hsd->SdCard.BlockNbr);
5303 .loc 1 2164 27 view .LVU1949
5304 000e CB60 str r3, [r1, #12]
2165:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** pCardInfo->BlockSize = (uint32_t)(hsd->SdCard.BlockSize);
5305 .loc 1 2165 3 is_stmt 1 view .LVU1950
2165:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** pCardInfo->BlockSize = (uint32_t)(hsd->SdCard.BlockSize);
5306 .loc 1 2165 51 is_stmt 0 view .LVU1951
5307 0010 436D ldr r3, [r0, #84]
2165:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** pCardInfo->BlockSize = (uint32_t)(hsd->SdCard.BlockSize);
5308 .loc 1 2165 27 view .LVU1952
5309 0012 0B61 str r3, [r1, #16]
2166:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** pCardInfo->LogBlockNbr = (uint32_t)(hsd->SdCard.LogBlockNbr);
5310 .loc 1 2166 3 is_stmt 1 view .LVU1953
2166:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** pCardInfo->LogBlockNbr = (uint32_t)(hsd->SdCard.LogBlockNbr);
5311 .loc 1 2166 51 is_stmt 0 view .LVU1954
5312 0014 836D ldr r3, [r0, #88]
2166:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** pCardInfo->LogBlockNbr = (uint32_t)(hsd->SdCard.LogBlockNbr);
5313 .loc 1 2166 27 view .LVU1955
5314 0016 4B61 str r3, [r1, #20]
2167:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** pCardInfo->LogBlockSize = (uint32_t)(hsd->SdCard.LogBlockSize);
5315 .loc 1 2167 3 is_stmt 1 view .LVU1956
2167:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** pCardInfo->LogBlockSize = (uint32_t)(hsd->SdCard.LogBlockSize);
5316 .loc 1 2167 51 is_stmt 0 view .LVU1957
5317 0018 C36D ldr r3, [r0, #92]
2167:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** pCardInfo->LogBlockSize = (uint32_t)(hsd->SdCard.LogBlockSize);
5318 .loc 1 2167 27 view .LVU1958
5319 001a 8B61 str r3, [r1, #24]
2168:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
5320 .loc 1 2168 3 is_stmt 1 view .LVU1959
2168:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
5321 .loc 1 2168 51 is_stmt 0 view .LVU1960
5322 001c 036E ldr r3, [r0, #96]
ARM GAS /tmp/cc2oBAwl.s page 183
2168:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
5323 .loc 1 2168 27 view .LVU1961
5324 001e CB61 str r3, [r1, #28]
2170:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
5325 .loc 1 2170 3 is_stmt 1 view .LVU1962
2171:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
5326 .loc 1 2171 1 is_stmt 0 view .LVU1963
5327 0020 0020 movs r0, #0
5328 .LVL402:
2171:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
5329 .loc 1 2171 1 view .LVU1964
5330 0022 7047 bx lr
5331 .cfi_endproc
5332 .LFE163:
5334 .section .text.HAL_SD_ConfigWideBusOperation,"ax",%progbits
5335 .align 1
5336 .global HAL_SD_ConfigWideBusOperation
5337 .syntax unified
5338 .thumb
5339 .thumb_func
5340 .fpu fpv5-d16
5342 HAL_SD_ConfigWideBusOperation:
5343 .LVL403:
5344 .LFB164:
2185:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** SDMMC_InitTypeDef Init;
5345 .loc 1 2185 1 is_stmt 1 view -0
5346 .cfi_startproc
5347 @ args = 0, pretend = 0, frame = 24
5348 @ frame_needed = 0, uses_anonymous_args = 0
2185:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** SDMMC_InitTypeDef Init;
5349 .loc 1 2185 1 is_stmt 0 view .LVU1966
5350 0000 30B5 push {r4, r5, lr}
5351 .LCFI66:
5352 .cfi_def_cfa_offset 12
5353 .cfi_offset 4, -12
5354 .cfi_offset 5, -8
5355 .cfi_offset 14, -4
5356 0002 8BB0 sub sp, sp, #44
5357 .LCFI67:
5358 .cfi_def_cfa_offset 56
5359 0004 0446 mov r4, r0
5360 0006 0D46 mov r5, r1
2186:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t errorstate;
5361 .loc 1 2186 3 is_stmt 1 view .LVU1967
2187:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** HAL_StatusTypeDef status = HAL_OK;
5362 .loc 1 2187 3 view .LVU1968
2188:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
5363 .loc 1 2188 3 view .LVU1969
5364 .LVL404:
2191:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
5365 .loc 1 2191 3 view .LVU1970
2194:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
5366 .loc 1 2194 3 view .LVU1971
2194:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
5367 .loc 1 2194 14 is_stmt 0 view .LVU1972
5368 0008 0323 movs r3, #3
5369 000a 80F83430 strb r3, [r0, #52]
ARM GAS /tmp/cc2oBAwl.s page 184
2196:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
5370 .loc 1 2196 3 is_stmt 1 view .LVU1973
2196:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
5371 .loc 1 2196 17 is_stmt 0 view .LVU1974
5372 000e 436C ldr r3, [r0, #68]
2196:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
5373 .loc 1 2196 5 view .LVU1975
5374 0010 032B cmp r3, #3
5375 0012 1CD0 beq .L293
2198:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
5376 .loc 1 2198 5 is_stmt 1 view .LVU1976
2198:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
5377 .loc 1 2198 7 is_stmt 0 view .LVU1977
5378 0014 B1F5805F cmp r1, #4096
5379 0018 08D0 beq .L302
2202:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
5380 .loc 1 2202 10 is_stmt 1 view .LVU1978
2202:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
5381 .loc 1 2202 12 is_stmt 0 view .LVU1979
5382 001a B1F5006F cmp r1, #2048
5383 001e 0AD0 beq .L303
2208:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
5384 .loc 1 2208 10 is_stmt 1 view .LVU1980
2208:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
5385 .loc 1 2208 12 is_stmt 0 view .LVU1981
5386 0020 79B1 cbz r1, .L304
2217:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
5387 .loc 1 2217 7 is_stmt 1 view .LVU1982
2217:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
5388 .loc 1 2217 22 is_stmt 0 view .LVU1983
5389 0022 836B ldr r3, [r0, #56]
5390 0024 43F00063 orr r3, r3, #134217728
5391 0028 8363 str r3, [r0, #56]
5392 002a 14E0 b .L295
5393 .L302:
2200:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
5394 .loc 1 2200 7 is_stmt 1 view .LVU1984
2200:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
5395 .loc 1 2200 22 is_stmt 0 view .LVU1985
5396 002c 836B ldr r3, [r0, #56]
5397 002e 43F08053 orr r3, r3, #268435456
5398 0032 8363 str r3, [r0, #56]
5399 0034 0FE0 b .L295
5400 .L303:
2204:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
5401 .loc 1 2204 7 is_stmt 1 view .LVU1986
2204:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
5402 .loc 1 2204 20 is_stmt 0 view .LVU1987
5403 0036 FFF7FEFF bl SD_WideBus_Enable
5404 .LVL405:
2206:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
5405 .loc 1 2206 7 is_stmt 1 view .LVU1988
2206:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
5406 .loc 1 2206 22 is_stmt 0 view .LVU1989
5407 003a A36B ldr r3, [r4, #56]
5408 003c 0343 orrs r3, r3, r0
5409 003e A363 str r3, [r4, #56]
ARM GAS /tmp/cc2oBAwl.s page 185
5410 0040 09E0 b .L295
5411 .LVL406:
5412 .L304:
2210:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
5413 .loc 1 2210 7 is_stmt 1 view .LVU1990
2210:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
5414 .loc 1 2210 20 is_stmt 0 view .LVU1991
5415 0042 FFF7FEFF bl SD_WideBus_Disable
5416 .LVL407:
2212:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
5417 .loc 1 2212 7 is_stmt 1 view .LVU1992
2212:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
5418 .loc 1 2212 22 is_stmt 0 view .LVU1993
5419 0046 A36B ldr r3, [r4, #56]
5420 0048 0343 orrs r3, r3, r0
5421 004a A363 str r3, [r4, #56]
5422 004c 03E0 b .L295
5423 .LVL408:
5424 .L293:
2223:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
5425 .loc 1 2223 5 is_stmt 1 view .LVU1994
2223:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
5426 .loc 1 2223 20 is_stmt 0 view .LVU1995
5427 004e 836B ldr r3, [r0, #56]
5428 0050 43F08053 orr r3, r3, #268435456
5429 0054 8363 str r3, [r0, #56]
5430 .LVL409:
5431 .L295:
2226:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
5432 .loc 1 2226 3 is_stmt 1 view .LVU1996
2226:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
5433 .loc 1 2226 9 is_stmt 0 view .LVU1997
5434 0056 A36B ldr r3, [r4, #56]
2226:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
5435 .loc 1 2226 5 view .LVU1998
5436 0058 C3B1 cbz r3, .L298
2229:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
5437 .loc 1 2229 5 is_stmt 1 view .LVU1999
5438 005a 2368 ldr r3, [r4]
5439 005c 174A ldr r2, .L305
5440 005e 9A63 str r2, [r3, #56]
2230:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** status = HAL_ERROR;
5441 .loc 1 2230 5 view .LVU2000
2230:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** status = HAL_ERROR;
5442 .loc 1 2230 16 is_stmt 0 view .LVU2001
5443 0060 0125 movs r5, #1
5444 .LVL410:
2230:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** status = HAL_ERROR;
5445 .loc 1 2230 16 view .LVU2002
5446 0062 84F83450 strb r5, [r4, #52]
2231:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
5447 .loc 1 2231 5 is_stmt 1 view .LVU2003
5448 .LVL411:
5449 .L299:
2246:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
5450 .loc 1 2246 3 view .LVU2004
2246:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
ARM GAS /tmp/cc2oBAwl.s page 186
5451 .loc 1 2246 16 is_stmt 0 view .LVU2005
5452 0066 4FF40071 mov r1, #512
5453 006a 2068 ldr r0, [r4]
5454 006c FFF7FEFF bl SDMMC_CmdBlockLength
5455 .LVL412:
2247:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
5456 .loc 1 2247 3 is_stmt 1 view .LVU2006
2247:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
5457 .loc 1 2247 5 is_stmt 0 view .LVU2007
5458 0070 30B1 cbz r0, .L300
2250:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->ErrorCode |= errorstate;
5459 .loc 1 2250 5 is_stmt 1 view .LVU2008
5460 0072 2368 ldr r3, [r4]
5461 0074 1149 ldr r1, .L305
5462 0076 9963 str r1, [r3, #56]
2251:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** status = HAL_ERROR;
5463 .loc 1 2251 5 view .LVU2009
2251:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** status = HAL_ERROR;
5464 .loc 1 2251 20 is_stmt 0 view .LVU2010
5465 0078 A36B ldr r3, [r4, #56]
5466 007a 0343 orrs r3, r3, r0
5467 007c A363 str r3, [r4, #56]
2252:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
5468 .loc 1 2252 5 is_stmt 1 view .LVU2011
5469 .LVL413:
2252:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
5470 .loc 1 2252 12 is_stmt 0 view .LVU2012
5471 007e 0125 movs r5, #1
5472 .LVL414:
5473 .L300:
2256:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
5474 .loc 1 2256 3 is_stmt 1 view .LVU2013
2256:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
5475 .loc 1 2256 14 is_stmt 0 view .LVU2014
5476 0080 0123 movs r3, #1
5477 0082 84F83430 strb r3, [r4, #52]
2258:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
5478 .loc 1 2258 3 is_stmt 1 view .LVU2015
2259:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
5479 .loc 1 2259 1 is_stmt 0 view .LVU2016
5480 0086 2846 mov r0, r5
5481 .LVL415:
2259:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
5482 .loc 1 2259 1 view .LVU2017
5483 0088 0BB0 add sp, sp, #44
5484 .LCFI68:
5485 .cfi_remember_state
5486 .cfi_def_cfa_offset 12
5487 @ sp needed
5488 008a 30BD pop {r4, r5, pc}
5489 .LVL416:
5490 .L298:
5491 .LCFI69:
5492 .cfi_restore_state
2236:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** Init.ClockBypass = hsd->Init.ClockBypass;
5493 .loc 1 2236 5 is_stmt 1 view .LVU2018
2236:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** Init.ClockBypass = hsd->Init.ClockBypass;
ARM GAS /tmp/cc2oBAwl.s page 187
5494 .loc 1 2236 41 is_stmt 0 view .LVU2019
5495 008c 6368 ldr r3, [r4, #4]
2236:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** Init.ClockBypass = hsd->Init.ClockBypass;
5496 .loc 1 2236 30 view .LVU2020
5497 008e 0493 str r3, [sp, #16]
2237:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** Init.ClockPowerSave = hsd->Init.ClockPowerSave;
5498 .loc 1 2237 5 is_stmt 1 view .LVU2021
2237:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** Init.ClockPowerSave = hsd->Init.ClockPowerSave;
5499 .loc 1 2237 41 is_stmt 0 view .LVU2022
5500 0090 A368 ldr r3, [r4, #8]
2237:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** Init.ClockPowerSave = hsd->Init.ClockPowerSave;
5501 .loc 1 2237 30 view .LVU2023
5502 0092 0593 str r3, [sp, #20]
2238:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** Init.BusWide = WideMode;
5503 .loc 1 2238 5 is_stmt 1 view .LVU2024
2238:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** Init.BusWide = WideMode;
5504 .loc 1 2238 41 is_stmt 0 view .LVU2025
5505 0094 E368 ldr r3, [r4, #12]
2238:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** Init.BusWide = WideMode;
5506 .loc 1 2238 30 view .LVU2026
5507 0096 0693 str r3, [sp, #24]
2239:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** Init.HardwareFlowControl = hsd->Init.HardwareFlowControl;
5508 .loc 1 2239 5 is_stmt 1 view .LVU2027
2239:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** Init.HardwareFlowControl = hsd->Init.HardwareFlowControl;
5509 .loc 1 2239 30 is_stmt 0 view .LVU2028
5510 0098 0795 str r5, [sp, #28]
2240:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** Init.ClockDiv = hsd->Init.ClockDiv;
5511 .loc 1 2240 5 is_stmt 1 view .LVU2029
2240:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** Init.ClockDiv = hsd->Init.ClockDiv;
5512 .loc 1 2240 41 is_stmt 0 view .LVU2030
5513 009a 6369 ldr r3, [r4, #20]
2240:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** Init.ClockDiv = hsd->Init.ClockDiv;
5514 .loc 1 2240 30 view .LVU2031
5515 009c 0893 str r3, [sp, #32]
2241:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** (void)SDMMC_Init(hsd->Instance, Init);
5516 .loc 1 2241 5 is_stmt 1 view .LVU2032
2241:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** (void)SDMMC_Init(hsd->Instance, Init);
5517 .loc 1 2241 41 is_stmt 0 view .LVU2033
5518 009e A369 ldr r3, [r4, #24]
2241:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** (void)SDMMC_Init(hsd->Instance, Init);
5519 .loc 1 2241 30 view .LVU2034
5520 00a0 0993 str r3, [sp, #36]
2242:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
5521 .loc 1 2242 5 is_stmt 1 view .LVU2035
2242:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
5522 .loc 1 2242 11 is_stmt 0 view .LVU2036
5523 00a2 0AAB add r3, sp, #40
5524 00a4 13E90700 ldmdb r3, {r0, r1, r2}
5525 00a8 8DE80700 stm sp, {r0, r1, r2}
5526 00ac 04AB add r3, sp, #16
5527 00ae 0ECB ldm r3, {r1, r2, r3}
5528 00b0 2068 ldr r0, [r4]
5529 00b2 FFF7FEFF bl SDMMC_Init
5530 .LVL417:
2188:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
5531 .loc 1 2188 21 view .LVU2037
5532 00b6 0025 movs r5, #0
ARM GAS /tmp/cc2oBAwl.s page 188
5533 .LVL418:
2188:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
5534 .loc 1 2188 21 view .LVU2038
5535 00b8 D5E7 b .L299
5536 .L306:
5537 00ba 00BF .align 2
5538 .L305:
5539 00bc FF054000 .word 4195839
5540 .cfi_endproc
5541 .LFE164:
5543 .section .text.HAL_SD_GetCardState,"ax",%progbits
5544 .align 1
5545 .global HAL_SD_GetCardState
5546 .syntax unified
5547 .thumb
5548 .thumb_func
5549 .fpu fpv5-d16
5551 HAL_SD_GetCardState:
5552 .LVL419:
5553 .LFB165:
2267:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t cardstate;
5554 .loc 1 2267 1 is_stmt 1 view -0
5555 .cfi_startproc
5556 @ args = 0, pretend = 0, frame = 8
5557 @ frame_needed = 0, uses_anonymous_args = 0
2267:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t cardstate;
5558 .loc 1 2267 1 is_stmt 0 view .LVU2040
5559 0000 10B5 push {r4, lr}
5560 .LCFI70:
5561 .cfi_def_cfa_offset 8
5562 .cfi_offset 4, -8
5563 .cfi_offset 14, -4
5564 0002 82B0 sub sp, sp, #8
5565 .LCFI71:
5566 .cfi_def_cfa_offset 16
5567 0004 0446 mov r4, r0
2268:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t errorstate;
5568 .loc 1 2268 3 is_stmt 1 view .LVU2041
2269:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t resp1 = 0;
5569 .loc 1 2269 3 view .LVU2042
2270:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
5570 .loc 1 2270 3 view .LVU2043
2270:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
5571 .loc 1 2270 12 is_stmt 0 view .LVU2044
5572 0006 0023 movs r3, #0
5573 0008 0193 str r3, [sp, #4]
2272:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
5574 .loc 1 2272 3 is_stmt 1 view .LVU2045
2272:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
5575 .loc 1 2272 16 is_stmt 0 view .LVU2046
5576 000a 01A9 add r1, sp, #4
5577 000c FFF7FEFF bl SD_SendStatus
5578 .LVL420:
2273:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
5579 .loc 1 2273 3 is_stmt 1 view .LVU2047
2273:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
5580 .loc 1 2273 5 is_stmt 0 view .LVU2048
ARM GAS /tmp/cc2oBAwl.s page 189
5581 0010 10B1 cbz r0, .L308
2275:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
5582 .loc 1 2275 5 is_stmt 1 view .LVU2049
2275:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
5583 .loc 1 2275 20 is_stmt 0 view .LVU2050
5584 0012 A36B ldr r3, [r4, #56]
5585 0014 0343 orrs r3, r3, r0
5586 0016 A363 str r3, [r4, #56]
5587 .L308:
2278:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
5588 .loc 1 2278 3 is_stmt 1 view .LVU2051
5589 .LVL421:
2280:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
5590 .loc 1 2280 3 view .LVU2052
2281:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
5591 .loc 1 2281 1 is_stmt 0 view .LVU2053
5592 0018 0198 ldr r0, [sp, #4]
5593 .LVL422:
2281:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
5594 .loc 1 2281 1 view .LVU2054
5595 001a C0F34320 ubfx r0, r0, #9, #4
5596 .LVL423:
2281:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
5597 .loc 1 2281 1 view .LVU2055
5598 001e 02B0 add sp, sp, #8
5599 .LCFI72:
5600 .cfi_def_cfa_offset 8
5601 @ sp needed
5602 0020 10BD pop {r4, pc}
2281:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
5603 .loc 1 2281 1 view .LVU2056
5604 .cfi_endproc
5605 .LFE165:
5607 .section .text.SD_DMAError,"ax",%progbits
5608 .align 1
5609 .syntax unified
5610 .thumb
5611 .thumb_func
5612 .fpu fpv5-d16
5614 SD_DMAError:
5615 .LVL424:
5616 .LFB170:
2496:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** SD_HandleTypeDef* hsd = (SD_HandleTypeDef* )(hdma->Parent);
5617 .loc 1 2496 1 is_stmt 1 view -0
5618 .cfi_startproc
5619 @ args = 0, pretend = 0, frame = 0
5620 @ frame_needed = 0, uses_anonymous_args = 0
2496:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** SD_HandleTypeDef* hsd = (SD_HandleTypeDef* )(hdma->Parent);
5621 .loc 1 2496 1 is_stmt 0 view .LVU2058
5622 0000 10B5 push {r4, lr}
5623 .LCFI73:
5624 .cfi_def_cfa_offset 8
5625 .cfi_offset 4, -8
5626 .cfi_offset 14, -4
2497:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** HAL_SD_CardStateTypeDef CardState;
5627 .loc 1 2497 3 is_stmt 1 view .LVU2059
2497:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** HAL_SD_CardStateTypeDef CardState;
ARM GAS /tmp/cc2oBAwl.s page 190
5628 .loc 1 2497 21 is_stmt 0 view .LVU2060
5629 0002 846B ldr r4, [r0, #56]
5630 .LVL425:
2498:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t RxErrorCode, TxErrorCode;
5631 .loc 1 2498 3 is_stmt 1 view .LVU2061
2499:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
5632 .loc 1 2499 3 view .LVU2062
2502:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
5633 .loc 1 2502 3 view .LVU2063
2502:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
5634 .loc 1 2502 6 is_stmt 0 view .LVU2064
5635 0004 FFF7FEFF bl HAL_DMA_GetError
5636 .LVL426:
2502:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
5637 .loc 1 2502 5 view .LVU2065
5638 0008 0228 cmp r0, #2
5639 000a 0AD0 beq .L310
2504:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** TxErrorCode = hsd->hdmatx->ErrorCode;
5640 .loc 1 2504 5 is_stmt 1 view .LVU2066
2504:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** TxErrorCode = hsd->hdmatx->ErrorCode;
5641 .loc 1 2504 22 is_stmt 0 view .LVU2067
5642 000c 236C ldr r3, [r4, #64]
2504:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** TxErrorCode = hsd->hdmatx->ErrorCode;
5643 .loc 1 2504 17 view .LVU2068
5644 000e 5A6D ldr r2, [r3, #84]
5645 .LVL427:
2505:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if((RxErrorCode == HAL_DMA_ERROR_TE) || (TxErrorCode == HAL_DMA_ERROR_TE))
5646 .loc 1 2505 5 is_stmt 1 view .LVU2069
2505:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if((RxErrorCode == HAL_DMA_ERROR_TE) || (TxErrorCode == HAL_DMA_ERROR_TE))
5647 .loc 1 2505 22 is_stmt 0 view .LVU2070
5648 0010 E36B ldr r3, [r4, #60]
2505:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if((RxErrorCode == HAL_DMA_ERROR_TE) || (TxErrorCode == HAL_DMA_ERROR_TE))
5649 .loc 1 2505 17 view .LVU2071
5650 0012 5B6D ldr r3, [r3, #84]
5651 .LVL428:
2506:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
5652 .loc 1 2506 5 is_stmt 1 view .LVU2072
2506:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
5653 .loc 1 2506 7 is_stmt 0 view .LVU2073
5654 0014 012B cmp r3, #1
5655 0016 18BF it ne
5656 0018 012A cmpne r2, #1
5657 001a 03D0 beq .L315
5658 .LVL429:
5659 .L312:
2529:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** #endif
5660 .loc 1 2529 5 is_stmt 1 view .LVU2074
5661 001c 2046 mov r0, r4
5662 001e FFF7FEFF bl HAL_SD_ErrorCallback
5663 .LVL430:
5664 .L310:
2532:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
5665 .loc 1 2532 1 is_stmt 0 view .LVU2075
5666 0022 10BD pop {r4, pc}
5667 .LVL431:
5668 .L315:
2509:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
ARM GAS /tmp/cc2oBAwl.s page 191
5669 .loc 1 2509 7 is_stmt 1 view .LVU2076
5670 0024 2368 ldr r3, [r4]
5671 .LVL432:
2509:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
5672 .loc 1 2509 7 is_stmt 0 view .LVU2077
5673 0026 0F4A ldr r2, .L317
5674 .LVL433:
2509:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
5675 .loc 1 2509 7 view .LVU2078
5676 0028 9A63 str r2, [r3, #56]
2512:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** SDMMC_IT_TXUNDERR| SDMMC_IT_RXOVERR);
5677 .loc 1 2512 7 is_stmt 1 view .LVU2079
5678 002a 2268 ldr r2, [r4]
5679 002c D36B ldr r3, [r2, #60]
5680 002e 23F49D73 bic r3, r3, #314
5681 0032 D363 str r3, [r2, #60]
2515:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** CardState = HAL_SD_GetCardState(hsd);
5682 .loc 1 2515 7 view .LVU2080
2515:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** CardState = HAL_SD_GetCardState(hsd);
5683 .loc 1 2515 22 is_stmt 0 view .LVU2081
5684 0034 A36B ldr r3, [r4, #56]
5685 0036 43F08043 orr r3, r3, #1073741824
5686 003a A363 str r3, [r4, #56]
2516:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if((CardState == HAL_SD_CARD_RECEIVING) || (CardState == HAL_SD_CARD_SENDING))
5687 .loc 1 2516 7 is_stmt 1 view .LVU2082
2516:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if((CardState == HAL_SD_CARD_RECEIVING) || (CardState == HAL_SD_CARD_SENDING))
5688 .loc 1 2516 19 is_stmt 0 view .LVU2083
5689 003c 2046 mov r0, r4
5690 003e FFF7FEFF bl HAL_SD_GetCardState
5691 .LVL434:
2517:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
5692 .loc 1 2517 7 is_stmt 1 view .LVU2084
2517:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
5693 .loc 1 2517 47 is_stmt 0 view .LVU2085
5694 0042 0538 subs r0, r0, #5
5695 .LVL435:
2517:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
5696 .loc 1 2517 9 view .LVU2086
5697 0044 0128 cmp r0, #1
5698 0046 05D9 bls .L316
5699 .LVL436:
5700 .L313:
2522:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Context = SD_CONTEXT_NONE;
5701 .loc 1 2522 7 is_stmt 1 view .LVU2087
2522:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Context = SD_CONTEXT_NONE;
5702 .loc 1 2522 17 is_stmt 0 view .LVU2088
5703 0048 0123 movs r3, #1
5704 004a 84F83430 strb r3, [r4, #52]
2523:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
5705 .loc 1 2523 7 is_stmt 1 view .LVU2089
2523:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
5706 .loc 1 2523 20 is_stmt 0 view .LVU2090
5707 004e 0023 movs r3, #0
5708 0050 2363 str r3, [r4, #48]
5709 0052 E3E7 b .L312
5710 .LVL437:
5711 .L316:
ARM GAS /tmp/cc2oBAwl.s page 192
2519:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
5712 .loc 1 2519 9 is_stmt 1 view .LVU2091
2519:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
5713 .loc 1 2519 27 is_stmt 0 view .LVU2092
5714 0054 2068 ldr r0, [r4]
5715 .LVL438:
2519:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
5716 .loc 1 2519 27 view .LVU2093
5717 0056 FFF7FEFF bl SDMMC_CmdStopTransfer
5718 .LVL439:
2519:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
5719 .loc 1 2519 24 view .LVU2094
5720 005a A36B ldr r3, [r4, #56]
5721 005c 0343 orrs r3, r3, r0
5722 005e A363 str r3, [r4, #56]
5723 0060 F2E7 b .L313
5724 .L318:
5725 0062 00BF .align 2
5726 .L317:
5727 0064 FF054000 .word 4195839
5728 .cfi_endproc
5729 .LFE170:
5731 .section .text.SD_DMATxAbort,"ax",%progbits
5732 .align 1
5733 .syntax unified
5734 .thumb
5735 .thumb_func
5736 .fpu fpv5-d16
5738 SD_DMATxAbort:
5739 .LVL440:
5740 .LFB171:
2540:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** SD_HandleTypeDef* hsd = (SD_HandleTypeDef* )(hdma->Parent);
5741 .loc 1 2540 1 is_stmt 1 view -0
5742 .cfi_startproc
5743 @ args = 0, pretend = 0, frame = 0
5744 @ frame_needed = 0, uses_anonymous_args = 0
2540:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** SD_HandleTypeDef* hsd = (SD_HandleTypeDef* )(hdma->Parent);
5745 .loc 1 2540 1 is_stmt 0 view .LVU2096
5746 0000 10B5 push {r4, lr}
5747 .LCFI74:
5748 .cfi_def_cfa_offset 8
5749 .cfi_offset 4, -8
5750 .cfi_offset 14, -4
2541:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** HAL_SD_CardStateTypeDef CardState;
5751 .loc 1 2541 3 is_stmt 1 view .LVU2097
2541:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** HAL_SD_CardStateTypeDef CardState;
5752 .loc 1 2541 21 is_stmt 0 view .LVU2098
5753 0002 846B ldr r4, [r0, #56]
5754 .LVL441:
2542:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
5755 .loc 1 2542 3 is_stmt 1 view .LVU2099
2545:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
5756 .loc 1 2545 3 view .LVU2100
5757 0004 2368 ldr r3, [r4]
5758 0006 40F23A52 movw r2, #1338
5759 000a 9A63 str r2, [r3, #56]
2547:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
ARM GAS /tmp/cc2oBAwl.s page 193
5760 .loc 1 2547 3 view .LVU2101
2547:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
5761 .loc 1 2547 15 is_stmt 0 view .LVU2102
5762 000c 2046 mov r0, r4
5763 .LVL442:
2547:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
5764 .loc 1 2547 15 view .LVU2103
5765 000e FFF7FEFF bl HAL_SD_GetCardState
5766 .LVL443:
2548:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Context = SD_CONTEXT_NONE;
5767 .loc 1 2548 3 is_stmt 1 view .LVU2104
2548:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Context = SD_CONTEXT_NONE;
5768 .loc 1 2548 14 is_stmt 0 view .LVU2105
5769 0012 0123 movs r3, #1
5770 0014 84F83430 strb r3, [r4, #52]
2549:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if((CardState == HAL_SD_CARD_RECEIVING) || (CardState == HAL_SD_CARD_SENDING))
5771 .loc 1 2549 3 is_stmt 1 view .LVU2106
2549:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if((CardState == HAL_SD_CARD_RECEIVING) || (CardState == HAL_SD_CARD_SENDING))
5772 .loc 1 2549 16 is_stmt 0 view .LVU2107
5773 0018 0023 movs r3, #0
5774 001a 2363 str r3, [r4, #48]
2550:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
5775 .loc 1 2550 3 is_stmt 1 view .LVU2108
2550:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
5776 .loc 1 2550 43 is_stmt 0 view .LVU2109
5777 001c 0538 subs r0, r0, #5
5778 .LVL444:
2550:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
5779 .loc 1 2550 5 view .LVU2110
5780 001e 0128 cmp r0, #1
5781 0020 05D9 bls .L324
5782 .LVL445:
5783 .L320:
2555:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
5784 .loc 1 2555 3 is_stmt 1 view .LVU2111
2555:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
5785 .loc 1 2555 9 is_stmt 0 view .LVU2112
5786 0022 A36B ldr r3, [r4, #56]
2555:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
5787 .loc 1 2555 5 view .LVU2113
5788 0024 53B9 cbnz r3, .L321
2560:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** #endif
5789 .loc 1 2560 5 is_stmt 1 view .LVU2114
5790 0026 2046 mov r0, r4
5791 0028 FFF7FEFF bl HAL_SD_AbortCallback
5792 .LVL446:
5793 .L319:
2571:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
5794 .loc 1 2571 1 is_stmt 0 view .LVU2115
5795 002c 10BD pop {r4, pc}
5796 .LVL447:
5797 .L324:
2552:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
5798 .loc 1 2552 5 is_stmt 1 view .LVU2116
2552:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
5799 .loc 1 2552 23 is_stmt 0 view .LVU2117
5800 002e 2068 ldr r0, [r4]
ARM GAS /tmp/cc2oBAwl.s page 194
5801 .LVL448:
2552:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
5802 .loc 1 2552 23 view .LVU2118
5803 0030 FFF7FEFF bl SDMMC_CmdStopTransfer
5804 .LVL449:
2552:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
5805 .loc 1 2552 20 view .LVU2119
5806 0034 A36B ldr r3, [r4, #56]
5807 0036 0343 orrs r3, r3, r0
5808 0038 A363 str r3, [r4, #56]
5809 003a F2E7 b .L320
5810 .L321:
2568:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** #endif
5811 .loc 1 2568 5 is_stmt 1 view .LVU2120
5812 003c 2046 mov r0, r4
5813 003e FFF7FEFF bl HAL_SD_ErrorCallback
5814 .LVL450:
2571:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
5815 .loc 1 2571 1 is_stmt 0 view .LVU2121
5816 0042 F3E7 b .L319
5817 .cfi_endproc
5818 .LFE171:
5820 .section .text.SD_DMARxAbort,"ax",%progbits
5821 .align 1
5822 .syntax unified
5823 .thumb
5824 .thumb_func
5825 .fpu fpv5-d16
5827 SD_DMARxAbort:
5828 .LVL451:
5829 .LFB172:
2579:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** SD_HandleTypeDef* hsd = (SD_HandleTypeDef* )(hdma->Parent);
5830 .loc 1 2579 1 is_stmt 1 view -0
5831 .cfi_startproc
5832 @ args = 0, pretend = 0, frame = 0
5833 @ frame_needed = 0, uses_anonymous_args = 0
2579:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** SD_HandleTypeDef* hsd = (SD_HandleTypeDef* )(hdma->Parent);
5834 .loc 1 2579 1 is_stmt 0 view .LVU2123
5835 0000 10B5 push {r4, lr}
5836 .LCFI75:
5837 .cfi_def_cfa_offset 8
5838 .cfi_offset 4, -8
5839 .cfi_offset 14, -4
2580:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** HAL_SD_CardStateTypeDef CardState;
5840 .loc 1 2580 3 is_stmt 1 view .LVU2124
2580:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** HAL_SD_CardStateTypeDef CardState;
5841 .loc 1 2580 21 is_stmt 0 view .LVU2125
5842 0002 846B ldr r4, [r0, #56]
5843 .LVL452:
2581:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
5844 .loc 1 2581 3 is_stmt 1 view .LVU2126
2584:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
5845 .loc 1 2584 3 view .LVU2127
5846 0004 2368 ldr r3, [r4]
5847 0006 40F23A52 movw r2, #1338
5848 000a 9A63 str r2, [r3, #56]
2586:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
ARM GAS /tmp/cc2oBAwl.s page 195
5849 .loc 1 2586 3 view .LVU2128
2586:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
5850 .loc 1 2586 15 is_stmt 0 view .LVU2129
5851 000c 2046 mov r0, r4
5852 .LVL453:
2586:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
5853 .loc 1 2586 15 view .LVU2130
5854 000e FFF7FEFF bl HAL_SD_GetCardState
5855 .LVL454:
2587:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Context = SD_CONTEXT_NONE;
5856 .loc 1 2587 3 is_stmt 1 view .LVU2131
2587:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Context = SD_CONTEXT_NONE;
5857 .loc 1 2587 14 is_stmt 0 view .LVU2132
5858 0012 0123 movs r3, #1
5859 0014 84F83430 strb r3, [r4, #52]
2588:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if((CardState == HAL_SD_CARD_RECEIVING) || (CardState == HAL_SD_CARD_SENDING))
5860 .loc 1 2588 3 is_stmt 1 view .LVU2133
2588:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if((CardState == HAL_SD_CARD_RECEIVING) || (CardState == HAL_SD_CARD_SENDING))
5861 .loc 1 2588 16 is_stmt 0 view .LVU2134
5862 0018 0023 movs r3, #0
5863 001a 2363 str r3, [r4, #48]
2589:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
5864 .loc 1 2589 3 is_stmt 1 view .LVU2135
2589:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
5865 .loc 1 2589 43 is_stmt 0 view .LVU2136
5866 001c 0538 subs r0, r0, #5
5867 .LVL455:
2589:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
5868 .loc 1 2589 5 view .LVU2137
5869 001e 0128 cmp r0, #1
5870 0020 05D9 bls .L330
5871 .LVL456:
5872 .L326:
2594:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
5873 .loc 1 2594 3 is_stmt 1 view .LVU2138
2594:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
5874 .loc 1 2594 9 is_stmt 0 view .LVU2139
5875 0022 A36B ldr r3, [r4, #56]
2594:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
5876 .loc 1 2594 5 view .LVU2140
5877 0024 53B9 cbnz r3, .L327
2599:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** #endif
5878 .loc 1 2599 5 is_stmt 1 view .LVU2141
5879 0026 2046 mov r0, r4
5880 0028 FFF7FEFF bl HAL_SD_AbortCallback
5881 .LVL457:
5882 .L325:
2610:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
5883 .loc 1 2610 1 is_stmt 0 view .LVU2142
5884 002c 10BD pop {r4, pc}
5885 .LVL458:
5886 .L330:
2591:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
5887 .loc 1 2591 5 is_stmt 1 view .LVU2143
2591:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
5888 .loc 1 2591 23 is_stmt 0 view .LVU2144
5889 002e 2068 ldr r0, [r4]
ARM GAS /tmp/cc2oBAwl.s page 196
5890 .LVL459:
2591:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
5891 .loc 1 2591 23 view .LVU2145
5892 0030 FFF7FEFF bl SDMMC_CmdStopTransfer
5893 .LVL460:
2591:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
5894 .loc 1 2591 20 view .LVU2146
5895 0034 A36B ldr r3, [r4, #56]
5896 0036 0343 orrs r3, r3, r0
5897 0038 A363 str r3, [r4, #56]
5898 003a F2E7 b .L326
5899 .L327:
2607:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** #endif
5900 .loc 1 2607 5 is_stmt 1 view .LVU2147
5901 003c 2046 mov r0, r4
5902 003e FFF7FEFF bl HAL_SD_ErrorCallback
5903 .LVL461:
2610:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
5904 .loc 1 2610 1 is_stmt 0 view .LVU2148
5905 0042 F3E7 b .L325
5906 .cfi_endproc
5907 .LFE172:
5909 .section .text.HAL_SD_IRQHandler,"ax",%progbits
5910 .align 1
5911 .global HAL_SD_IRQHandler
5912 .syntax unified
5913 .thumb
5914 .thumb_func
5915 .fpu fpv5-d16
5917 HAL_SD_IRQHandler:
5918 .LVL462:
5919 .LFB153:
1485:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t errorstate;
5920 .loc 1 1485 1 is_stmt 1 view -0
5921 .cfi_startproc
5922 @ args = 0, pretend = 0, frame = 0
5923 @ frame_needed = 0, uses_anonymous_args = 0
1485:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t errorstate;
5924 .loc 1 1485 1 is_stmt 0 view .LVU2150
5925 0000 38B5 push {r3, r4, r5, lr}
5926 .LCFI76:
5927 .cfi_def_cfa_offset 16
5928 .cfi_offset 3, -16
5929 .cfi_offset 4, -12
5930 .cfi_offset 5, -8
5931 .cfi_offset 14, -4
5932 0002 0446 mov r4, r0
1486:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t context = hsd->Context;
5933 .loc 1 1486 3 is_stmt 1 view .LVU2151
1487:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
5934 .loc 1 1487 3 view .LVU2152
1487:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
5935 .loc 1 1487 12 is_stmt 0 view .LVU2153
5936 0004 056B ldr r5, [r0, #48]
5937 .LVL463:
1490:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
5938 .loc 1 1490 3 is_stmt 1 view .LVU2154
ARM GAS /tmp/cc2oBAwl.s page 197
1490:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
5939 .loc 1 1490 7 is_stmt 0 view .LVU2155
5940 0006 0368 ldr r3, [r0]
5941 0008 5A6B ldr r2, [r3, #52]
1490:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
5942 .loc 1 1490 5 view .LVU2156
5943 000a 12F4004F tst r2, #32768
5944 000e 02D0 beq .L332
1490:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
5945 .loc 1 1490 61 discriminator 1 view .LVU2157
5946 0010 15F0080F tst r5, #8
5947 0014 26D1 bne .L348
5948 .L332:
1495:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
5949 .loc 1 1495 8 is_stmt 1 view .LVU2158
1495:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
5950 .loc 1 1495 11 is_stmt 0 view .LVU2159
5951 0016 5A6B ldr r2, [r3, #52]
1495:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
5952 .loc 1 1495 10 view .LVU2160
5953 0018 12F4807F tst r2, #256
5954 001c 58D0 beq .L334
1497:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
5955 .loc 1 1497 5 is_stmt 1 view .LVU2161
5956 001e 4FF48072 mov r2, #256
5957 0022 9A63 str r2, [r3, #56]
1499:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** SDMMC_IT_TXUNDERR | SDMMC_IT_RXOVERR | SDMMC_IT_TXFIFOHE |\
5958 .loc 1 1499 5 view .LVU2162
5959 0024 2268 ldr r2, [r4]
5960 0026 D16B ldr r1, [r2, #60]
5961 0028 644B ldr r3, .L354
5962 002a 0B40 ands r3, r3, r1
5963 002c D363 str r3, [r2, #60]
1503:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
5964 .loc 1 1503 5 view .LVU2163
1503:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
5965 .loc 1 1503 8 is_stmt 0 view .LVU2164
5966 002e 2268 ldr r2, [r4]
1503:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
5967 .loc 1 1503 26 view .LVU2165
5968 0030 D36A ldr r3, [r2, #44]
5969 0032 23F00103 bic r3, r3, #1
5970 0036 D362 str r3, [r2, #44]
1505:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
5971 .loc 1 1505 5 is_stmt 1 view .LVU2166
1505:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
5972 .loc 1 1505 7 is_stmt 0 view .LVU2167
5973 0038 15F0080F tst r5, #8
5974 003c 26D0 beq .L335
1507:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
5975 .loc 1 1507 7 is_stmt 1 view .LVU2168
1507:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
5976 .loc 1 1507 9 is_stmt 0 view .LVU2169
5977 003e 15F0220F tst r5, #34
5978 0042 12D1 bne .L349
5979 .LVL464:
5980 .L336:
ARM GAS /tmp/cc2oBAwl.s page 198
1522:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
5981 .loc 1 1522 7 is_stmt 1 view .LVU2170
5982 0044 2368 ldr r3, [r4]
5983 0046 40F23A52 movw r2, #1338
5984 004a 9A63 str r2, [r3, #56]
1524:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Context = SD_CONTEXT_NONE;
5985 .loc 1 1524 7 view .LVU2171
1524:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Context = SD_CONTEXT_NONE;
5986 .loc 1 1524 18 is_stmt 0 view .LVU2172
5987 004c 0123 movs r3, #1
5988 004e 84F83430 strb r3, [r4, #52]
1525:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(((context & SD_CONTEXT_READ_SINGLE_BLOCK) != 0U) || ((context & SD_CONTEXT_READ_MULTIPLE_B
5989 .loc 1 1525 7 is_stmt 1 view .LVU2173
1525:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(((context & SD_CONTEXT_READ_SINGLE_BLOCK) != 0U) || ((context & SD_CONTEXT_READ_MULTIPLE_B
5990 .loc 1 1525 20 is_stmt 0 view .LVU2174
5991 0052 0023 movs r3, #0
5992 0054 2363 str r3, [r4, #48]
1526:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
5993 .loc 1 1526 7 is_stmt 1 view .LVU2175
1526:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
5994 .loc 1 1526 9 is_stmt 0 view .LVU2176
5995 0056 15F0030F tst r5, #3
5996 005a 13D0 beq .L337
1531:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** #endif /* USE_HAL_SD_REGISTER_CALLBACKS */
5997 .loc 1 1531 9 is_stmt 1 view .LVU2177
5998 005c 2046 mov r0, r4
5999 005e FFF7FEFF bl HAL_SD_RxCpltCallback
6000 .LVL465:
6001 0062 01E0 b .L331
6002 .LVL466:
6003 .L348:
1492:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
6004 .loc 1 1492 5 view .LVU2178
6005 0064 FFF7FEFF bl SD_Read_IT
6006 .LVL467:
6007 .L331:
1668:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
6008 .loc 1 1668 1 is_stmt 0 view .LVU2179
6009 0068 38BD pop {r3, r4, r5, pc}
6010 .LVL468:
6011 .L349:
1509:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
6012 .loc 1 1509 9 is_stmt 1 view .LVU2180
1509:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
6013 .loc 1 1509 22 is_stmt 0 view .LVU2181
6014 006a 2068 ldr r0, [r4]
6015 .LVL469:
1509:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
6016 .loc 1 1509 22 view .LVU2182
6017 006c FFF7FEFF bl SDMMC_CmdStopTransfer
6018 .LVL470:
1510:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
6019 .loc 1 1510 9 is_stmt 1 view .LVU2183
1510:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
6020 .loc 1 1510 11 is_stmt 0 view .LVU2184
6021 0070 0346 mov r3, r0
6022 0072 0028 cmp r0, #0
ARM GAS /tmp/cc2oBAwl.s page 199
6023 0074 E6D0 beq .L336
1512:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** #if defined (USE_HAL_SD_REGISTER_CALLBACKS) && (USE_HAL_SD_REGISTER_CALLBACKS == 1U)
6024 .loc 1 1512 11 is_stmt 1 view .LVU2185
1512:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** #if defined (USE_HAL_SD_REGISTER_CALLBACKS) && (USE_HAL_SD_REGISTER_CALLBACKS == 1U)
6025 .loc 1 1512 26 is_stmt 0 view .LVU2186
6026 0076 A26B ldr r2, [r4, #56]
6027 0078 1343 orrs r3, r3, r2
6028 007a A363 str r3, [r4, #56]
1516:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** #endif /* USE_HAL_SD_REGISTER_CALLBACKS */
6029 .loc 1 1516 11 is_stmt 1 view .LVU2187
6030 007c 2046 mov r0, r4
6031 .LVL471:
1516:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** #endif /* USE_HAL_SD_REGISTER_CALLBACKS */
6032 .loc 1 1516 11 is_stmt 0 view .LVU2188
6033 007e FFF7FEFF bl HAL_SD_ErrorCallback
6034 .LVL472:
6035 0082 DFE7 b .L336
6036 .L337:
1539:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** #endif /* USE_HAL_SD_REGISTER_CALLBACKS */
6037 .loc 1 1539 9 is_stmt 1 view .LVU2189
6038 0084 2046 mov r0, r4
6039 0086 FFF7FEFF bl HAL_SD_TxCpltCallback
6040 .LVL473:
6041 008a EDE7 b .L331
6042 .LVL474:
6043 .L335:
1543:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
6044 .loc 1 1543 10 view .LVU2190
1543:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
6045 .loc 1 1543 12 is_stmt 0 view .LVU2191
6046 008c 15F0800F tst r5, #128
6047 0090 EAD0 beq .L331
1545:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
6048 .loc 1 1545 7 is_stmt 1 view .LVU2192
1545:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
6049 .loc 1 1545 9 is_stmt 0 view .LVU2193
6050 0092 15F0200F tst r5, #32
6051 0096 0ED1 bne .L350
6052 .LVL475:
6053 .L338:
1558:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
6054 .loc 1 1558 7 is_stmt 1 view .LVU2194
1558:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
6055 .loc 1 1558 9 is_stmt 0 view .LVU2195
6056 0098 15F0030F tst r5, #3
6057 009c E4D1 bne .L331
1562:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
6058 .loc 1 1562 9 is_stmt 1 view .LVU2196
1562:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
6059 .loc 1 1562 12 is_stmt 0 view .LVU2197
6060 009e 2268 ldr r2, [r4]
1562:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
6061 .loc 1 1562 30 view .LVU2198
6062 00a0 D36A ldr r3, [r2, #44]
6063 00a2 23F00803 bic r3, r3, #8
6064 00a6 D362 str r3, [r2, #44]
1564:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
ARM GAS /tmp/cc2oBAwl.s page 200
6065 .loc 1 1564 9 is_stmt 1 view .LVU2199
1564:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
6066 .loc 1 1564 20 is_stmt 0 view .LVU2200
6067 00a8 0123 movs r3, #1
6068 00aa 84F83430 strb r3, [r4, #52]
1569:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** #endif /* USE_HAL_SD_REGISTER_CALLBACKS */
6069 .loc 1 1569 9 is_stmt 1 view .LVU2201
6070 00ae 2046 mov r0, r4
6071 00b0 FFF7FEFF bl HAL_SD_TxCpltCallback
6072 .LVL476:
6073 00b4 D8E7 b .L331
6074 .LVL477:
6075 .L350:
1547:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
6076 .loc 1 1547 9 view .LVU2202
1547:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
6077 .loc 1 1547 22 is_stmt 0 view .LVU2203
6078 00b6 2068 ldr r0, [r4]
6079 .LVL478:
1547:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(errorstate != HAL_SD_ERROR_NONE)
6080 .loc 1 1547 22 view .LVU2204
6081 00b8 FFF7FEFF bl SDMMC_CmdStopTransfer
6082 .LVL479:
1548:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
6083 .loc 1 1548 9 is_stmt 1 view .LVU2205
1548:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
6084 .loc 1 1548 11 is_stmt 0 view .LVU2206
6085 00bc 0346 mov r3, r0
6086 00be 0028 cmp r0, #0
6087 00c0 EAD0 beq .L338
1550:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** #if defined (USE_HAL_SD_REGISTER_CALLBACKS) && (USE_HAL_SD_REGISTER_CALLBACKS == 1U)
6088 .loc 1 1550 11 is_stmt 1 view .LVU2207
1550:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** #if defined (USE_HAL_SD_REGISTER_CALLBACKS) && (USE_HAL_SD_REGISTER_CALLBACKS == 1U)
6089 .loc 1 1550 26 is_stmt 0 view .LVU2208
6090 00c2 A26B ldr r2, [r4, #56]
6091 00c4 1343 orrs r3, r3, r2
6092 00c6 A363 str r3, [r4, #56]
1554:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** #endif /* USE_HAL_SD_REGISTER_CALLBACKS */
6093 .loc 1 1554 11 is_stmt 1 view .LVU2209
6094 00c8 2046 mov r0, r4
6095 .LVL480:
1554:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** #endif /* USE_HAL_SD_REGISTER_CALLBACKS */
6096 .loc 1 1554 11 is_stmt 0 view .LVU2210
6097 00ca FFF7FEFF bl HAL_SD_ErrorCallback
6098 .LVL481:
6099 00ce E3E7 b .L338
6100 .LVL482:
6101 .L334:
1579:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
6102 .loc 1 1579 8 is_stmt 1 view .LVU2211
1579:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
6103 .loc 1 1579 12 is_stmt 0 view .LVU2212
6104 00d0 5A6B ldr r2, [r3, #52]
1579:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
6105 .loc 1 1579 10 view .LVU2213
6106 00d2 12F4804F tst r2, #16384
6107 00d6 02D0 beq .L339
ARM GAS /tmp/cc2oBAwl.s page 201
1579:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
6108 .loc 1 1579 66 discriminator 1 view .LVU2214
6109 00d8 15F0080F tst r5, #8
6110 00dc 4AD1 bne .L351
6111 .L339:
1584:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
6112 .loc 1 1584 8 is_stmt 1 view .LVU2215
1584:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
6113 .loc 1 1584 11 is_stmt 0 view .LVU2216
6114 00de 5A6B ldr r2, [r3, #52]
1584:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
6115 .loc 1 1584 10 view .LVU2217
6116 00e0 12F03A0F tst r2, #58
6117 00e4 C0D0 beq .L331
1587:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
6118 .loc 1 1587 5 is_stmt 1 view .LVU2218
1587:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
6119 .loc 1 1587 8 is_stmt 0 view .LVU2219
6120 00e6 5A6B ldr r2, [r3, #52]
1587:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
6121 .loc 1 1587 7 view .LVU2220
6122 00e8 12F0020F tst r2, #2
6123 00ec 03D0 beq .L340
1589:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
6124 .loc 1 1589 7 is_stmt 1 view .LVU2221
1589:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
6125 .loc 1 1589 22 is_stmt 0 view .LVU2222
6126 00ee A26B ldr r2, [r4, #56]
6127 00f0 42F00202 orr r2, r2, #2
6128 00f4 A263 str r2, [r4, #56]
6129 .L340:
1591:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
6130 .loc 1 1591 5 is_stmt 1 view .LVU2223
1591:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
6131 .loc 1 1591 8 is_stmt 0 view .LVU2224
6132 00f6 5A6B ldr r2, [r3, #52]
1591:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
6133 .loc 1 1591 7 view .LVU2225
6134 00f8 12F0080F tst r2, #8
6135 00fc 03D0 beq .L341
1593:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
6136 .loc 1 1593 7 is_stmt 1 view .LVU2226
1593:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
6137 .loc 1 1593 22 is_stmt 0 view .LVU2227
6138 00fe A26B ldr r2, [r4, #56]
6139 0100 42F00802 orr r2, r2, #8
6140 0104 A263 str r2, [r4, #56]
6141 .L341:
1595:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
6142 .loc 1 1595 5 is_stmt 1 view .LVU2228
1595:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
6143 .loc 1 1595 8 is_stmt 0 view .LVU2229
6144 0106 5A6B ldr r2, [r3, #52]
1595:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
6145 .loc 1 1595 7 view .LVU2230
6146 0108 12F0200F tst r2, #32
6147 010c 03D0 beq .L342
ARM GAS /tmp/cc2oBAwl.s page 202
1597:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
6148 .loc 1 1597 7 is_stmt 1 view .LVU2231
1597:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
6149 .loc 1 1597 22 is_stmt 0 view .LVU2232
6150 010e A26B ldr r2, [r4, #56]
6151 0110 42F02002 orr r2, r2, #32
6152 0114 A263 str r2, [r4, #56]
6153 .L342:
1599:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
6154 .loc 1 1599 5 is_stmt 1 view .LVU2233
1599:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
6155 .loc 1 1599 8 is_stmt 0 view .LVU2234
6156 0116 5A6B ldr r2, [r3, #52]
1599:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
6157 .loc 1 1599 7 view .LVU2235
6158 0118 12F0100F tst r2, #16
6159 011c 03D0 beq .L343
1601:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
6160 .loc 1 1601 7 is_stmt 1 view .LVU2236
1601:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
6161 .loc 1 1601 22 is_stmt 0 view .LVU2237
6162 011e A26B ldr r2, [r4, #56]
6163 0120 42F01002 orr r2, r2, #16
6164 0124 A263 str r2, [r4, #56]
6165 .L343:
1605:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
6166 .loc 1 1605 5 is_stmt 1 view .LVU2238
6167 0126 40F23A52 movw r2, #1338
6168 012a 9A63 str r2, [r3, #56]
1608:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** SDMMC_IT_TXUNDERR| SDMMC_IT_RXOVERR);
6169 .loc 1 1608 5 view .LVU2239
6170 012c 2268 ldr r2, [r4]
6171 012e D36B ldr r3, [r2, #60]
6172 0130 23F49D73 bic r3, r3, #314
6173 0134 D363 str r3, [r2, #60]
1611:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
6174 .loc 1 1611 5 view .LVU2240
1611:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
6175 .loc 1 1611 23 is_stmt 0 view .LVU2241
6176 0136 2068 ldr r0, [r4]
6177 .LVL483:
1611:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
6178 .loc 1 1611 23 view .LVU2242
6179 0138 FFF7FEFF bl SDMMC_CmdStopTransfer
6180 .LVL484:
1611:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
6181 .loc 1 1611 20 view .LVU2243
6182 013c A36B ldr r3, [r4, #56]
6183 013e 0343 orrs r3, r3, r0
6184 0140 A363 str r3, [r4, #56]
1613:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
6185 .loc 1 1613 5 is_stmt 1 view .LVU2244
1613:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
6186 .loc 1 1613 7 is_stmt 0 view .LVU2245
6187 0142 15F0080F tst r5, #8
6188 0146 19D1 bne .L352
1624:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
ARM GAS /tmp/cc2oBAwl.s page 203
6189 .loc 1 1624 10 is_stmt 1 view .LVU2246
1624:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
6190 .loc 1 1624 12 is_stmt 0 view .LVU2247
6191 0148 15F0800F tst r5, #128
6192 014c 8CD0 beq .L331
1627:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
6193 .loc 1 1627 7 is_stmt 1 view .LVU2248
1627:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
6194 .loc 1 1627 9 is_stmt 0 view .LVU2249
6195 014e 15F0300F tst r5, #48
6196 0152 1CD1 bne .L353
1637:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
6197 .loc 1 1637 12 is_stmt 1 view .LVU2250
1637:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
6198 .loc 1 1637 14 is_stmt 0 view .LVU2251
6199 0154 15F0030F tst r5, #3
6200 0158 26D0 beq .L346
1640:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Abort DMA in IT mode */
6201 .loc 1 1640 9 is_stmt 1 view .LVU2252
1640:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Abort DMA in IT mode */
6202 .loc 1 1640 12 is_stmt 0 view .LVU2253
6203 015a 236C ldr r3, [r4, #64]
1640:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Abort DMA in IT mode */
6204 .loc 1 1640 40 view .LVU2254
6205 015c 184A ldr r2, .L354+4
6206 015e 1A65 str r2, [r3, #80]
1642:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
6207 .loc 1 1642 9 is_stmt 1 view .LVU2255
1642:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
6208 .loc 1 1642 12 is_stmt 0 view .LVU2256
6209 0160 206C ldr r0, [r4, #64]
6210 0162 FFF7FEFF bl HAL_DMA_Abort_IT
6211 .LVL485:
1642:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
6212 .loc 1 1642 11 view .LVU2257
6213 0166 0028 cmp r0, #0
6214 0168 3FF47EAF beq .L331
1644:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
6215 .loc 1 1644 11 is_stmt 1 view .LVU2258
6216 016c 206C ldr r0, [r4, #64]
6217 016e FFF7FEFF bl SD_DMARxAbort
6218 .LVL486:
6219 0172 79E7 b .L331
6220 .LVL487:
6221 .L351:
1581:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
6222 .loc 1 1581 5 view .LVU2259
6223 0174 2046 mov r0, r4
6224 .LVL488:
1581:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
6225 .loc 1 1581 5 is_stmt 0 view .LVU2260
6226 0176 FFF7FEFF bl SD_Write_IT
6227 .LVL489:
6228 017a 75E7 b .L331
6229 .L352:
1616:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Context = SD_CONTEXT_NONE;
6230 .loc 1 1616 7 is_stmt 1 view .LVU2261
ARM GAS /tmp/cc2oBAwl.s page 204
1616:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Context = SD_CONTEXT_NONE;
6231 .loc 1 1616 18 is_stmt 0 view .LVU2262
6232 017c 0123 movs r3, #1
6233 017e 84F83430 strb r3, [r4, #52]
1617:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** #if defined (USE_HAL_SD_REGISTER_CALLBACKS) && (USE_HAL_SD_REGISTER_CALLBACKS == 1U)
6234 .loc 1 1617 7 is_stmt 1 view .LVU2263
1617:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** #if defined (USE_HAL_SD_REGISTER_CALLBACKS) && (USE_HAL_SD_REGISTER_CALLBACKS == 1U)
6235 .loc 1 1617 20 is_stmt 0 view .LVU2264
6236 0182 0023 movs r3, #0
6237 0184 2363 str r3, [r4, #48]
1621:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** #endif /* USE_HAL_SD_REGISTER_CALLBACKS */
6238 .loc 1 1621 7 is_stmt 1 view .LVU2265
6239 0186 2046 mov r0, r4
6240 0188 FFF7FEFF bl HAL_SD_ErrorCallback
6241 .LVL490:
6242 018c 6CE7 b .L331
6243 .L353:
1630:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Abort DMA in IT mode */
6244 .loc 1 1630 9 view .LVU2266
1630:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Abort DMA in IT mode */
6245 .loc 1 1630 12 is_stmt 0 view .LVU2267
6246 018e E36B ldr r3, [r4, #60]
1630:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** /* Abort DMA in IT mode */
6247 .loc 1 1630 40 view .LVU2268
6248 0190 0C4A ldr r2, .L354+8
6249 0192 1A65 str r2, [r3, #80]
1632:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
6250 .loc 1 1632 9 is_stmt 1 view .LVU2269
1632:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
6251 .loc 1 1632 12 is_stmt 0 view .LVU2270
6252 0194 E06B ldr r0, [r4, #60]
6253 0196 FFF7FEFF bl HAL_DMA_Abort_IT
6254 .LVL491:
1632:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
6255 .loc 1 1632 11 view .LVU2271
6256 019a 0028 cmp r0, #0
6257 019c 3FF464AF beq .L331
1634:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
6258 .loc 1 1634 11 is_stmt 1 view .LVU2272
6259 01a0 E06B ldr r0, [r4, #60]
6260 01a2 FFF7FEFF bl SD_DMATxAbort
6261 .LVL492:
6262 01a6 5FE7 b .L331
6263 .L346:
1649:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
6264 .loc 1 1649 9 view .LVU2273
1649:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
6265 .loc 1 1649 24 is_stmt 0 view .LVU2274
6266 01a8 0023 movs r3, #0
6267 01aa A363 str r3, [r4, #56]
1650:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Context = SD_CONTEXT_NONE;
6268 .loc 1 1650 9 is_stmt 1 view .LVU2275
1650:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Context = SD_CONTEXT_NONE;
6269 .loc 1 1650 20 is_stmt 0 view .LVU2276
6270 01ac 0122 movs r2, #1
6271 01ae 84F83420 strb r2, [r4, #52]
1651:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** #if defined (USE_HAL_SD_REGISTER_CALLBACKS) && (USE_HAL_SD_REGISTER_CALLBACKS == 1U)
ARM GAS /tmp/cc2oBAwl.s page 205
6272 .loc 1 1651 9 is_stmt 1 view .LVU2277
1651:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** #if defined (USE_HAL_SD_REGISTER_CALLBACKS) && (USE_HAL_SD_REGISTER_CALLBACKS == 1U)
6273 .loc 1 1651 22 is_stmt 0 view .LVU2278
6274 01b2 2363 str r3, [r4, #48]
1655:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** #endif /* USE_HAL_SD_REGISTER_CALLBACKS */
6275 .loc 1 1655 9 is_stmt 1 view .LVU2279
6276 01b4 2046 mov r0, r4
6277 01b6 FFF7FEFF bl HAL_SD_AbortCallback
6278 .LVL493:
1667:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
6279 .loc 1 1667 3 view .LVU2280
1668:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
6280 .loc 1 1668 1 is_stmt 0 view .LVU2281
6281 01ba 55E7 b .L331
6282 .L355:
6283 .align 2
6284 .L354:
6285 01bc C53EFFFF .word -49467
6286 01c0 00000000 .word SD_DMARxAbort
6287 01c4 00000000 .word SD_DMATxAbort
6288 .cfi_endproc
6289 .LFE153:
6291 .section .text.HAL_SD_Abort,"ax",%progbits
6292 .align 1
6293 .global HAL_SD_Abort
6294 .syntax unified
6295 .thumb
6296 .thumb_func
6297 .fpu fpv5-d16
6299 HAL_SD_Abort:
6300 .LVL494:
6301 .LFB166:
2290:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** HAL_SD_CardStateTypeDef CardState;
6302 .loc 1 2290 1 is_stmt 1 view -0
6303 .cfi_startproc
6304 @ args = 0, pretend = 0, frame = 0
6305 @ frame_needed = 0, uses_anonymous_args = 0
2290:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** HAL_SD_CardStateTypeDef CardState;
6306 .loc 1 2290 1 is_stmt 0 view .LVU2283
6307 0000 10B5 push {r4, lr}
6308 .LCFI77:
6309 .cfi_def_cfa_offset 8
6310 .cfi_offset 4, -8
6311 .cfi_offset 14, -4
6312 0002 0446 mov r4, r0
2291:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t context = hsd->Context;
6313 .loc 1 2291 3 is_stmt 1 view .LVU2284
2292:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
6314 .loc 1 2292 3 view .LVU2285
2292:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
6315 .loc 1 2292 12 is_stmt 0 view .LVU2286
6316 0004 016B ldr r1, [r0, #48]
6317 .LVL495:
2295:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** SDMMC_IT_TXUNDERR| SDMMC_IT_RXOVERR);
6318 .loc 1 2295 3 is_stmt 1 view .LVU2287
6319 0006 0268 ldr r2, [r0]
6320 0008 D36B ldr r3, [r2, #60]
ARM GAS /tmp/cc2oBAwl.s page 206
6321 000a 23F49D73 bic r3, r3, #314
6322 000e D363 str r3, [r2, #60]
2299:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
6323 .loc 1 2299 3 view .LVU2288
6324 0010 0368 ldr r3, [r0]
6325 0012 40F23A52 movw r2, #1338
6326 0016 9A63 str r2, [r3, #56]
2301:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
6327 .loc 1 2301 3 view .LVU2289
6328 0018 0268 ldr r2, [r0]
6329 001a D36A ldr r3, [r2, #44]
6330 001c 23F00103 bic r3, r3, #1
6331 0020 D362 str r3, [r2, #44]
2303:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
6332 .loc 1 2303 3 view .LVU2290
2303:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
6333 .loc 1 2303 6 is_stmt 0 view .LVU2291
6334 0022 11F0800F tst r1, #128
6335 0026 0AD0 beq .L357
2306:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
6336 .loc 1 2306 5 is_stmt 1 view .LVU2292
2306:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
6337 .loc 1 2306 8 is_stmt 0 view .LVU2293
6338 0028 0268 ldr r2, [r0]
2306:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
6339 .loc 1 2306 26 view .LVU2294
6340 002a D36A ldr r3, [r2, #44]
6341 002c 23F00803 bic r3, r3, #8
6342 0030 D362 str r3, [r2, #44]
2309:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
6343 .loc 1 2309 5 is_stmt 1 view .LVU2295
2309:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
6344 .loc 1 2309 8 is_stmt 0 view .LVU2296
6345 0032 11F0300F tst r1, #48
6346 0036 11D1 bne .L363
2317:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
6347 .loc 1 2317 10 is_stmt 1 view .LVU2297
2317:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
6348 .loc 1 2317 13 is_stmt 0 view .LVU2298
6349 0038 11F0030F tst r1, #3
6350 003c 18D1 bne .L364
6351 .LVL496:
6352 .L357:
2327:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
6353 .loc 1 2327 5 is_stmt 1 view .LVU2299
2330:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
6354 .loc 1 2330 3 view .LVU2300
2330:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
6355 .loc 1 2330 14 is_stmt 0 view .LVU2301
6356 003e 0123 movs r3, #1
6357 0040 84F83430 strb r3, [r4, #52]
2333:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
6358 .loc 1 2333 3 is_stmt 1 view .LVU2302
2333:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
6359 .loc 1 2333 16 is_stmt 0 view .LVU2303
6360 0044 0023 movs r3, #0
6361 0046 2363 str r3, [r4, #48]
ARM GAS /tmp/cc2oBAwl.s page 207
2335:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if((CardState == HAL_SD_CARD_RECEIVING) || (CardState == HAL_SD_CARD_SENDING))
6362 .loc 1 2335 3 is_stmt 1 view .LVU2304
2335:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if((CardState == HAL_SD_CARD_RECEIVING) || (CardState == HAL_SD_CARD_SENDING))
6363 .loc 1 2335 15 is_stmt 0 view .LVU2305
6364 0048 2046 mov r0, r4
6365 004a FFF7FEFF bl HAL_SD_GetCardState
6366 .LVL497:
2336:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
6367 .loc 1 2336 3 is_stmt 1 view .LVU2306
2336:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
6368 .loc 1 2336 43 is_stmt 0 view .LVU2307
6369 004e 0538 subs r0, r0, #5
6370 .LVL498:
2336:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
6371 .loc 1 2336 5 view .LVU2308
6372 0050 0128 cmp r0, #1
6373 0052 17D9 bls .L365
6374 .LVL499:
6375 .L359:
2340:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
6376 .loc 1 2340 3 is_stmt 1 view .LVU2309
2340:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
6377 .loc 1 2340 9 is_stmt 0 view .LVU2310
6378 0054 A36B ldr r3, [r4, #56]
2340:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
6379 .loc 1 2340 5 view .LVU2311
6380 0056 D3B9 cbnz r3, .L361
2344:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
6381 .loc 1 2344 10 view .LVU2312
6382 0058 0020 movs r0, #0
6383 .L360:
2345:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
6384 .loc 1 2345 1 view .LVU2313
6385 005a 10BD pop {r4, pc}
6386 .LVL500:
6387 .L363:
2311:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
6388 .loc 1 2311 7 is_stmt 1 view .LVU2314
2311:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
6389 .loc 1 2311 10 is_stmt 0 view .LVU2315
6390 005c C06B ldr r0, [r0, #60]
6391 .LVL501:
2311:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
6392 .loc 1 2311 10 view .LVU2316
6393 005e FFF7FEFF bl HAL_DMA_Abort
6394 .LVL502:
2311:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
6395 .loc 1 2311 9 view .LVU2317
6396 0062 0028 cmp r0, #0
6397 0064 EBD0 beq .L357
2313:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
6398 .loc 1 2313 9 is_stmt 1 view .LVU2318
2313:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
6399 .loc 1 2313 24 is_stmt 0 view .LVU2319
6400 0066 A36B ldr r3, [r4, #56]
6401 0068 43F08043 orr r3, r3, #1073741824
6402 006c A363 str r3, [r4, #56]
ARM GAS /tmp/cc2oBAwl.s page 208
6403 006e E6E7 b .L357
6404 .LVL503:
6405 .L364:
2319:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
6406 .loc 1 2319 7 is_stmt 1 view .LVU2320
2319:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
6407 .loc 1 2319 10 is_stmt 0 view .LVU2321
6408 0070 006C ldr r0, [r0, #64]
6409 .LVL504:
2319:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
6410 .loc 1 2319 10 view .LVU2322
6411 0072 FFF7FEFF bl HAL_DMA_Abort
6412 .LVL505:
2319:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
6413 .loc 1 2319 9 view .LVU2323
6414 0076 0028 cmp r0, #0
6415 0078 E1D0 beq .L357
2321:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
6416 .loc 1 2321 9 is_stmt 1 view .LVU2324
2321:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
6417 .loc 1 2321 24 is_stmt 0 view .LVU2325
6418 007a A36B ldr r3, [r4, #56]
6419 007c 43F08043 orr r3, r3, #1073741824
6420 0080 A363 str r3, [r4, #56]
6421 0082 DCE7 b .L357
6422 .LVL506:
6423 .L365:
2338:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
6424 .loc 1 2338 5 is_stmt 1 view .LVU2326
2338:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
6425 .loc 1 2338 22 is_stmt 0 view .LVU2327
6426 0084 2068 ldr r0, [r4]
6427 .LVL507:
2338:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
6428 .loc 1 2338 22 view .LVU2328
6429 0086 FFF7FEFF bl SDMMC_CmdStopTransfer
6430 .LVL508:
2338:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
6431 .loc 1 2338 20 view .LVU2329
6432 008a A063 str r0, [r4, #56]
6433 008c E2E7 b .L359
6434 .L361:
2342:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
6435 .loc 1 2342 12 view .LVU2330
6436 008e 0120 movs r0, #1
6437 0090 E3E7 b .L360
6438 .cfi_endproc
6439 .LFE166:
6441 .section .text.HAL_SD_Abort_IT,"ax",%progbits
6442 .align 1
6443 .global HAL_SD_Abort_IT
6444 .syntax unified
6445 .thumb
6446 .thumb_func
6447 .fpu fpv5-d16
6449 HAL_SD_Abort_IT:
6450 .LVL509:
ARM GAS /tmp/cc2oBAwl.s page 209
6451 .LFB167:
2354:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** HAL_SD_CardStateTypeDef CardState;
6452 .loc 1 2354 1 is_stmt 1 view -0
6453 .cfi_startproc
6454 @ args = 0, pretend = 0, frame = 0
6455 @ frame_needed = 0, uses_anonymous_args = 0
2354:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** HAL_SD_CardStateTypeDef CardState;
6456 .loc 1 2354 1 is_stmt 0 view .LVU2332
6457 0000 10B5 push {r4, lr}
6458 .LCFI78:
6459 .cfi_def_cfa_offset 8
6460 .cfi_offset 4, -8
6461 .cfi_offset 14, -4
6462 0002 0446 mov r4, r0
2355:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** uint32_t context = hsd->Context;
6463 .loc 1 2355 3 is_stmt 1 view .LVU2333
2356:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
6464 .loc 1 2356 3 view .LVU2334
2356:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
6465 .loc 1 2356 12 is_stmt 0 view .LVU2335
6466 0004 026B ldr r2, [r0, #48]
6467 .LVL510:
2359:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** SDMMC_IT_TXUNDERR| SDMMC_IT_RXOVERR);
6468 .loc 1 2359 3 is_stmt 1 view .LVU2336
6469 0006 0168 ldr r1, [r0]
6470 0008 CB6B ldr r3, [r1, #60]
6471 000a 23F49D73 bic r3, r3, #314
6472 000e CB63 str r3, [r1, #60]
2362:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
6473 .loc 1 2362 3 view .LVU2337
6474 0010 0168 ldr r1, [r0]
6475 0012 CB6A ldr r3, [r1, #44]
6476 0014 23F00103 bic r3, r3, #1
6477 0018 CB62 str r3, [r1, #44]
2364:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
6478 .loc 1 2364 3 view .LVU2338
2364:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
6479 .loc 1 2364 6 is_stmt 0 view .LVU2339
6480 001a 12F0800F tst r2, #128
6481 001e 22D0 beq .L367
2367:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
6482 .loc 1 2367 5 is_stmt 1 view .LVU2340
2367:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
6483 .loc 1 2367 8 is_stmt 0 view .LVU2341
6484 0020 0168 ldr r1, [r0]
2367:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
6485 .loc 1 2367 26 view .LVU2342
6486 0022 CB6A ldr r3, [r1, #44]
6487 0024 23F00803 bic r3, r3, #8
6488 0028 CB62 str r3, [r1, #44]
2370:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
6489 .loc 1 2370 5 is_stmt 1 view .LVU2343
2370:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
6490 .loc 1 2370 8 is_stmt 0 view .LVU2344
6491 002a 12F0300F tst r2, #48
6492 002e 04D1 bne .L374
2379:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
ARM GAS /tmp/cc2oBAwl.s page 210
6493 .loc 1 2379 10 is_stmt 1 view .LVU2345
2379:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
6494 .loc 1 2379 13 is_stmt 0 view .LVU2346
6495 0030 12F0030F tst r2, #3
6496 0034 0CD1 bne .L375
2419:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
6497 .loc 1 2419 10 view .LVU2347
6498 0036 0020 movs r0, #0
6499 .LVL511:
6500 .L369:
2420:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
6501 .loc 1 2420 1 view .LVU2348
6502 0038 10BD pop {r4, pc}
6503 .LVL512:
6504 .L374:
2372:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(HAL_DMA_Abort_IT(hsd->hdmatx) != HAL_OK)
6505 .loc 1 2372 7 is_stmt 1 view .LVU2349
2372:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(HAL_DMA_Abort_IT(hsd->hdmatx) != HAL_OK)
6506 .loc 1 2372 10 is_stmt 0 view .LVU2350
6507 003a C36B ldr r3, [r0, #60]
2372:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(HAL_DMA_Abort_IT(hsd->hdmatx) != HAL_OK)
6508 .loc 1 2372 38 view .LVU2351
6509 003c 184A ldr r2, .L378
6510 .LVL513:
2372:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(HAL_DMA_Abort_IT(hsd->hdmatx) != HAL_OK)
6511 .loc 1 2372 38 view .LVU2352
6512 003e 1A65 str r2, [r3, #80]
2373:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
6513 .loc 1 2373 7 is_stmt 1 view .LVU2353
2373:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
6514 .loc 1 2373 10 is_stmt 0 view .LVU2354
6515 0040 C06B ldr r0, [r0, #60]
6516 .LVL514:
2373:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
6517 .loc 1 2373 10 view .LVU2355
6518 0042 FFF7FEFF bl HAL_DMA_Abort_IT
6519 .LVL515:
2373:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
6520 .loc 1 2373 9 view .LVU2356
6521 0046 0028 cmp r0, #0
6522 0048 F6D0 beq .L369
2375:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
6523 .loc 1 2375 9 is_stmt 1 view .LVU2357
2375:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
6524 .loc 1 2375 21 is_stmt 0 view .LVU2358
6525 004a 0020 movs r0, #0
6526 004c E063 str r0, [r4, #60]
6527 004e F3E7 b .L369
6528 .LVL516:
6529 .L375:
2381:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(HAL_DMA_Abort_IT(hsd->hdmarx) != HAL_OK)
6530 .loc 1 2381 7 is_stmt 1 view .LVU2359
2381:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(HAL_DMA_Abort_IT(hsd->hdmarx) != HAL_OK)
6531 .loc 1 2381 10 is_stmt 0 view .LVU2360
6532 0050 036C ldr r3, [r0, #64]
2381:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(HAL_DMA_Abort_IT(hsd->hdmarx) != HAL_OK)
6533 .loc 1 2381 38 view .LVU2361
ARM GAS /tmp/cc2oBAwl.s page 211
6534 0052 144A ldr r2, .L378+4
6535 .LVL517:
2381:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if(HAL_DMA_Abort_IT(hsd->hdmarx) != HAL_OK)
6536 .loc 1 2381 38 view .LVU2362
6537 0054 1A65 str r2, [r3, #80]
2382:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
6538 .loc 1 2382 7 is_stmt 1 view .LVU2363
2382:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
6539 .loc 1 2382 10 is_stmt 0 view .LVU2364
6540 0056 006C ldr r0, [r0, #64]
6541 .LVL518:
2382:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
6542 .loc 1 2382 10 view .LVU2365
6543 0058 FFF7FEFF bl HAL_DMA_Abort_IT
6544 .LVL519:
2382:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
6545 .loc 1 2382 9 view .LVU2366
6546 005c 0028 cmp r0, #0
6547 005e EBD0 beq .L369
2384:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
6548 .loc 1 2384 9 is_stmt 1 view .LVU2367
2384:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
6549 .loc 1 2384 21 is_stmt 0 view .LVU2368
6550 0060 0020 movs r0, #0
6551 0062 2064 str r0, [r4, #64]
6552 0064 E8E7 b .L369
6553 .LVL520:
6554 .L367:
2396:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
6555 .loc 1 2396 5 is_stmt 1 view .LVU2369
6556 0066 0368 ldr r3, [r0]
6557 0068 40F23A52 movw r2, #1338
6558 .LVL521:
2396:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c ****
6559 .loc 1 2396 5 is_stmt 0 view .LVU2370
6560 006c 9A63 str r2, [r3, #56]
2398:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
6561 .loc 1 2398 5 is_stmt 1 view .LVU2371
2398:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->State = HAL_SD_STATE_READY;
6562 .loc 1 2398 17 is_stmt 0 view .LVU2372
6563 006e FFF7FEFF bl HAL_SD_GetCardState
6564 .LVL522:
2399:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Context = SD_CONTEXT_NONE;
6565 .loc 1 2399 5 is_stmt 1 view .LVU2373
2399:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** hsd->Context = SD_CONTEXT_NONE;
6566 .loc 1 2399 16 is_stmt 0 view .LVU2374
6567 0072 0123 movs r3, #1
6568 0074 84F83430 strb r3, [r4, #52]
2400:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if((CardState == HAL_SD_CARD_RECEIVING) || (CardState == HAL_SD_CARD_SENDING))
6569 .loc 1 2400 5 is_stmt 1 view .LVU2375
2400:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** if((CardState == HAL_SD_CARD_RECEIVING) || (CardState == HAL_SD_CARD_SENDING))
6570 .loc 1 2400 18 is_stmt 0 view .LVU2376
6571 0078 0023 movs r3, #0
6572 007a 2363 str r3, [r4, #48]
2401:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
6573 .loc 1 2401 5 is_stmt 1 view .LVU2377
2401:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
ARM GAS /tmp/cc2oBAwl.s page 212
6574 .loc 1 2401 45 is_stmt 0 view .LVU2378
6575 007c 0538 subs r0, r0, #5
6576 .LVL523:
2401:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
6577 .loc 1 2401 7 view .LVU2379
6578 007e 0128 cmp r0, #1
6579 0080 03D9 bls .L376
6580 .LVL524:
6581 .L370:
2405:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
6582 .loc 1 2405 5 is_stmt 1 view .LVU2380
2405:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
6583 .loc 1 2405 11 is_stmt 0 view .LVU2381
6584 0082 A36B ldr r3, [r4, #56]
2405:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** {
6585 .loc 1 2405 7 view .LVU2382
6586 0084 33B1 cbz r3, .L377
2407:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
6587 .loc 1 2407 14 view .LVU2383
6588 0086 0120 movs r0, #1
6589 0088 D6E7 b .L369
6590 .LVL525:
6591 .L376:
2403:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
6592 .loc 1 2403 7 is_stmt 1 view .LVU2384
2403:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
6593 .loc 1 2403 24 is_stmt 0 view .LVU2385
6594 008a 2068 ldr r0, [r4]
6595 .LVL526:
2403:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
6596 .loc 1 2403 24 view .LVU2386
6597 008c FFF7FEFF bl SDMMC_CmdStopTransfer
6598 .LVL527:
2403:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
6599 .loc 1 2403 22 view .LVU2387
6600 0090 A063 str r0, [r4, #56]
6601 0092 F6E7 b .L370
6602 .L377:
2414:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** #endif /* USE_HAL_SD_REGISTER_CALLBACKS */
6603 .loc 1 2414 7 is_stmt 1 view .LVU2388
6604 0094 2046 mov r0, r4
6605 0096 FFF7FEFF bl HAL_SD_AbortCallback
6606 .LVL528:
2419:Drivers/STM32F7xx_HAL_Driver/Src/stm32f7xx_hal_sd.c **** }
6607 .loc 1 2419 10 is_stmt 0 view .LVU2389
6608 009a 0020 movs r0, #0
6609 009c CCE7 b .L369
6610 .L379:
6611 009e 00BF .align 2
6612 .L378:
6613 00a0 00000000 .word SD_DMATxAbort
6614 00a4 00000000 .word SD_DMARxAbort
6615 .cfi_endproc
6616 .LFE167:
6618 .text
6619 .Letext0:
6620 .file 2 "/usr/lib/gcc/arm-none-eabi/10.3.1/include/stdint.h"
ARM GAS /tmp/cc2oBAwl.s page 213
6621 .file 3 "Drivers/CMSIS/Device/ST/STM32F7xx/Include/stm32f767xx.h"
6622 .file 4 "Drivers/CMSIS/Device/ST/STM32F7xx/Include/stm32f7xx.h"
6623 .file 5 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_hal_def.h"
6624 .file 6 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_hal_dma.h"
6625 .file 7 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_sdmmc.h"
6626 .file 8 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_hal_sd.h"
6627 .file 9 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_hal.h"
ARM GAS /tmp/cc2oBAwl.s page 214
DEFINED SYMBOLS
*ABS*:0000000000000000 stm32f7xx_hal_sd.c
/tmp/cc2oBAwl.s:17 .text.SD_DMATransmitCplt:0000000000000000 $t
/tmp/cc2oBAwl.s:24 .text.SD_DMATransmitCplt:0000000000000000 SD_DMATransmitCplt
/tmp/cc2oBAwl.s:51 .text.SD_PowerON:0000000000000000 $t
/tmp/cc2oBAwl.s:57 .text.SD_PowerON:0000000000000000 SD_PowerON
/tmp/cc2oBAwl.s:275 .text.SD_PowerON:00000000000000bc $d
/tmp/cc2oBAwl.s:280 .text.SD_PowerOFF:0000000000000000 $t
/tmp/cc2oBAwl.s:286 .text.SD_PowerOFF:0000000000000000 SD_PowerOFF
/tmp/cc2oBAwl.s:312 .text.SD_Read_IT:0000000000000000 $t
/tmp/cc2oBAwl.s:318 .text.SD_Read_IT:0000000000000000 SD_Read_IT
/tmp/cc2oBAwl.s:423 .text.SD_Write_IT:0000000000000000 $t
/tmp/cc2oBAwl.s:429 .text.SD_Write_IT:0000000000000000 SD_Write_IT
/tmp/cc2oBAwl.s:548 .text.SD_SendSDStatus:0000000000000000 $t
/tmp/cc2oBAwl.s:554 .text.SD_SendSDStatus:0000000000000000 SD_SendSDStatus
/tmp/cc2oBAwl.s:823 .text.SD_FindSCR:0000000000000000 $t
/tmp/cc2oBAwl.s:829 .text.SD_FindSCR:0000000000000000 SD_FindSCR
/tmp/cc2oBAwl.s:1093 .text.SD_WideBus_Enable:0000000000000000 $t
/tmp/cc2oBAwl.s:1099 .text.SD_WideBus_Enable:0000000000000000 SD_WideBus_Enable
/tmp/cc2oBAwl.s:1194 .text.SD_WideBus_Disable:0000000000000000 $t
/tmp/cc2oBAwl.s:1200 .text.SD_WideBus_Disable:0000000000000000 SD_WideBus_Disable
/tmp/cc2oBAwl.s:1295 .text.SD_SendStatus:0000000000000000 $t
/tmp/cc2oBAwl.s:1301 .text.SD_SendStatus:0000000000000000 SD_SendStatus
/tmp/cc2oBAwl.s:1366 .text.HAL_SD_MspInit:0000000000000000 $t
/tmp/cc2oBAwl.s:1373 .text.HAL_SD_MspInit:0000000000000000 HAL_SD_MspInit
/tmp/cc2oBAwl.s:1388 .text.HAL_SD_MspDeInit:0000000000000000 $t
/tmp/cc2oBAwl.s:1395 .text.HAL_SD_MspDeInit:0000000000000000 HAL_SD_MspDeInit
/tmp/cc2oBAwl.s:1410 .text.HAL_SD_DeInit:0000000000000000 $t
/tmp/cc2oBAwl.s:1417 .text.HAL_SD_DeInit:0000000000000000 HAL_SD_DeInit
/tmp/cc2oBAwl.s:1471 .text.HAL_SD_ReadBlocks:0000000000000000 $t
/tmp/cc2oBAwl.s:1478 .text.HAL_SD_ReadBlocks:0000000000000000 HAL_SD_ReadBlocks
/tmp/cc2oBAwl.s:2028 .text.HAL_SD_ReadBlocks:0000000000000244 $d
/tmp/cc2oBAwl.s:2033 .text.HAL_SD_WriteBlocks:0000000000000000 $t
/tmp/cc2oBAwl.s:2040 .text.HAL_SD_WriteBlocks:0000000000000000 HAL_SD_WriteBlocks
/tmp/cc2oBAwl.s:2520 .text.HAL_SD_WriteBlocks:00000000000001fc $d
/tmp/cc2oBAwl.s:2525 .text.HAL_SD_ReadBlocks_IT:0000000000000000 $t
/tmp/cc2oBAwl.s:2532 .text.HAL_SD_ReadBlocks_IT:0000000000000000 HAL_SD_ReadBlocks_IT
/tmp/cc2oBAwl.s:2755 .text.HAL_SD_ReadBlocks_IT:00000000000000c8 $d
/tmp/cc2oBAwl.s:2760 .text.HAL_SD_WriteBlocks_IT:0000000000000000 $t
/tmp/cc2oBAwl.s:2767 .text.HAL_SD_WriteBlocks_IT:0000000000000000 HAL_SD_WriteBlocks_IT
/tmp/cc2oBAwl.s:2991 .text.HAL_SD_WriteBlocks_IT:00000000000000c0 $d
/tmp/cc2oBAwl.s:2996 .text.HAL_SD_ReadBlocks_DMA:0000000000000000 $t
/tmp/cc2oBAwl.s:3003 .text.HAL_SD_ReadBlocks_DMA:0000000000000000 HAL_SD_ReadBlocks_DMA
/tmp/cc2oBAwl.s:3288 .text.HAL_SD_ReadBlocks_DMA:0000000000000128 $d
/tmp/cc2oBAwl.s:3978 .text.SD_DMAReceiveCplt:0000000000000000 SD_DMAReceiveCplt
/tmp/cc2oBAwl.s:5614 .text.SD_DMAError:0000000000000000 SD_DMAError
/tmp/cc2oBAwl.s:3295 .text.HAL_SD_WriteBlocks_DMA:0000000000000000 $t
/tmp/cc2oBAwl.s:3302 .text.HAL_SD_WriteBlocks_DMA:0000000000000000 HAL_SD_WriteBlocks_DMA
/tmp/cc2oBAwl.s:3592 .text.HAL_SD_WriteBlocks_DMA:0000000000000124 $d
/tmp/cc2oBAwl.s:3599 .text.HAL_SD_Erase:0000000000000000 $t
/tmp/cc2oBAwl.s:3606 .text.HAL_SD_Erase:0000000000000000 HAL_SD_Erase
/tmp/cc2oBAwl.s:3851 .text.HAL_SD_Erase:00000000000000f4 $d
/tmp/cc2oBAwl.s:3856 .text.HAL_SD_GetState:0000000000000000 $t
/tmp/cc2oBAwl.s:3863 .text.HAL_SD_GetState:0000000000000000 HAL_SD_GetState
/tmp/cc2oBAwl.s:3881 .text.HAL_SD_GetError:0000000000000000 $t
/tmp/cc2oBAwl.s:3888 .text.HAL_SD_GetError:0000000000000000 HAL_SD_GetError
/tmp/cc2oBAwl.s:3906 .text.HAL_SD_TxCpltCallback:0000000000000000 $t
ARM GAS /tmp/cc2oBAwl.s page 215
/tmp/cc2oBAwl.s:3913 .text.HAL_SD_TxCpltCallback:0000000000000000 HAL_SD_TxCpltCallback
/tmp/cc2oBAwl.s:3928 .text.HAL_SD_RxCpltCallback:0000000000000000 $t
/tmp/cc2oBAwl.s:3935 .text.HAL_SD_RxCpltCallback:0000000000000000 HAL_SD_RxCpltCallback
/tmp/cc2oBAwl.s:3950 .text.HAL_SD_ErrorCallback:0000000000000000 $t
/tmp/cc2oBAwl.s:3957 .text.HAL_SD_ErrorCallback:0000000000000000 HAL_SD_ErrorCallback
/tmp/cc2oBAwl.s:3972 .text.SD_DMAReceiveCplt:0000000000000000 $t
/tmp/cc2oBAwl.s:4059 .text.HAL_SD_AbortCallback:0000000000000000 $t
/tmp/cc2oBAwl.s:4066 .text.HAL_SD_AbortCallback:0000000000000000 HAL_SD_AbortCallback
/tmp/cc2oBAwl.s:4081 .text.HAL_SD_GetCardCID:0000000000000000 $t
/tmp/cc2oBAwl.s:4088 .text.HAL_SD_GetCardCID:0000000000000000 HAL_SD_GetCardCID
/tmp/cc2oBAwl.s:4173 .text.HAL_SD_GetCardCSD:0000000000000000 $t
/tmp/cc2oBAwl.s:4180 .text.HAL_SD_GetCardCSD:0000000000000000 HAL_SD_GetCardCSD
/tmp/cc2oBAwl.s:4549 .text.HAL_SD_GetCardCSD:00000000000001b4 $d
/tmp/cc2oBAwl.s:4554 .text.SD_InitCard:0000000000000000 $t
/tmp/cc2oBAwl.s:4560 .text.SD_InitCard:0000000000000000 SD_InitCard
/tmp/cc2oBAwl.s:4801 .text.HAL_SD_InitCard:0000000000000000 $t
/tmp/cc2oBAwl.s:4808 .text.HAL_SD_InitCard:0000000000000000 HAL_SD_InitCard
/tmp/cc2oBAwl.s:4978 .text.HAL_SD_InitCard:00000000000000a4 $d
/tmp/cc2oBAwl.s:4983 .text.HAL_SD_Init:0000000000000000 $t
/tmp/cc2oBAwl.s:4990 .text.HAL_SD_Init:0000000000000000 HAL_SD_Init
/tmp/cc2oBAwl.s:5080 .text.HAL_SD_GetCardStatus:0000000000000000 $t
/tmp/cc2oBAwl.s:5087 .text.HAL_SD_GetCardStatus:0000000000000000 HAL_SD_GetCardStatus
/tmp/cc2oBAwl.s:5265 .text.HAL_SD_GetCardStatus:00000000000000a8 $d
/tmp/cc2oBAwl.s:5270 .text.HAL_SD_GetCardInfo:0000000000000000 $t
/tmp/cc2oBAwl.s:5277 .text.HAL_SD_GetCardInfo:0000000000000000 HAL_SD_GetCardInfo
/tmp/cc2oBAwl.s:5335 .text.HAL_SD_ConfigWideBusOperation:0000000000000000 $t
/tmp/cc2oBAwl.s:5342 .text.HAL_SD_ConfigWideBusOperation:0000000000000000 HAL_SD_ConfigWideBusOperation
/tmp/cc2oBAwl.s:5539 .text.HAL_SD_ConfigWideBusOperation:00000000000000bc $d
/tmp/cc2oBAwl.s:5544 .text.HAL_SD_GetCardState:0000000000000000 $t
/tmp/cc2oBAwl.s:5551 .text.HAL_SD_GetCardState:0000000000000000 HAL_SD_GetCardState
/tmp/cc2oBAwl.s:5608 .text.SD_DMAError:0000000000000000 $t
/tmp/cc2oBAwl.s:5727 .text.SD_DMAError:0000000000000064 $d
/tmp/cc2oBAwl.s:5732 .text.SD_DMATxAbort:0000000000000000 $t
/tmp/cc2oBAwl.s:5738 .text.SD_DMATxAbort:0000000000000000 SD_DMATxAbort
/tmp/cc2oBAwl.s:5821 .text.SD_DMARxAbort:0000000000000000 $t
/tmp/cc2oBAwl.s:5827 .text.SD_DMARxAbort:0000000000000000 SD_DMARxAbort
/tmp/cc2oBAwl.s:5910 .text.HAL_SD_IRQHandler:0000000000000000 $t
/tmp/cc2oBAwl.s:5917 .text.HAL_SD_IRQHandler:0000000000000000 HAL_SD_IRQHandler
/tmp/cc2oBAwl.s:6285 .text.HAL_SD_IRQHandler:00000000000001bc $d
/tmp/cc2oBAwl.s:6292 .text.HAL_SD_Abort:0000000000000000 $t
/tmp/cc2oBAwl.s:6299 .text.HAL_SD_Abort:0000000000000000 HAL_SD_Abort
/tmp/cc2oBAwl.s:6442 .text.HAL_SD_Abort_IT:0000000000000000 $t
/tmp/cc2oBAwl.s:6449 .text.HAL_SD_Abort_IT:0000000000000000 HAL_SD_Abort_IT
/tmp/cc2oBAwl.s:6613 .text.HAL_SD_Abort_IT:00000000000000a0 $d
UNDEFINED SYMBOLS
SDMMC_CmdGoIdleState
SDMMC_CmdOperCond
SDMMC_CmdAppCommand
SDMMC_CmdAppOperCommand
SDMMC_GetResponse
SDMMC_PowerState_OFF
SDMMC_ReadFIFO
SDMMC_WriteFIFO
HAL_GetTick
SDMMC_CmdBlockLength
SDMMC_ConfigData
ARM GAS /tmp/cc2oBAwl.s page 216
SDMMC_CmdStatusRegister
SDMMC_CmdSendSCR
SDMMC_CmdBusWidth
SDMMC_CmdSendStatus
SDMMC_CmdReadMultiBlock
SDMMC_CmdReadSingleBlock
SDMMC_CmdStopTransfer
SDMMC_CmdWriteMultiBlock
SDMMC_CmdWriteSingleBlock
HAL_DMA_Start_IT
SDMMC_CmdSDEraseStartAdd
SDMMC_CmdSDEraseEndAdd
SDMMC_CmdErase
SDMMC_GetPowerState
SDMMC_CmdSendCSD
SDMMC_CmdSelDesel
SDMMC_Init
SDMMC_CmdSendCID
SDMMC_CmdSetRelAdd
SDMMC_PowerState_ON
HAL_Delay
HAL_DMA_GetError
HAL_DMA_Abort_IT
HAL_DMA_Abort