removed build folder from git index
This commit is contained in:
@ -1,747 +0,0 @@
|
||||
ARM GAS /tmp/ccTSxLLU.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 "sd_diskio.c"
|
||||
13 .text
|
||||
14 .Ltext0:
|
||||
15 .cfi_sections .debug_frame
|
||||
16 .section .text.SD_CheckStatus,"ax",%progbits
|
||||
17 .align 1
|
||||
18 .arch armv7e-m
|
||||
19 .syntax unified
|
||||
20 .thumb
|
||||
21 .thumb_func
|
||||
22 .fpu fpv5-d16
|
||||
24 SD_CheckStatus:
|
||||
25 .LVL0:
|
||||
26 .LFB1183:
|
||||
27 .file 1 "Src/sd_diskio.c"
|
||||
1:Src/sd_diskio.c **** /* USER CODE BEGIN Header */
|
||||
2:Src/sd_diskio.c **** /**
|
||||
3:Src/sd_diskio.c **** ******************************************************************************
|
||||
4:Src/sd_diskio.c **** * @file sd_diskio.c
|
||||
5:Src/sd_diskio.c **** * @brief SD Disk I/O driver
|
||||
6:Src/sd_diskio.c **** ******************************************************************************
|
||||
7:Src/sd_diskio.c **** * @attention
|
||||
8:Src/sd_diskio.c **** *
|
||||
9:Src/sd_diskio.c **** * Copyright (c) 2023 STMicroelectronics.
|
||||
10:Src/sd_diskio.c **** * All rights reserved.
|
||||
11:Src/sd_diskio.c **** *
|
||||
12:Src/sd_diskio.c **** * This software is licensed under terms that can be found in the LICENSE file
|
||||
13:Src/sd_diskio.c **** * in the root directory of this software component.
|
||||
14:Src/sd_diskio.c **** * If no LICENSE file comes with this software, it is provided AS-IS.
|
||||
15:Src/sd_diskio.c **** *
|
||||
16:Src/sd_diskio.c **** ******************************************************************************
|
||||
17:Src/sd_diskio.c **** */
|
||||
18:Src/sd_diskio.c **** /* USER CODE END Header */
|
||||
19:Src/sd_diskio.c ****
|
||||
20:Src/sd_diskio.c **** /* Note: code generation based on sd_diskio_template_bspv1.c v2.1.4
|
||||
21:Src/sd_diskio.c **** as "Use dma template" is disabled. */
|
||||
22:Src/sd_diskio.c ****
|
||||
23:Src/sd_diskio.c **** /* USER CODE BEGIN firstSection */
|
||||
24:Src/sd_diskio.c **** /* can be used to modify / undefine following code or add new definitions */
|
||||
25:Src/sd_diskio.c **** /* USER CODE END firstSection*/
|
||||
26:Src/sd_diskio.c ****
|
||||
27:Src/sd_diskio.c **** /* Includes ------------------------------------------------------------------*/
|
||||
28:Src/sd_diskio.c **** #include "ff_gen_drv.h"
|
||||
29:Src/sd_diskio.c **** #include "sd_diskio.h"
|
||||
30:Src/sd_diskio.c ****
|
||||
31:Src/sd_diskio.c **** /* Private typedef -----------------------------------------------------------*/
|
||||
ARM GAS /tmp/ccTSxLLU.s page 2
|
||||
|
||||
|
||||
32:Src/sd_diskio.c **** /* Private define ------------------------------------------------------------*/
|
||||
33:Src/sd_diskio.c **** /* use the default SD timout as defined in the platform BSP driver*/
|
||||
34:Src/sd_diskio.c **** #if defined(SDMMC_DATATIMEOUT)
|
||||
35:Src/sd_diskio.c **** #define SD_TIMEOUT SDMMC_DATATIMEOUT
|
||||
36:Src/sd_diskio.c **** #elif defined(SD_DATATIMEOUT)
|
||||
37:Src/sd_diskio.c **** #define SD_TIMEOUT SD_DATATIMEOUT
|
||||
38:Src/sd_diskio.c **** #else
|
||||
39:Src/sd_diskio.c **** #define SD_TIMEOUT 30 * 1000
|
||||
40:Src/sd_diskio.c **** #endif
|
||||
41:Src/sd_diskio.c ****
|
||||
42:Src/sd_diskio.c **** #define SD_DEFAULT_BLOCK_SIZE 512
|
||||
43:Src/sd_diskio.c ****
|
||||
44:Src/sd_diskio.c **** /*
|
||||
45:Src/sd_diskio.c **** * Depending on the use case, the SD card initialization could be done at the
|
||||
46:Src/sd_diskio.c **** * application level: if it is the case define the flag below to disable
|
||||
47:Src/sd_diskio.c **** * the BSP_SD_Init() call in the SD_Initialize() and add a call to
|
||||
48:Src/sd_diskio.c **** * BSP_SD_Init() elsewhere in the application.
|
||||
49:Src/sd_diskio.c **** */
|
||||
50:Src/sd_diskio.c **** /* USER CODE BEGIN disableSDInit */
|
||||
51:Src/sd_diskio.c **** /* #define DISABLE_SD_INIT */
|
||||
52:Src/sd_diskio.c **** /* USER CODE END disableSDInit */
|
||||
53:Src/sd_diskio.c ****
|
||||
54:Src/sd_diskio.c **** /* Private variables ---------------------------------------------------------*/
|
||||
55:Src/sd_diskio.c **** /* Disk status */
|
||||
56:Src/sd_diskio.c **** static volatile DSTATUS Stat = STA_NOINIT;
|
||||
57:Src/sd_diskio.c ****
|
||||
58:Src/sd_diskio.c **** /* Private function prototypes -----------------------------------------------*/
|
||||
59:Src/sd_diskio.c **** static DSTATUS SD_CheckStatus(BYTE lun);
|
||||
60:Src/sd_diskio.c **** DSTATUS SD_initialize (BYTE);
|
||||
61:Src/sd_diskio.c **** DSTATUS SD_status (BYTE);
|
||||
62:Src/sd_diskio.c **** DRESULT SD_read (BYTE, BYTE*, DWORD, UINT);
|
||||
63:Src/sd_diskio.c **** #if _USE_WRITE == 1
|
||||
64:Src/sd_diskio.c **** DRESULT SD_write (BYTE, const BYTE*, DWORD, UINT);
|
||||
65:Src/sd_diskio.c **** #endif /* _USE_WRITE == 1 */
|
||||
66:Src/sd_diskio.c **** #if _USE_IOCTL == 1
|
||||
67:Src/sd_diskio.c **** DRESULT SD_ioctl (BYTE, BYTE, void*);
|
||||
68:Src/sd_diskio.c **** #endif /* _USE_IOCTL == 1 */
|
||||
69:Src/sd_diskio.c ****
|
||||
70:Src/sd_diskio.c **** const Diskio_drvTypeDef SD_Driver =
|
||||
71:Src/sd_diskio.c **** {
|
||||
72:Src/sd_diskio.c **** SD_initialize,
|
||||
73:Src/sd_diskio.c **** SD_status,
|
||||
74:Src/sd_diskio.c **** SD_read,
|
||||
75:Src/sd_diskio.c **** #if _USE_WRITE == 1
|
||||
76:Src/sd_diskio.c **** SD_write,
|
||||
77:Src/sd_diskio.c **** #endif /* _USE_WRITE == 1 */
|
||||
78:Src/sd_diskio.c ****
|
||||
79:Src/sd_diskio.c **** #if _USE_IOCTL == 1
|
||||
80:Src/sd_diskio.c **** SD_ioctl,
|
||||
81:Src/sd_diskio.c **** #endif /* _USE_IOCTL == 1 */
|
||||
82:Src/sd_diskio.c **** };
|
||||
83:Src/sd_diskio.c ****
|
||||
84:Src/sd_diskio.c **** /* USER CODE BEGIN beforeFunctionSection */
|
||||
85:Src/sd_diskio.c **** /* can be used to modify / undefine following code or add new code */
|
||||
86:Src/sd_diskio.c **** /* USER CODE END beforeFunctionSection */
|
||||
87:Src/sd_diskio.c ****
|
||||
88:Src/sd_diskio.c **** /* Private functions ---------------------------------------------------------*/
|
||||
ARM GAS /tmp/ccTSxLLU.s page 3
|
||||
|
||||
|
||||
89:Src/sd_diskio.c ****
|
||||
90:Src/sd_diskio.c **** static DSTATUS SD_CheckStatus(BYTE lun)
|
||||
91:Src/sd_diskio.c **** {
|
||||
28 .loc 1 91 1 view -0
|
||||
29 .cfi_startproc
|
||||
30 @ args = 0, pretend = 0, frame = 0
|
||||
31 @ frame_needed = 0, uses_anonymous_args = 0
|
||||
32 .loc 1 91 1 is_stmt 0 view .LVU1
|
||||
33 0000 08B5 push {r3, lr}
|
||||
34 .LCFI0:
|
||||
35 .cfi_def_cfa_offset 8
|
||||
36 .cfi_offset 3, -8
|
||||
37 .cfi_offset 14, -4
|
||||
92:Src/sd_diskio.c **** Stat = STA_NOINIT;
|
||||
38 .loc 1 92 3 is_stmt 1 view .LVU2
|
||||
39 .loc 1 92 8 is_stmt 0 view .LVU3
|
||||
40 0002 074B ldr r3, .L4
|
||||
41 0004 0122 movs r2, #1
|
||||
42 0006 1A70 strb r2, [r3]
|
||||
93:Src/sd_diskio.c ****
|
||||
94:Src/sd_diskio.c **** if(BSP_SD_GetCardState() == MSD_OK)
|
||||
43 .loc 1 94 3 is_stmt 1 view .LVU4
|
||||
44 .loc 1 94 6 is_stmt 0 view .LVU5
|
||||
45 0008 FFF7FEFF bl BSP_SD_GetCardState
|
||||
46 .LVL1:
|
||||
47 .loc 1 94 5 view .LVU6
|
||||
48 000c 20B9 cbnz r0, .L2
|
||||
95:Src/sd_diskio.c **** {
|
||||
96:Src/sd_diskio.c **** Stat &= ~STA_NOINIT;
|
||||
49 .loc 1 96 5 is_stmt 1 view .LVU7
|
||||
50 .loc 1 96 10 is_stmt 0 view .LVU8
|
||||
51 000e 044A ldr r2, .L4
|
||||
52 0010 1378 ldrb r3, [r2] @ zero_extendqisi2
|
||||
53 0012 03F0FE03 and r3, r3, #254
|
||||
54 0016 1370 strb r3, [r2]
|
||||
55 .L2:
|
||||
97:Src/sd_diskio.c **** }
|
||||
98:Src/sd_diskio.c ****
|
||||
99:Src/sd_diskio.c **** return Stat;
|
||||
56 .loc 1 99 3 is_stmt 1 view .LVU9
|
||||
57 .loc 1 99 10 is_stmt 0 view .LVU10
|
||||
58 0018 014B ldr r3, .L4
|
||||
59 001a 1878 ldrb r0, [r3] @ zero_extendqisi2
|
||||
100:Src/sd_diskio.c **** }
|
||||
60 .loc 1 100 1 view .LVU11
|
||||
61 001c 08BD pop {r3, pc}
|
||||
62 .L5:
|
||||
63 001e 00BF .align 2
|
||||
64 .L4:
|
||||
65 0020 00000000 .word .LANCHOR0
|
||||
66 .cfi_endproc
|
||||
67 .LFE1183:
|
||||
69 .section .text.SD_initialize,"ax",%progbits
|
||||
70 .align 1
|
||||
71 .global SD_initialize
|
||||
72 .syntax unified
|
||||
73 .thumb
|
||||
ARM GAS /tmp/ccTSxLLU.s page 4
|
||||
|
||||
|
||||
74 .thumb_func
|
||||
75 .fpu fpv5-d16
|
||||
77 SD_initialize:
|
||||
78 .LVL2:
|
||||
79 .LFB1184:
|
||||
101:Src/sd_diskio.c ****
|
||||
102:Src/sd_diskio.c **** /**
|
||||
103:Src/sd_diskio.c **** * @brief Initializes a Drive
|
||||
104:Src/sd_diskio.c **** * @param lun : not used
|
||||
105:Src/sd_diskio.c **** * @retval DSTATUS: Operation status
|
||||
106:Src/sd_diskio.c **** */
|
||||
107:Src/sd_diskio.c **** DSTATUS SD_initialize(BYTE lun)
|
||||
108:Src/sd_diskio.c **** {
|
||||
80 .loc 1 108 1 is_stmt 1 view -0
|
||||
81 .cfi_startproc
|
||||
82 @ args = 0, pretend = 0, frame = 0
|
||||
83 @ frame_needed = 0, uses_anonymous_args = 0
|
||||
84 .loc 1 108 1 is_stmt 0 view .LVU13
|
||||
85 0000 10B5 push {r4, lr}
|
||||
86 .LCFI1:
|
||||
87 .cfi_def_cfa_offset 8
|
||||
88 .cfi_offset 4, -8
|
||||
89 .cfi_offset 14, -4
|
||||
90 0002 0446 mov r4, r0
|
||||
109:Src/sd_diskio.c **** Stat = STA_NOINIT;
|
||||
91 .loc 1 109 1 is_stmt 1 view .LVU14
|
||||
92 .loc 1 109 6 is_stmt 0 view .LVU15
|
||||
93 0004 074B ldr r3, .L10
|
||||
94 0006 0122 movs r2, #1
|
||||
95 0008 1A70 strb r2, [r3]
|
||||
110:Src/sd_diskio.c ****
|
||||
111:Src/sd_diskio.c **** #if !defined(DISABLE_SD_INIT)
|
||||
112:Src/sd_diskio.c ****
|
||||
113:Src/sd_diskio.c **** if(BSP_SD_Init() == MSD_OK)
|
||||
96 .loc 1 113 3 is_stmt 1 view .LVU16
|
||||
97 .loc 1 113 6 is_stmt 0 view .LVU17
|
||||
98 000a FFF7FEFF bl BSP_SD_Init
|
||||
99 .LVL3:
|
||||
100 .loc 1 113 5 view .LVU18
|
||||
101 000e 10B1 cbz r0, .L9
|
||||
102 .L7:
|
||||
114:Src/sd_diskio.c **** {
|
||||
115:Src/sd_diskio.c **** Stat = SD_CheckStatus(lun);
|
||||
116:Src/sd_diskio.c **** }
|
||||
117:Src/sd_diskio.c ****
|
||||
118:Src/sd_diskio.c **** #else
|
||||
119:Src/sd_diskio.c **** Stat = SD_CheckStatus(lun);
|
||||
120:Src/sd_diskio.c **** #endif
|
||||
121:Src/sd_diskio.c ****
|
||||
122:Src/sd_diskio.c **** return Stat;
|
||||
103 .loc 1 122 3 is_stmt 1 view .LVU19
|
||||
104 .loc 1 122 10 is_stmt 0 view .LVU20
|
||||
105 0010 044B ldr r3, .L10
|
||||
106 0012 1878 ldrb r0, [r3] @ zero_extendqisi2
|
||||
123:Src/sd_diskio.c **** }
|
||||
107 .loc 1 123 1 view .LVU21
|
||||
108 0014 10BD pop {r4, pc}
|
||||
ARM GAS /tmp/ccTSxLLU.s page 5
|
||||
|
||||
|
||||
109 .L9:
|
||||
115:Src/sd_diskio.c **** }
|
||||
110 .loc 1 115 5 is_stmt 1 view .LVU22
|
||||
115:Src/sd_diskio.c **** }
|
||||
111 .loc 1 115 12 is_stmt 0 view .LVU23
|
||||
112 0016 2046 mov r0, r4
|
||||
113 0018 FFF7FEFF bl SD_CheckStatus
|
||||
114 .LVL4:
|
||||
115:Src/sd_diskio.c **** }
|
||||
115 .loc 1 115 10 view .LVU24
|
||||
116 001c 014B ldr r3, .L10
|
||||
117 001e 1870 strb r0, [r3]
|
||||
118 0020 F6E7 b .L7
|
||||
119 .L11:
|
||||
120 0022 00BF .align 2
|
||||
121 .L10:
|
||||
122 0024 00000000 .word .LANCHOR0
|
||||
123 .cfi_endproc
|
||||
124 .LFE1184:
|
||||
126 .section .text.SD_status,"ax",%progbits
|
||||
127 .align 1
|
||||
128 .global SD_status
|
||||
129 .syntax unified
|
||||
130 .thumb
|
||||
131 .thumb_func
|
||||
132 .fpu fpv5-d16
|
||||
134 SD_status:
|
||||
135 .LVL5:
|
||||
136 .LFB1185:
|
||||
124:Src/sd_diskio.c ****
|
||||
125:Src/sd_diskio.c **** /**
|
||||
126:Src/sd_diskio.c **** * @brief Gets Disk Status
|
||||
127:Src/sd_diskio.c **** * @param lun : not used
|
||||
128:Src/sd_diskio.c **** * @retval DSTATUS: Operation status
|
||||
129:Src/sd_diskio.c **** */
|
||||
130:Src/sd_diskio.c **** DSTATUS SD_status(BYTE lun)
|
||||
131:Src/sd_diskio.c **** {
|
||||
137 .loc 1 131 1 is_stmt 1 view -0
|
||||
138 .cfi_startproc
|
||||
139 @ args = 0, pretend = 0, frame = 0
|
||||
140 @ frame_needed = 0, uses_anonymous_args = 0
|
||||
141 .loc 1 131 1 is_stmt 0 view .LVU26
|
||||
142 0000 08B5 push {r3, lr}
|
||||
143 .LCFI2:
|
||||
144 .cfi_def_cfa_offset 8
|
||||
145 .cfi_offset 3, -8
|
||||
146 .cfi_offset 14, -4
|
||||
132:Src/sd_diskio.c **** return SD_CheckStatus(lun);
|
||||
147 .loc 1 132 3 is_stmt 1 view .LVU27
|
||||
148 .loc 1 132 10 is_stmt 0 view .LVU28
|
||||
149 0002 FFF7FEFF bl SD_CheckStatus
|
||||
150 .LVL6:
|
||||
133:Src/sd_diskio.c **** }
|
||||
151 .loc 1 133 1 view .LVU29
|
||||
152 0006 08BD pop {r3, pc}
|
||||
153 .cfi_endproc
|
||||
154 .LFE1185:
|
||||
ARM GAS /tmp/ccTSxLLU.s page 6
|
||||
|
||||
|
||||
156 .section .text.SD_read,"ax",%progbits
|
||||
157 .align 1
|
||||
158 .global SD_read
|
||||
159 .syntax unified
|
||||
160 .thumb
|
||||
161 .thumb_func
|
||||
162 .fpu fpv5-d16
|
||||
164 SD_read:
|
||||
165 .LVL7:
|
||||
166 .LFB1186:
|
||||
134:Src/sd_diskio.c ****
|
||||
135:Src/sd_diskio.c **** /* USER CODE BEGIN beforeReadSection */
|
||||
136:Src/sd_diskio.c **** /* can be used to modify previous code / undefine following code / add new code */
|
||||
137:Src/sd_diskio.c **** /* USER CODE END beforeReadSection */
|
||||
138:Src/sd_diskio.c **** /**
|
||||
139:Src/sd_diskio.c **** * @brief Reads Sector(s)
|
||||
140:Src/sd_diskio.c **** * @param lun : not used
|
||||
141:Src/sd_diskio.c **** * @param *buff: Data buffer to store read data
|
||||
142:Src/sd_diskio.c **** * @param sector: Sector address (LBA)
|
||||
143:Src/sd_diskio.c **** * @param count: Number of sectors to read (1..128)
|
||||
144:Src/sd_diskio.c **** * @retval DRESULT: Operation result
|
||||
145:Src/sd_diskio.c **** */
|
||||
146:Src/sd_diskio.c ****
|
||||
147:Src/sd_diskio.c **** DRESULT SD_read(BYTE lun, BYTE *buff, DWORD sector, UINT count)
|
||||
148:Src/sd_diskio.c **** {
|
||||
167 .loc 1 148 1 is_stmt 1 view -0
|
||||
168 .cfi_startproc
|
||||
169 @ args = 0, pretend = 0, frame = 0
|
||||
170 @ frame_needed = 0, uses_anonymous_args = 0
|
||||
171 .loc 1 148 1 is_stmt 0 view .LVU31
|
||||
172 0000 08B5 push {r3, lr}
|
||||
173 .LCFI3:
|
||||
174 .cfi_def_cfa_offset 8
|
||||
175 .cfi_offset 3, -8
|
||||
176 .cfi_offset 14, -4
|
||||
177 0002 0846 mov r0, r1
|
||||
178 .LVL8:
|
||||
179 .loc 1 148 1 view .LVU32
|
||||
180 0004 1146 mov r1, r2
|
||||
181 .LVL9:
|
||||
182 .loc 1 148 1 view .LVU33
|
||||
183 0006 1A46 mov r2, r3
|
||||
184 .LVL10:
|
||||
149:Src/sd_diskio.c **** DRESULT res = RES_ERROR;
|
||||
185 .loc 1 149 3 is_stmt 1 view .LVU34
|
||||
150:Src/sd_diskio.c ****
|
||||
151:Src/sd_diskio.c **** if(BSP_SD_ReadBlocks((uint32_t*)buff,
|
||||
186 .loc 1 151 3 view .LVU35
|
||||
187 .loc 1 151 6 is_stmt 0 view .LVU36
|
||||
188 0008 4FF0FF33 mov r3, #-1
|
||||
189 .LVL11:
|
||||
190 .loc 1 151 6 view .LVU37
|
||||
191 000c FFF7FEFF bl BSP_SD_ReadBlocks
|
||||
192 .LVL12:
|
||||
193 .loc 1 151 5 view .LVU38
|
||||
194 0010 30B9 cbnz r0, .L17
|
||||
195 .L16:
|
||||
ARM GAS /tmp/ccTSxLLU.s page 7
|
||||
|
||||
|
||||
152:Src/sd_diskio.c **** (uint32_t) (sector),
|
||||
153:Src/sd_diskio.c **** count, SD_TIMEOUT) == MSD_OK)
|
||||
154:Src/sd_diskio.c **** {
|
||||
155:Src/sd_diskio.c **** /* wait until the read operation is finished */
|
||||
156:Src/sd_diskio.c **** while(BSP_SD_GetCardState()!= MSD_OK)
|
||||
157:Src/sd_diskio.c **** {
|
||||
158:Src/sd_diskio.c **** }
|
||||
196 .loc 1 158 5 is_stmt 1 discriminator 1 view .LVU39
|
||||
156:Src/sd_diskio.c **** {
|
||||
197 .loc 1 156 10 discriminator 1 view .LVU40
|
||||
156:Src/sd_diskio.c **** {
|
||||
198 .loc 1 156 11 is_stmt 0 discriminator 1 view .LVU41
|
||||
199 0012 FFF7FEFF bl BSP_SD_GetCardState
|
||||
200 .LVL13:
|
||||
156:Src/sd_diskio.c **** {
|
||||
201 .loc 1 156 10 discriminator 1 view .LVU42
|
||||
202 0016 0346 mov r3, r0
|
||||
203 0018 0028 cmp r0, #0
|
||||
204 001a FAD1 bne .L16
|
||||
205 .L15:
|
||||
206 .LVL14:
|
||||
159:Src/sd_diskio.c **** res = RES_OK;
|
||||
160:Src/sd_diskio.c **** }
|
||||
161:Src/sd_diskio.c ****
|
||||
162:Src/sd_diskio.c **** return res;
|
||||
207 .loc 1 162 3 is_stmt 1 view .LVU43
|
||||
163:Src/sd_diskio.c **** }
|
||||
208 .loc 1 163 1 is_stmt 0 view .LVU44
|
||||
209 001c 1846 mov r0, r3
|
||||
210 001e 08BD pop {r3, pc}
|
||||
211 .LVL15:
|
||||
212 .L17:
|
||||
149:Src/sd_diskio.c ****
|
||||
213 .loc 1 149 11 view .LVU45
|
||||
214 0020 0123 movs r3, #1
|
||||
215 0022 FBE7 b .L15
|
||||
216 .cfi_endproc
|
||||
217 .LFE1186:
|
||||
219 .section .text.SD_write,"ax",%progbits
|
||||
220 .align 1
|
||||
221 .global SD_write
|
||||
222 .syntax unified
|
||||
223 .thumb
|
||||
224 .thumb_func
|
||||
225 .fpu fpv5-d16
|
||||
227 SD_write:
|
||||
228 .LVL16:
|
||||
229 .LFB1187:
|
||||
164:Src/sd_diskio.c ****
|
||||
165:Src/sd_diskio.c **** /* USER CODE BEGIN beforeWriteSection */
|
||||
166:Src/sd_diskio.c **** /* can be used to modify previous code / undefine following code / add new code */
|
||||
167:Src/sd_diskio.c **** /* USER CODE END beforeWriteSection */
|
||||
168:Src/sd_diskio.c **** /**
|
||||
169:Src/sd_diskio.c **** * @brief Writes Sector(s)
|
||||
170:Src/sd_diskio.c **** * @param lun : not used
|
||||
171:Src/sd_diskio.c **** * @param *buff: Data to be written
|
||||
172:Src/sd_diskio.c **** * @param sector: Sector address (LBA)
|
||||
ARM GAS /tmp/ccTSxLLU.s page 8
|
||||
|
||||
|
||||
173:Src/sd_diskio.c **** * @param count: Number of sectors to write (1..128)
|
||||
174:Src/sd_diskio.c **** * @retval DRESULT: Operation result
|
||||
175:Src/sd_diskio.c **** */
|
||||
176:Src/sd_diskio.c **** #if _USE_WRITE == 1
|
||||
177:Src/sd_diskio.c ****
|
||||
178:Src/sd_diskio.c **** DRESULT SD_write(BYTE lun, const BYTE *buff, DWORD sector, UINT count)
|
||||
179:Src/sd_diskio.c **** {
|
||||
230 .loc 1 179 1 is_stmt 1 view -0
|
||||
231 .cfi_startproc
|
||||
232 @ args = 0, pretend = 0, frame = 0
|
||||
233 @ frame_needed = 0, uses_anonymous_args = 0
|
||||
234 .loc 1 179 1 is_stmt 0 view .LVU47
|
||||
235 0000 08B5 push {r3, lr}
|
||||
236 .LCFI4:
|
||||
237 .cfi_def_cfa_offset 8
|
||||
238 .cfi_offset 3, -8
|
||||
239 .cfi_offset 14, -4
|
||||
240 0002 0846 mov r0, r1
|
||||
241 .LVL17:
|
||||
242 .loc 1 179 1 view .LVU48
|
||||
243 0004 1146 mov r1, r2
|
||||
244 .LVL18:
|
||||
245 .loc 1 179 1 view .LVU49
|
||||
246 0006 1A46 mov r2, r3
|
||||
247 .LVL19:
|
||||
180:Src/sd_diskio.c **** DRESULT res = RES_ERROR;
|
||||
248 .loc 1 180 3 is_stmt 1 view .LVU50
|
||||
181:Src/sd_diskio.c ****
|
||||
182:Src/sd_diskio.c **** if(BSP_SD_WriteBlocks((uint32_t*)buff,
|
||||
249 .loc 1 182 3 view .LVU51
|
||||
250 .loc 1 182 6 is_stmt 0 view .LVU52
|
||||
251 0008 4FF0FF33 mov r3, #-1
|
||||
252 .LVL20:
|
||||
253 .loc 1 182 6 view .LVU53
|
||||
254 000c FFF7FEFF bl BSP_SD_WriteBlocks
|
||||
255 .LVL21:
|
||||
256 .loc 1 182 5 view .LVU54
|
||||
257 0010 30B9 cbnz r0, .L22
|
||||
258 .L21:
|
||||
183:Src/sd_diskio.c **** (uint32_t)(sector),
|
||||
184:Src/sd_diskio.c **** count, SD_TIMEOUT) == MSD_OK)
|
||||
185:Src/sd_diskio.c **** {
|
||||
186:Src/sd_diskio.c **** /* wait until the Write operation is finished */
|
||||
187:Src/sd_diskio.c **** while(BSP_SD_GetCardState() != MSD_OK)
|
||||
188:Src/sd_diskio.c **** {
|
||||
189:Src/sd_diskio.c **** }
|
||||
259 .loc 1 189 5 is_stmt 1 discriminator 1 view .LVU55
|
||||
187:Src/sd_diskio.c **** {
|
||||
260 .loc 1 187 10 discriminator 1 view .LVU56
|
||||
187:Src/sd_diskio.c **** {
|
||||
261 .loc 1 187 11 is_stmt 0 discriminator 1 view .LVU57
|
||||
262 0012 FFF7FEFF bl BSP_SD_GetCardState
|
||||
263 .LVL22:
|
||||
187:Src/sd_diskio.c **** {
|
||||
264 .loc 1 187 10 discriminator 1 view .LVU58
|
||||
265 0016 0346 mov r3, r0
|
||||
266 0018 0028 cmp r0, #0
|
||||
ARM GAS /tmp/ccTSxLLU.s page 9
|
||||
|
||||
|
||||
267 001a FAD1 bne .L21
|
||||
268 .L20:
|
||||
269 .LVL23:
|
||||
190:Src/sd_diskio.c **** res = RES_OK;
|
||||
191:Src/sd_diskio.c **** }
|
||||
192:Src/sd_diskio.c ****
|
||||
193:Src/sd_diskio.c **** return res;
|
||||
270 .loc 1 193 3 is_stmt 1 view .LVU59
|
||||
194:Src/sd_diskio.c **** }
|
||||
271 .loc 1 194 1 is_stmt 0 view .LVU60
|
||||
272 001c 1846 mov r0, r3
|
||||
273 001e 08BD pop {r3, pc}
|
||||
274 .LVL24:
|
||||
275 .L22:
|
||||
180:Src/sd_diskio.c ****
|
||||
276 .loc 1 180 11 view .LVU61
|
||||
277 0020 0123 movs r3, #1
|
||||
278 0022 FBE7 b .L20
|
||||
279 .cfi_endproc
|
||||
280 .LFE1187:
|
||||
282 .section .text.SD_ioctl,"ax",%progbits
|
||||
283 .align 1
|
||||
284 .global SD_ioctl
|
||||
285 .syntax unified
|
||||
286 .thumb
|
||||
287 .thumb_func
|
||||
288 .fpu fpv5-d16
|
||||
290 SD_ioctl:
|
||||
291 .LVL25:
|
||||
292 .LFB1188:
|
||||
195:Src/sd_diskio.c **** #endif /* _USE_WRITE == 1 */
|
||||
196:Src/sd_diskio.c ****
|
||||
197:Src/sd_diskio.c **** /* USER CODE BEGIN beforeIoctlSection */
|
||||
198:Src/sd_diskio.c **** /* can be used to modify previous code / undefine following code / add new code */
|
||||
199:Src/sd_diskio.c **** /* USER CODE END beforeIoctlSection */
|
||||
200:Src/sd_diskio.c **** /**
|
||||
201:Src/sd_diskio.c **** * @brief I/O control operation
|
||||
202:Src/sd_diskio.c **** * @param lun : not used
|
||||
203:Src/sd_diskio.c **** * @param cmd: Control code
|
||||
204:Src/sd_diskio.c **** * @param *buff: Buffer to send/receive control data
|
||||
205:Src/sd_diskio.c **** * @retval DRESULT: Operation result
|
||||
206:Src/sd_diskio.c **** */
|
||||
207:Src/sd_diskio.c **** #if _USE_IOCTL == 1
|
||||
208:Src/sd_diskio.c **** DRESULT SD_ioctl(BYTE lun, BYTE cmd, void *buff)
|
||||
209:Src/sd_diskio.c **** {
|
||||
293 .loc 1 209 1 is_stmt 1 view -0
|
||||
294 .cfi_startproc
|
||||
295 @ args = 0, pretend = 0, frame = 32
|
||||
296 @ frame_needed = 0, uses_anonymous_args = 0
|
||||
297 .loc 1 209 1 is_stmt 0 view .LVU63
|
||||
298 0000 30B5 push {r4, r5, lr}
|
||||
299 .LCFI5:
|
||||
300 .cfi_def_cfa_offset 12
|
||||
301 .cfi_offset 4, -12
|
||||
302 .cfi_offset 5, -8
|
||||
303 .cfi_offset 14, -4
|
||||
304 0002 89B0 sub sp, sp, #36
|
||||
ARM GAS /tmp/ccTSxLLU.s page 10
|
||||
|
||||
|
||||
305 .LCFI6:
|
||||
306 .cfi_def_cfa_offset 48
|
||||
210:Src/sd_diskio.c **** DRESULT res = RES_ERROR;
|
||||
307 .loc 1 210 3 is_stmt 1 view .LVU64
|
||||
308 .LVL26:
|
||||
211:Src/sd_diskio.c **** BSP_SD_CardInfo CardInfo;
|
||||
309 .loc 1 211 3 view .LVU65
|
||||
212:Src/sd_diskio.c ****
|
||||
213:Src/sd_diskio.c **** if (Stat & STA_NOINIT) return RES_NOTRDY;
|
||||
310 .loc 1 213 3 view .LVU66
|
||||
311 .loc 1 213 12 is_stmt 0 view .LVU67
|
||||
312 0004 134B ldr r3, .L34
|
||||
313 0006 1878 ldrb r0, [r3] @ zero_extendqisi2
|
||||
314 .LVL27:
|
||||
315 .loc 1 213 6 view .LVU68
|
||||
316 0008 10F00104 ands r4, r0, #1
|
||||
317 000c 1BD1 bne .L31
|
||||
318 000e 1546 mov r5, r2
|
||||
214:Src/sd_diskio.c ****
|
||||
215:Src/sd_diskio.c **** switch (cmd)
|
||||
319 .loc 1 215 3 is_stmt 1 view .LVU69
|
||||
320 0010 0329 cmp r1, #3
|
||||
321 0012 1CD8 bhi .L32
|
||||
322 0014 DFE801F0 tbb [pc, r1]
|
||||
323 .L27:
|
||||
324 0018 02 .byte (.L30-.L27)/2
|
||||
325 0019 04 .byte (.L29-.L27)/2
|
||||
326 001a 0A .byte (.L28-.L27)/2
|
||||
327 001b 10 .byte (.L26-.L27)/2
|
||||
328 .p2align 1
|
||||
329 .L30:
|
||||
330 001c 0C46 mov r4, r1
|
||||
331 001e 13E0 b .L25
|
||||
332 .L29:
|
||||
216:Src/sd_diskio.c **** {
|
||||
217:Src/sd_diskio.c **** /* Make sure that no pending write process */
|
||||
218:Src/sd_diskio.c **** case CTRL_SYNC :
|
||||
219:Src/sd_diskio.c **** res = RES_OK;
|
||||
220:Src/sd_diskio.c **** break;
|
||||
221:Src/sd_diskio.c ****
|
||||
222:Src/sd_diskio.c **** /* Get number of sectors on the disk (DWORD) */
|
||||
223:Src/sd_diskio.c **** case GET_SECTOR_COUNT :
|
||||
224:Src/sd_diskio.c **** BSP_SD_GetCardInfo(&CardInfo);
|
||||
333 .loc 1 224 5 view .LVU70
|
||||
334 0020 6846 mov r0, sp
|
||||
335 0022 FFF7FEFF bl BSP_SD_GetCardInfo
|
||||
336 .LVL28:
|
||||
225:Src/sd_diskio.c **** *(DWORD*)buff = CardInfo.LogBlockNbr;
|
||||
337 .loc 1 225 5 view .LVU71
|
||||
338 .loc 1 225 29 is_stmt 0 view .LVU72
|
||||
339 0026 069B ldr r3, [sp, #24]
|
||||
340 .loc 1 225 19 view .LVU73
|
||||
341 0028 2B60 str r3, [r5]
|
||||
226:Src/sd_diskio.c **** res = RES_OK;
|
||||
342 .loc 1 226 5 is_stmt 1 view .LVU74
|
||||
343 .LVL29:
|
||||
227:Src/sd_diskio.c **** break;
|
||||
ARM GAS /tmp/ccTSxLLU.s page 11
|
||||
|
||||
|
||||
344 .loc 1 227 5 view .LVU75
|
||||
345 002a 0DE0 b .L25
|
||||
346 .LVL30:
|
||||
347 .L28:
|
||||
228:Src/sd_diskio.c ****
|
||||
229:Src/sd_diskio.c **** /* Get R/W sector size (WORD) */
|
||||
230:Src/sd_diskio.c **** case GET_SECTOR_SIZE :
|
||||
231:Src/sd_diskio.c **** BSP_SD_GetCardInfo(&CardInfo);
|
||||
348 .loc 1 231 5 view .LVU76
|
||||
349 002c 6846 mov r0, sp
|
||||
350 002e FFF7FEFF bl BSP_SD_GetCardInfo
|
||||
351 .LVL31:
|
||||
232:Src/sd_diskio.c **** *(WORD*)buff = CardInfo.LogBlockSize;
|
||||
352 .loc 1 232 5 view .LVU77
|
||||
353 .loc 1 232 28 is_stmt 0 view .LVU78
|
||||
354 0032 079B ldr r3, [sp, #28]
|
||||
355 .loc 1 232 18 view .LVU79
|
||||
356 0034 2B80 strh r3, [r5] @ movhi
|
||||
233:Src/sd_diskio.c **** res = RES_OK;
|
||||
357 .loc 1 233 5 is_stmt 1 view .LVU80
|
||||
358 .LVL32:
|
||||
234:Src/sd_diskio.c **** break;
|
||||
359 .loc 1 234 5 view .LVU81
|
||||
360 0036 07E0 b .L25
|
||||
361 .LVL33:
|
||||
362 .L26:
|
||||
235:Src/sd_diskio.c ****
|
||||
236:Src/sd_diskio.c **** /* Get erase block size in unit of sector (DWORD) */
|
||||
237:Src/sd_diskio.c **** case GET_BLOCK_SIZE :
|
||||
238:Src/sd_diskio.c **** BSP_SD_GetCardInfo(&CardInfo);
|
||||
363 .loc 1 238 5 view .LVU82
|
||||
364 0038 6846 mov r0, sp
|
||||
365 003a FFF7FEFF bl BSP_SD_GetCardInfo
|
||||
366 .LVL34:
|
||||
239:Src/sd_diskio.c **** *(DWORD*)buff = CardInfo.LogBlockSize / SD_DEFAULT_BLOCK_SIZE;
|
||||
367 .loc 1 239 5 view .LVU83
|
||||
368 .loc 1 239 29 is_stmt 0 view .LVU84
|
||||
369 003e 079B ldr r3, [sp, #28]
|
||||
370 .loc 1 239 43 view .LVU85
|
||||
371 0040 5B0A lsrs r3, r3, #9
|
||||
372 .loc 1 239 19 view .LVU86
|
||||
373 0042 2B60 str r3, [r5]
|
||||
240:Src/sd_diskio.c **** res = RES_OK;
|
||||
374 .loc 1 240 5 is_stmt 1 view .LVU87
|
||||
375 .LVL35:
|
||||
241:Src/sd_diskio.c **** break;
|
||||
376 .loc 1 241 5 view .LVU88
|
||||
377 0044 00E0 b .L25
|
||||
378 .LVL36:
|
||||
379 .L31:
|
||||
213:Src/sd_diskio.c ****
|
||||
380 .loc 1 213 33 is_stmt 0 view .LVU89
|
||||
381 0046 0324 movs r4, #3
|
||||
382 .LVL37:
|
||||
383 .L25:
|
||||
242:Src/sd_diskio.c ****
|
||||
243:Src/sd_diskio.c **** default:
|
||||
ARM GAS /tmp/ccTSxLLU.s page 12
|
||||
|
||||
|
||||
244:Src/sd_diskio.c **** res = RES_PARERR;
|
||||
245:Src/sd_diskio.c **** }
|
||||
246:Src/sd_diskio.c ****
|
||||
247:Src/sd_diskio.c **** return res;
|
||||
248:Src/sd_diskio.c **** }
|
||||
384 .loc 1 248 1 view .LVU90
|
||||
385 0048 2046 mov r0, r4
|
||||
386 004a 09B0 add sp, sp, #36
|
||||
387 .LCFI7:
|
||||
388 .cfi_remember_state
|
||||
389 .cfi_def_cfa_offset 12
|
||||
390 @ sp needed
|
||||
391 004c 30BD pop {r4, r5, pc}
|
||||
392 .LVL38:
|
||||
393 .L32:
|
||||
394 .LCFI8:
|
||||
395 .cfi_restore_state
|
||||
244:Src/sd_diskio.c **** }
|
||||
396 .loc 1 244 9 view .LVU91
|
||||
397 004e 0424 movs r4, #4
|
||||
398 0050 FAE7 b .L25
|
||||
399 .L35:
|
||||
400 0052 00BF .align 2
|
||||
401 .L34:
|
||||
402 0054 00000000 .word .LANCHOR0
|
||||
403 .cfi_endproc
|
||||
404 .LFE1188:
|
||||
406 .global SD_Driver
|
||||
407 .section .data.Stat,"aw"
|
||||
408 .set .LANCHOR0,. + 0
|
||||
411 Stat:
|
||||
412 0000 01 .byte 1
|
||||
413 .section .rodata.SD_Driver,"a"
|
||||
414 .align 2
|
||||
417 SD_Driver:
|
||||
418 0000 00000000 .word SD_initialize
|
||||
419 0004 00000000 .word SD_status
|
||||
420 0008 00000000 .word SD_read
|
||||
421 000c 00000000 .word SD_write
|
||||
422 0010 00000000 .word SD_ioctl
|
||||
423 .text
|
||||
424 .Letext0:
|
||||
425 .file 2 "Middlewares/Third_Party/FatFs/src/integer.h"
|
||||
426 .file 3 "Middlewares/Third_Party/FatFs/src/diskio.h"
|
||||
427 .file 4 "/usr/lib/gcc/arm-none-eabi/10.3.1/include/stdint.h"
|
||||
428 .file 5 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_hal_sd.h"
|
||||
429 .file 6 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h"
|
||||
430 .file 7 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h"
|
||||
431 .file 8 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_rcc.h"
|
||||
432 .file 9 "Middlewares/Third_Party/FatFs/src/ff_gen_drv.h"
|
||||
433 .file 10 "Inc/bsp_driver_sd.h"
|
||||
434 .file 11 "Inc/sd_diskio.h"
|
||||
ARM GAS /tmp/ccTSxLLU.s page 13
|
||||
|
||||
|
||||
DEFINED SYMBOLS
|
||||
*ABS*:0000000000000000 sd_diskio.c
|
||||
/tmp/ccTSxLLU.s:17 .text.SD_CheckStatus:0000000000000000 $t
|
||||
/tmp/ccTSxLLU.s:24 .text.SD_CheckStatus:0000000000000000 SD_CheckStatus
|
||||
/tmp/ccTSxLLU.s:65 .text.SD_CheckStatus:0000000000000020 $d
|
||||
/tmp/ccTSxLLU.s:70 .text.SD_initialize:0000000000000000 $t
|
||||
/tmp/ccTSxLLU.s:77 .text.SD_initialize:0000000000000000 SD_initialize
|
||||
/tmp/ccTSxLLU.s:122 .text.SD_initialize:0000000000000024 $d
|
||||
/tmp/ccTSxLLU.s:127 .text.SD_status:0000000000000000 $t
|
||||
/tmp/ccTSxLLU.s:134 .text.SD_status:0000000000000000 SD_status
|
||||
/tmp/ccTSxLLU.s:157 .text.SD_read:0000000000000000 $t
|
||||
/tmp/ccTSxLLU.s:164 .text.SD_read:0000000000000000 SD_read
|
||||
/tmp/ccTSxLLU.s:220 .text.SD_write:0000000000000000 $t
|
||||
/tmp/ccTSxLLU.s:227 .text.SD_write:0000000000000000 SD_write
|
||||
/tmp/ccTSxLLU.s:283 .text.SD_ioctl:0000000000000000 $t
|
||||
/tmp/ccTSxLLU.s:290 .text.SD_ioctl:0000000000000000 SD_ioctl
|
||||
/tmp/ccTSxLLU.s:324 .text.SD_ioctl:0000000000000018 $d
|
||||
/tmp/ccTSxLLU.s:328 .text.SD_ioctl:000000000000001c $t
|
||||
/tmp/ccTSxLLU.s:402 .text.SD_ioctl:0000000000000054 $d
|
||||
/tmp/ccTSxLLU.s:417 .rodata.SD_Driver:0000000000000000 SD_Driver
|
||||
/tmp/ccTSxLLU.s:411 .data.Stat:0000000000000000 Stat
|
||||
/tmp/ccTSxLLU.s:414 .rodata.SD_Driver:0000000000000000 $d
|
||||
|
||||
UNDEFINED SYMBOLS
|
||||
BSP_SD_GetCardState
|
||||
BSP_SD_Init
|
||||
BSP_SD_ReadBlocks
|
||||
BSP_SD_WriteBlocks
|
||||
BSP_SD_GetCardInfo
|
||||
Reference in New Issue
Block a user