1073 lines
47 KiB
Plaintext
1073 lines
47 KiB
Plaintext
ARM GAS /tmp/ccwhiVas.s page 1
|
||
|
||
|
||
1 .cpu cortex-m7
|
||
2 .arch armv7e-m
|
||
3 .fpu fpv5-d16
|
||
4 .eabi_attribute 28, 1
|
||
5 .eabi_attribute 20, 1
|
||
6 .eabi_attribute 21, 1
|
||
7 .eabi_attribute 23, 3
|
||
8 .eabi_attribute 24, 1
|
||
9 .eabi_attribute 25, 1
|
||
10 .eabi_attribute 26, 1
|
||
11 .eabi_attribute 30, 1
|
||
12 .eabi_attribute 34, 1
|
||
13 .eabi_attribute 18, 4
|
||
14 .file "bsp_driver_sd.c"
|
||
15 .text
|
||
16 .Ltext0:
|
||
17 .cfi_sections .debug_frame
|
||
18 .file 1 "Src/bsp_driver_sd.c"
|
||
19 .section .text.BSP_SD_ITConfig,"ax",%progbits
|
||
20 .align 1
|
||
21 .weak BSP_SD_ITConfig
|
||
22 .syntax unified
|
||
23 .thumb
|
||
24 .thumb_func
|
||
26 BSP_SD_ITConfig:
|
||
27 .LFB142:
|
||
1:Src/bsp_driver_sd.c **** /* USER CODE BEGIN Header */
|
||
2:Src/bsp_driver_sd.c **** /**
|
||
3:Src/bsp_driver_sd.c **** ******************************************************************************
|
||
4:Src/bsp_driver_sd.c **** * @file bsp_driver_sd.c for F7 (based on stm32756g_eval_sd.c)
|
||
5:Src/bsp_driver_sd.c **** * @brief This file includes a generic uSD card driver.
|
||
6:Src/bsp_driver_sd.c **** * To be completed by the user according to the board used for the project.
|
||
7:Src/bsp_driver_sd.c **** * @note Some functions generated as weak: they can be overridden by
|
||
8:Src/bsp_driver_sd.c **** * - code in user files
|
||
9:Src/bsp_driver_sd.c **** * - or BSP code from the FW pack files
|
||
10:Src/bsp_driver_sd.c **** * if such files are added to the generated project (by the user).
|
||
11:Src/bsp_driver_sd.c **** ******************************************************************************
|
||
12:Src/bsp_driver_sd.c **** * @attention
|
||
13:Src/bsp_driver_sd.c **** *
|
||
14:Src/bsp_driver_sd.c **** * Copyright (c) 2023 STMicroelectronics.
|
||
15:Src/bsp_driver_sd.c **** * All rights reserved.
|
||
16:Src/bsp_driver_sd.c **** *
|
||
17:Src/bsp_driver_sd.c **** * This software is licensed under terms that can be found in the LICENSE file
|
||
18:Src/bsp_driver_sd.c **** * in the root directory of this software component.
|
||
19:Src/bsp_driver_sd.c **** * If no LICENSE file comes with this software, it is provided AS-IS.
|
||
20:Src/bsp_driver_sd.c **** *
|
||
21:Src/bsp_driver_sd.c **** ******************************************************************************
|
||
22:Src/bsp_driver_sd.c **** */
|
||
23:Src/bsp_driver_sd.c **** /* USER CODE END Header */
|
||
24:Src/bsp_driver_sd.c ****
|
||
25:Src/bsp_driver_sd.c **** #ifdef OLD_API
|
||
26:Src/bsp_driver_sd.c **** /* kept to avoid issue when migrating old projects. */
|
||
27:Src/bsp_driver_sd.c **** /* USER CODE BEGIN 0 */
|
||
28:Src/bsp_driver_sd.c ****
|
||
29:Src/bsp_driver_sd.c **** /* USER CODE END 0 */
|
||
30:Src/bsp_driver_sd.c **** #else
|
||
31:Src/bsp_driver_sd.c **** /* USER CODE BEGIN FirstSection */
|
||
ARM GAS /tmp/ccwhiVas.s page 2
|
||
|
||
|
||
32:Src/bsp_driver_sd.c **** /* can be used to modify / undefine following code or add new definitions */
|
||
33:Src/bsp_driver_sd.c **** /* USER CODE END FirstSection */
|
||
34:Src/bsp_driver_sd.c **** /* Includes ------------------------------------------------------------------*/
|
||
35:Src/bsp_driver_sd.c **** #include "bsp_driver_sd.h"
|
||
36:Src/bsp_driver_sd.c ****
|
||
37:Src/bsp_driver_sd.c **** /* Extern variables ---------------------------------------------------------*/
|
||
38:Src/bsp_driver_sd.c ****
|
||
39:Src/bsp_driver_sd.c **** extern SD_HandleTypeDef hsd1;
|
||
40:Src/bsp_driver_sd.c ****
|
||
41:Src/bsp_driver_sd.c **** /* USER CODE BEGIN BeforeInitSection */
|
||
42:Src/bsp_driver_sd.c **** /* can be used to modify / undefine following code or add code */
|
||
43:Src/bsp_driver_sd.c **** /* USER CODE END BeforeInitSection */
|
||
44:Src/bsp_driver_sd.c **** /**
|
||
45:Src/bsp_driver_sd.c **** * @brief Initializes the SD card device.
|
||
46:Src/bsp_driver_sd.c **** * @retval SD status
|
||
47:Src/bsp_driver_sd.c **** */
|
||
48:Src/bsp_driver_sd.c **** __weak uint8_t BSP_SD_Init(void)
|
||
49:Src/bsp_driver_sd.c **** {
|
||
50:Src/bsp_driver_sd.c **** uint8_t sd_state = MSD_OK;
|
||
51:Src/bsp_driver_sd.c **** /* Check if the SD card is plugged in the slot */
|
||
52:Src/bsp_driver_sd.c **** if (BSP_SD_IsDetected() != SD_PRESENT)
|
||
53:Src/bsp_driver_sd.c **** {
|
||
54:Src/bsp_driver_sd.c **** return MSD_ERROR_SD_NOT_PRESENT;
|
||
55:Src/bsp_driver_sd.c **** }
|
||
56:Src/bsp_driver_sd.c **** /* HAL SD initialization */
|
||
57:Src/bsp_driver_sd.c **** sd_state = HAL_SD_Init(&hsd1);
|
||
58:Src/bsp_driver_sd.c **** /* Configure SD Bus width (4 bits mode selected) */
|
||
59:Src/bsp_driver_sd.c **** if (sd_state == MSD_OK)
|
||
60:Src/bsp_driver_sd.c **** {
|
||
61:Src/bsp_driver_sd.c **** /* Enable wide operation */
|
||
62:Src/bsp_driver_sd.c **** if (HAL_SD_ConfigWideBusOperation(&hsd1, SDMMC_BUS_WIDE_4B) != HAL_OK)
|
||
63:Src/bsp_driver_sd.c **** {
|
||
64:Src/bsp_driver_sd.c **** sd_state = MSD_ERROR;
|
||
65:Src/bsp_driver_sd.c **** }
|
||
66:Src/bsp_driver_sd.c **** }
|
||
67:Src/bsp_driver_sd.c ****
|
||
68:Src/bsp_driver_sd.c **** return sd_state;
|
||
69:Src/bsp_driver_sd.c **** }
|
||
70:Src/bsp_driver_sd.c **** /* USER CODE BEGIN AfterInitSection */
|
||
71:Src/bsp_driver_sd.c **** /* can be used to modify previous code / undefine following code / add code */
|
||
72:Src/bsp_driver_sd.c **** /* USER CODE END AfterInitSection */
|
||
73:Src/bsp_driver_sd.c ****
|
||
74:Src/bsp_driver_sd.c **** /* USER CODE BEGIN InterruptMode */
|
||
75:Src/bsp_driver_sd.c **** /**
|
||
76:Src/bsp_driver_sd.c **** * @brief Configures Interrupt mode for SD detection pin.
|
||
77:Src/bsp_driver_sd.c **** * @retval Returns 0
|
||
78:Src/bsp_driver_sd.c **** */
|
||
79:Src/bsp_driver_sd.c **** __weak uint8_t BSP_SD_ITConfig(void)
|
||
80:Src/bsp_driver_sd.c **** {
|
||
28 .loc 1 80 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.
|
||
81:Src/bsp_driver_sd.c **** /* Code to be updated by the user or replaced by one from the FW pack (in a stmxxxx_sd.c file) */
|
||
82:Src/bsp_driver_sd.c ****
|
||
83:Src/bsp_driver_sd.c **** return (uint8_t)0;
|
||
ARM GAS /tmp/ccwhiVas.s page 3
|
||
|
||
|
||
33 .loc 1 83 3 view .LVU1
|
||
84:Src/bsp_driver_sd.c **** }
|
||
34 .loc 1 84 1 is_stmt 0 view .LVU2
|
||
35 0000 0020 movs r0, #0
|
||
36 0002 7047 bx lr
|
||
37 .cfi_endproc
|
||
38 .LFE142:
|
||
40 .section .text.BSP_SD_ReadBlocks,"ax",%progbits
|
||
41 .align 1
|
||
42 .weak BSP_SD_ReadBlocks
|
||
43 .syntax unified
|
||
44 .thumb
|
||
45 .thumb_func
|
||
47 BSP_SD_ReadBlocks:
|
||
48 .LVL0:
|
||
49 .LFB143:
|
||
85:Src/bsp_driver_sd.c ****
|
||
86:Src/bsp_driver_sd.c **** /* USER CODE END InterruptMode */
|
||
87:Src/bsp_driver_sd.c ****
|
||
88:Src/bsp_driver_sd.c **** /* USER CODE BEGIN BeforeReadBlocksSection */
|
||
89:Src/bsp_driver_sd.c **** /* can be used to modify previous code / undefine following code / add code */
|
||
90:Src/bsp_driver_sd.c **** /* USER CODE END BeforeReadBlocksSection */
|
||
91:Src/bsp_driver_sd.c **** /**
|
||
92:Src/bsp_driver_sd.c **** * @brief Reads block(s) from a specified address in an SD card, in polling mode.
|
||
93:Src/bsp_driver_sd.c **** * @param pData: Pointer to the buffer that will contain the data to transmit
|
||
94:Src/bsp_driver_sd.c **** * @param ReadAddr: Address from where data is to be read
|
||
95:Src/bsp_driver_sd.c **** * @param NumOfBlocks: Number of SD blocks to read
|
||
96:Src/bsp_driver_sd.c **** * @param Timeout: Timeout for read operation
|
||
97:Src/bsp_driver_sd.c **** * @retval SD status
|
||
98:Src/bsp_driver_sd.c **** */
|
||
99:Src/bsp_driver_sd.c **** __weak uint8_t BSP_SD_ReadBlocks(uint32_t *pData, uint32_t ReadAddr, uint32_t NumOfBlocks, uint32_t
|
||
100:Src/bsp_driver_sd.c **** {
|
||
50 .loc 1 100 1 is_stmt 1 view -0
|
||
51 .cfi_startproc
|
||
52 @ args = 0, pretend = 0, frame = 0
|
||
53 @ frame_needed = 0, uses_anonymous_args = 0
|
||
54 .loc 1 100 1 is_stmt 0 view .LVU4
|
||
55 0000 00B5 push {lr}
|
||
56 .LCFI0:
|
||
57 .cfi_def_cfa_offset 4
|
||
58 .cfi_offset 14, -4
|
||
59 0002 83B0 sub sp, sp, #12
|
||
60 .LCFI1:
|
||
61 .cfi_def_cfa_offset 16
|
||
101:Src/bsp_driver_sd.c **** uint8_t sd_state = MSD_OK;
|
||
62 .loc 1 101 3 is_stmt 1 view .LVU5
|
||
63 .LVL1:
|
||
102:Src/bsp_driver_sd.c ****
|
||
103:Src/bsp_driver_sd.c **** if (HAL_SD_ReadBlocks(&hsd1, (uint8_t *)pData, ReadAddr, NumOfBlocks, Timeout) != HAL_OK)
|
||
64 .loc 1 103 3 view .LVU6
|
||
65 .loc 1 103 7 is_stmt 0 view .LVU7
|
||
66 0004 0093 str r3, [sp]
|
||
67 0006 1346 mov r3, r2
|
||
68 .LVL2:
|
||
69 .loc 1 103 7 view .LVU8
|
||
70 0008 0A46 mov r2, r1
|
||
71 .LVL3:
|
||
ARM GAS /tmp/ccwhiVas.s page 4
|
||
|
||
|
||
72 .loc 1 103 7 view .LVU9
|
||
73 000a 0146 mov r1, r0
|
||
74 .LVL4:
|
||
75 .loc 1 103 7 view .LVU10
|
||
76 000c 0348 ldr r0, .L6
|
||
77 .LVL5:
|
||
78 .loc 1 103 7 view .LVU11
|
||
79 000e FFF7FEFF bl HAL_SD_ReadBlocks
|
||
80 .LVL6:
|
||
81 .loc 1 103 6 discriminator 1 view .LVU12
|
||
82 0012 00B1 cbz r0, .L3
|
||
104:Src/bsp_driver_sd.c **** {
|
||
105:Src/bsp_driver_sd.c **** sd_state = MSD_ERROR;
|
||
83 .loc 1 105 14 view .LVU13
|
||
84 0014 0120 movs r0, #1
|
||
85 .L3:
|
||
86 .LVL7:
|
||
106:Src/bsp_driver_sd.c **** }
|
||
107:Src/bsp_driver_sd.c ****
|
||
108:Src/bsp_driver_sd.c **** return sd_state;
|
||
87 .loc 1 108 3 is_stmt 1 view .LVU14
|
||
109:Src/bsp_driver_sd.c **** }
|
||
88 .loc 1 109 1 is_stmt 0 view .LVU15
|
||
89 0016 03B0 add sp, sp, #12
|
||
90 .LCFI2:
|
||
91 .cfi_def_cfa_offset 4
|
||
92 @ sp needed
|
||
93 0018 5DF804FB ldr pc, [sp], #4
|
||
94 .L7:
|
||
95 .align 2
|
||
96 .L6:
|
||
97 001c 00000000 .word hsd1
|
||
98 .cfi_endproc
|
||
99 .LFE143:
|
||
101 .section .text.BSP_SD_WriteBlocks,"ax",%progbits
|
||
102 .align 1
|
||
103 .weak BSP_SD_WriteBlocks
|
||
104 .syntax unified
|
||
105 .thumb
|
||
106 .thumb_func
|
||
108 BSP_SD_WriteBlocks:
|
||
109 .LVL8:
|
||
110 .LFB144:
|
||
110:Src/bsp_driver_sd.c ****
|
||
111:Src/bsp_driver_sd.c **** /* USER CODE BEGIN BeforeWriteBlocksSection */
|
||
112:Src/bsp_driver_sd.c **** /* can be used to modify previous code / undefine following code / add code */
|
||
113:Src/bsp_driver_sd.c **** /* USER CODE END BeforeWriteBlocksSection */
|
||
114:Src/bsp_driver_sd.c **** /**
|
||
115:Src/bsp_driver_sd.c **** * @brief Writes block(s) to a specified address in an SD card, in polling mode.
|
||
116:Src/bsp_driver_sd.c **** * @param pData: Pointer to the buffer that will contain the data to transmit
|
||
117:Src/bsp_driver_sd.c **** * @param WriteAddr: Address from where data is to be written
|
||
118:Src/bsp_driver_sd.c **** * @param NumOfBlocks: Number of SD blocks to write
|
||
119:Src/bsp_driver_sd.c **** * @param Timeout: Timeout for write operation
|
||
120:Src/bsp_driver_sd.c **** * @retval SD status
|
||
121:Src/bsp_driver_sd.c **** */
|
||
122:Src/bsp_driver_sd.c **** __weak uint8_t BSP_SD_WriteBlocks(uint32_t *pData, uint32_t WriteAddr, uint32_t NumOfBlocks, uint32
|
||
123:Src/bsp_driver_sd.c **** {
|
||
ARM GAS /tmp/ccwhiVas.s page 5
|
||
|
||
|
||
111 .loc 1 123 1 is_stmt 1 view -0
|
||
112 .cfi_startproc
|
||
113 @ args = 0, pretend = 0, frame = 0
|
||
114 @ frame_needed = 0, uses_anonymous_args = 0
|
||
115 .loc 1 123 1 is_stmt 0 view .LVU17
|
||
116 0000 00B5 push {lr}
|
||
117 .LCFI3:
|
||
118 .cfi_def_cfa_offset 4
|
||
119 .cfi_offset 14, -4
|
||
120 0002 83B0 sub sp, sp, #12
|
||
121 .LCFI4:
|
||
122 .cfi_def_cfa_offset 16
|
||
124:Src/bsp_driver_sd.c **** uint8_t sd_state = MSD_OK;
|
||
123 .loc 1 124 3 is_stmt 1 view .LVU18
|
||
124 .LVL9:
|
||
125:Src/bsp_driver_sd.c ****
|
||
126:Src/bsp_driver_sd.c **** if (HAL_SD_WriteBlocks(&hsd1, (uint8_t *)pData, WriteAddr, NumOfBlocks, Timeout) != HAL_OK)
|
||
125 .loc 1 126 3 view .LVU19
|
||
126 .loc 1 126 7 is_stmt 0 view .LVU20
|
||
127 0004 0093 str r3, [sp]
|
||
128 0006 1346 mov r3, r2
|
||
129 .LVL10:
|
||
130 .loc 1 126 7 view .LVU21
|
||
131 0008 0A46 mov r2, r1
|
||
132 .LVL11:
|
||
133 .loc 1 126 7 view .LVU22
|
||
134 000a 0146 mov r1, r0
|
||
135 .LVL12:
|
||
136 .loc 1 126 7 view .LVU23
|
||
137 000c 0348 ldr r0, .L12
|
||
138 .LVL13:
|
||
139 .loc 1 126 7 view .LVU24
|
||
140 000e FFF7FEFF bl HAL_SD_WriteBlocks
|
||
141 .LVL14:
|
||
142 .loc 1 126 6 discriminator 1 view .LVU25
|
||
143 0012 00B1 cbz r0, .L9
|
||
127:Src/bsp_driver_sd.c **** {
|
||
128:Src/bsp_driver_sd.c **** sd_state = MSD_ERROR;
|
||
144 .loc 1 128 14 view .LVU26
|
||
145 0014 0120 movs r0, #1
|
||
146 .L9:
|
||
147 .LVL15:
|
||
129:Src/bsp_driver_sd.c **** }
|
||
130:Src/bsp_driver_sd.c ****
|
||
131:Src/bsp_driver_sd.c **** return sd_state;
|
||
148 .loc 1 131 3 is_stmt 1 view .LVU27
|
||
132:Src/bsp_driver_sd.c **** }
|
||
149 .loc 1 132 1 is_stmt 0 view .LVU28
|
||
150 0016 03B0 add sp, sp, #12
|
||
151 .LCFI5:
|
||
152 .cfi_def_cfa_offset 4
|
||
153 @ sp needed
|
||
154 0018 5DF804FB ldr pc, [sp], #4
|
||
155 .L13:
|
||
156 .align 2
|
||
157 .L12:
|
||
158 001c 00000000 .word hsd1
|
||
ARM GAS /tmp/ccwhiVas.s page 6
|
||
|
||
|
||
159 .cfi_endproc
|
||
160 .LFE144:
|
||
162 .section .text.BSP_SD_ReadBlocks_DMA,"ax",%progbits
|
||
163 .align 1
|
||
164 .weak BSP_SD_ReadBlocks_DMA
|
||
165 .syntax unified
|
||
166 .thumb
|
||
167 .thumb_func
|
||
169 BSP_SD_ReadBlocks_DMA:
|
||
170 .LVL16:
|
||
171 .LFB145:
|
||
133:Src/bsp_driver_sd.c ****
|
||
134:Src/bsp_driver_sd.c **** /* USER CODE BEGIN BeforeReadDMABlocksSection */
|
||
135:Src/bsp_driver_sd.c **** /* can be used to modify previous code / undefine following code / add code */
|
||
136:Src/bsp_driver_sd.c **** /* USER CODE END BeforeReadDMABlocksSection */
|
||
137:Src/bsp_driver_sd.c **** /**
|
||
138:Src/bsp_driver_sd.c **** * @brief Reads block(s) from a specified address in an SD card, in DMA mode.
|
||
139:Src/bsp_driver_sd.c **** * @param pData: Pointer to the buffer that will contain the data to transmit
|
||
140:Src/bsp_driver_sd.c **** * @param ReadAddr: Address from where data is to be read
|
||
141:Src/bsp_driver_sd.c **** * @param NumOfBlocks: Number of SD blocks to read
|
||
142:Src/bsp_driver_sd.c **** * @retval SD status
|
||
143:Src/bsp_driver_sd.c **** */
|
||
144:Src/bsp_driver_sd.c **** __weak uint8_t BSP_SD_ReadBlocks_DMA(uint32_t *pData, uint32_t ReadAddr, uint32_t NumOfBlocks)
|
||
145:Src/bsp_driver_sd.c **** {
|
||
172 .loc 1 145 1 is_stmt 1 view -0
|
||
173 .cfi_startproc
|
||
174 @ args = 0, pretend = 0, frame = 0
|
||
175 @ frame_needed = 0, uses_anonymous_args = 0
|
||
176 .loc 1 145 1 is_stmt 0 view .LVU30
|
||
177 0000 08B5 push {r3, lr}
|
||
178 .LCFI6:
|
||
179 .cfi_def_cfa_offset 8
|
||
180 .cfi_offset 3, -8
|
||
181 .cfi_offset 14, -4
|
||
182 0002 1346 mov r3, r2
|
||
146:Src/bsp_driver_sd.c **** uint8_t sd_state = MSD_OK;
|
||
183 .loc 1 146 3 is_stmt 1 view .LVU31
|
||
184 .LVL17:
|
||
147:Src/bsp_driver_sd.c ****
|
||
148:Src/bsp_driver_sd.c **** /* Read block(s) in DMA transfer mode */
|
||
149:Src/bsp_driver_sd.c **** if (HAL_SD_ReadBlocks_DMA(&hsd1, (uint8_t *)pData, ReadAddr, NumOfBlocks) != HAL_OK)
|
||
185 .loc 1 149 3 view .LVU32
|
||
186 .loc 1 149 7 is_stmt 0 view .LVU33
|
||
187 0004 0A46 mov r2, r1
|
||
188 .LVL18:
|
||
189 .loc 1 149 7 view .LVU34
|
||
190 0006 0146 mov r1, r0
|
||
191 .LVL19:
|
||
192 .loc 1 149 7 view .LVU35
|
||
193 0008 0248 ldr r0, .L18
|
||
194 .LVL20:
|
||
195 .loc 1 149 7 view .LVU36
|
||
196 000a FFF7FEFF bl HAL_SD_ReadBlocks_DMA
|
||
197 .LVL21:
|
||
198 .loc 1 149 6 discriminator 1 view .LVU37
|
||
199 000e 00B1 cbz r0, .L15
|
||
150:Src/bsp_driver_sd.c **** {
|
||
ARM GAS /tmp/ccwhiVas.s page 7
|
||
|
||
|
||
151:Src/bsp_driver_sd.c **** sd_state = MSD_ERROR;
|
||
200 .loc 1 151 14 view .LVU38
|
||
201 0010 0120 movs r0, #1
|
||
202 .L15:
|
||
203 .LVL22:
|
||
152:Src/bsp_driver_sd.c **** }
|
||
153:Src/bsp_driver_sd.c ****
|
||
154:Src/bsp_driver_sd.c **** return sd_state;
|
||
204 .loc 1 154 3 is_stmt 1 view .LVU39
|
||
155:Src/bsp_driver_sd.c **** }
|
||
205 .loc 1 155 1 is_stmt 0 view .LVU40
|
||
206 0012 08BD pop {r3, pc}
|
||
207 .L19:
|
||
208 .align 2
|
||
209 .L18:
|
||
210 0014 00000000 .word hsd1
|
||
211 .cfi_endproc
|
||
212 .LFE145:
|
||
214 .section .text.BSP_SD_WriteBlocks_DMA,"ax",%progbits
|
||
215 .align 1
|
||
216 .weak BSP_SD_WriteBlocks_DMA
|
||
217 .syntax unified
|
||
218 .thumb
|
||
219 .thumb_func
|
||
221 BSP_SD_WriteBlocks_DMA:
|
||
222 .LVL23:
|
||
223 .LFB146:
|
||
156:Src/bsp_driver_sd.c ****
|
||
157:Src/bsp_driver_sd.c **** /* USER CODE BEGIN BeforeWriteDMABlocksSection */
|
||
158:Src/bsp_driver_sd.c **** /* can be used to modify previous code / undefine following code / add code */
|
||
159:Src/bsp_driver_sd.c **** /* USER CODE END BeforeWriteDMABlocksSection */
|
||
160:Src/bsp_driver_sd.c **** /**
|
||
161:Src/bsp_driver_sd.c **** * @brief Writes block(s) to a specified address in an SD card, in DMA mode.
|
||
162:Src/bsp_driver_sd.c **** * @param pData: Pointer to the buffer that will contain the data to transmit
|
||
163:Src/bsp_driver_sd.c **** * @param WriteAddr: Address from where data is to be written
|
||
164:Src/bsp_driver_sd.c **** * @param NumOfBlocks: Number of SD blocks to write
|
||
165:Src/bsp_driver_sd.c **** * @retval SD status
|
||
166:Src/bsp_driver_sd.c **** */
|
||
167:Src/bsp_driver_sd.c **** __weak uint8_t BSP_SD_WriteBlocks_DMA(uint32_t *pData, uint32_t WriteAddr, uint32_t NumOfBlocks)
|
||
168:Src/bsp_driver_sd.c **** {
|
||
224 .loc 1 168 1 is_stmt 1 view -0
|
||
225 .cfi_startproc
|
||
226 @ args = 0, pretend = 0, frame = 0
|
||
227 @ frame_needed = 0, uses_anonymous_args = 0
|
||
228 .loc 1 168 1 is_stmt 0 view .LVU42
|
||
229 0000 08B5 push {r3, lr}
|
||
230 .LCFI7:
|
||
231 .cfi_def_cfa_offset 8
|
||
232 .cfi_offset 3, -8
|
||
233 .cfi_offset 14, -4
|
||
234 0002 1346 mov r3, r2
|
||
169:Src/bsp_driver_sd.c **** uint8_t sd_state = MSD_OK;
|
||
235 .loc 1 169 3 is_stmt 1 view .LVU43
|
||
236 .LVL24:
|
||
170:Src/bsp_driver_sd.c ****
|
||
171:Src/bsp_driver_sd.c **** /* Write block(s) in DMA transfer mode */
|
||
172:Src/bsp_driver_sd.c **** if (HAL_SD_WriteBlocks_DMA(&hsd1, (uint8_t *)pData, WriteAddr, NumOfBlocks) != HAL_OK)
|
||
ARM GAS /tmp/ccwhiVas.s page 8
|
||
|
||
|
||
237 .loc 1 172 3 view .LVU44
|
||
238 .loc 1 172 7 is_stmt 0 view .LVU45
|
||
239 0004 0A46 mov r2, r1
|
||
240 .LVL25:
|
||
241 .loc 1 172 7 view .LVU46
|
||
242 0006 0146 mov r1, r0
|
||
243 .LVL26:
|
||
244 .loc 1 172 7 view .LVU47
|
||
245 0008 0248 ldr r0, .L24
|
||
246 .LVL27:
|
||
247 .loc 1 172 7 view .LVU48
|
||
248 000a FFF7FEFF bl HAL_SD_WriteBlocks_DMA
|
||
249 .LVL28:
|
||
250 .loc 1 172 6 discriminator 1 view .LVU49
|
||
251 000e 00B1 cbz r0, .L21
|
||
173:Src/bsp_driver_sd.c **** {
|
||
174:Src/bsp_driver_sd.c **** sd_state = MSD_ERROR;
|
||
252 .loc 1 174 14 view .LVU50
|
||
253 0010 0120 movs r0, #1
|
||
254 .L21:
|
||
255 .LVL29:
|
||
175:Src/bsp_driver_sd.c **** }
|
||
176:Src/bsp_driver_sd.c ****
|
||
177:Src/bsp_driver_sd.c **** return sd_state;
|
||
256 .loc 1 177 3 is_stmt 1 view .LVU51
|
||
178:Src/bsp_driver_sd.c **** }
|
||
257 .loc 1 178 1 is_stmt 0 view .LVU52
|
||
258 0012 08BD pop {r3, pc}
|
||
259 .L25:
|
||
260 .align 2
|
||
261 .L24:
|
||
262 0014 00000000 .word hsd1
|
||
263 .cfi_endproc
|
||
264 .LFE146:
|
||
266 .section .text.BSP_SD_Erase,"ax",%progbits
|
||
267 .align 1
|
||
268 .weak BSP_SD_Erase
|
||
269 .syntax unified
|
||
270 .thumb
|
||
271 .thumb_func
|
||
273 BSP_SD_Erase:
|
||
274 .LVL30:
|
||
275 .LFB147:
|
||
179:Src/bsp_driver_sd.c ****
|
||
180:Src/bsp_driver_sd.c **** /* USER CODE BEGIN BeforeEraseSection */
|
||
181:Src/bsp_driver_sd.c **** /* can be used to modify previous code / undefine following code / add code */
|
||
182:Src/bsp_driver_sd.c **** /* USER CODE END BeforeEraseSection */
|
||
183:Src/bsp_driver_sd.c **** /**
|
||
184:Src/bsp_driver_sd.c **** * @brief Erases the specified memory area of the given SD card.
|
||
185:Src/bsp_driver_sd.c **** * @param StartAddr: Start byte address
|
||
186:Src/bsp_driver_sd.c **** * @param EndAddr: End byte address
|
||
187:Src/bsp_driver_sd.c **** * @retval SD status
|
||
188:Src/bsp_driver_sd.c **** */
|
||
189:Src/bsp_driver_sd.c **** __weak uint8_t BSP_SD_Erase(uint32_t StartAddr, uint32_t EndAddr)
|
||
190:Src/bsp_driver_sd.c **** {
|
||
276 .loc 1 190 1 is_stmt 1 view -0
|
||
277 .cfi_startproc
|
||
ARM GAS /tmp/ccwhiVas.s page 9
|
||
|
||
|
||
278 @ args = 0, pretend = 0, frame = 0
|
||
279 @ frame_needed = 0, uses_anonymous_args = 0
|
||
280 .loc 1 190 1 is_stmt 0 view .LVU54
|
||
281 0000 08B5 push {r3, lr}
|
||
282 .LCFI8:
|
||
283 .cfi_def_cfa_offset 8
|
||
284 .cfi_offset 3, -8
|
||
285 .cfi_offset 14, -4
|
||
286 0002 0A46 mov r2, r1
|
||
191:Src/bsp_driver_sd.c **** uint8_t sd_state = MSD_OK;
|
||
287 .loc 1 191 3 is_stmt 1 view .LVU55
|
||
288 .LVL31:
|
||
192:Src/bsp_driver_sd.c ****
|
||
193:Src/bsp_driver_sd.c **** if (HAL_SD_Erase(&hsd1, StartAddr, EndAddr) != HAL_OK)
|
||
289 .loc 1 193 3 view .LVU56
|
||
290 .loc 1 193 7 is_stmt 0 view .LVU57
|
||
291 0004 0146 mov r1, r0
|
||
292 .LVL32:
|
||
293 .loc 1 193 7 view .LVU58
|
||
294 0006 0348 ldr r0, .L30
|
||
295 .LVL33:
|
||
296 .loc 1 193 7 view .LVU59
|
||
297 0008 FFF7FEFF bl HAL_SD_Erase
|
||
298 .LVL34:
|
||
299 .loc 1 193 6 discriminator 1 view .LVU60
|
||
300 000c 00B1 cbz r0, .L27
|
||
194:Src/bsp_driver_sd.c **** {
|
||
195:Src/bsp_driver_sd.c **** sd_state = MSD_ERROR;
|
||
301 .loc 1 195 14 view .LVU61
|
||
302 000e 0120 movs r0, #1
|
||
303 .L27:
|
||
304 .LVL35:
|
||
196:Src/bsp_driver_sd.c **** }
|
||
197:Src/bsp_driver_sd.c ****
|
||
198:Src/bsp_driver_sd.c **** return sd_state;
|
||
305 .loc 1 198 3 is_stmt 1 view .LVU62
|
||
199:Src/bsp_driver_sd.c **** }
|
||
306 .loc 1 199 1 is_stmt 0 view .LVU63
|
||
307 0010 08BD pop {r3, pc}
|
||
308 .L31:
|
||
309 0012 00BF .align 2
|
||
310 .L30:
|
||
311 0014 00000000 .word hsd1
|
||
312 .cfi_endproc
|
||
313 .LFE147:
|
||
315 .section .text.BSP_SD_GetCardState,"ax",%progbits
|
||
316 .align 1
|
||
317 .weak BSP_SD_GetCardState
|
||
318 .syntax unified
|
||
319 .thumb
|
||
320 .thumb_func
|
||
322 BSP_SD_GetCardState:
|
||
323 .LFB148:
|
||
200:Src/bsp_driver_sd.c ****
|
||
201:Src/bsp_driver_sd.c **** /* USER CODE BEGIN BeforeGetCardStateSection */
|
||
202:Src/bsp_driver_sd.c **** /* can be used to modify previous code / undefine following code / add code */
|
||
203:Src/bsp_driver_sd.c **** /* USER CODE END BeforeGetCardStateSection */
|
||
ARM GAS /tmp/ccwhiVas.s page 10
|
||
|
||
|
||
204:Src/bsp_driver_sd.c ****
|
||
205:Src/bsp_driver_sd.c **** /**
|
||
206:Src/bsp_driver_sd.c **** * @brief Gets the current SD card data status.
|
||
207:Src/bsp_driver_sd.c **** * @param None
|
||
208:Src/bsp_driver_sd.c **** * @retval Data transfer state.
|
||
209:Src/bsp_driver_sd.c **** * This value can be one of the following values:
|
||
210:Src/bsp_driver_sd.c **** * @arg SD_TRANSFER_OK: No data transfer is acting
|
||
211:Src/bsp_driver_sd.c **** * @arg SD_TRANSFER_BUSY: Data transfer is acting
|
||
212:Src/bsp_driver_sd.c **** */
|
||
213:Src/bsp_driver_sd.c **** __weak uint8_t BSP_SD_GetCardState(void)
|
||
214:Src/bsp_driver_sd.c **** {
|
||
324 .loc 1 214 1 is_stmt 1 view -0
|
||
325 .cfi_startproc
|
||
326 @ args = 0, pretend = 0, frame = 0
|
||
327 @ frame_needed = 0, uses_anonymous_args = 0
|
||
328 0000 08B5 push {r3, lr}
|
||
329 .LCFI9:
|
||
330 .cfi_def_cfa_offset 8
|
||
331 .cfi_offset 3, -8
|
||
332 .cfi_offset 14, -4
|
||
215:Src/bsp_driver_sd.c **** return ((HAL_SD_GetCardState(&hsd1) == HAL_SD_CARD_TRANSFER ) ? SD_TRANSFER_OK : SD_TRANSFER_BUSY
|
||
333 .loc 1 215 3 view .LVU65
|
||
334 .loc 1 215 12 is_stmt 0 view .LVU66
|
||
335 0002 0348 ldr r0, .L34
|
||
336 0004 FFF7FEFF bl HAL_SD_GetCardState
|
||
337 .LVL36:
|
||
216:Src/bsp_driver_sd.c **** }
|
||
338 .loc 1 216 1 view .LVU67
|
||
339 0008 0438 subs r0, r0, #4
|
||
340 000a 18BF it ne
|
||
341 000c 0120 movne r0, #1
|
||
342 000e 08BD pop {r3, pc}
|
||
343 .L35:
|
||
344 .align 2
|
||
345 .L34:
|
||
346 0010 00000000 .word hsd1
|
||
347 .cfi_endproc
|
||
348 .LFE148:
|
||
350 .section .text.BSP_SD_GetCardInfo,"ax",%progbits
|
||
351 .align 1
|
||
352 .weak BSP_SD_GetCardInfo
|
||
353 .syntax unified
|
||
354 .thumb
|
||
355 .thumb_func
|
||
357 BSP_SD_GetCardInfo:
|
||
358 .LVL37:
|
||
359 .LFB149:
|
||
217:Src/bsp_driver_sd.c ****
|
||
218:Src/bsp_driver_sd.c **** /**
|
||
219:Src/bsp_driver_sd.c **** * @brief Get SD information about specific SD card.
|
||
220:Src/bsp_driver_sd.c **** * @param CardInfo: Pointer to HAL_SD_CardInfoTypedef structure
|
||
221:Src/bsp_driver_sd.c **** * @retval None
|
||
222:Src/bsp_driver_sd.c **** */
|
||
223:Src/bsp_driver_sd.c **** __weak void BSP_SD_GetCardInfo(HAL_SD_CardInfoTypeDef *CardInfo)
|
||
224:Src/bsp_driver_sd.c **** {
|
||
360 .loc 1 224 1 is_stmt 1 view -0
|
||
361 .cfi_startproc
|
||
ARM GAS /tmp/ccwhiVas.s page 11
|
||
|
||
|
||
362 @ args = 0, pretend = 0, frame = 0
|
||
363 @ frame_needed = 0, uses_anonymous_args = 0
|
||
364 .loc 1 224 1 is_stmt 0 view .LVU69
|
||
365 0000 08B5 push {r3, lr}
|
||
366 .LCFI10:
|
||
367 .cfi_def_cfa_offset 8
|
||
368 .cfi_offset 3, -8
|
||
369 .cfi_offset 14, -4
|
||
370 0002 0146 mov r1, r0
|
||
225:Src/bsp_driver_sd.c **** /* Get SD card Information */
|
||
226:Src/bsp_driver_sd.c **** HAL_SD_GetCardInfo(&hsd1, CardInfo);
|
||
371 .loc 1 226 3 is_stmt 1 view .LVU70
|
||
372 0004 0148 ldr r0, .L38
|
||
373 .LVL38:
|
||
374 .loc 1 226 3 is_stmt 0 view .LVU71
|
||
375 0006 FFF7FEFF bl HAL_SD_GetCardInfo
|
||
376 .LVL39:
|
||
227:Src/bsp_driver_sd.c **** }
|
||
377 .loc 1 227 1 view .LVU72
|
||
378 000a 08BD pop {r3, pc}
|
||
379 .L39:
|
||
380 .align 2
|
||
381 .L38:
|
||
382 000c 00000000 .word hsd1
|
||
383 .cfi_endproc
|
||
384 .LFE149:
|
||
386 .section .text.BSP_SD_AbortCallback,"ax",%progbits
|
||
387 .align 1
|
||
388 .weak BSP_SD_AbortCallback
|
||
389 .syntax unified
|
||
390 .thumb
|
||
391 .thumb_func
|
||
393 BSP_SD_AbortCallback:
|
||
394 .LFB153:
|
||
228:Src/bsp_driver_sd.c ****
|
||
229:Src/bsp_driver_sd.c **** /* USER CODE BEGIN BeforeCallBacksSection */
|
||
230:Src/bsp_driver_sd.c **** /* can be used to modify previous code / undefine following code / add code */
|
||
231:Src/bsp_driver_sd.c **** /* USER CODE END BeforeCallBacksSection */
|
||
232:Src/bsp_driver_sd.c **** /**
|
||
233:Src/bsp_driver_sd.c **** * @brief SD Abort callbacks
|
||
234:Src/bsp_driver_sd.c **** * @param hsd: SD handle
|
||
235:Src/bsp_driver_sd.c **** * @retval None
|
||
236:Src/bsp_driver_sd.c **** */
|
||
237:Src/bsp_driver_sd.c **** void HAL_SD_AbortCallback(SD_HandleTypeDef *hsd)
|
||
238:Src/bsp_driver_sd.c **** {
|
||
239:Src/bsp_driver_sd.c **** BSP_SD_AbortCallback();
|
||
240:Src/bsp_driver_sd.c **** }
|
||
241:Src/bsp_driver_sd.c ****
|
||
242:Src/bsp_driver_sd.c **** /**
|
||
243:Src/bsp_driver_sd.c **** * @brief Tx Transfer completed callback
|
||
244:Src/bsp_driver_sd.c **** * @param hsd: SD handle
|
||
245:Src/bsp_driver_sd.c **** * @retval None
|
||
246:Src/bsp_driver_sd.c **** */
|
||
247:Src/bsp_driver_sd.c **** void HAL_SD_TxCpltCallback(SD_HandleTypeDef *hsd)
|
||
248:Src/bsp_driver_sd.c **** {
|
||
249:Src/bsp_driver_sd.c **** BSP_SD_WriteCpltCallback();
|
||
250:Src/bsp_driver_sd.c **** }
|
||
ARM GAS /tmp/ccwhiVas.s page 12
|
||
|
||
|
||
251:Src/bsp_driver_sd.c ****
|
||
252:Src/bsp_driver_sd.c **** /**
|
||
253:Src/bsp_driver_sd.c **** * @brief Rx Transfer completed callback
|
||
254:Src/bsp_driver_sd.c **** * @param hsd: SD handle
|
||
255:Src/bsp_driver_sd.c **** * @retval None
|
||
256:Src/bsp_driver_sd.c **** */
|
||
257:Src/bsp_driver_sd.c **** void HAL_SD_RxCpltCallback(SD_HandleTypeDef *hsd)
|
||
258:Src/bsp_driver_sd.c **** {
|
||
259:Src/bsp_driver_sd.c **** BSP_SD_ReadCpltCallback();
|
||
260:Src/bsp_driver_sd.c **** }
|
||
261:Src/bsp_driver_sd.c ****
|
||
262:Src/bsp_driver_sd.c **** /* USER CODE BEGIN CallBacksSection_C */
|
||
263:Src/bsp_driver_sd.c **** /**
|
||
264:Src/bsp_driver_sd.c **** * @brief BSP SD Abort callback
|
||
265:Src/bsp_driver_sd.c **** * @retval None
|
||
266:Src/bsp_driver_sd.c **** * @note empty (up to the user to fill it in or to remove it if useless)
|
||
267:Src/bsp_driver_sd.c **** */
|
||
268:Src/bsp_driver_sd.c **** __weak void BSP_SD_AbortCallback(void)
|
||
269:Src/bsp_driver_sd.c **** {
|
||
395 .loc 1 269 1 is_stmt 1 view -0
|
||
396 .cfi_startproc
|
||
397 @ args = 0, pretend = 0, frame = 0
|
||
398 @ frame_needed = 0, uses_anonymous_args = 0
|
||
399 @ link register save eliminated.
|
||
270:Src/bsp_driver_sd.c ****
|
||
271:Src/bsp_driver_sd.c **** }
|
||
400 .loc 1 271 1 view .LVU74
|
||
401 0000 7047 bx lr
|
||
402 .cfi_endproc
|
||
403 .LFE153:
|
||
405 .section .text.HAL_SD_AbortCallback,"ax",%progbits
|
||
406 .align 1
|
||
407 .global HAL_SD_AbortCallback
|
||
408 .syntax unified
|
||
409 .thumb
|
||
410 .thumb_func
|
||
412 HAL_SD_AbortCallback:
|
||
413 .LVL40:
|
||
414 .LFB150:
|
||
238:Src/bsp_driver_sd.c **** BSP_SD_AbortCallback();
|
||
415 .loc 1 238 1 view -0
|
||
416 .cfi_startproc
|
||
417 @ args = 0, pretend = 0, frame = 0
|
||
418 @ frame_needed = 0, uses_anonymous_args = 0
|
||
238:Src/bsp_driver_sd.c **** BSP_SD_AbortCallback();
|
||
419 .loc 1 238 1 is_stmt 0 view .LVU76
|
||
420 0000 08B5 push {r3, lr}
|
||
421 .LCFI11:
|
||
422 .cfi_def_cfa_offset 8
|
||
423 .cfi_offset 3, -8
|
||
424 .cfi_offset 14, -4
|
||
239:Src/bsp_driver_sd.c **** }
|
||
425 .loc 1 239 3 is_stmt 1 view .LVU77
|
||
426 0002 FFF7FEFF bl BSP_SD_AbortCallback
|
||
427 .LVL41:
|
||
240:Src/bsp_driver_sd.c ****
|
||
428 .loc 1 240 1 is_stmt 0 view .LVU78
|
||
ARM GAS /tmp/ccwhiVas.s page 13
|
||
|
||
|
||
429 0006 08BD pop {r3, pc}
|
||
430 .cfi_endproc
|
||
431 .LFE150:
|
||
433 .section .text.BSP_SD_WriteCpltCallback,"ax",%progbits
|
||
434 .align 1
|
||
435 .weak BSP_SD_WriteCpltCallback
|
||
436 .syntax unified
|
||
437 .thumb
|
||
438 .thumb_func
|
||
440 BSP_SD_WriteCpltCallback:
|
||
441 .LFB154:
|
||
272:Src/bsp_driver_sd.c ****
|
||
273:Src/bsp_driver_sd.c **** /**
|
||
274:Src/bsp_driver_sd.c **** * @brief BSP Tx Transfer completed callback
|
||
275:Src/bsp_driver_sd.c **** * @retval None
|
||
276:Src/bsp_driver_sd.c **** * @note empty (up to the user to fill it in or to remove it if useless)
|
||
277:Src/bsp_driver_sd.c **** */
|
||
278:Src/bsp_driver_sd.c **** __weak void BSP_SD_WriteCpltCallback(void)
|
||
279:Src/bsp_driver_sd.c **** {
|
||
442 .loc 1 279 1 is_stmt 1 view -0
|
||
443 .cfi_startproc
|
||
444 @ args = 0, pretend = 0, frame = 0
|
||
445 @ frame_needed = 0, uses_anonymous_args = 0
|
||
446 @ link register save eliminated.
|
||
280:Src/bsp_driver_sd.c ****
|
||
281:Src/bsp_driver_sd.c **** }
|
||
447 .loc 1 281 1 view .LVU80
|
||
448 0000 7047 bx lr
|
||
449 .cfi_endproc
|
||
450 .LFE154:
|
||
452 .section .text.HAL_SD_TxCpltCallback,"ax",%progbits
|
||
453 .align 1
|
||
454 .global HAL_SD_TxCpltCallback
|
||
455 .syntax unified
|
||
456 .thumb
|
||
457 .thumb_func
|
||
459 HAL_SD_TxCpltCallback:
|
||
460 .LVL42:
|
||
461 .LFB151:
|
||
248:Src/bsp_driver_sd.c **** BSP_SD_WriteCpltCallback();
|
||
462 .loc 1 248 1 view -0
|
||
463 .cfi_startproc
|
||
464 @ args = 0, pretend = 0, frame = 0
|
||
465 @ frame_needed = 0, uses_anonymous_args = 0
|
||
248:Src/bsp_driver_sd.c **** BSP_SD_WriteCpltCallback();
|
||
466 .loc 1 248 1 is_stmt 0 view .LVU82
|
||
467 0000 08B5 push {r3, lr}
|
||
468 .LCFI12:
|
||
469 .cfi_def_cfa_offset 8
|
||
470 .cfi_offset 3, -8
|
||
471 .cfi_offset 14, -4
|
||
249:Src/bsp_driver_sd.c **** }
|
||
472 .loc 1 249 3 is_stmt 1 view .LVU83
|
||
473 0002 FFF7FEFF bl BSP_SD_WriteCpltCallback
|
||
474 .LVL43:
|
||
250:Src/bsp_driver_sd.c ****
|
||
475 .loc 1 250 1 is_stmt 0 view .LVU84
|
||
ARM GAS /tmp/ccwhiVas.s page 14
|
||
|
||
|
||
476 0006 08BD pop {r3, pc}
|
||
477 .cfi_endproc
|
||
478 .LFE151:
|
||
480 .section .text.BSP_SD_ReadCpltCallback,"ax",%progbits
|
||
481 .align 1
|
||
482 .weak BSP_SD_ReadCpltCallback
|
||
483 .syntax unified
|
||
484 .thumb
|
||
485 .thumb_func
|
||
487 BSP_SD_ReadCpltCallback:
|
||
488 .LFB155:
|
||
282:Src/bsp_driver_sd.c ****
|
||
283:Src/bsp_driver_sd.c **** /**
|
||
284:Src/bsp_driver_sd.c **** * @brief BSP Rx Transfer completed callback
|
||
285:Src/bsp_driver_sd.c **** * @retval None
|
||
286:Src/bsp_driver_sd.c **** * @note empty (up to the user to fill it in or to remove it if useless)
|
||
287:Src/bsp_driver_sd.c **** */
|
||
288:Src/bsp_driver_sd.c **** __weak void BSP_SD_ReadCpltCallback(void)
|
||
289:Src/bsp_driver_sd.c **** {
|
||
489 .loc 1 289 1 is_stmt 1 view -0
|
||
490 .cfi_startproc
|
||
491 @ args = 0, pretend = 0, frame = 0
|
||
492 @ frame_needed = 0, uses_anonymous_args = 0
|
||
493 @ link register save eliminated.
|
||
290:Src/bsp_driver_sd.c ****
|
||
291:Src/bsp_driver_sd.c **** }
|
||
494 .loc 1 291 1 view .LVU86
|
||
495 0000 7047 bx lr
|
||
496 .cfi_endproc
|
||
497 .LFE155:
|
||
499 .section .text.HAL_SD_RxCpltCallback,"ax",%progbits
|
||
500 .align 1
|
||
501 .global HAL_SD_RxCpltCallback
|
||
502 .syntax unified
|
||
503 .thumb
|
||
504 .thumb_func
|
||
506 HAL_SD_RxCpltCallback:
|
||
507 .LVL44:
|
||
508 .LFB152:
|
||
258:Src/bsp_driver_sd.c **** BSP_SD_ReadCpltCallback();
|
||
509 .loc 1 258 1 view -0
|
||
510 .cfi_startproc
|
||
511 @ args = 0, pretend = 0, frame = 0
|
||
512 @ frame_needed = 0, uses_anonymous_args = 0
|
||
258:Src/bsp_driver_sd.c **** BSP_SD_ReadCpltCallback();
|
||
513 .loc 1 258 1 is_stmt 0 view .LVU88
|
||
514 0000 08B5 push {r3, lr}
|
||
515 .LCFI13:
|
||
516 .cfi_def_cfa_offset 8
|
||
517 .cfi_offset 3, -8
|
||
518 .cfi_offset 14, -4
|
||
259:Src/bsp_driver_sd.c **** }
|
||
519 .loc 1 259 3 is_stmt 1 view .LVU89
|
||
520 0002 FFF7FEFF bl BSP_SD_ReadCpltCallback
|
||
521 .LVL45:
|
||
260:Src/bsp_driver_sd.c ****
|
||
522 .loc 1 260 1 is_stmt 0 view .LVU90
|
||
ARM GAS /tmp/ccwhiVas.s page 15
|
||
|
||
|
||
523 0006 08BD pop {r3, pc}
|
||
524 .cfi_endproc
|
||
525 .LFE152:
|
||
527 .section .text.BSP_SD_IsDetected,"ax",%progbits
|
||
528 .align 1
|
||
529 .weak BSP_SD_IsDetected
|
||
530 .syntax unified
|
||
531 .thumb
|
||
532 .thumb_func
|
||
534 BSP_SD_IsDetected:
|
||
535 .LFB156:
|
||
292:Src/bsp_driver_sd.c **** /* USER CODE END CallBacksSection_C */
|
||
293:Src/bsp_driver_sd.c **** #endif
|
||
294:Src/bsp_driver_sd.c ****
|
||
295:Src/bsp_driver_sd.c **** /**
|
||
296:Src/bsp_driver_sd.c **** * @brief Detects if SD card is correctly plugged in the memory slot or not.
|
||
297:Src/bsp_driver_sd.c **** * @param None
|
||
298:Src/bsp_driver_sd.c **** * @retval Returns if SD is detected or not
|
||
299:Src/bsp_driver_sd.c **** */
|
||
300:Src/bsp_driver_sd.c **** __weak uint8_t BSP_SD_IsDetected(void)
|
||
301:Src/bsp_driver_sd.c **** {
|
||
536 .loc 1 301 1 is_stmt 1 view -0
|
||
537 .cfi_startproc
|
||
538 @ args = 0, pretend = 0, frame = 8
|
||
539 @ frame_needed = 0, uses_anonymous_args = 0
|
||
540 0000 00B5 push {lr}
|
||
541 .LCFI14:
|
||
542 .cfi_def_cfa_offset 4
|
||
543 .cfi_offset 14, -4
|
||
544 0002 83B0 sub sp, sp, #12
|
||
545 .LCFI15:
|
||
546 .cfi_def_cfa_offset 16
|
||
302:Src/bsp_driver_sd.c **** __IO uint8_t status = SD_PRESENT;
|
||
547 .loc 1 302 3 view .LVU92
|
||
548 .loc 1 302 16 is_stmt 0 view .LVU93
|
||
549 0004 0123 movs r3, #1
|
||
550 0006 8DF80730 strb r3, [sp, #7]
|
||
303:Src/bsp_driver_sd.c ****
|
||
304:Src/bsp_driver_sd.c **** if (BSP_PlatformIsDetected() == 0x0)
|
||
551 .loc 1 304 3 is_stmt 1 view .LVU94
|
||
552 .loc 1 304 7 is_stmt 0 view .LVU95
|
||
553 000a FFF7FEFF bl BSP_PlatformIsDetected
|
||
554 .LVL46:
|
||
555 .loc 1 304 6 discriminator 1 view .LVU96
|
||
556 000e 10B9 cbnz r0, .L50
|
||
305:Src/bsp_driver_sd.c **** {
|
||
306:Src/bsp_driver_sd.c **** status = SD_NOT_PRESENT;
|
||
557 .loc 1 306 5 is_stmt 1 view .LVU97
|
||
558 .loc 1 306 12 is_stmt 0 view .LVU98
|
||
559 0010 0023 movs r3, #0
|
||
560 0012 8DF80730 strb r3, [sp, #7]
|
||
561 .L50:
|
||
307:Src/bsp_driver_sd.c **** }
|
||
308:Src/bsp_driver_sd.c ****
|
||
309:Src/bsp_driver_sd.c **** return status;
|
||
562 .loc 1 309 3 is_stmt 1 view .LVU99
|
||
563 .loc 1 309 10 is_stmt 0 view .LVU100
|
||
ARM GAS /tmp/ccwhiVas.s page 16
|
||
|
||
|
||
564 0016 9DF80700 ldrb r0, [sp, #7] @ zero_extendqisi2
|
||
310:Src/bsp_driver_sd.c **** }
|
||
565 .loc 1 310 1 view .LVU101
|
||
566 001a 03B0 add sp, sp, #12
|
||
567 .LCFI16:
|
||
568 .cfi_def_cfa_offset 4
|
||
569 @ sp needed
|
||
570 001c 5DF804FB ldr pc, [sp], #4
|
||
571 .cfi_endproc
|
||
572 .LFE156:
|
||
574 .section .text.BSP_SD_Init,"ax",%progbits
|
||
575 .align 1
|
||
576 .weak BSP_SD_Init
|
||
577 .syntax unified
|
||
578 .thumb
|
||
579 .thumb_func
|
||
581 BSP_SD_Init:
|
||
582 .LFB141:
|
||
49:Src/bsp_driver_sd.c **** uint8_t sd_state = MSD_OK;
|
||
583 .loc 1 49 1 is_stmt 1 view -0
|
||
584 .cfi_startproc
|
||
585 @ args = 0, pretend = 0, frame = 0
|
||
586 @ frame_needed = 0, uses_anonymous_args = 0
|
||
587 0000 38B5 push {r3, r4, r5, lr}
|
||
588 .LCFI17:
|
||
589 .cfi_def_cfa_offset 16
|
||
590 .cfi_offset 3, -16
|
||
591 .cfi_offset 4, -12
|
||
592 .cfi_offset 5, -8
|
||
593 .cfi_offset 14, -4
|
||
50:Src/bsp_driver_sd.c **** /* Check if the SD card is plugged in the slot */
|
||
594 .loc 1 50 3 view .LVU103
|
||
595 .LVL47:
|
||
52:Src/bsp_driver_sd.c **** {
|
||
596 .loc 1 52 3 view .LVU104
|
||
52:Src/bsp_driver_sd.c **** {
|
||
597 .loc 1 52 7 is_stmt 0 view .LVU105
|
||
598 0002 FFF7FEFF bl BSP_SD_IsDetected
|
||
599 .LVL48:
|
||
52:Src/bsp_driver_sd.c **** {
|
||
600 .loc 1 52 6 discriminator 1 view .LVU106
|
||
601 0006 0128 cmp r0, #1
|
||
602 0008 02D0 beq .L57
|
||
54:Src/bsp_driver_sd.c **** }
|
||
603 .loc 1 54 12 view .LVU107
|
||
604 000a 0225 movs r5, #2
|
||
605 .LVL49:
|
||
606 .L53:
|
||
69:Src/bsp_driver_sd.c **** /* USER CODE BEGIN AfterInitSection */
|
||
607 .loc 1 69 1 view .LVU108
|
||
608 000c 2846 mov r0, r5
|
||
609 000e 38BD pop {r3, r4, r5, pc}
|
||
610 .LVL50:
|
||
611 .L57:
|
||
69:Src/bsp_driver_sd.c **** /* USER CODE BEGIN AfterInitSection */
|
||
612 .loc 1 69 1 view .LVU109
|
||
613 0010 0446 mov r4, r0
|
||
ARM GAS /tmp/ccwhiVas.s page 17
|
||
|
||
|
||
57:Src/bsp_driver_sd.c **** /* Configure SD Bus width (4 bits mode selected) */
|
||
614 .loc 1 57 3 is_stmt 1 view .LVU110
|
||
57:Src/bsp_driver_sd.c **** /* Configure SD Bus width (4 bits mode selected) */
|
||
615 .loc 1 57 14 is_stmt 0 view .LVU111
|
||
616 0012 0748 ldr r0, .L58
|
||
617 0014 FFF7FEFF bl HAL_SD_Init
|
||
618 .LVL51:
|
||
59:Src/bsp_driver_sd.c **** {
|
||
619 .loc 1 59 3 is_stmt 1 view .LVU112
|
||
59:Src/bsp_driver_sd.c **** {
|
||
620 .loc 1 59 6 is_stmt 0 view .LVU113
|
||
621 0018 0546 mov r5, r0
|
||
622 001a 0028 cmp r0, #0
|
||
623 001c F6D1 bne .L53
|
||
62:Src/bsp_driver_sd.c **** {
|
||
624 .loc 1 62 5 is_stmt 1 view .LVU114
|
||
62:Src/bsp_driver_sd.c **** {
|
||
625 .loc 1 62 9 is_stmt 0 view .LVU115
|
||
626 001e 4FF40061 mov r1, #2048
|
||
627 0022 0348 ldr r0, .L58
|
||
628 .LVL52:
|
||
62:Src/bsp_driver_sd.c **** {
|
||
629 .loc 1 62 9 view .LVU116
|
||
630 0024 FFF7FEFF bl HAL_SD_ConfigWideBusOperation
|
||
631 .LVL53:
|
||
62:Src/bsp_driver_sd.c **** {
|
||
632 .loc 1 62 8 discriminator 1 view .LVU117
|
||
633 0028 0028 cmp r0, #0
|
||
634 002a EFD0 beq .L53
|
||
64:Src/bsp_driver_sd.c **** }
|
||
635 .loc 1 64 16 view .LVU118
|
||
636 002c 2546 mov r5, r4
|
||
637 .LVL54:
|
||
64:Src/bsp_driver_sd.c **** }
|
||
638 .loc 1 64 16 view .LVU119
|
||
639 002e EDE7 b .L53
|
||
640 .L59:
|
||
641 .align 2
|
||
642 .L58:
|
||
643 0030 00000000 .word hsd1
|
||
644 .cfi_endproc
|
||
645 .LFE141:
|
||
647 .text
|
||
648 .Letext0:
|
||
649 .file 2 "/usr/lib/gcc/arm-none-eabi/13.2.1/include/stdint.h"
|
||
650 .file 3 "Drivers/CMSIS/Device/ST/STM32F7xx/Include/stm32f767xx.h"
|
||
651 .file 4 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_hal_def.h"
|
||
652 .file 5 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_hal_dma.h"
|
||
653 .file 6 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_sdmmc.h"
|
||
654 .file 7 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_hal_sd.h"
|
||
655 .file 8 "Inc/fatfs_platform.h"
|
||
ARM GAS /tmp/ccwhiVas.s page 18
|
||
|
||
|
||
DEFINED SYMBOLS
|
||
*ABS*:00000000 bsp_driver_sd.c
|
||
/tmp/ccwhiVas.s:20 .text.BSP_SD_ITConfig:00000000 $t
|
||
/tmp/ccwhiVas.s:26 .text.BSP_SD_ITConfig:00000000 BSP_SD_ITConfig
|
||
/tmp/ccwhiVas.s:41 .text.BSP_SD_ReadBlocks:00000000 $t
|
||
/tmp/ccwhiVas.s:47 .text.BSP_SD_ReadBlocks:00000000 BSP_SD_ReadBlocks
|
||
/tmp/ccwhiVas.s:97 .text.BSP_SD_ReadBlocks:0000001c $d
|
||
/tmp/ccwhiVas.s:102 .text.BSP_SD_WriteBlocks:00000000 $t
|
||
/tmp/ccwhiVas.s:108 .text.BSP_SD_WriteBlocks:00000000 BSP_SD_WriteBlocks
|
||
/tmp/ccwhiVas.s:158 .text.BSP_SD_WriteBlocks:0000001c $d
|
||
/tmp/ccwhiVas.s:163 .text.BSP_SD_ReadBlocks_DMA:00000000 $t
|
||
/tmp/ccwhiVas.s:169 .text.BSP_SD_ReadBlocks_DMA:00000000 BSP_SD_ReadBlocks_DMA
|
||
/tmp/ccwhiVas.s:210 .text.BSP_SD_ReadBlocks_DMA:00000014 $d
|
||
/tmp/ccwhiVas.s:215 .text.BSP_SD_WriteBlocks_DMA:00000000 $t
|
||
/tmp/ccwhiVas.s:221 .text.BSP_SD_WriteBlocks_DMA:00000000 BSP_SD_WriteBlocks_DMA
|
||
/tmp/ccwhiVas.s:262 .text.BSP_SD_WriteBlocks_DMA:00000014 $d
|
||
/tmp/ccwhiVas.s:267 .text.BSP_SD_Erase:00000000 $t
|
||
/tmp/ccwhiVas.s:273 .text.BSP_SD_Erase:00000000 BSP_SD_Erase
|
||
/tmp/ccwhiVas.s:311 .text.BSP_SD_Erase:00000014 $d
|
||
/tmp/ccwhiVas.s:316 .text.BSP_SD_GetCardState:00000000 $t
|
||
/tmp/ccwhiVas.s:322 .text.BSP_SD_GetCardState:00000000 BSP_SD_GetCardState
|
||
/tmp/ccwhiVas.s:346 .text.BSP_SD_GetCardState:00000010 $d
|
||
/tmp/ccwhiVas.s:351 .text.BSP_SD_GetCardInfo:00000000 $t
|
||
/tmp/ccwhiVas.s:357 .text.BSP_SD_GetCardInfo:00000000 BSP_SD_GetCardInfo
|
||
/tmp/ccwhiVas.s:382 .text.BSP_SD_GetCardInfo:0000000c $d
|
||
/tmp/ccwhiVas.s:387 .text.BSP_SD_AbortCallback:00000000 $t
|
||
/tmp/ccwhiVas.s:393 .text.BSP_SD_AbortCallback:00000000 BSP_SD_AbortCallback
|
||
/tmp/ccwhiVas.s:406 .text.HAL_SD_AbortCallback:00000000 $t
|
||
/tmp/ccwhiVas.s:412 .text.HAL_SD_AbortCallback:00000000 HAL_SD_AbortCallback
|
||
/tmp/ccwhiVas.s:434 .text.BSP_SD_WriteCpltCallback:00000000 $t
|
||
/tmp/ccwhiVas.s:440 .text.BSP_SD_WriteCpltCallback:00000000 BSP_SD_WriteCpltCallback
|
||
/tmp/ccwhiVas.s:453 .text.HAL_SD_TxCpltCallback:00000000 $t
|
||
/tmp/ccwhiVas.s:459 .text.HAL_SD_TxCpltCallback:00000000 HAL_SD_TxCpltCallback
|
||
/tmp/ccwhiVas.s:481 .text.BSP_SD_ReadCpltCallback:00000000 $t
|
||
/tmp/ccwhiVas.s:487 .text.BSP_SD_ReadCpltCallback:00000000 BSP_SD_ReadCpltCallback
|
||
/tmp/ccwhiVas.s:500 .text.HAL_SD_RxCpltCallback:00000000 $t
|
||
/tmp/ccwhiVas.s:506 .text.HAL_SD_RxCpltCallback:00000000 HAL_SD_RxCpltCallback
|
||
/tmp/ccwhiVas.s:528 .text.BSP_SD_IsDetected:00000000 $t
|
||
/tmp/ccwhiVas.s:534 .text.BSP_SD_IsDetected:00000000 BSP_SD_IsDetected
|
||
/tmp/ccwhiVas.s:575 .text.BSP_SD_Init:00000000 $t
|
||
/tmp/ccwhiVas.s:581 .text.BSP_SD_Init:00000000 BSP_SD_Init
|
||
/tmp/ccwhiVas.s:643 .text.BSP_SD_Init:00000030 $d
|
||
|
||
UNDEFINED SYMBOLS
|
||
HAL_SD_ReadBlocks
|
||
hsd1
|
||
HAL_SD_WriteBlocks
|
||
HAL_SD_ReadBlocks_DMA
|
||
HAL_SD_WriteBlocks_DMA
|
||
HAL_SD_Erase
|
||
HAL_SD_GetCardState
|
||
HAL_SD_GetCardInfo
|
||
BSP_PlatformIsDetected
|
||
HAL_SD_Init
|
||
HAL_SD_ConfigWideBusOperation
|